Skip to content

区块链

5 / 8

自从比特币横空出世之后支撑比特币的底层技术即区块链技术引起了巨大的关注人们开始琢磨:“这个区块链技术还可以用在什么地方呢?” —— 当然人们琢磨得最多的还有另外一个问题:“我应该如何获利呢?”

1. 山寨币

2009 年至 2017 年之间至少有几千个山寨币出现而后批量死亡所谓山寨币就是对比特币进行了事实上并没有什么用的改造然后取一个什么名字然后就发布的所谓下一个比特币下一个机会……

有一个山寨币对比特币进行了最没用的改造 —— 只是把确认时间从 10 分钟改成了 2.5 分钟 —— 却最终顽强地活了下来…… 它叫莱特币(Litecoin)。也许是它的宣传语太吸引人了吧它说比特币是金我们莱特币是银于是大量觉得自己错过了比特币的人购买了莱特币…… 你看这世界多有趣它总是有一定的容错机制

2. 公链

2015 年年底以太坊开始融资;2016 云币成了地球上第一个上架交易以太坊的交易所…… 2017 以太坊成了最火爆的区块链项目

以太坊想要解决的问题是什么解决的足够好吗

历史证明以太坊是一次并不成功的尝试 —— 它想要成为一个区块链技术应用平台在这个分布式的计算机有它自己的编程语言用这个特定的编程语言写的程序被称为智能合约”;人们可以在以太坊这个平台上发布各种基于区块链技术的应用…… 也就是说它想要成为一条公链(Public Chain),顾名思义就是公众都可以使用的区块链

以太坊所遇到的困难其实是它尚未诞生之时已经被质疑的东西使用 PoW 共识机制的一条公链就是难以承载真正有意义的大规模应用即便是以太坊的 PoW 被设计成十几秒之内确认一次不要高兴得太早,10 分钟和 10 几秒事实上没什么区别 —— 因为真正有意义的大规模应用需要的是每秒钟成千上万次确认才可以……

缺陷最大的是以太坊独立设计的编程语言 Solidity,虽然最初的时候最大的宣传点是它图灵完整”,可事实上并没有什么用为什么呢因为不管谁写的编程语言都一样都难免有臭虫(bug)…… 可问题是这种编程语言是用来写所谓智能合约这种程序是直接涉及到钱的于是只要有问题就会被攻击以太坊上线没多久有个叫作 DAO 的项目就被黑客攻击转移走了大量的资产以太坊只好以紧急分叉解决问题于是遗留了一个今天人们不知道那是用来干什么的 ETC(Ethereum Classic),新的币叫作 ETH。

虽然以太坊计划将共识机制从 PoW 更新为 dPoS,但它现在面临两个问题:1. 如此这般的话那么只能再次分叉新的币叫什么好呢老的币又能干什么呢对技术人员来说是困扰对投资者来说是未知的风险;2. 基于 dPoS 机制的有多线程支持的分布式计算平台 EOS 早已于 2018 6 月正式上线……

3. 共识机制

首先在这里请注意我们所讨论共识是网络中节点之间的共识是机器与机器之间的共识而不是人与人之间的共识人与人之间的共识与区块链没有任何关系 —— “共识这个词常常被人们误用滥用这也是为什么我曾经戏谑地说傻屄的共识也是共识的原因我想说的是傻屄们死活搞不懂那不是人与人之间的共识然后吧他们还总是不懂装懂……

区块链本质上来看就是一个分布式管理的可不断添加记录却不能删除记录的数据库由于是分布式维护所以每次添加记录的时候要在网络节点之间达成共识确认要被添加的记录有效之后才能进行添加操作

比特币所采用的共识算法是 PoW(Proof of Work,工作量证明机制),简单讲就是网络中的节点根据自己的贡献获得权益多劳多得。PoW 在比特币这个区块链技术的第一个应用之中是完美无缺的可是正如你所看到的对野心在于创建一个分布式计算机的以太坊来说,PoW 就成了致命缺陷 —— 无论如何这种机制的新记录确认速度就是满足不了现实需求

dPoS(Delegated Proof of Stake PoS(Proof of Stake的进一步改良简单讲就是你作为持币者可以通过持有量和持有时间的多少获得权益。PoS 的问题在于大多数持币者并没有专业知识也不见得有足够的预算于是他们不见得能提供高性能节点所需要的计算机硬件和软件要求于是进一步改良的 dPoS 采用了基于投票选举的共识算法持币者选出若干个节点来运营网络……

小白对更多的技术细节可以直接跳过需要弄明白的是,PoW 无法支撑公链的需求 dPoS EOS 创始人 Dan Larimer 的创新概念,PoS 2014 年的 BitShares 时代就开始验证后来经过若干次更新改进变成了 dPoS。你可以将 dPoS 理解为一次为了平台性能相对于 PoW 而作出的妥协而这个共识算法目前来看是公链的最靠谱选择之一

4. 山寨链

正如曾经山寨币群魔乱舞一样,2017 年开始各种山寨链神出鬼没各种名称的共识机制漫天飞舞,Po 两个字母之后 A Z,全被用光了各种 PoX(Proof of something)…… 它们真的有存在的必要吗这些山寨链欺负普通民众不懂编程大面积抄袭反正抄袭已经没戏了的以太坊不划算于是只能抄袭已经证明为较为靠谱的 EOS。事实上除了这两个项目之外抄袭者们也没有什么其他的选择正如当年山寨币除了抄袭比特币之外也没有任何其它选择一样

这世界是有容错机制的山寨比特币的莱特币顽强存活到了今天也许那些抄袭 EOS 的各种项目之中也会有那么一两个最终幸存到底哪一个能够最终幸存我们没办法提前知道我们知道的是抄袭不可能超越所以山寨项目是留给那些想不明白的人的不是吗

5. 目的与手段

正如你所见打造一个不可篡改的分布式数据库目的而区块链技术是达成这个目的的手段再进一步所谓共识机制是区块链技术的一部分除了共识机制之外还有另外一个重要的组成部分奖励机制 —— 否则人们不会自动对网络有所贡献

长期以来所谓的技术创新基本上都聚焦在了如何改进共识机制之上而奖励机制被默认为不可或缺的组成部分人们以为共识机制和奖励机制就好像是区块链这架马车的两个轮子一样缺一不可

有没有可能去掉奖励机制呢然而在此之前还要问另外一个问题为什么要想办法去掉奖励机制呢

我们之前提到过乍看起来区块链技术应该被应用到很多地方

在一些场景下这个世界的确需要不可篡改的数据库技术比如法院的卷宗交通部门的违章记录工商部门的企业登记民政局的婚姻登记公安局的身份证大学的毕业证等等等等……

你看几乎所有的政务部门都需要不可篡改的数据库技术可是你不能让这些部门为了使用区块链技术而天天挖矿关键矛盾在于公共事务领域反正不是也不应该是靠利益刺激运行的

看来在一些场景下有必要去掉奖励机制 —— 可如何做到呢冯晓东设计的 Mixin Network 提供了一个解决方案 —— 它的非商业非营利版叫作恒信网络(HengXin Network)。

恒信网络是世界上第一个已被证明为可行的无币区块链解决方案

恒信网络通过使用 TEE(Trusted Execution Environment,可信执行环境生成了一个由中心化管理渐进为去中心化管理的可以无需奖励机制的分布式网络除了 TEE 之外恒信还结合了 DAG(Directed Acyclic Graph,有向无环图为基础辅以 ABFT(Asynchronous Byzantine Fault Tolerance,异步拜占庭容错算法作为解决方案构造了一个成本低廉易维护易使用性能高兼容性强的不可篡改的分布式网络

TEE(Trusted Execution Environment可信执行环境的作用是向公众证明网络中某个节点或称服务器) “正在运行的代码的确是它声称正在运行的代码”。简单来说你可以把具备可信执行环境的服务器理解为一个透明盒子外部可以看到它内部正在运行的代码 —— 换言之没有任何人能够在不被察觉的情况下改变这个透明盒子里正在运行的代码

网络设计者可以自己在网络上部署一定数量的透明盒子”,如此这般构成一个类自治的分布式网络 —— 这个时候这个网络虽然已然是分布式网络但依然是中心化治理的因为那些透明盒子是网络设计者自己部署的

然而这时这个网络已经具备一定的自治特征因为每个节点都是透明的所以即便是网络设计者本身也无法做到在他人不知情的情况下修改节点中正在运行的程序……

再进一步这个网络是开放的任何人都可以使用具备可信执行环境的服务器加入网络充当节点 —— 这里的关键在于加入者是因为需要这个网络需要这个网络所提供的服务才加入的而不是因为网络设计者对加入者有所激励 —— 需要注意的是恒信网络没有奖励机制

加入者越多网络越健壮安全性也会因此越来越高当网络的节点达到一定数量之后网络设计者可以撤掉自己当初部署的节点把整个分布式网络全部交由自由加入的节点管理…… 至此一个自治的非中心化管理的分布式网络终于形成

恒信网络的商业版,Mixin Network 2019 2 月主网正式上线迄今为止(2019 11 性能稳定已无故障运行 9 个月

a. 支持大规模高并发

与传统区块链不同恒信网络使用的是 DAG(Directed Acyclic Graph有向无环图技术它没有传统的区块概念它以每一笔交易为单位尽可能快的向整个网络进行指数级广播与此同时避免双花的是ABFT(Asynchronous Byzantine Fault Tolerance,异步拜占庭容错算法于是在恒信网络中每条交易记录的确认不再有时间瓶颈,TPS(Transaction Per Second)在恒信网络中是一个完全没有必要存在的概念 —— 恒信网络几乎和中心化服务器一样高效

b. 兼容各种其它公链

由于恒信网络的核心只做记账所以理论上它能支持所有公链的资产管理目前已支持的公链包括比特币以太坊、EOS、Ripple 50 余条公链数量一直在不断增加)。通过结合使用多重签名算法与异步拜占庭容错算法用户的公钥与私钥管理被封装了起来恒信网络的用户只需要通过最多试错 5 次的 6 位数字密码统一管理任何公链上的数字资产 —— 极大地降低了用户使用成本同时也极大地提高了数字资产的易用性

c. 关于所谓智能合约

与以太坊和 EOS 不同恒信网络只做资产管理网络至于所谓的智能合约”,在恒信网络中的解决方案是用户使用任何编程语言编写他们的程序而后将这些程序开源并运行在具备可信执行环境具体来说就是 Intel SGX)的服务器上公开透明地运行这些程序这么做的好处是智能合约与恒信网络本身无关恒信网络却能提供智能合约其实就是各种程序的完全透明运行环境

6. 分布式账簿技术

准确地讲区块链技术应该特指的是比特币的分布式账簿解决方案中所使用的技术分布式账簿的解决方案之中比特币的区块链技术理论上应该是其中的一支 —— 目前已有很多其它的可行解决方案比如上文中提到的基于 dPoS EOS 和基于 DAG + TEE Mixin Network。

我们可以从另外一个角度观察比特币的区块链技术

  • 问题分布式网络很脆弱它总是面临一个问题被称为拜占庭将军问题

  • 解决方案比特币的解决方案区块链技术的巧妙之处在于它并没有解决拜占庭将军问题而是绕过了拜占庭将军问题

    • 网络中的所有节点都参与猜谜”(所谓的挖矿
    • 每次猜谜都需要大约 10 分钟左右才可以完成以此降低分布式网络中各个节点之间的通讯频率
    • 谁最先完成谜题得到正解谁就充当一次分布式网络的中心 —— 这个节点会获得奖励这个节点会把含有获得奖励的交易记录的区块打上自己的签名广播出去…… 下一次通讯的时候这个分布式网络还是有中心的只不过每一次的中心都各不相同……

    于是从这个角度望过去比特币区块链的解决方案非常讨巧

    想办法让一个分布式网络像一个中心化网络一样工作……

也就是说区块链技术的重点之一就是通过降低分布式网络中的节点之间的通讯频率去保证每次都有一个节点最先完成谜题”,进而让这个节点充当一次分布式网络的中心”…… 偶尔会出现有若干个节点同时算出谜题怎么办还有进一步的技术解决方案,“选择最长链”(哈哈超纲了过于技术的细节不在本文讨论范围之内)……

于是我们可能会得出一个与绝大多数人不一样的结论

区块链技术本质上也已然被证明为只适合比特币……

所以未来真正改变世界的并不是狭义的区块链技术而是分布式账簿技术(Distributed Ledge Technology)—— 只不过现在的绝大多数人误以为区块链技术就是分布式账簿技术本身或者全部殊不知区块链技术只是分布式账簿技术的一个分支而已

区块链 | Reborn