摘要
区块链2.0最显著的特征是增加了对智能合约的支持,这使得区块链拥有了运行各种应用程序的能力.智能合约是一种根据预先定义的代码逻辑自动运行的计算机软件.区别于传统软件,区块链技术赋予了智能合约不依赖可信中心机构而在相互不信任的节点上正确执行的能力,使其在数字支付、共享经济等领域被广泛地应用.为了防止滥用智能合约导致计算资源被浪费,以太坊等区块链向部署和执行智能合约这2种活动收取Gas(燃料)费用.智能合约消耗的计算资源是决定费用高低的因素.具有低效代码的智能合约浪费资源且易受攻击,此类智能合约的开发者和用户将承担不必要的费用.因此,优化智能合约以节省资源已经成为开发者和研究者重点关注的问题.首先详细分析了智能合约Gas优化所面临的主要挑战;然后回顾和总结了近年来提出的各种优化技术;最后展望了该研究方向的未来工作,旨在为智能合约的开发者和研究人员提供参考和借鉴.