区块链:巴比特专栏 | 区块链本质论:计算及共识本质

区块链本质论

区块链被大家关注事件好事情,但非常不希望看到各种区块链项目盲目上马,造成各种社会资源的浪费。区块链技术本身尚在发展阶段,还有很多核心技术问题有待突破,对区块链技术本质还充斥着各种不同的理解。我们将就区块链的计算本质,技术难点,业务调整,社会影响等方面和大家分享。

(1)计算范式

区块链的本质是使冯诺依曼计算体系不再依赖特定的计算物理设施,从而使得其计算过程和相关的存储和通讯,不再为单方控制,而由各个参与者多方分时控制。这是一种全新的计算范式,区块链计算范式,所谓的不可篡改数据库,仅仅是这个内涵的一部分外延。共识算法,分布式网络是当前实现这一计算范式的重要技术手段。这些是区块链的技术本质。

这是什么意思呢?之前所有信息系统,比如支付,搜索,推荐什么的,都是单一的一家企业掌握这个计算过程的全部,数据也好,计算代码也好,计算的输入/输出都被一个单一企业完全控制。如果这个计算是为了大规模的公众服务的,那么这个企业可以通过任意操纵这个计算过程,任意修改数据和状态,限定和歧视来自外部的输入,从而谋求高额利润甚至造成严重的社会问题(这类问题在搜索领域已经凸显)。同时企业也需要承担巨大的责任保护好这个信息系统的数据和计算过程,否则就会导致严重的大规模数据泄露问题(例如时常听到的拖库事件,导致几百万用户的个人数据被盗取,甚至如开房记录等)。

直击乌镇 | 万向控股王允臻:利用区块链进行生产力的重组,促进发展:金色财经现场报道,在今日举行的第二届世界区块链大会·乌镇现场《大风口,大时代,区块链发展历史新机遇》的圆桌论坛中,万向控股首席创新官王允臻对习主席的讲话有三点思考:其一,长期以来,政府对产业发展的现状和未来的把握,其二,数据安全,中国要起到全球的领导、示范作用,其三,利用区块链进行生产力的重组,促进发展。

数字资产研究院副院长、瑞新资本合伙人孟岩认为习主席的讲话为区块链带来两个“正”。正名,把区块链污名化的帽子摘掉了,这种污名化曾屏蔽了人们的认知,让他们没有耐心去了解区块链。[2019/11/8]

区块链计算范式,由多方来分时控制计算过程,而不是单一方

直击乌镇 | 百度区块链肖伟:百度超级链多个核心技术已开源:金色财经现场报道,在今日举行的第二届世界区块链大会·乌镇现场,百度区块链实验室负责人肖伟以《基于可信价值传递网络的智慧城市建设》为题进行了演讲。他表示,百度超级链自研技术优势是符合现有最高安全标准,商业?,政用,民用多样需求,自主可控设计初衷,同时多个核心技术已开源,建立行业生态。他还介绍,百度的使命是希望人们像使用电一样使用区块链。百度即将发布又一重磅区块链产品,它让部署更便捷,同时是真正的多方、开放、共享。[2019/11/8]

在区块链计算范式中,将是多家企业和机构,共同控制这个计算过程,这一步计算在一家公司的计算机上完成,下一步计算在另一家机构的计算机上完成。各家接力计算过程,任何一家机构,如果篡改计算逻辑,或者恶意修改数据,立刻会被下一个计算接力的公司发现,并且回滚到上一步正确的计算步骤。这个一旦预设好计算逻辑和规则,没有任何一家公司可以篡改,也没有任何一家公司可以操纵这个计算过程。

直击乌镇 | 腾讯区块链蔡弋戈:Libra的发行其实是加密货币的底层资产之争:金色财经现场报道,在今日举行的第二届世界区块链大会·乌镇现场,腾讯区块链业务总经理蔡弋戈以《数字资产基础设施的产业化道路思考》为主题进行分享。他表示,Libra的发行其实是加密货币的底层资产之争,监管合规是其最大的问题。Libra从钱包实施、协会组建一直在去Facebook化,但还是比较中心化。Libra使用了加密货币的形式,会极大普及加密货币的使用,而不仅仅用于投资、投机。Libra以法币为锚定,与供应链金融的数字资产JPMcoin以及DCEP在本质上是类似的。是法币以加密数字化形式的延展,完全尊重法币的发行体系。

蔡弋戈还表示,尽管现有7家机构推出其协会,但是仍有1600家候补。以FSB为首共识监管全球加密货币,目前仅Libra进入深度切磋阶段,幸存即胜利。合规化道路虽然曲折,但杀不死的会变更强。[2019/11/8]

这样做的一个核心优势是,在区块链计算范式中,当然像Google那样所谓的不做恶,将不再是个口号,而是一个可以被证明被验证的。也就是说区块链计算范式的根本优势在于:

直击乌镇 | PlatON创始人孙立林:区块链作为金融基础设施必须收取合理费用,并且是递次趋向于零:金色财经现场报道,在今日举行的第二届世界区块链大会·乌镇现场,PlatON创始人孙立林以《同意的计算:隐私计算时代区块链治理的思考》为主题进行了演讲。他表示区块链应用落地远未达到预期,原因在于基础设施的建设远远不够。直到今天全球都没有出现一个完备的区块链能够承担现阶段的支付清算。他还指出区块链作为金融基础设施必须收取合理费用,并且是递次趋向于零。[2019/11/8]

在业务全部信息可形式化的范畴内,让这个计算系统可以自证清白。

这件事情是之前互联网技术栈无法实现的,也是未来区块链计算范式给实际业务带来的根本上的全新技术支撑。正因为这个技术支撑,比特币得以实现,没有任何人可以操纵比特币系统既定的发行规则和转账规则,虽然这个网络允许任何人以匿名方式参与其接力计算过程,即出块。我们通常说的不可篡改数据库也源于这个技术支撑,我们一开始约定了数据不可篡改,只可追加,在区块链的计算范式下,这个约定就能被严格执行,不会被人为操纵。这里真正的挑战并不是设立不可篡改这个规则,而是如何让这个规则被严格执行,这一点是区块链的核心能力。

直击乌镇 | 腾讯区块链蔡弋戈:区块链票据打造数字资产真实化、可校验,能够成为真正的资产流:金色财经现场报道,在今日举行的第二届世界区块链大会·乌镇现场,腾讯区块链业务总经理蔡弋戈以《数字资产基础设施的产业化道路思考》为主题进行分享。他表示,现阶段数字资产交易备受关注。腾讯在数字资产方面的实践有供应链金融、区块链发票。

蔡弋戈特别指出,区块链票据打造数字资产真实化、可校验,能够成为真正的资产流,原因在于区块链票据是资产全生命周期的监管、是流转信息、流转资产。[2019/11/8]

(2)共识机制

提到区块链,Consensus是其中最为大家关注的一个新概念,被翻译成共识机制,或共识算法,或共识协议。这个东西到底是干嘛的呢?共识机制本质是一个解决方案,当一个分布式系统里面出现不一致的情况时,我们如何最终裁定一个唯一的大家公认的结果,消解这个不一致性。注意了,这里共识仅仅指分布式系统里面的一个算法方案,和我们通常意义上的舆论呀,社会认同呀,组织关系呀什么的,毫无关系,就像是雷锋和雷锋塔一样。别被忽悠了...

为什么区块链会需要共识机制呢,究其根本,源自于区块链的计算本质。

因为在区块链系统中,计算是通过全网各方接力完成的,在去中心化的区块链网络中,并没有一个总指挥来分派这个接力过程,那么即使没有恶意攻击,也难免会发生己方争抢接力的情况,从而导致整个系统中出现多个不一致的接力结果。而共识机制所起得作用,就是在这个时候最终认定,哪个结果该留下来,后面按这个接着走;哪个结果会被抛弃。

对于这个问题,很早在分布式系统领域,为了解决容错问题,早有答案,并被归纳为一个叫做拜占庭将军问题(TheByzantineGeneralsProblem),其对应的有效解决方案成为拜占庭容错(ByzantineFaultTolerance),就是经常听到的BFT。早在2007年,这个问题就有了高效的算法(PBFT),但是为什么2008年末,中本聪发表的比特币系统设计方案中却采用了完全不同的设计,而没有采用BFT类的算法呢?

我们先看看容错是什么?假设有100个传感器,在观测比如机器是否正常运转。那么如果有一部分的传感器坏了,给出了不正确的观测值,我们该如何最终推断正确的观测结果呢?这个就是容错。当然,逻辑上的解法正如你现在直接想到的,少数服从多数,事实上也确实如此简单。当然实际的算法中要互相传递和迭代最终认定的结果(基于数字签名),要限制结果认定的时间期限(所谓的epoch),要处理多数不够多的情况等。

从上面的例子可以看到,在BFT中,少数服从多数的这个数,来自于多少个共识的参与者。这个参与者的总是必须是预先设定好的。这意味着谁是参与者,得有个预先协商和设定的过程,在区块链系统中,有个叫法,叫做联盟链或者许可链(permissioningblockchainsystem)。这就是为什么叫做拜占庭将军问题,因为你得先是一个将军,那么问题来了,谁来批准你成为一个将军呢?

这就是比特币系统一开始不采用BFT算法的本质原因。在比特币系统中,并没有一个参与者的批准过程,任何人都可以直接参与这个共识过程,即所谓的公链或者叫无需许可链(permissionlessblockchainsystem)。这是,我们如何利用少数服从多数呢?我们连总共有多少个参与者都不知道。这个部分就是比特币系统设计最耀眼的部分。很多人不明白这件事情,就觉得比特币系统好像就是一堆现有技术的堆砌,没什么技术含量。

在比特币系统中,少数服从多数的这个数,不再是多少个共识的参与者,而是一次次的哈希部分碰撞的计算结果。然后结合最长链规则来形成共识,即所谓的工作量证明(Proof-of-Work)。从这里大家可以看到,工作量证明方案解了一个比拜占庭将军问题更难更挑战的问题,就是在参与者集合未知的情况下,实现共识的一致性。当然算法具体实现还有不少细节,工作量证明的难度调整呀,一致性后置的最长链原则,以及后面被改进的最重子树的原则等。

接着有了所谓的资产证明(Proof-of-Stake)共识系统,利用资产的数量来定义这个少数服从多数的这个数。利用资产的数量先行定义BFT共识算法中所需要的这个预设的参与者集合。这样,也可以实现无需许可链。也是一个不错的办法,只是,一开始初始的资产从何而来呢?

最后提一句性能,也就是吞吐量的事儿。很长一段时间大家以为吞吐量由共识算法决定,然后事实上并不是这样。上面提到的集中共识算法,都可以设定任意的块大小和出块间隔,来现实需要的吞吐量和块确认延迟。只要,整个底层网络有足够的带宽。

下一篇,我们会着重聊聊这个事情。

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

链链资讯

[0:0ms0-4:361ms