Smart contracts, known for their immutable nature to ensure trust via automated enforcement, have evolved to require upgradeability due to unforeseen vulnerabilities and the need for feature enhancements post-deployment. This contradiction between immutability and the need for modifications has led to the development of upgradeable smart contracts. These contracts are immutable in principle yet upgradable by design, allowing updates without altering the underlying data or state, thus preserving the contract's intent while allowing improvements. This study aims to understand the application and implications of upgradeable smart contracts on the Ethereum blockchain. By introducing a dataset that catalogs the versions and evolutionary trajectories of smart contracts, the research explores key dimensions: the prevalence and adoption patterns of upgrade mechanisms, the likelihood and occurrences of contract upgrades, the nature of modifications post-upgrade, and their impact on user engagement and contract activity. Through empirical analysis, this study identifies upgradeable contracts and examines their upgrade history to uncover trends, preferences, and challenges associated with modifications. The evidence from analyzing over 44 million contracts shows that only 3% have upgradeable characteristics, with only 0.34% undergoing upgrades. This finding underscores a cautious approach by developers towards modifications, possibly due to the complexity of upgrade processes or a preference for maintaining stability. Furthermore, the study shows that upgrades are mainly aimed at feature enhancement and vulnerability mitigation, particularly when the contracts' source codes are accessible. However, the relationship between upgrades and user activity is complex, suggesting that additional factors significantly affect the use of smart contracts beyond their evolution.
翻译:智能合约以其不可变性著称,通过自动化执行确保信任,但由于部署后可能出现未预见的漏洞以及功能增强的需求,已逐渐需要具备可升级性。这种不可变性与修改需求之间的矛盾催生了可升级智能合约的发展。这些合约原则上保持不可变,但通过设计实现可升级,允许在不改变底层数据或状态的情况下进行更新,从而在保留合约初衷的同时实现改进。本研究旨在理解可升级智能合约在以太坊区块链上的应用及其影响。通过引入一个记录智能合约版本和演化轨迹的数据集,本研究探索了关键维度:升级机制的普及程度与采用模式、合约升级的可能性与发生情况、升级后修改的性质,以及这些修改对用户参与和合约活动的影响。通过实证分析,本研究识别了可升级合约并检查其升级历史,以揭示与修改相关的趋势、偏好和挑战。对超过4400万份合约的分析证据表明,仅3%的合约具有可升级特性,其中只有0.34%实际进行了升级。这一发现突显了开发者对修改持谨慎态度,可能是由于升级过程的复杂性或对保持稳定性的偏好。此外,研究表明升级主要旨在增强功能和缓解漏洞,尤其是在合约源代码可访问的情况下。然而,升级与用户活动之间的关系较为复杂,表明除了合约演化之外,还有其他因素显著影响智能合约的使用。