以太坊ETH分片sharding对比moac墨客_分片让智能合约成为了逻辑子链随机抽取的子链节点保证了系统的可靠性_区块链技术_区块链神吐槽
区块链技术资源分享
追寻中本聪先生的脚步

以太坊ETH分片sharding对比moac墨客_分片让智能合约成为了逻辑子链随机抽取的子链节点保证了系统的可靠性

井底望天

其实大家应该好好看看 BM 和 Vitalik 的技术争论,很有意思的。

BM 批评 Vitalik,认为:

  1. 简单分片,并不能解决不同的 traffic 之间的特异性;
  2. 状态分片和跨片通信太多 overhead。

这些批评,是很中肯的。所以墨客就是先分层,把 traffic 分为底层的transactions 和上层的 smart contract。

这样是上层分片,底层不分,避免在tranzactions 这块,做避免“双花”这些麻烦问题。

但是 Vitalik 批评 BM,认为不应该牺牲去中心化,也是对的。

所以我是底层保持 PoW 和去中心化,上层进行分片,采取 PoS,BFT 和各种用户自定义可插拔共识,算是目前比较好的一个解决方案。

而且 BM 的可扩展性靠在超级节点加并行链,是采取了门槛不断提高的路线;我是靠增加小流量盒子,增加片的方法,是降低参与门槛,实践上应该更可行些。

技术员

The problems with multi-layered chain or sharding is that different chains/layers/shards have different security models with different strength/weakness,making bounded security assessment hard or close to impossible - and thus the system as a whole is most likely very brittle - there could be too many unpredictable attack vectors.

分层或分片区块链的问题在于,不同的链/层/片有不同的安全模式,各有优劣,会导致安全性难以保障,或者根本无法做到。所以整体上系统会很脆弱,有太多不可预计的攻击途径。

Vitalik Buterin

That's not even how ethereum sharding worka, every shard has the same security.

以太坊的分片并不是这样,而是每个"片"的安全等级都是一样的。

我们研究了很多分开交易和计算的概念,问题在于,正常交易的计算需求不那么复杂,只需要验证数字签名而已。

如果只分片计算,不分片数据,处理很多交易还需要很高的带宽要求。比如,10 万交易每秒:一个交易是 250 字节,所以一共需要下载 25 兆每秒,乘以 P2P 网络的 overhead,可能需要 1 Gbps 的互联网联通,所以要选择:分片,还是中心化。

技术员

So a natural bound of single blockchain throughput is a single node's network capacity (bandwidth)?

意思就是说,单条区块链的承载力上限就取决于单个节点的网络带宽?

Vitalik Buterin

Yes, if the blockchain is not sharded.

是的,除非这条区块链进行分片。

子链(分片)和母链的安全级是一样

井底望天:@Vitalik Buterin of course, sharding based on decentralived structure is preferred. But I think that multilayered approach is a good way to resolve the trilima. Our model,the microchian (shard) has same security level as base (mother) chain.

@V 神,当然了,基于去中心化结构的分片会更好。但我认为分层是一种很好的解决三元悖论的途径。在我们的模型中,子链(分片)和母链的安全级是一样的。

多链系统中各种不同种类的链的潜在安全问题?

技术员:But how do yo you mitigate the potential safty degradation in a heterogeneous multi-chain solution? @Vitalik Buterin just pointed out above that in his ethereumsharding solution "every shard has the same security", so is Bitcoin's sidechain -which tries to solve this problem by "shared mining".Of course Bitcoin's sidechain is not a sharding solution - but in general multi-chain, as well as sharding, are all plagued by this safty degradation problem.

但是你如何解决在一个多链系统中各种不同种类的链的潜在安全问题?像比特币的侧链方案,多链方案都没办法保障安全性问题。

墨客是子链不是侧链,子链是通过母链来通信

井底望天

Because our micro chain (sub chain, child chain) is not side chain. The microchain nodes communicate each through mother chain. So you cannot direct attackthe micro chain. You have to attack the mother chain which is POW with over 10,000 mining nodes running.

因为墨客是子链不是侧链,子链是通过母链来通信的。所以你不能直接攻击子链,而只能去攻击超过 10000 个节点的基于POW算法的母链。

分片意味着每个片都不能作完全验证

技术员:Yes this is shared mining - but sharding means that each shard does not have the full chain to do full validation so it relies heavily on the main chain - and it is not a problem in a heavily fortified datacenter but could be vulnerable in the wild open internet for a public blockchain environment.

这十分依赖于主链的性能。对于一个强大的数据中心来说这可能不是一个问题,但分布式的公链系统则难以做到。

每个分片保持了唯一的共识,并且定期刷新到主网

井底望天:Not really true, we separated the smart contract traffic in the shards, and every shards kept the only consensus and flush the states to the main chain periodically. Every shard behaves like a logical full chain.

并不是这样。墨客通过分层设计,把智能合约这部分的流量分片,每个分片保持了唯一的共识,并且定期刷新到主网。每个分片看起来都像是一个逻辑上的完整的区块链。

“片”与主链之间双向紧密耦合等的解决方案

Vitalik Buterin:Sidechains don't solve the problem, either all miners verify all chains, or each chain has only a few miners verifying it. ethereum sharding solves this with random sampling, fraud / data availability proofs and tight coupling.

无论是所有节点还是部分节点参与验证,侧链都没有解决安全问题。以太坊分片是采用了随机取样,“片”与主链之间双向紧密耦合等的解决方案。

墨客创造了一种 Dapp 的新模式

井底望天:We didn't use sharding as a pure technical solution but making it bounds the smart contract as a logical sub chain. It more like creates a new model for DAPP.

我们没有把分片当成一个纯粹的技术解决方案,而是通过分片让智能合约成为了逻辑子链,这看起来是墨客创造了一种 Dapp 的新模式。

随机抽取的子链节点保证了系统的可靠性。

分享到:更多 ()
区块链神吐槽