作者:?AliAtiia
翻译&校对:IANLIU&阿剑
来源:以太坊爱好者
本文将通过简单的例子,自下而上地阐述OptimisticRoll-Up(ORU)的运作方式;为了让我们能“看得见摸得着”ORU链所有的意涵,本文举的示例也会比较特殊。
ORU是以太坊layer2扩展方案中的佼佼者,既能把可扩展性的蛋糕做大,也能让你吃到——至少是吃到一部分吧。大家之所以对ORU如此兴奋,是因为它及它的表亲——ZK-Rollup,克服了侧链、plasma、状态通道等方案都没有解决的layer2难题。
ORU要解决什么问题?
某所高中正面临这样的问题:每隔几天,就会出现小情侣的争吵事件,通常是因为其中一方劈腿。
典型的场景如下:
Alice看到男朋友Bob亲吻Cathy,她感到非常生气。但Bob可能会辩解“我发誓我没这么做!”或“我俩早就分手了!”......但Alice根本听不进去,抓起椅子就朝Bob扔去;这种在走廊上演的小剧场,正破坏着整个校园的环境。
解决方法v1
校园里的超级书呆子Jamal提出了一种解决方案:
每天晚上,要求所有学生选择以下信息之一,并签署自己的密码学签名——
“我单身,勿扰”
“我单身,待配对”
欧科云链集团正式启动区块链科普行动“星途计划”:欧科云链集团于4月26日,正式宣布启动了区块链科普行动——“星途计划”,行动包括将在全国范围展开系列沙龙,加大力度推进区块链科普进机关、进国企、进校园等,联合政府部门、行业协会等共同构建起更加完善和有效的区块链科普教育生态,与此同时,直击区块链科普现存痛点,推出简单易懂的“秒懂区块链”公益短视频课。
该计划旨在全维度推动社会建立对产业更清晰的认知,与“鲲鹏计划”一道助力数字经济及区块链产业本身健康发展夯实“人才”和“产业认知”两大基础。[2021/4/26 20:59:37]
“我正在与X约会”
“我正在和多个人约会”
这里的签名和用于密码学货币转账的签名类型是一样的。学校会在布告栏张贴“学生与其对应公钥”的公告,所以任何人都能用签名验证的方法来确实谁签了什么消息。为了方便同学们使用,Jamal开发了一款app,每个同学只要在app上选择四条内容之一,然后点击“签名&发送”按钮就行,之后签名消息会从后端向以太坊P2P网络广播——事实上,这些消息会先发到Jamal家里的服务器,由他代表同学们向以太坊发送消息,这样同学就不需要操心以太坊Gas的设置。Jamal通过一些智能合约高级技巧,就可以自己先替同学们支付Gas,然后再按月度向学校报销Gas费用。学校里有1000位同学,每人每天都要签署发送1条消息,平均每条消息要花费$0.1的Gas;所以每个月学校用在Gas上的费用为:
声音 | ETC Labs主管:科普教育是未来几年公链面临的巨大挑战:ETCLabs主管Darin Kotalik认为,科普教育是未来几年公链面临的巨大挑战,人们必须要对区块链有基本的认识,分清楚公链和私链的区别。[2019/8/25]
(1000学生)x(1信息/天/学生)x($.1gas/信息)x(30天/月)=
$3000gas/月.
肉疼!
解决方法v2
对于财政吃紧的学校来说,每个月$3k的支出显然是不合适的。这时候ORU就派上用场了。Jamal告诉校方,使用ORU可以降低约99%的gas费用,以下是改进的方案:
和v1方法一样,当每位学生点击“签名&发送”之后,信息会先发送至Jamal家的服务器。然后Jamal将所有的签名叠加成一串字符串数据
WiSWho的信息。WiSWho的信息格式是、……
接着,Jamal用
自己的私钥签署这
一笔交易,并广播之。交易信息为:
“我,Jamal,检查过这笔交易附带的
WiSWho数据,
WiSWho代表截至dd/mm/yyyy所有学生的交往关系,我对天发誓这些数据
包含了完整的事实,无任何人工添加。”
用行话来说,Jamal充当了layer2“执行者”的角色。如果你曾经用以太坊进行交易,你可能注意过附加数据——也就是以太坊浏览器中“Inputdate”那一栏。如下图所示,简单交易中大多数人会将附加数据留空;如果交易中调用了如Uniswap的swap函数,则调用的函数名和传入的参数就会附加上作为交易的InputData;Jamal的交易会调用layer1的ORU合约,
动态 | 浙江卫视节目科普支付宝区块链防伪溯源产品:昨日,在浙江卫视播出的科普综艺栏目《智造将来》现场,支付宝首次展示了支付宝区块链防伪溯源产品,以接地气的方式公开向大众展示区块链在生活中的应用。[2019/3/4]
WiSWho就是Jamal广播的交易的InputData。
左图:简单交易,没有附加数据。右图:Uniswap函数和入参(例如
min_tokens是收到的以太坊数量)作为附加数据。以太坊的ORU合约只会验证Jamal的签名,而附加数据
WiSWho中的其他同学的签名,只会被视为区块的二进制“冷数据”。
这就是扩展性的体现,因为这样一来layer1的全节点只要验证ORU执行者的签名并存储附加数据,而
不需要验证
WiSWho里的所有签名。
悬念
你可能已经注意到Jamal签署的信息,强调了两句话:
包含了完整的事实,且
仅包含事实。
违反规则1的情况称为恶意审查(
censorship),意思是Jamal在恶意地过滤信息,比如Bob和Alice有过节,所以Bob贿赂Jamal,让他审查Alice的信息以破坏Alice的美好生活。违反规则2的情况称为诈欺(
动态 | 美国演说家Anthony Robbins开始科普什么是比特币:美国演说家安东尼·罗宾(Anthony Robbins)在自己的网站上发布了一篇比特币的科普文章,并在推特上向自己的粉丝介绍什么是比特币,目前他的推特账户共有粉丝304万人。[2019/1/1]
fraud),意味着Jamal将一条或多条不存在的信息加到
WiSWho。比如,数据中包含一条Alice的声明——“我正在和10位男孩及10位女孩约会”,而事实上Alice根本没有签署这样的信息,所以Jamal在
WiSWho中放入的Alice签名是非法的。因为ORU合约不会检查
WiSWho内容的正确性,所以诈欺行为会严重影响使用ORU的初衷,还会让gas费用上升,因为存在诈欺行为会迫使大家退而使用v1解决方法。虽然我们相信,Jamal是个正直的人,他承诺绝对不会搞审查或诈欺,但从安全性的角度考虑,我们最好还是将希望寄托在Jamal“无法作恶”而非“不会作恶”。
保留对Jamal的检查权
校方决定对Jamal采行胡萝卜加大棒的管理方式:胡萝卜:Jamal提供服务换取可观的报酬,每天Jamal发送WiSWho交易之后,智能合约就会从授权Jamal向校方提领$5的权利。但Jamal不能立刻拿到这$5,他只能在月末提领。Jamal看着可提领额度每天蹭蹭往上涨,他肯定会愿意继续提供服务。避免恶意审查的柔性手段:如果Jamal故意无视Alice提交的信息,当晚她可以自行向智能合约提交签署信息。隔天一早,Alice可以去找校长告状,同时其他同学也会有所警惕,Jamal的声誉会因为作恶行为而下降。对于校方来说,很容易就能找到能替代Jamal角色的人选:智能合约已经在layer1上部署运行,Jamal的替代者只要运行AWSlambda服务,每天持续监听同学们发来的信息、打包签名、向ORU合约广播单笔交易即可。
中科院自动化研究所将面向大中小学生开展区块链等主题的科普讲座:5月21日,新华网讯,今年,中国科学院自动化研究所将举办第十四届“自动化之光”公众科学开放日活动。届时,自动化所将面向大中小学生分别开展《脑与智能》、《区块链技术与平行智能》、《大数据时代的视觉智能》、《动画真奇妙》等4个主题报告,用实例和生动的演示深入浅出地为大家揭示智能技术的原理和奥妙。[2018/5/21]
实际上,任何愿意在合约上锁定保证金的人都可以成为执行者。
避免诈欺行为的强硬手段:
任何人都能发现Jamal存在诈欺行为,并通过简单举证向layer1的ORU合约证明存在诈欺。除此之外,Jamal必须事先向智能合约锁定一笔保证金,保证金增加Jamal进行诈欺的成本。简单举证包含如下内容——“嘿ORU,这个签名是Jamal检查过的数据之一,由Alice签署;但我,作为举报者,我宣布这是个无效的签名!”
智能合约会从先前发布的数据中抽取出Alice的签名,并通过Alice的公钥执行签名验证。如果这个签名的确是无效的,则:
清零Jamal的待提领奖励,
将Jamal的保证金一半奖励给举报者,另一半销毁。
更进一步剖析强硬手段
强硬手段是ORU合约中最有趣、最具决定性的内容;事实上,它就是ORU成为layer2解决方案的核心因素。这个手段的特别之处在于:不只是校方或学生,任何人都能举起这监督的大棒。只要
WiSWho数据上链,举报者们就能拿到证明Jamal是否作恶所需要的所有材料。人人都能向ORU合约发出对Jamal交易的质疑,并有机会获得举报成功的奖励。强硬手段的设计及运作,是不同ORU实现之间最重要的区别。
来自教育部的电话
“何时能得到大规模接受?”这是我们圈子里最常见的问题。假设大家都开始采用区块链技术,ORU也能用于解决网络拥堵——但现在却出现另一个问题。假设教育部希望Jamal处理全国范围内,所有学校的签名,这时候我们的问题就会从“能处理多少学生?”转为“你能处理多少学校?”。
你可能会说,“既然可以将整个学校的所有签名整合为一笔交易,那同理将全国的签名整合为一笔交易不就好了?”
这就牵扯到ORU扩展性的上限:区块的Gas上限。虽然Jamal广播交易的Gas消耗量很低,但并不是不存在。如果想要在一笔交易中包含全国范围内的所有学生数据,很有可能会超过区块的Gas限制,换言之,Jamal需要将数据进行拆分,分批广播。所以说,通过ORU能获得的扩展性是有上限的,如果你需要无限扩展,可以考虑侧链或plasma等......但这样资金安全就没那么有保障。
重温一下ORU的好处
在乐观情况下,layer1的全节点无需执行ORU操作者发起的交易的附加数据,这样一来:
layer1全节点层面的执行成本更低;因为存储数据要比在其内部运行任何逻辑便宜得多。
每笔交易的Gas成本更低;因为与执行交易相比,存储数据的Gas成本更低。
ORU与侧链/Plasma/状态通道有什么区别?
与侧链不同:侧链的理念发端于2014年,但从未产生很大的吸引力;而ORU链的安全性是直接由Layer-1来保护的。假设你在ORU链上玩扑克或交易代币,则你的资产转移就等同在layer1上转移一样安全。虽然当发生欺诈情况时,可能会遇到一些不便——例如你需要等待一两个星期才能释放资金,但是layer1仍然可以保证资金的安全。另一方面,如果你在侧链进行交易,侧链上的矿工或验证者可以窃取你的资金;因为只要他们想要,就能单方面向layer1讲述对他们有利的故事,而layer1无从考证。
与plasma和状态通道不同:ORU的诈欺证明机制非常简单,
任何人都能提交挑战。举报者有layer1上可用的
所有数据,能够检测并向ORU合约提交诈欺行为证明,以此获得奖励。如果采用plasma或状态通道,用户必须承担其资金的部分或全部的安全性责任,并且必须时刻“监视”layer1合约的情况,以防执行者或其他用户搞欺诈。
总结
所谓的optimisticrollup(ORU),其实就是①智能合约——部署在某layer1(如,以太坊主网)上,以及②区块生产者——会监听特定p2p网络的交易的,并将其汇总成一个大字符串数据,附上验证签名后上链。因为合约能够直接接收用户的交易,即使执行者掉线或是作恶,都能保证用户能够安全地将资金从ORU退出。更重要的是,合约能够核实执行者是否存在诈欺行为,如有有,合约还能罚没执行者的保证金。举报者进行诈欺检测及举证所需的所有数据,都能从ORU交易的附加数据取得;Layer1的全节点不会执行附加数据的内容,这就是layer1能够扩展的根本因素。对于Layer1来说,这些附加数据只是个二进制数据包,并会被永久存储,仅此而已。
原文链接:?https://gourmetcrypto.substack.com/p/optimistic-rollups-from-the-bottom
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。