虚心的向古典互联网学习,创造咱们所向往的加密经济网络

在上一篇中,咱们 畅想了区块链的将来。秘猿科技在行业内有着丰富的工程实践经验,在多年的实践中,咱们不由思考:区块链技术到底能用来干什么?区块链是要像以太坊同样成为世界计算机吗?若是要看成世界计算机来用,不得不说,区块链与云计算平台相比劣势明显:云计算平台能够支撑无限的吞吐量,能够提供完美的用户间隐私保护。可是咱们知道,区块链之因此会有这些劣势,并非因为设计的疏漏。偏偏相反,中本聪想请楚了Ta想要的是什么,在Ta看来,为了那个目标放弃一些东西是值得的。世界计算机不该该是区块链的目标,设计者不该该被这个错误的目标误导,那么,什么才是区块链真正的目标呢?

秘猿科技区块链小课堂第 12 期算法


区块链须要成为世界计算机吗?

若是抛开区块链的概念,就字面意思理解“世界计算机”,那应该是一台全世界用户能够共同使用的计算机。在世界计算机中,咱们应该能够搭建和部署本身的应用,由世界计算机帮咱们执行;咱们能够在世界计算机上保存各自的数据;不只如此,应用之间还可以完美的协做,共同完成咱们交待的任务。我很喜欢这个想法。segmentfault

其实在区块链出现以前,咱们已经拥有了这样的世界计算机,咱们称呼它为“云计算”。云计算提供的服务能够被全世界的用户访问,经过这些服务咱们能够搭建和部署本身的应用,保存应用数据;应用可使用诸如HTTP这样的通信协议和公开的API接口进行协做,共同完成某一个任务。这些年,云计算也没有中止进化的脚步,从IaaS到PaaS再到FaaS,抽象层次愈来愈高,能力愈来愈强大,使用愈来愈方便。设计模式

若是要看成世界计算机来用,不得不说,区块链与云计算平台相比劣势明显:云计算平台能够支撑无限的吞吐量,能够提供完美的用户间隐私保护。可是咱们知道,区块链之因此会有这些劣势,并非因为设计的疏漏。偏偏相反,中本聪想请楚了Ta想要的是什么,在Ta看来,为了那个目标放弃一些东西是值得的。浏览器

世界计算机不该该是区块链的目标,设计者不该该被这个错误的目标误导,设计者必须有本身的权衡。安全

Ask the Right Question

若是跳出区块链的深井来观察,咱们提出的问题不该该是“如何打造一台世界计算机”,也不该该是”如何解决区块链面临的性能和隐私两大难题“。区块链只是一种技术工具。咱们能够清楚看到的是,人们想要的不是区块链,而是加密经济。做为Nervos的设计者,咱们试图回答的是这样一个问题:
如何为将来的加密经济设计基础设施?网络

问题的答案能够是区块链,也能够不是区块链,但不管如何,它必须支持自我保障协议,这是加密经济的基础,同时也必须解决它在今天遇到的问题,好比交易性能,以及交易隐私 - 没错,咱们依然要解决性能和隐私的问题,但问题的主体是加密经济,不是区块链这把在咱们的工具箱中闪闪发亮的扳手。架构

自我保障协议与加密经济

加密经济(Cryptoeconomics)是区块链发展多年之后造成的全新经济体。这个经济体与其余的虚拟经济相比较时显得鹤立鸡群,由于她是咱们迄今为止创造出的最活跃的市场:她与互联网通常大,跨越不一样的国家和地区,吸引了成千上万来自不一样国家的市场参与者;她将我的创造和交易数字资产(Cryptoassets)的成本降到极低,正如当年博客与微博将传播的成本降到极低而后汇聚了史无前例的注意力同样,她也汇聚了史无前例的流动性;她永不停转,7*24小时不间断的为用户提供服务。编辑器

维护这样一个跨越地域的自发市场运行的,不多是受到地缘限制的传统制度,只能是在任什么时候间、任何空间都可以成立的广泛规律:数学、理性、博弈,等等。加密经济的大厦正是创建在密码学和博弈论之上,经过精心设计的自运行制度激励用户共同保障市场中各类协议(即合约)的执行,进而保证市场参与者的资产全部权和交易执行,维护市场的稳定运行。因为加密经济中的协议是由一种去中心化的机制,而非参与者之外的第三方来保证明施,我把它称为自我保障协议(Self Enforcing Protocol)。工具

自我保障协议是加密经济的基础,也是一种前所未见的新物种。“古典”互联网所依赖的网络协议是一种乐观的协议,设计者老是假设参与方会遵循协议的规定,按照协议规定的步骤行动。而现实与理想截然相反,互联网协议的参与方每每无心甚至有意的不按照步骤行动,其后果就是协议的执行被任意的破坏和停止,遵循协议的参与者只能重试或是更换协做者。这一类协议打造的互联网是一个充满了不肯定的网络,一个没法为数字经济提供原生支持的网络。性能

信任的创造和传导

<The Economist>在2015年给区块链取过一个十分恰当的名字,“The Trust Machine”。我喜欢把这个名字翻译为“创造信任的机器”,正如Candy Machine是制造糖果的机器。做为一个喜欢动手创造软(shi)件(jie)的开发者,“创造信任”是我能想到的最酷炫的一个目标了(因而我司的Slogan是We Build Trust)。有趣的是三年过去后的今天,区块链真的变成了能够凭空变出”糖果”的Candy Machine,一系列五花八门的功能被注入区块链,也不在意“古典”技术方案会不会是更恰当的选择。

从架构的观点来看,将一个系统的总体功能分层或分解,交给不一样的功能层或是功能组件去处理,是一种优于将全部功能都耦合在一个单体中的设计模式。咱们甚至能够说解耦是全部复杂系统设计的核心。UNIX的管道设计,在传统桌面软件和互联网服务都有应用的Model/View/Controller模式,插件架构的编辑器VIM都是很好的例子。互联网一样经过不一样的网络协议实现数据传输、邮件递送等不一样的功能,在这一组协议中也包括由PKI(Public Key Infrastructure)和TLS(Transport Layer Security)等与身份和加密有关的协议,它们共同构建了互联网的信任体系。

PKI体系负责创造、管理、分配、使用、存储以及撤销数字证书,解决数字身份与物理身份对应的问题。数字证书颁发机构(CA)负责管理和发放数字证书,将用户/企业的身份与公开密钥连接在一块儿。数字证书颁发机构能够给其它数字证书中介机构颁发证书,造成层层相连的证书链。基于数字证书,互联网上的网站与网站之间,用户与网站之间,以及用户与用户之间能够创建安全保密的信息交换通道。好比说,当用户访问电商或者银行网站时,就是经过数字证书以及HTTPS(HTTP over TLS)协议来创建安全连接。

这是一个分工协做的系统:PKI只关心身份和数字证书的管理,数据的加密传输由HTTPS来完成。PKI自己又是一个分层的架构,处于系统最底层的是根证书颁发机构,是整个信任链的起点,根证书颁发机构自己的数字证书被默认内置在浏览器等软件中,受到全部互联网用户的信任,这种信任经过证书链被层层传递上去,最终被注入这个体系中全部的互联网服务。根证书颁发机构只作证书管理这一件事情,它们不关心电商、游戏或是其余任何具体场景的业务逻辑,这些场景中发生的数据交互也不须要通过根证书颁发机构。根证书颁发机构为互联网创造信任,它们是整个互联网信任体系的“引擎”。之因此“引擎”两个字要加引号,是由于根证书颁发机构终究仍是人来管理的企业而不是机器。

互联网创建了一个很是成功的信任网络,并且运转良好,没有遇到性能或是隐私的麻烦。究其缘由,是由于互联网采用了一个分层和解耦的架构。这个古典信任网络惟一的问题,在于其可信等级还不够高,由于咱们须要相信根证书颁发机构的实力和人品(根证书颁发机构发生的安全事故并很多);在于它缺少对自我保障协议的内在支持,咱们没法在其中定制和实现可以自我保障执行的协议。咱们须要解决这些问题。所以, 咱们理想中的加密经济网络基础设施,一样应该是分层和解耦的架构,经过一组协议而不只仅是一个协议来定义,对自我保障协议提供原生支持,而且有一个无需依赖任何第三方的信任链的根。

是时候让闪闪发亮的扳手登场了。

CKB: Nervos的信任引擎

区块链是创造信任的机器,是一个不依赖任何第三方的由算法和经济激励维护的的网络。区块链恰好是咱们想要的那个无需依赖任何第三方的信任链的根。

咱们为Nervos网络打造的信任引擎叫作CKB(Common Knowledge Base),共同知识库。这个名字源于咱们对区块链的认识,在CKB白皮书的附录中有详细描述,这里再也不赘述。CKB位于Nervos网络的最底层(咱们称为Layer1),是一个全新设计的公有链协议,是Nervos网络信任链的根,是整个Nervos网络的安全之锚。在CKB以外,Nervos还要定义Layer1与Layer2之间的信任传递协议,将CKB创建的信任传递到上层,保障Layer2 DApp的执行,保障整个Nervos加密经济的运行。这是一个相似PKI体系的分层信任网络,绝大部分的计算、存储、网络传输发生在Layer2,只有在Layer2的运营节点做恶,产生信任问题时,用户才须要与Layer1交互,提交密码学证据给CKB,CKB根据证据和事先肯定的规则进行仲裁,由此保障Layer2上协议的执行。Layer1的目标是安全,Layer2的目标是计算。

CKB自身使用PoW共识,经过PoW将CKB与现实世界中的能量锚定。选择PoW是由于这是目前已知的最为可靠的开放网络共识协议。Nervos网络由此造成一个树状的信任传递网络:

能量 -> Layer1(CKB) -> Layer2(AppChain etc.) -> DApp

须要特别指出的是,这样的分层架构对Layer1会产生彻底不一样的要求,咱们没有看到能知足这样要求的公有链设计。这样的目标和现状要求咱们必须从新设计Layer1。所以,CKB与其余的公有链有着彻底不一样的设计目标,具体来讲:咱们但愿尽量的最小化CKB的职责,专一于安全的共识,为上层建筑创造信任,而不是最大化CKB,让它可以支持各类通用的业务场景。正如PKI体系中的根证书颁发公司无需关心具体的应用场景。优美的设计产生于简单和平衡而不是叠加。

所以CKB只须要保留两个功能:一是简单安全的共识算法,二是支持Layer1与Layer2之间的信任传递协议。

咱们的研究与工程团队正在设计和实现一个新的PoW共识,目标是在保证安全的前提下,尽量的挖掘PoW的潜力,提升CKB的吞吐量,缩短交易确认时间。因为Nervos网络中的大部分交易将发生在Layer2,我相信经过新的PoW算法和对并行计算友好的Cell模型(见Nervos白皮书)所实现的性能能够支撑Nervos网络前期的需求。

为了支持Layer1与Layer2之间的信任传递,CKB选择了以状态为中心的设计,提出了Cell模型这样一个不一样于帐户模型和UTXO模型的新状态模型。Cell模型是UTXO模型的最小天然扩展,将只关心数字的UTXO扩展为能够保存任意数据类型的Cell。Cell是实现Layer1和Layer2之间的信任传递协议的基础,由于咱们必须有方法来保存状态,同时这个保存状态的方法应该是一个恰到好处的程度,很少很多(e.g. 咱们不须要一个KV或是SQL DB)。咱们须要一个作状态验证的虚拟机,这个虚拟机不须要支持太多的场景,最好也是刚恰好。状态在Layer2上生成,在Layer1上记录和验证。

因为不只仅要考虑自身的安全,还须要考虑如何支持信任传递协议和Layer2,CKB的经济机制也面临着更大的挑战。CKB代币将是Layer2的抵押物,是Nervos网络默认的价值存储手段(SoV)。这方面咱们须要更多的研究,幸运的是有很是棒的经济学家在帮助咱们。

能够看到,Nervos从总体出发的设计思路,使CKB在设计初始就以Layer2的需求为优先。在多个方面。这将使得在Nervos网络中实现Layer2方案会更容易。这是Nervos独特的方法论。

A Better World

加密经济网络是互联网发展到成熟的阶段的天然延伸。互联网经历了本身的1.0和2.0,成就了GAFA(Google/Apple/Facebook/Amazon)与BATX(Baidu/Alibaba/Tencent/Xiaomi),也颠覆了咱们的生活。发展到今天,互联网平台已经渡过了须要吸引用户和第三方合做伙伴的成长期,行业的增加天花板就在眼前,平台与平台参与者之间的关系从非零和博弈转向零和博弈,平台必须与第三方争抢用户和利润,即便全部人都知道,抑制了第三方的参与积极性也就抑制了创新。这是互联网模式的困境。

在这样没法创新的困境下,区块链和加密经济的出现也就成为了一种必然,咱们正处于互联网下一次蜕变的起点。让咱们仔细的思考加密经济须要什么,虚心的向古典互联网学习,创造咱们所向往的美好世界。

相关文章
相关标签/搜索