WiSWho 中放入的 Alice 签名是非法的(可能是 Bob 贿赂 Jamal ,以此造谣中伤 Alice ;又或是 Jamal 对 Alice 不满,想让她尴尬 ......)。
因为 ORU 合约不会检查 WiSWho 内容的正确性,所以诈欺行为会严重影响使用 ORU 的初衷,还会让 gas 费用上升(验证签名并不便宜),因为存在诈欺行为会迫使大家退而使用 v1 解决方法。虽然我们相信,Jamal 是个正直的人,他承诺绝对不会搞审查或诈欺,但从安全性的角度考虑,我们最好还是将希望寄托在 Jamal 「无法作恶」 而非 「不会作恶」。 保留对 Jamal 的检查权 校方决定对 Jamal 采行胡萝卜加大棒(软硬兼施)的管理方式: 胡萝卜:Jamal 提供服务换取可观的报酬,每天 Jamal 发送 WiSWho 交易之后,智能合约就会从授权 Jamal 向校方提领 $ 5 的权利。但 Jamal 不能立刻拿到这 $ 5 ,他只能在月末提领。Jamal 看着可提领额度每天蹭蹭往上涨,他肯定会愿意继续提供服务。 避免恶意审查的柔性手段:如果 Jamal 故意无视 Alice 提交的信息,当晚她可以自行向智能合约提交签署信息(当然,要自己负担 gas 费用)。隔天一早, Alice 可以去找校长告状,同时其他同学也会有所警惕,Jamal 的声誉会因为作恶行为而下降。 对于校方来说,很容易就能找到能替代 Jamal 角色的人选:智能合约已经在 Layer 1 上部署运行, Jamal 的替代者只要运行 AWS lambda 服务,每天持续监听同学们发来的信息、打包签名、向 ORU 合约广播单笔交易即可。 实际上,任何愿意在合约上锁定保证金的人都可以成为执行者(差别只是他们要重新向学生宣传自己而已)。 避免诈欺行为的强硬手段:任何人都能发现 Jamal 存在诈欺行为(如果有),并通过简单举证向 Layer 1 的 ORU 合约证明存在诈欺。除此之外, Jamal 必须事先向智能合约锁定一笔保证金(想成为执行者的人都需要锁定,作恶就会被罚款),保证金增加 Jamal 进行诈欺的成本。 简单举证包含如下内容 —— 「嘿 ORU,这个签名是 Jamal 检查过的数据之一,由 Alice 签署;但我,作为举报者,我宣布这是个无效的签名!」 智能合约会从先前发布的数据中抽取出 Alice 的签名,并通过 Alice 的公钥(在 ORU 合约设置之初就存好了)执行签名验证。如果这个签名的确是无效的,则: 清零 Jamal 的待提领奖励, 将 Jamal 的保证金一半奖励给举报者,另一半销毁。 更进一步剖析强硬手段 强硬手段是 ORU 合约中最有趣、最具决定性的内容;事实上,它就是 ORU 成为 Layer 2 解决方案的核心因素。 这个手段的特别之处在于:不只是校方或学生,任何人都能举起这监督的大棒。只要 WiSWho 数据上链,举报者们就能拿到证明 Jamal 是否作恶所需要的所有材料。人人都能向 ORU 合约发出对 Jamal 交易的质疑,并有机会获得举报成功的奖励。 强硬手段的设计及运作,是不同 ORU 实现之间最重要的区别。 来自教育部的电话 「何时能得到大规模接受?」这是我们圈子里最常见的问题。假设大家都开始采用区块链技术,ORU 也能用于解决网络拥堵 —— 但现在却出现另一个问题。 假设教育部希望 Jamal 处理全国范围内,所有学校的签名,这时候我们的问题就会从 「能处理多少学生?」 转为 「你能处理多少学校?」。 你可能会说,「既然可以将整个学校的所有签名整合为一笔交易,那同理将全国的签名整合为一笔交易不就好了?」 这就牵扯到 ORU 扩展性的上限:区块的 Gas 上限。虽然 Jamal 广播交易的 Gas 消耗量很低,但并不是不存在。如果想要在一笔交易中包含全国范围内的所有学生数据,很有可能会超过区块的 Gas 限制,换言之, Jamal 需要将数据进行拆分,分批广播。 所以说,通过 ORU 能获得的扩展性是有上限的,如果你需要无限扩展,可以考虑侧链或 plasma 等 ...... 但这样资金安全就没那么有保障。 重温一下 ORU 的好处 在乐观情况下, Layer 1 的全节点无需执行 ORU 操作者发起的交易的附加数据,这样一来: Layer 1 全节点层面的执行成本更低;因为存储数据要比在其内部运行任何逻辑便宜得多。 每笔交易的 Gas 成本更低;因为与执行交易相比,存储数据的 Gas 成本更低。 ORU 与侧链 /Plasma/ 状态通道有什么区别? 与侧链不同:侧链的理念发端于 2014 年,但从未产生很大的吸引力;而 ORU 链的安全性是直接由 Layer 1 来保护的。 假设你在 ORU 链上玩扑克或交易代币,则你的资产转移就等同在 Layer 1 (例如以太坊主网)上转移一样安全。虽然当发生欺诈情况时,可能会遇到一些不便 —— 例如你需要等待一两个星期才能释放资金,但是 Layer 1 仍然可以保证资金的安全。 另一方面,如果你在侧链进行交易,侧链上的矿工(PoW)或验证者(PoS)可以窃取你的资金;因为只要他们想要,就能单方面向 Layer 1 讲述对他们有利的故事,而 Layer 1 无从考证。 与 plasma 和状态通道不同:ORU 的诈欺证明机制非常简单,任何人都能提交挑战。举报者有 Layer 1 上可用的所有数据,能够检测并向 ORU 合约提交诈欺行为证明,以此获得奖励。如果采用 plasma 或状态通道,用户必须承担其资金的部分或全部的安全性责任,并且必须时刻 「监视」 Layer 1 合约的情况,以防执行者或其他用户搞欺诈。 总结 所谓的 optimistic rollup (ORU),其实就是 ①智能合约 —— 部署在某 Layer 1 (如,以太坊主网) 上,以及 ② 区块生产者 —— 会监听特定 p2p 网络的交易的,并将其汇总成一个大字符串数据,附上验证签名后上链。 因为合约能够直接接收用户的交易,即使执行者掉线或是作恶,都能保证用户能够安全地将资金从 ORU 退出。更重要的是,合约能够核实执行者是否存在诈欺行为,如有有,合约还能罚没执行者的保证金。 举报者进行诈欺检测及举证所需的所有数据,都能从 ORU 交易的附加数据取得;Layer 1 的全节点不会执行附加数据的内容(除非有人举报存在诈欺),这就是 Layer 1 能够扩展的根本因素。对于 Layer 1 来说,这些附加数据只是个二进制数据包,并会被永久存储,仅此而已。 (责任编辑:admin1) |