上传者: 38723242
|
上传时间: 2022-12-12 09:17:05
|
文件大小: 471KB
|
文件类型: PDF
文章目录一、拍卖合约二、收款地址未定义fallback函数的问题fallback问题的解决方案三、重入攻击(Re-entrancy Attack)的问题重入攻击的解决方案
一、拍卖合约
智能合约定义成员变量、event等,构造函数初始化受益人、拍卖结束时间,如下所示:
出价的函数如下,标注payable说明函数可以接收转账,require(now <= auctionEnd)检查拍卖是否结束,如果已经结束就抛出异常,然后检查出价是否大于最高出价,然后将出价人记录到bidders数组(因为bids哈希表不支持遍历),然后记录新的最高出价人,记录日志,如下所示:
结束拍卖的函数如下,首先检查拍