zksync era出bug!921eth卡合约无法领!团队:部分函数非evm等效 -凯发官网入口首页
ykqjz财经(www.ykqjz.com)讯:基于零知识证明技术(zkrollup)的以太坊l2扩容方案zksync,在3月24日启动主网zksync era后,迅速获得市场投资人关注,仅不到两周时间内,其锁仓量(tvl)就突破1亿美元。
zksync era生态项目筹集921eth卡在合约无法领出
不过,随着使用者快速攀升,当前处于alpha阶段的zksync era也开始传出技术问题,先是在4/1出现宕机情况,一度暂停出块逾3小时。
今(7)日,根据the block研究员eden au发布的推文指出,zksync era上的一个新项目通过代币销售完成了921eth(价值约170万美元)的众筹,但因为合约代码存在问题(transfer()函数适用于以太坊和其他evm链,但不适用于zksync),导致筹集的资金被「永远」卡在合约中无法取出。
zksync:已找到解冻合约凯发官网入口首页的解决方案
对此,zksync紧急发文澄清,这个新项目是gemholic,并表示资金是「安全的」,当前团队正在与项目方合作,帮助他们解决问题。zksync补充解释:任何调用transfer()或send()函数的智能合约都严重依赖gas成本(硬编码2300gas),但这不能保证在以太坊上运作,因为fallback()函数可能会消耗超过2300gas,而且在以太坊未来版本中opcode gas定价可能会发生变化,进而导致合约中断。然而,zksync era本身有别于一般evm兼容环境,采取的是一种动态且发散的gas计量方式,使得某些交易类型比其他evm rollup的交易更便宜10到1000倍。因此按照当前era主网的gas水平,任何没有明确gas津贴的transfer()调用目前都会失败。
不过,zksync表示当前已经找到一种凯发官网入口首页的解决方案来解冻合约:「这将需要对协议的gas计量进行最小的更改,但将允许完全回收资金,预计将在明天发布更多详细讯息。」
值得一提的是,为了避免此事件对zksync era生态产生负面影响,zksync还在推文中强调,编译器已经添加了关于transfer()函数调用的警告,但gemholic的合约没有事先在测试网或本地节点测试过就直接部署在era的主网上,这才导致问题的发生。
此外,zksync还表示早在三年前consensys就已警告solidity开发者放弃使用transfer()函数,而大部分主流项目也早已不使用transfer()函数,似乎在暗示此次问题的发生并非全是zksync era的责任。