深度解析区块链的分布式模式

本文从分布式系统角度讨论了区块链中的几种创新模式:不可变模式、异步和共识以及网络容错可靠性。

不可变模式

区块链是不可变的。分布式系统已经在相当一段时间内依靠不变性来消除异常。比如日志结构的文件系统、日志结构的合并树和Copy-On-Write是分布式系统中用于模拟不可变数据结构的常见模式/技巧。区块链以类似于事件溯源EventSourcing的方式来处理事务,这是分布式计算中用于处理事实和操作的常用技术。不是用最新数据覆盖旧数据,而是创建一个包含所有事件/行动的只能不断追加append-only的日志。

帕特·赫兰德在他重要的流行论文“不变性改变一切”中描述了不变性:

会计师不能使用橡皮擦;否则他们旧可能蹲监狱。分类流水账中的所有条目都保留。可以进行更正,但只能在分类帐中新增要进行更正的条目。正如当公司的季度业绩公布时,会包括上一季度的小幅修正,这种小修正是属于追加性质的,因为上一季度的数据已经公布,无法改变,只能在本季度进行数据修正,这种修正从时间角度看实际是新增追加。

Bitget与比特币一禅学院达成深度合作:据官方消息,Bitget与比特币一禅学院达成深度合作关系,共同推动国内市场和社区共识的发展。

Bitget总部位于新加坡,是一家专注于衍生品的数字资产交易平台。Bitget去年完成由游戏公司SNK领投、安澜资本跟投的千万美金B轮融资,目前估值为10亿美金。截至目前,它在全球拥有110万多注册用户,合约交易量位居世界前五。

比特币一禅学院具备十余年金融从业经验,过往研究投资股票、基金、期货、黄金等,转战区块链行业四年,业务涵盖数字货币现货分析、期货合约策略以及投资者教育培训服务等。现开设现货衍生品培训班,帮助更多用户入门。[2021/3/9 18:29:06]

区块链是简单的分布式会计分类帐,因此名称称为DistributedLedgerTechnology,简称DLT。

Waves基金会与Suterusu基金会达成深度战略合作:据官方消息,知名公链项目Waves基金会联合旗下Gravity Tech同Suterusu基金会宣布深度战略合作,共同推动二层隐私计算、公链和defi的合作,Waves和Gravity将集成Suterusu原创的零知识证明算法构建隐私二层网络,给数据和交易加密。截止目前,SUTER在Gate和Kucoin的最高涨幅均超过72%。[2020/8/22]

异步

区块链可能运行在距离数千英里的各种服务器上。在这种异步网络中想保证各种订单交易的前后顺序性是分布式系统经典问题。所有不可能的理论如像FLP定理(分布式系统的共识(consensus)算法)和CAP定理都适用于区块链。

Asproex阿波罗与考拉财经Coinkaola达成深度战略合作:据官方消息,7月27日,Asproex阿波罗与考拉财经Coinkaola正式达成深度战略合作,今后,双方将各自发挥自身优势,在应用落地、生态拓展、媒体资源等领域上强强联合,携手共建区块链产业新生态。

据了解,考拉财经Coinkaola是集行业新闻、资讯、行情、数据、百科、社区等一站式全球化区块链产业服务平台,秉承着“让一部分人先看到区块链的未来”初心,追求及时、全面、专业、准确的资讯与数据,致力于为区块链创业者以及数字货币投资者提供最好的产品和服务。

Asproex阿波罗作为首家离岸银行控股持牌交易平台,也是一家涵盖CTO企业通证上市的交易平台,持有5国牌照,为全球中小微企业提供融资难的解决方案,助力数字化上市。[2020/7/28]

如同分布式系统一样,区块链块中没有“现在”概念,分布式系统中的不同节点的时钟可能会相互隔离,因此,在全局所有机器上的对事件进行全局性的实时排序并不简单,因为所有节点时钟不能始终处于同步之中,因此使用机器本地时间戳将不再有帮助,除此之外,消息的延迟可以达到任意时间,可以是毫秒或秒级,甚至达到分钟甚至几天的数量级,对于比特币区块链,创始人中本聪设计了一种巧妙的方式来排序订单交易,以防止双重支出的问题,在没有全局时钟情况下使用了分布式Timestamp服务器。中本聪的比特币白皮书中说:

公告 | 平安银行:各项相关业务深度借助区块链等科技手段 旗下没有陆金所:平安银行在回复投资者提问时表示:平安银行各项相关业务深度借助人工智能、区块链、物联网、大数据等科技手段。同时平安银行还表示,目前没有子公司,旗下没有陆金所。[2019/10/17]

我们的解决方案是基于时间戳服务器,时间戳服务器的工作就是通过获取要被时间戳标识的某个区块的条目的哈希值,然后广泛发布这个哈希值,例如在报纸或BBS帖子中,总是附加具体的发布时间,这个时间戳提供了当时数据存在的证明。每个当前时间戳包含之前的时间戳哈希,由此形成一个链条,这样一个时间戳相当于有两份存在证明,更加坚固可靠。

这类似于DBMS中通过事务日志记录保存所有对数据库的写入操作事件。在这种情况下,区块链本质上是一个分布式事务日志。

麦迪森控股:推进区块链深度合作,加快驱动战略转型:继4月3日,麦迪森控股发布日本著名虚拟货币交易平台BIT Point股权收购计划后,又有重大动作。今天上午8点,集团再发公告,就此次交易合作事项进一步做出补充说明,根据公告显示,集团与BIT Point已就虚拟货币交易平台以及相关业务的投资布局与发展具体计划签署一致协议。麦迪森控股集团借助BitPoint在虚拟货币业务的技术积累以及在海外市场的资源优势,完成业务战略加速转型,并实现自身快速发展盈利可期。[2018/4/17]

共识

在没有全局同步时钟的情况下,决定订单交易顺序的唯一方法是通过分布式共识。就像在分布式机器上对事件/事务进行排序达成共识一样,但是在分布式系统中达成共识很困难:

FLP表明,在异步网络中,消息可能被延迟但不会丢失,如果至少有一个节点发生故障停机了,那么就不可能达到所有机器获得共识一致。

能够对网络的崩溃故障进行容错的算法有:Paxos,Zab,Raft,Viewstamped复制,这些网络容错算法能够在流程或机器可能发生崩溃或导致消息传递延迟的情况下达成共识一致性。上述算法通常在一个可控的组织内实现分布式系统。

区块链工作在更加复杂的条件下,用来处理称为“拜占庭将军问题”的故障类型,其中一些节点可能是恶意的,因为节点是由不相互信任的不同实体/组织运行。区块链假设是你自己的网络并不在你身边。因此,您需要拜占庭容错算法才能在区块链中达成共识。拜占庭容错算法已经在分布式系统文献中存在很长期的研究了。1999年,MiguelCastro和BarbaraLiskov介绍了实际拜占庭容错算法,该算法提供了高性能拜占庭状态机复制,每秒处理数千个请求,延迟时间为毫秒级。虽然这篇文章是在1999年写就的,但是直到比特币在2008年使用“工作证明”算法,还没有其他BFT算法的已知实践实现,只是在一些系统中用来限制垃圾电子邮件。区块链引起了对BFT算法重新研究的兴趣,并在学术界积极努力下催生了大量新的BFT算法,一些应用案例包括ProofOfStake,Bitcoin-NG,Tendermint和HoneyBadger.。

网络可靠性

与普通人大众想法不同的是:网络默认是不可靠。分布式系统工程师必须处理这个冷酷事实。比特币和其他加密货币被建立在互联网上工作,其中网络分区和消息丢失/重新排序是常见的。有趣的是,区块链数据结构本身是检测消息丢失和重新排序的一种聪明的方法。每个块都有一个指向前一个块的指针,类似于一个链表,可以很容易地检测到丢失的块。再次引用中本聪语录:

新的交易不一定需要广播到达所有节点。只要能到达大多数节点即可,这些新交易很快进入一个区块中。堵塞广播也能容忍消息的丢弃。如果一个节点没有收到一个块,它会在接收到下一个块时,如果意识到那块被忽略了就会重新请求它。

这个原理类似于复制交易日志或日志传送,这是用于保持副本同步的常用技术。当一个交易日志被订阅关注时,就会提供了一个简单的机制来检测差距和修复副本。类似地,可以通过检查区块中的merkle根来验证块链中每个块的完整性。因此,很容易发现缺少的交易。提醒一下,merkle树是在复制同步技术anti-entropy中非常常用的技术。

区块链是一个令人兴奋的技术突破。让我们首次拥有一个在不相互信任的实体之间实现的分布式数据库。我们还处在这个有趣技术的早期阶段,类似于当初编写第一个分布式的NoSQL数据库,如亚马逊的Dynamo或Google的BigTable时期。这些分布式数据库为我们展示了构建大型数据库的新途径,并且开辟了新的设计模式和数据结构。NoSQL数据库现在已经被商品化了。如果您听到有关新的NoSQL数据库,90%的模式和算法是一样的。DLT也正在经历类似的阶段,最终将成为商品化。但是现在还是早期阶段,我们正在挖掘建立它们的最佳模式。

免责声明:CoinVoice文章仅为资讯传播用,不构成任何投资建议。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

[0:15ms0-2:330ms