LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 新闻观点 > 解析对比当下炙手可热的区块链 3.0 项目

解析对比当下炙手可热的区块链 3.0 项目

2020-04-14 郭睿 来源:链闻

一、 什么是区块链 3.0 项目

近年来,区块链概念越来越火热,我越来越多的被问到一个问题,为什么还没有真正的大规模的商业化区块链应用出现呢?每次我都只能很遗憾的告诉大家,虽然区块链上有完整的颠覆性的商业模式,但是,区块链公链的底层技术还不足以支持大规模的商业应用,这里面最突出的技术问题就是系统性能低下。以以太坊为例,其全网所有运行的应用,可以使用的处理能力约 20-25 笔 / 秒,而针对一款日活千万级别的应用,其 TPS 峰值要求一般在 2000-3000 左右,所以现有的以比特币和以太坊为代表的区块链 1.0 和区块链 2.0 系统,完全无法支持大规模的商业应用。

而 TPS 这个限制为什么这么难以突破呢?正如同所有分布式系统在设计时都会面临的 CAP 问题一样,区块链系统也会面临自己的不可能三角:去中心化、安全和高性能。

去中心化的设计挑战,是如何保障网络的去中心性,这就要求该网络需要是一个对等网络,该网络中的机器的地位都是平等的,不存在任何特殊化的中心节点,同时为了保证该网络的去中心性,该网络需要是一个开放的无准入的网络,从而可以让人人都能够加入该网络,且该网络不会被一个或多个中心控制;安全的设计挑战,是保障该网络足够安全,不能被坏人破坏。在一个开放并与经济利益挂钩的网络中,不仅会有好人购买机器加入这个网络,也会有更多的坏人企图希望通过破坏该网络获利。那么,如何在网络内部存在坏人的情况下,保证网络的安全性,这已经突破了传统意义上的安全架构,是安全设计的挑战;高性能的设计挑战,则在于尽可能的保证网络的性能最优以及网络能耗最低;

以比特币为例,其设计目标在于要建立一个去中心化的货币系统,因此,首先就要求比特币是一个完全去中心化的开放网络,而为了保障整个网络的安全,比特币采用了工作了证明机制(POW),既网络中每个节点都需要通过猜 Hash 值进行挖矿,并参与共识以及记录全部数据的方式,从而让坏人攻击比特币网络时需要付出极高的成本。然而,比特币虽保障了网络的安全性,同时为此牺牲的却是系统的性能。目前,比特币网络每年的运维费用高达 100 亿人民币,而 TPS 却只有 7 笔 / 秒。

BM 为了解决这个问题,早在 2014 年就提出了自己的思路,既 DPOS 的共识机制。DPOS 机制的核心,就是通过每个节点持有的 Token 数量,在一个大规模的网络中选举出一小部分参与共识的节点,由这些节点之间进行共识,达成一致并出块,而不像比特币一样全网出块。以 DPOS 最新的代表 EOS 举例,EOS 每轮选举出 21 个节点,每 0.5 秒出一个块,3 分钟左右确认该块。据社区最新的 EOS 性能测试报告,其 TPS 约为 3000 笔 / 秒;但是,这种解决方案也带来了许多让人诟病的地方,其中最主要的有两方面,一方面这 21 个节点很难抵御大规模的 DDOS 攻击,黑客可以轻易通过 DDOS 这 21 个节点,瘫痪该网络;另一个方面,区块链强调的是完全去中心化和对等的网络,人人在该网络中都是平等的,不存在特殊化,而 EOS 的设计偏离了这种理念,让 21 个节点成为了特殊化节点,很难避免包括腐败、串谋和被 21 个节点中心化控制的问题,所以业内更多将 EOS 看做是一个“半中心化”的网络。在区块链不可能三角中,EOS 偏向了效率,牺牲了一部分去中心化和安全。

能够更好的在不牺牲去中心化和安全的前提下,进一步提升区块链系统的性能,突破区块链不可能三角,这必然需要在技术上完成重大的创新和突破才能够实现,我们把这一类项目称之为区块链 3.0 项目,近年,特别是 2018 年以来,全球多支团队都在做出自己的努力,其中最突出的就是 Dfinity、Oasis、Thunderlla、Algorand、zillaqa、Ultrain 这几个项目,我们下面逐一对其原理和特点进行分析。

二、 著名区块链 3.0 项目分析

Dfinity:基于门限签名技术的共识新思路

Dfinity 是 2016 年在硅谷启动的项目,其创始人 Dominic 是以太坊早期密码学协会的核心成员之一;Dfinity 做出的最突出性的贡献就是将密码学中的门限签名技术引入到共识算法中。Dfinity 的共识思路是这样的,首先将全网节点随机分为 N 组,每轮共识开始时,随机挑选出块节点和见证人节点,出块节点完成出块后,由见证人节点见证选择哪个块做为最终块上链,同时,在出块的过程中也会随机的确定下一个负责出块的出块节点,从而完成共识的继续向下执行。 但是,由于没有 POW 的算力消耗做为安全保障,为了提升系统的安全性,Dfinity 的出块节点和见证人节点并非单一节点,而是节点组。比如其每轮的出块节点就是由 400 台机器构成的节点组执行出块。而其采用的门限签名技术,保证了一个数据块,被该组中任意超过 51% 的机器(既超过 201 台机器)签名后,就可以生成可被外界验证的数据块,同时可以生成用于选择下一轮节点的随机数,通过这种方式,大大的提升了攻击难度,从攻击一个节点,变为了攻击一组节点,提升了系统安全。在密码学领域,VRF (可验证的随机函数,verifiable random functions)是一大类别,门限签名函数是另一大类别,而 Dfinity 在技术上的最大特点,就是找到了一个同时满足 VRF 和门限签名特点的函数,保证了其算法可实现。基于该共识,Dfinity 对外宣称的是其 TPS 已达到数百笔 / 秒左右,每个块的确认时间为 7.5 秒。

Dfinity 的共识机制确实非常巧妙,但还存在一点小瑕疵,由于门限签名中的”组”的建立过程非常复杂,所以每一个组建立后,需要保持很长一段时间,这时就存在一个潜在的经济学博弈问题,即该组的群签名可以通过多个成员的合谋的方法来预测,而这个合谋的成本很低,群成员可以知道自己是属于哪几个群,通过互联网等多种手段可以很快找到与其是同一个群的成员进行合谋,合谋的成员可以协同计算出群私钥,快速预测出下一轮的随机数,从而破坏网络的公平性。因为这种攻击是非常难被发现的,可以做到零攻击成本。该问题我们已经提交给 Dfinity 团队,目前还未得到答复。

在进度方面,Dfinity 现在已经在公司内部网搭建了一个运行网络,录制并公布了该网络的运行视频。

Algorand:基于随机算法的高 TPS 共识

Algorand 是图灵奖得主、MIT 教授 Sivio Micali 于 2017 年 5 月发布的区块链共识协议,其主要思想是结合随机和 BFT 算法,在完全去中心化的网络上实现高 TPS。

Algorand 的共识过程如下:

第一步,角色确认阶段:对一个大规模网络,每个共识轮次开始时,每个节点先采用 VRF (可验证的随机函数,verifiable random functions) 生成一个凭证,用该凭证随机选出本轮参与共识的节点,被称为 " 投票者 ",而其中凭证值最小的被选为“提议者”第二步,分级共识阶段:提议者负责组装本轮的候选区块,然后由投票者对本轮的领导者达成共识,也同时确认本轮收到的候选区块;第三步,二元拜占庭阶段:验证者对候选区块投票,即要么接受该候选区块(认为该区块没有问题),要么不接受该候选区块(认为该区块有错误,比如双花,不接受该区块,替换为空区块)最后,广播本轮确定的区块到全网。

Algorand 通过每轮随机选择共识节点的方式,在保障网络安全的基础上,有效提升了系统的 TPS,根据其论文给出的数据,可以共识的交易是 750M 字节每小时,按照比特币每笔交易长度 250 字节计算:75010241024/60/60/250=873.8 TPS。

以上介绍了 Algorand 算法的主要内容。

该算法总结下来,还存在一定的提升空间:

1.Algorand 现在的主要功能就是转账交易,其功能可以对标为比特币,而做为区块链 2.0 中最重要的智能合约方面的改进,algorand 在论文中并没有讨论如何支持智能合约到 Algorand 的网络;
2.Algorand 网络的前提是,诚实“投票者”数量占比在 2/3 以上,但并没有讨论如何保障这一点;
3.Algorand 的算法在每个阶段的每个子步骤,都要求完全随机选点,坦率的说,该工程复杂度还是非常高的;

Algorand 在论文发布后,已组织团队快速推动项目的研发,社区正在等待 Algorand 的工程落地的发布。

Thunderlla:POW 和 POS 结合

Thunderlla 的核心创始人是康奈尔大学计算机系教授 Elaine Shi。其提出了这样一种新的算法。当网络中加速器 (Accelerator) 节点和 3/4 的委员会(committee)节点为诚实节点,并且网络状况比较好的时候,Thunderella 可以实现快速异步处理,在 <1 秒之内做出确认,对交易几乎是瞬间相应。而当网络出现异常时(比如出现了拜占庭将军问题),启动冷却 (cool-down) 机制,切换到传统区块链共识(慢速链),保证网络的安全和可持续性,并在网络恢复时自动切换回快速模式。由此,可以实现绝大多数时间与情况下,网络超过目前区块链 1000 倍的处理速度,以及遇到问题时依旧可以通过慢速链抵御 49% 的恶意节点,这里的慢速链,既可以是比特币,也可以是以太坊,或是其他的区块链一言以蔽之,即友好环境下瞬间响应,恶意环境下安全可靠。

这种算法可以看成是 POS 与 POW 的混合体,希望能够同时具备 POW 和 POS 算法的优势,不过这里有几个关键问题,比如如何保证 3/4 的委员会成员节点是诚实的,以及如何激励和剔除恶意委员会成员,没有明确提到;并且重启模式依然不太明确,比如如何选择下个加速器等。

从进度上说,Thunderlla 在公布论文后,还没有进一步的项目进展公布。

Oasis Lab 的 Ekiden:基于可信环境的性能提升

Oasis Lab 是 2018 年启动的项目,其创始人 Dawn Song 是加州大学伯克利分校计算机科学副教授。Ekiden 的主要思想是将共识层和计算层做了分离;在计算层用符合 TEE (可信执行环境,比如 Intel 的 SGX)的硬件组成,智能合约的计算放到 TEE 里面去执行,而共识层采用 POW 或 POS,只验证和共识 TEE 计算结果。

这种方法有两个特点:

1)计算节点和共识节点分开,计算节点里面可以执行任意复杂的逻辑,通过少量的可信计算节点来相互印证计算结果,所以执行效率很高,基本上等效于单机执行效率,然后还能并行多机执行不同的合约;
2)隐私保护,链上只存储加密后的数据状态(甚至是加密后的合约代码),解密只在 TEE 里面完成,然后计算结果从 TEE 出来后又是加密的回到链上。

从 Ekiden 的整体设计来说,其安全性完全依赖于 TEE 可信执行环境,虽然巧妙的解决了安全性的问题,但实际也会存在安全隐患,比如 2017 年 3 月,奥地利格拉茨技术大学的研究人员破解 SGX 的防护,因此,完全依赖单一硬件的安全性是否可靠尚待时间的检验;同时,TEE 的原理是私钥保存在芯片生产商处,比如 SGX 就是私钥由 Intel 负责,所以芯片生产商就成为了一个中心化的节点,并没有实现区块链完全去中心化的理念。

从进展上说,Ekiden 的进展还是较快的,其网站上已经可以让用户提交自己机器的配置进行测试网络的申请,但是目前还没有相关该测试网络的性能方面的数据放出来。

zilliqa:基于分片技术实现高 TPS

Zilliqa 是第一个上线具有分片技术测试网的公链项目,其功能现在比较简单,就是转账交易。其核心思想是通过分片的方式,大幅提升 TPS。分片的核心思想就好比,传统的区块链是一条主链,可以将其看成一个单核的 CPU,只能串行的进行数据处理;如果该主链是由多条子链构成的,可以将其看成一个多核的 CPU 处理器,那性能就可以实现倍数级别的提升。

但该算法仍存在以下几点不足:

1.zilliqa 数据处理分片,数据存储不分片;相当于在数据的计算上提升了性能,但在数据的存储 / 同步 / 共享等方面会带来效率问题,将极大的制约其性能的提升空间;同时对上层的智能合约的实现会极度的不友好,这种方式更适合特定的应用场景,比如科学计算等,却非常不利于开发者使用
2. 跨分片没有成型,对全局的数据和状态怎么管理没有很详细的描述:所有的分片的实现,最核心的需要解决的问题就是出现跨分片时如何处理,而 zilliqa 对这块还没有解决方案。

目前,zilliqa 已经上线了测试网络,同时其透露出的内部网络的测试数据,是在 3600 台机器上,在 6 分片的情况下,可以实现 TPS 2000 笔 / 秒。

三、 新一代的区块链 3.0 项目 Ultrain

以上我们介绍了近期较著名的一些区块链 3.0 项目,为了突破区块链不可能三角,Ultrain 也做出了自己的贡献,提出了全新的 R-POS 共识。

我们做一个通俗化的比喻,类似 EOS 采用的 DPOS 共识机制,就是有一群人通过持有的代币数量多少,投票选出做决定的固定数量的一小组人,由这一小组人轮流做决定;而 R-POS 机制,就是在一群人中,先随机选出几个人同时做出各自的提案,然后再随机选出 10 倍的人,判断之前的提案是否正确,最终由这些人将正确的提案整合到一起,形成最终的决定。
所以,R-POS 的核心思想,就是在 DPOS 的基础上,将每轮参与共识节点的选择方式,从委托选举变为随机选举,保证每轮全网节点都有几率被选举成为少数参与本轮共识的节点,从而既保障了网络的去中心化,又可以极大的提升性能,同时,Ultrain 通过引入并行技术、分片技术、设备指纹技术以及多个密码学的改进,保证了 R-POS 在安全性和性能方面的进一步提升。

基于以上的设计思想,Ultrain 在 18 年 7 月初已经发布了 R-POS 的概念网络,在公开的亚马逊云的 1000 个节点上部署了 Ultrain 系统,经过实际测试,该网络可以达到平均 3000TPS,确认时间为 10 秒,其性能远远超过现有的区块链 3.0 项目,另外,预计明年 4 月份公网上线后,会同步部署分片技术,届时网络的 TPS 还可以有几十倍以上的提升。

区块链 3.0 项目的落地,是区块链赋能实体经济的必由之路,希望全球的各支公链团队都能快速发展,尽快解决现有区块链公链无法支持大规模商业应用的核心问题,让区块链技术帮助实体经济建立全新的商业模式,推动社会生产力的大幅提升。

—-

编译者/作者:郭睿

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...