来源:Adiasg.me
翻译:头等仓
编者注:原标题为《探索ETH2.0的跨片通信》
随着Eth2.0的阶段深入,研究重点正在转移到阶段2:状态执行。此阶段最重要的一个方面是跨片通信的处理,它影响了分片化区块链系统的可扩展性,执行环境容量以及用户体验。这篇文章旨在帮助读者了解跨片通信的设计,并探讨可用方式。
跨片通信的设计可以分为两层:
1.?共识层:用于处理跨片消息传递。这个设计会影响分片式区块链系统的可扩展性。
厦门地铁:已发行NFT数字纪念票,不断探索数字人民币应用场景:金色财经报道,据人民网北京6月30日消息,厦门地铁集团运营中心总经理张涛表示,厦门地铁首次发行NFT数字纪念票及碳积分体系,丰富了厦门地铁票种种类,厦门地铁不断探索“地铁+数字人民币”的应用场景,以及地铁公交一体化无接触扫码乘车功能,为乘客打造智能安全便捷的乘车支付生态圈。[2022/6/30 1:41:21]
2.?执行层:包括跨片传输和合约调用的接口。这个设计选择会影响执行环境的容量。
共识层
跨片通信的共识层负责在区块链系统的各个分区传递跨片消息。主要挑战是在保持可扩展性的同时,为跨片消息的有效性提供强有力的保证。该层可分为两部分:
中国银行首席研究员:探索打造企业级数字货币支付结算平台:金色财经报道,在北京市政协十三届五次会议上,中国银行首席研究员郭为民建议,在大力推进数字化和数字经济基础设施建设的同时,要率先探索针对数字经济的监管路径。应充分发挥国家金融管理中心的作用,加强顶层设计,打造有针对性的监管能力,积极鼓励有实力的核心企业与数字化银行合作,探索打造企业级数字货币支付结算平台,利用好数字人民币在提升融资及支付效率、追踪资金流向、降低信贷风控成本等方面的优势,打造适应新的经济形态的产业结构和数字金融服务。[2022/1/10 8:38:17]
发送/接收最终确定性
数据传送
发送/接收最终确定性
迈阿密市长:正在探索以使迈阿密成为以加密为中心的市政府:金色财经报道,美国第??七大城市迈阿密的市长Francis Suarez可能试图将迈阿密变成加密货币创新的温床。Suarez周四在推特表示,他“绝对正在探索”以使迈阿密成为该国第一个以加密为中心的市政府所在地。他在推文中@了Morgan Creek创始人、迈阿密新居民Anthony Pompliano, 以及一位加密货币推特名人以寻求帮助。在随后的推文中,他表示希望南佛罗里达“处于能够促进加密货币并迈向创新的立法的先锋”。他将与怀俄明区块链委员会创始人、加密银行Avanti创始人Caitlin Long取得联系,以在这方面获得帮助。[2020/12/25 16:26:46]
源分片和目标分片必须分别完成跨片消息的发送和接收。为实现此目标可采用的设计有:
声音 | 腾讯陈一丹:区块链对实现信息公开透明值得进行应用探索:据腾讯消息,12月17日,中国互联网公益峰会组委会成立大会召开。峰会组委会主席、腾讯主要创始人、腾讯公益慈善基金会发起人兼荣誉理事长陈一丹致辞《公益的共生与共创》表示,这些年,我们看到vr技术、区块链技术、人工智能技术,身边不断有新技术涌现。这些和公益行业的应用是不是很遥远?其实近在咫尺。区块链技术的去中心化特点,对实现公益信息的公开透明,保障公益活动的可信度也值得进行应用探索。[2018/12/17]
异步:源分片发送消息,而目标分片可以在将来的任何时间接收此消息。
同步:目标分片在源分片确定发送之后的有限时间内接受消息。有多种方法可以实现此目的:·分片之间运行某种共识协议,并决定同时发送和接收,例如:分片拜占庭式原子提交。·源分片先发送,而相应的目标分片必须在一段时间内接收,例如:CBCCasper跨片消息传递。此方法要求在源分片和目标分片之间存在层次结构,否则,由于发送和接收冲突而可能导致僵局。·将跨片消息放置在信标链上,并强制目标分片在下一个交叉之前接收它们。
同步与Eth2.0的设计不兼容,因为它需要分片以某种方式协调发送和接收最终确定性。
数据传送
先前的机制涉及发送和接收的最终确定性,这与实际完成消息的发送或接收不同。这是数据传送机制的任务。
ETH2.0的设计要求所有共识活动仅在信标链中发生。这意味着所有跨片消息都必须“流经”信标链。这为我们提供了跨片数据传递的两种选择:
协议交付:协议通过使跨片消息在信标链上可用,来交付跨片消息的完整数据。这增加了信标链的开销,并严重影响了系统的可扩展性。
用户交付:该协议仅在跨片消息的最少信息上达成共识。然后,用户负责将与跨片消息关联的Merkle分支传递到目标分片。此方法更适合Eth2.0,因为它遵循仅在信标链上的merkle根上形成共识的一般原理。
共识层的拟议设计
为了优先权衡系统可扩展性,
异步发送/接收最终确定性和用户交付数据的解决方案是更可行的。在shard分片A上的用户?1发送Ether给在分片?B的用户2如下:
1.?用户1在shard?A上创建事务TX1,从EE1标记余额,并声明目标是用户2。
2.?当来自shard?A的crosslink包含在信标链中时,收集最后一个crosslink以来的所有跨片交易的merkle根出现在信标链上。这是shardA中包含TX1的证据。
3.?shardB发现了信标链上的这个merkle根,用户2创建交易TX2,显示shardB包含TX1的merkle证明。这允许将适当的金额标记到用户2在EE2上的余额。
执行层
跨片通信的执行层为用户和合约提供接口,以进行跨片传输和合约调用。该层的设计空间尚未得到很好的探索。关于此层的最新讨论包括:
执行环境中的跨片调用
分片之间可靠的价值转移
跨片调用
基本问题是:当不同的分片上调用另一个分片的功能时会发生什么?对于分片式区块链来说,设计并不是唯一的。它与在多个分区中分开执行应用程序的系统相同,例如:
单线程与多线程系统
单一算机与网络应用系统
受到上述系统的启发,简单设计可以是以下几种类型的调用:
异步调用,无返回
指定了回调的异步调用
同步调用
替代方法包括各种高级并发编程范例,例如
protolambda’scommitcapabilitiespost。
转载请保留版权信息。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。