V神:为什么分片是了不起的?揭开分片技术特性的神秘面纱(3)
时间:2021-04-09 08:34来源:未知 作者:admin 点击:
次
我们可以引入一些数学术语来讨论这是怎么回事。借助大O表示法,我们用“ O(C) ”表示单个节点的计算能力。传统的区块链可以处理大小为 O(C) 的区块;
我们可以引入一些数学术语来讨论这是怎么回事。借助大O表示法,我们用“O(C)”表示单个节点的计算能力。传统的区块链可以处理大小为 O(C) 的区块;而一条采用如上所述的分片技术的区块链可以并行处理 O(C) 区块 (请记住,每个节点间接验证每个区块的成本是 O(1),因为每个节点仅需验证固定数量的签名),且每个区块有着 O(C) 的容量,因此整个分片区块链的总容量将是O(C2)。这就是为何我们将这种类型的分片称之为二次分片 (quadratic sharding),且这种效果是我们认为从长远来看,分片是扩展区块链的最佳方式的关键原因。
常见问题:分成100个委员会和分成100条独立的链有什么不同?
有两个关键区别:
随机抽样防止了攻击者将他们的能力集中在某一个分片上。在一个有着 100 条多链的多链生态系统中,攻击者只需要控制 stake (质押金) 总量的 0.5% 就可以造成破坏:他们可以集中对单条链发起 51% 攻击;相比之下,在一个分片区块链系统中,攻击者必须控制近 30-40% 的 stake 总量才可能做出同样的事情 (换句话说,整条链有着共享的安全性)。当然,攻击者可以等待好运气,即通过随机的方式让他获得单个分片的 51% 的控制权,即使该攻击者所控制的 stake 数量不到整条链的 stake 总量的 50%。如果攻击者的质押量少于整条链质押总量的 30%,那上述这种情况几乎不可能发生。
紧密耦合:即便某个分片出现了一个非法区块 (bad block),整条区块链可以通过重组来抛弃该区块。在实施分片的区块链中,存在一个社会契约(在本文档后面的章节中,我们将描述一些从技术上强制执行该契约的方法),也即,即便某个分片中存在一个非法区块,那整条区块链也是不会接受的,应该在发现该非法区块时会立即将之驱逐出去。从区块链内的应用程序的角度来说,这确保了完美的安全性:合约 A 可以信赖合约 B,因为如果合约 B 由于链上发生攻击而出现不当行为,那么整个历史记录将被逆转恢复,包括由于合约 B 中的故障导致合约 A 中发生的不当交易。
这两个差异确保分片为应用程序创建了这样一个环境,该环境保留着一个单链环境所拥有的关键安全属性,而这是多链生态系统根本无法做到的。
使用更好的安全模型改进分片 比特币圈中一个常见的说法,也是我完全同意的一个说法是,像比特币 (或以太坊) 这样的区块链并不完全依赖于「诚实大多数的假设」。如果对这样的区块链发起 51% 的攻击,那么攻击者可以做出一些令人讨厌的事情,比如逆转或审查交易,但他们不能添加无效的交易。而且,即使它们确实逆转或审查交易,运行常规节点的用户也可以很容易地检测到这种行为,因此,
(责任编辑:admin) |
织梦二维码生成器
------分隔线----------------------------