摘要

智能合约是一种旨在以信息化方式传播、验证和执行合同的计算机协议。由于智能合约自带金融属性,执行过程中若出现漏洞会给用户及投资者带来较大困扰,因此如何编写安全可靠的智能合约至关重要。针对以太坊环境,对智能合约的漏洞进行了相关的研究和分析,提出了几种可能导致漏洞的常见编程陷阱,包括重入漏洞、整数溢出漏洞、拒绝服务漏洞、未检查call返回值以及短地址/参数攻击漏洞等。并有针对性地对这几种陷阱进行详细的原理分析和场景复现,并给出了相应的规避和解决的方法,提出了在安全模式下智能合约安全问题的解决方案。