<p>Smart contracts, known for their immutable nature to ensure trust via automated enforcement, have evolved to necessitate upgradeability due to unforeseen vulnerabilities and the need for feature enhancements post-deployment. This inherent contradiction between immutability and the necessity for modifications has prompted the development of upgradeable smart contracts. These contracts are immutable in principle yet upgradeable by design, allowing for future updates without altering the underlying data or state, thus preserving the contract’s original intent while accommodating necessary improvements. This empirical study aims to bridge the gap in understanding the practical application and implications of upgradeable smart contracts on the Ethereum blockchain. By introducing a comprehensive dataset that catalogs the versions and evolutionary trajectories of smart contracts, the research explores several key dimensions: the prevalence and adoption patterns of upgrade mechanisms, the likelihood and actual occurrences of contract upgrades, the nature of modifications post-upgrade, and their impact on user engagement and contract activity. Through a detailed empirical analysis, this study systematically identifies upgradeable contracts and examines their upgrade history to uncover trends, preferences, and the practical challenges associated with applying such modifications. The empirical evidence gathered from the analysis of over 44 million contracts shows that a mere 3% embody upgradeable characteristics, with only 0.34% of the 3% undergoing subsequent upgrades. This finding underscores a cautious approach by developers towards contract modifications, possibly due to the complexity of upgrade processes or a preference for maintaining the original contract stability. Furthermore, the study demonstrates that upgrades are predominantly aimed at feature enhancement and vulnerability mitigation, particularly when the contracts’ source codes are accessible. However, the relationship between contract upgrades and user activity is intricate, suggesting that additional factors significantly affect the utilization of smart contracts beyond their mere functional evolution.</p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Immutable in principle, upgradeable by design: exploratory study of smart contract upgradeability

  • Ilham Qasse,
  • Mohammad Hamdaqa,
  • Björn Þór Jónsson

摘要

Smart contracts, known for their immutable nature to ensure trust via automated enforcement, have evolved to necessitate upgradeability due to unforeseen vulnerabilities and the need for feature enhancements post-deployment. This inherent contradiction between immutability and the necessity for modifications has prompted the development of upgradeable smart contracts. These contracts are immutable in principle yet upgradeable by design, allowing for future updates without altering the underlying data or state, thus preserving the contract’s original intent while accommodating necessary improvements. This empirical study aims to bridge the gap in understanding the practical application and implications of upgradeable smart contracts on the Ethereum blockchain. By introducing a comprehensive dataset that catalogs the versions and evolutionary trajectories of smart contracts, the research explores several key dimensions: the prevalence and adoption patterns of upgrade mechanisms, the likelihood and actual occurrences of contract upgrades, the nature of modifications post-upgrade, and their impact on user engagement and contract activity. Through a detailed empirical analysis, this study systematically identifies upgradeable contracts and examines their upgrade history to uncover trends, preferences, and the practical challenges associated with applying such modifications. The empirical evidence gathered from the analysis of over 44 million contracts shows that a mere 3% embody upgradeable characteristics, with only 0.34% of the 3% undergoing subsequent upgrades. This finding underscores a cautious approach by developers towards contract modifications, possibly due to the complexity of upgrade processes or a preference for maintaining the original contract stability. Furthermore, the study demonstrates that upgrades are predominantly aimed at feature enhancement and vulnerability mitigation, particularly when the contracts’ source codes are accessible. However, the relationship between contract upgrades and user activity is intricate, suggesting that additional factors significantly affect the utilization of smart contracts beyond their mere functional evolution.