科普 | 常见代币协议转账都需要多少笔交易操作?_ZKS:Wrapped Secret (ERC20)

提到以太坊,我们脑海中出现的第一个关键词也许就是“gas费”。如今各大区块链项目主网上线,所用的宣传方向往往也离不开gas这个单词。

居高不下的gas费一直是区块链交易,尤其是游走于币圈各个领域的投资者的一个痛点。

随着区块链项目的增多以及市场规模的扩大,区块链上的交易数目以及平均交易的Gas消耗也随着增加。

Gasnow中Gas价格历史数据

近期,随着市场的起起落落以及主网升级、Layer2解决方案等因素,以以太坊为首的区块链网络gas费持续下降。

那么除了以上因素以外,是否可以从代码或者智能合约设计角度去减少完成特定功能必须的交易数目,从而优化项目以及整个区块链的交易成本和环境呢?

徐明星新书《趣说金融史》正式发布 科普金融发展之道:金色财经现场报道,9月23日,欧科云链创始人徐明星携手著名财经作家李霁月、行业观察者顾泽辉力作《趣说金融史》一书,跨越5000年金融历史,重读金钱故事,并预测新的金融时代。该书由中信出版社出版,将于近期正式发售。据了解,本书可以更好地呈现金融的起源与发展,帮助人们理解货币、金融与未来经济。作为区块链行业领军企业——欧科云链的创始人,徐明星深知技术探索对经济社会的重要推动作用,他曾先后出版过《图说区块链》、《区块链:重塑经济与世界》、《通证经济》、《链与未来》等行业权威著作,解读区块链等新型技术的推动下,金融与社会的升级之道,对经济社会发展做出了重大贡献。其中,《区块链:重塑经济与世界》曾作为新中国70周年重点推荐图书之一被相关书店推荐。[2021/9/23 17:00:57]

今天本文要为大家介绍的就是这一主题:对比可兼容最常见的代币协议ERC20的几种协议,包括ERC777,ERC1363以及ERC2612。

火币推出《一分钟读懂DeFi》系列科普视频:据官方消息,8月24日,火币推出《一分钟读懂DeFi》系列科普视频,并与微博财经合作冠名播出,布道DeFi认知,助力行业发展《一分钟读懂DeFi》是由火币成长学院打造的业内首个系统全面讲解DeFi的系列科普动画,继推出《区块链100问》后的再续佳作。《一分钟读懂DeFi》系列动画对DeFi的发展进行系统梳理,适合想要由浅入深、全面系统了解区块链DeFi的人们轻松了解DeFi。目前视频已由火币网官方微博发布。[2020/8/24]

本文将通过分析几种协议中代币转账操作所需要交易数目,帮助大家发现其中的最优选择!

ERC20

当前完成ERC20协议代币的转账操作需要分两步:approve()以及transfer()/tranferFrom()。

动态 | 人民日报官方微博科普区块链 强调区块链不等于比特币:人民日报官方微博今早发表9图科普区块链。其中涉及区块链的特点有:1、安全;2、不可篡改;3、可访问;4、无第三方。区块链对未来的影响:1、不需繁琐个人证明;2、看病避免反复检查;3、旅行消费更加便捷;4、交易无需第三方。同时强调,区块链不等于比特币。比特币只是区块链技术的一种应用,区块链还有医疗卫生、食品安全、版权保护等诸多应用领域。[2019/10/28]

因此必须分成两个交易并支付两份Gas:即第一个交易完成授权,第二个交易完成转账。?

为了解决“两步走”的问题,当前主要提案有ERC777,ERC1363以及ERC2612,其中前两者已经完善,ERC2612仍在优化阶段。

ERC20中主要的参与者为代币发送者sender以及代币接收者receiver。

中科院自动化研究所将面向大中小学生开展区块链等主题的科普讲座:5月21日,新华网讯,今年,中国科学院自动化研究所将举办第十四届“自动化之光”公众科学开放日活动。届时,自动化所将面向大中小学生分别开展《脑与智能》、《区块链技术与平行智能》、《大数据时代的视觉智能》、《动画真奇妙》等4个主题报告,用实例和生动的演示深入浅出地为大家揭示智能技术的原理和奥妙。[2018/5/21]

下文中将以Alice为代币发送者sender,Bob为代币接收者receiver为例,为大家直观展示操作简要流程图。

ERC20代币转账操作简要流程图

ERC777

ERC777尝试引入operator的概念来规避掉“两步走”的问题。

operator在被sender授权之后,在该ERC777代币合约中,sender可通过operator将代币发送给receiver。

在发送代币的交易中,sender无需支付gas,发送代币交易的gas会由operator支付。

ERC777代币转账操作简要流程图

ERC1363

ERC1363引入启发自ERC20中approve(),transfer()和tranferFrom()的高级函数:approveAndCall(),transferAndCall()和transferFromAndCall()。

这些函数可以帮助ERC1363协议合约在完成approve(),transfer()或tranferFrom()之后,继续执行spender地址处智能合约的onApprovalReceived()方法,以及receiver地址处智能合约的onTransferReceived()方法。

通过这样的方式来将approve和transfer或者其他任何spender或者receiver想要执行的代码链接起来成为一个交易。

ERC1363代币转账操作简要流程图

ERC2612

ERC2612采用了用户签名的方式进行approve,签名中包含了approve的地址以及额度。

用户通过向ERC2162标准的合约提交该签名,然后ERC2162标准的合约通过验证该签名,从该签名中获得approve的地址以及额度,并且在验证成功之后使用验证获得的信息直接触发transferFrom操作,从而最终解决“两步走”的问题。

ERC2612代币转账操作简要流程图

写在结尾

这几类协议对比后,我们发现:

从完成代币发送所需要的交易数目角度看,ERC1363与ERC2612必然是更加合适的选择,其中ERC2612相比ERC1363更加灵活。同时ERC777,ERC1363与ERC2612都兼容ERC20类型合约,因此不存在由兼容性引发的问题。

随着区块链智能合约项目的增多,单个区块的时间内产生的等待交易数目总数随之增加。

如果可以通过协议代码层面减少完成功能需要被打包入区块的等待交易总数,那么对于区块链上的平均的交易速度以及平均gas花费都会有极大的帮助。

交易成本及环境的优化,不仅会促进区块链网络的繁荣,区块链生态及基础设施也会更加完善。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:15ms0-7:822ms