02月15日,星期五 01:48
2月15日讯,以太坊基金会开发人员Jason Carver在Medium上发文,呼吁从君士坦丁堡中删除CREATE2,修改EIP并在下次升级时启动CREATE2。PeckShield研发副总吴家志表示:CREATE2的启用对于智能合约安全审计增加不少难度,除了源码与二进制的审计外,还必须考虑合约的部署方式。例如CREATE2部署的一个合约CREATE了一个子合约,子合约再CREATE孙合约,由于自毁合约(SELFDESTRUCT)后流水号(Nonce)不会被保留,这些合约都有被篡改的风险。 从智能合约用户的角度来说,正如Jason Carver描述的,每个合约调用需要经过一个代理合约,在调用之前检查目标合约的代码哈希值及状态,才能确保此合约没有被篡改过。站在安全从业人员的角度,CREATE2的启用还需要从长计议。现在删除CREATE2的话,可能会再次延后君士坦丁堡升级,进而难度炸弹造成出块时间继续增大;如果不立即删除,在不久的将来也可能需要再次修改EIP并且升级。