Smart Contract Upgradability: A Structured and Natural Approach

Software maintenance is crucial as technology rapidly evolves, requiring software to meet new demands and correct errors. Smart contracts, immutable programs on blockchains like Ethereum, face challenges despite their immutability, often needing updates for errors or new features. Smart contracts are upgraded using different patterns, which are not natural because most of them implement upgrades using low-level operations that deviate from their intended use. In other words, these patterns are not natural because upgrades are done by implementing workarounds. Moreover, smart contracts are also susceptible to security vulnerabilities because they may hold large amounts of money. In this paper, upgradability of smart contracts is considered a necessity. For this purpose, a more structured method is proposed by adding high-level features and combining inheritance properties of object-oriented languages. A key component of this method is the gotoContract variable, which allows for the redirection of function calls to upgraded contracts. The proposed method provides a complete upgrade of data and functions in smart contracts. It aims to minimize the effects of upgrades on end users of the smart contracts. Additionally, this natural way of upgrading will help mitigate security risks in the smart contracts by providing a high-level approach to upgrade.

Authors

Institutions

Publication Details

Published
2024-11-26
DOI
https://doi.org/10.1109/bcca62388.2024.10844407
Citations
3
Primary Topic
European and International Contract Law
Type
article
Field-Weighted Citation Impact
12.22
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Smart Contract Upgradability: A Structured and Natural Approach

Ali Yazıcı, Davut Çulha
3 citations
European and International Contract Law
12.22
article

Smart Contract Upgradability: A Structured and Natural Approach

Ali Yazıcı, Davut Çulha
article en
3 citations

Abstract

Software maintenance is crucial as technology rapidly evolves, requiring software to meet new demands and correct errors. Smart contracts, immutable programs on blockchains like Ethereum, face challenges despite their immutability, often needing updates for errors or new features. Smart contracts are upgraded using different patterns, which are not natural because most of them implement upgrades using low-level operations that deviate from their intended use. In other words, these patterns are not natural because upgrades are done by implementing workarounds. Moreover, smart contracts are also susceptible to security vulnerabilities because they may hold large amounts of money. In this paper, upgradability of smart contracts is considered a necessity. For this purpose, a more structured method is proposed by adding high-level features and combining inheritance properties of object-oriented languages. A key component of this method is the gotoContract variable, which allows for the redirection of function calls to upgraded contracts. The proposed method provides a complete upgrade of data and functions in smart contracts. It aims to minimize the effects of upgrades on end users of the smart contracts. Additionally, this natural way of upgrading will help mitigate security risks in the smart contracts by providing a high-level approach to upgrade.

Atilim University (TR)
Openalex Percentile: Top 1%
European and International Contract Law
12.22
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.