2019年10月24日,政府明确指出区块链是中国的重要科技突破口。但是,到底什么区块链才能成为中国科技的突破口?开发或是使用超级账本会是中国科技突破口?还是开发或是使用比特币?或是还是开发或是使用以太坊?不,这些不会是中国科技的突破口。一他们不是中国所创的,二他们都是旧的技术,在互联网时代如果有3年的历史,就有可能是旧技术。
其次,从区块链的架构历史方向来看,笔者过去多次预测未来的区块链会有巨大的变化,如果大家有兴趣可以看一下在2018年1月在北京演讲的视频。笔者为什么这样预测?这有下面观点出发:
-
从应用出发,区块链的应用会决定区块链的设计方向。比特币、以太坊都是逃避监管的数字代币,到2014年12月英国央行研究区块链技术后发现区块链技术是可以支持数字法币的,但是现在的区块链系统并不支持监管,因为这些链数据结构还有一些问题。不支持监管的区块链系统设很难用来支持数字法币。所以预测以后支持监管的区块链架构会和逃避监管的区块链链架构会大不相同。
-
从系统设计原则出发:区块链系统设计原则现在越来越清楚,不同应用场景可开发出不同区块链设计。
-
从历史重大事件出发:过去10个月(2019年6月开始)发生几次历史大事,改变了区块链的历史。具体的改变是从设计逃避监管的区块链到拥抱和支持监管的区块链。
-
区块链成为基础设施:在过去,多认为区块链不会改变现在系统架构因为大多把区块链当作应用。但是现在越来越多人认为区块链不只是应用,而且是基础设施。2020年区块链也列在中国新基建的计划中,代表区块链是未来中国的基础设施。我们如果把区块链当做是一个基础设施,区块链就会影响到操作系统、数控、网络、存储。
笔者在2018年就写过区块链中国梦,第一个梦就提到互链网(区块链互联网),由于系统结构改变,可以带动中国科技发展。在2019年10月24号,区块链也被认定是中国科技的重要突破口,带领中国科技发展,区块链的使命大不相同。
区块链中国梦:带领中国科技发展
1. 区块链架构历史
现在看区块链结构历史,区块链在2008年(经过比特币)出现,当时比特币使用UTXO账本模,全网记账,但是使用P2P网络协议来逃避监管。
后来以太坊出现,改用余额账本,加了智能合约机制,前面这两项都是重大突破。但是以太坊还是使用P2P网络协议仍然在逃避监管。
在2016年笔者提出放弃P2P网络协议,并且提出熊猫模,就是在区块链系统将数据与软件分开,这样系统就可以有扩展性,也可以保护隐私,在架构上解决区块链难扩展难保护隐私的问题,这样的链也不逃避监管。
2017年加拿大央行做了世界第一个数字法币的大实验,发现区块链系统还有包括一些特别为银行设计的区块链系统大有问题。所以加拿大央行认为现在的区块链监管,不可靠,不安全,而且难监管。这对区块链界一个大警钟,因为一般人认为区块链是安全可靠的。
2017年5月笔者在贵阳数博会就提出互链网会重构互联网,从底层到应用系统架构都会改变。
2018年美国期货商品交易所委员会CFTC,提出智能合约两大应用是(合规)金融交易与监管。传统区块链应用(例如比特币和以太坊)都是逃避监管,现在美国监管单位反而认为这是监管利器,也是合规金融交易工具,这真是180度的思想改变。
2018年12月笔者在北京会议上提出区块链应该设计成“可监管的区块链”这个可监管的区块链设计,跟逃避监管的架构会有不同的架构。
2019年出现了Libra稳定币白皮书,还有英国的Fnality稳定币白皮书,Fnality是做批发数字法币,当时就有美元、欧元、英镑、加拿大币、日元5个法币加入。这两个项目都使用数据与软件分离的系统架构,也是原来和2016年提出的项目模架构一致。所以,2019年区块链架构出现了一个重要分水岭。
在2020年3月英国央行出报告,提出三个智能合约架构,并提到这些智能合约由央行开发、央行运行、央行监管,这与2013年以太坊提出的智能合约运行和监管方式完全相反。其意思就是是智能合约不可以随便开发,不可以随便运行,也不可以逃离监管。而且英国央行提出智能合约框架也跟以太坊架构不同。
2020年3月中国互链网白皮书提出整个计算机系统架构会改变。
2020年4月Libra 2.0白皮书出现,正式提出放弃公链路线,走向完全合规化路线。这又是一个重大分水岭,无论是稳定币或者是数字法币,都开始走合规化的道路。
下面是区块链架构历史图。我们可以看到2008年到2013年最重要的突破是余额记账;2016年区块链数据与算法分开;2017年最重要的贡献提出互链网新网络架构;2018年是可监管的链概念出现;2019年证实在区块链系统内数据与算法应该分离,互链网网络协议也出现了;2020年新的智能合约平台出现,可监管的区块链系统架构也出现了。
从现在来看,无论是网络,操作系统,存储,应用,智能合约它的架构都会因为区块链的出现跟以前不一样。
比如,下面是国外公司Contract Vault提出的一个智能合约系统,上面合约上不但是有参与者、银行金融机构、还有监管单位。这样一来,这些单位都可以在同时间看到同样的信息(数据)。在这新架构上,还包含智能合约组的概念,后面还会谈到。
区块链(智能合约)和监管单位连接,ContractVault的例子
2. 区块链两大应用
这是根据美国商品期货交易委员会CFTC,两大应用是金融交易和监管:
金融交易:在金融交易上,可以使用在衍生品交易、贸易清算、供应链、贸易融资、保险、数据保留、远期合同。事实上,CFTC就是美国监管单位负责监管衍生品(期货)交易。
其次,CFTC还提出了智能合约组的概念,每个智能合约都只做简单的工作,就是完成部分交易的功能,而不是完成整个交易。大部分的智能合约都从事标准化的功能,部分而且短暂的交易作业。这些都是软件工程技术,而且会对金融系统架构和监管产生巨大影响。由于智能合约标准化,在金融交易和监管上都可以全面标准化,大大减少不同系统会有不同合规或是安全属性。而又因为这些智能合约只是完成部分功能,每个金融系统还可以有个性化的定制,不同金融系统可以开发出来,而又有相同的合规性。这也是皋陶模采用的路线。
监管:CFTC提出第二个最有用的应用是监管,就是验证客户来保障交易正常执行以及确保账本记录的准确性,完成实施监管报告。当然,这些监管机制也是标准化的作业。
17个月后,2020年3月英国央行也提出类似概念,就是使用智能合约来做交易和监管。同时,英国央行提出了三个智能合模。第一个模是传统的模,智能合约在链上,但并不符合现代的金融系统,现代系统(也是经历多年得来的功课)就是账本系统和交易分开。比特币和以太坊难扩展就是因为违反这个原则。
第二个模,类似于中国的熊猫模,将智能合约和核心账本分开,两个并行来做。事实上,2019年Libra也在做相同的事情,将数据和软件分开。
第三个模是智能合约直接与客户交互,同时直接做监管。根据这三个模,我们提出了三驾马车模,将这3个模都融合在一起,一些智能合约在账本里面只负责管理和维护账本系统,一些智能合约是并行的做负责交易作业,在外面还有一套智能合约和客户交互和监管客户。所以是三套智能合约一起合作,各做各的功能,这样可以达到监管性和扩展性。在这三驾马车模,账本系统、交易系统、客户交互系统都可以独立扩展而不被其他系统影响到。
由上面可以看出,现在的智能合约架构已经和传统的以太坊智能合约结构大不相同了。原来的区块链和智能合约架构,被哈佛大学认为是地下经济活动的媒介和工具,到今天区块链使用在合法合规金融市场交易和监管上,从逃避监管到使用区块链来监管,这改变大。而这写概念由美国和英国监管单位提出来的。在这转变流程,区块链的系统结构也被改变了,甚至区块链基本定义也改变了。
3. 区块链新定义
传统区块链系统就是块子链、多节点、拜占庭将军协议、智能合约。还有一些人会把P2P网络协议放在区块链定义中,这是不对的,如果将P2P协议放进区块链定义中,所有区块链都是逃避监管的。下面我们看一下新的区块链定义。
3.1新组成系统
新的区块链系统的定义是区块链+智能合约+预言机。
-
区块链控制数据,使数据不能篡改,维持数据保持一致性。
-
智能合约控制应用流程,智能合约控制的应用流程是一个标准化的应用,是微服务化的应用,标准化、微服务化的智能合约是一种监管形的智能合约。这样,数据控制在区块链上,流程控制在智能合约上,数据来自区块链而又回到区块链。
-
预言机是与外界接触专门搜集资料,控制外面的接口。上面英国央行用智能合约与外面的智能合约对接,有的是用智能合约直接跟外面对接,有的是用预言机直接跟外面对接。预言机本身可以使用区块链,也可以使用智能合约,也可以使用人工智能,也可以使用物联网,还有其他技术。
这样的系统才是完整的系统,能够实现金融交易和监管。
这种新的系统可以参考美国的雅阁项目(Accord Project),该系统是有法律效力的智能合约系统,还包括预言机在内。在《智能合约:重构社会契约》可以查阅更详细的信息。
雅阁项目有预言机
3.2特性不同
传统区块链特性是数据不能篡改,可以检验说谎(拜占庭将军协议),分布式架构。主要问题是高性能、扩展性。但是新区块链属性类似,但不一样。新区块链系统,仍然保持传统数据不能篡改性,可以检验说谎,和分布式架构。但是因为新区块链应用不同,其他特性不是一样。
CTFC认为区块链**的功能是支持交易,所以区块链第一件特性就是能够做交易,就是交易性。
第2个重要特性再来就是监管性,在合规市场,区块链系统必须可以被监管,这包括交交易前监管,交易中也监管,交易后再监管,全程都被监管。
再来是可靠性,安全性,高性能,和扩展性,这些是跟传统一样。
什么是交易性?我们晓得区块链里面有共识,共识就是有一致性,但是一致性病不代表可交易性。传统数据库是中心化的系统,但是有多并行的进程,多个“读”跟“写”操作同时间进行,但是事务处理会使这样并行的“读”(例如读账本数据)和“写”(例如改账本数据)等于一个串行交易序列,而且结果一致。这是说可以有一个串行交易序列,跟这些并行的读和写流程得到同样的结果,这样的交易就是完备的,不会出现因为多进程使系统执行得到不同交易结果(例如得到不同的余额)。这是金融交易系统需要的。
但是到了分布式数据库的时候,分布式一致性协议并不维持这交易特性,只是维持数据一致性。例如两伦协议(2 phase)投票机制,投票的目的只担保数据一致性,并不担保交易可以等于一个串行交易序列。传统分布式一致性协议是在参与节点互相信任的环境下进行。
后来有拜占庭将军协议,三伦投票,也是数据一致性协议,可是参与方不需要互相信任。拜占庭将军协议比传统数据库一致性协议复杂的多,因为要查验可能说谎的节点。这代表一个新方向,以前系统只是防护外面来的攻击,拜占庭将军协议却是防护内部人员作弊。因此使用拜占庭将军协议加上加密技术,就可以防止说谎节点瘫痪整个系统。
但是不论是传统分布式数据库一致性协议,或是拜占庭将军协议,他们都只是维持数据一致性。这些协议都没有找出可以对应的串行交易序列。这表示这些协议只是维持数据一致(在互信的环境下,或是没有互信的环境下),而没有维持金融交易完备性。
区块链系统要从事交易,需要交易性,而又需要拜占庭将军协议。这两个都得存在,才能做交易。区块链新定义第一要素—交易性,就是在互不信任环境下,系统能够完成传统金融交易,就是可以有对应的串行的交易序列。只有在这情形下,金融交易才能完备。
区块链系统需要有数据库事务一致性,也要拜占庭将军一致性
事实上,区块链中做交易的时候,每一区块中所有的交易都是一起被验证,一起被通过的。这和传统数据库交易方式不同,传统是一次交易流程一笔交易,区块链是一次交易流程多笔交易。这是新的交易方式,这个跟传统数据库读和写是不一样的。
一些类似的区块链出现的问题就是节点有不同的信息。节点如果有不同的信息,一个监管单位要查验?或者说如何检验这个交易能不能通过。监管单位就会发现节点没有相关数据,如果在一个节点没有信息,如何来检验?可能有人说,这可以在所有节点上查询。问题是这样做,共识会慢下来。这些类似链设计概念就是不要所有节点有同样信息来进行高速共识,但是如果需要在共识时候在不同节点搜寻数据,这样会大大降低共识速度,因此交易会降低。
这些链就会面临2个选择:仍然维持高速共识(和交易)但是有可能这些交易不完备(就是可能会得到不正确的交易结果,这在合规市场是不能被接受的),或是系统慢下来来维持交易完备性。这样“交易性”和“监管性”就出现问题。
这两个是重要的概念,因为其他属性都必须在保证这两个属性都存在下完成。例如扩展性,我们不能有扩展性,但是扩展后交易不完备,或是扩展后,交易难监管。没有这两项属性,区块链只能慢速进行,而且交易有不完备的风险。只有在这两特性都维持下,才能谈其他功能和属性例如清结算、扩展性、保护隐私。
3.3架构不同、工程不同
新区块链会有不同的架构,开发的工程技术也不同,Libra就是一个例子。Libra系统就把软件资源和数据分开,而英国央行提出的核心账本和智能合约分开也与Libra异曲同工之妙。这样将软件和数据分开的软件设计原则是软件工程之父Daid Parnas在1972年(48年前)提出的概念。原则简单,但是今天的一些链的设计还是违背这原则,包括比特币(2008年)、以太坊(2013年)等系统。当账本系统和交易系统放在同一系统的时候,系统就会出现许多问题。
Libra的新架构,矩形表示软件,椭圆数据
在《智能合约:重构社会契约》书里,提到一个重要项目,就是ISDA (International Swap and Deriaties Association国际交换交易商协会) 的智能合约标准化的工作。ISDA提出金融衍生品的交易用智能合约完成(这观点和美国CFTC一致),并且开始制定智能合约标准。从2017-2020年一直在研究开发,在今年已经出了多个白皮书,开始建立一套新的智能合约体系。
在ISDA的白皮书中提出了一个重要的概念,那就是智能合约系统首先需要预言机,而且预言系统可以复杂。ISDA花了大部分时间来制定在金融交易上可能会遇到事件和问题,而不是在写智能合约代码。因为在智能合约环境下,以前人工处理的问题,现在需要自动处理,而以前这些复杂的流程是业务人员可以经过谈话、交通、和系统一起来处理,谈话单位可能包括上市公司、交易所、证券商、托管中心、银行、律师、公证处和法院,现在大部分这些工作会是(智能合约)自动处理,而这些单位都可以是智能合约参与单位或是预言界出发点。例如一家上市公司有一天有金融危机,没有交付欠款,这可能会引起大量相关市场交易,或是法律事件。在银行的预言机可能会先启动,通知相关单位这公司没有按期付款,违约的事件会自动启动,这违约事件可能会启动早已部署的智能合约在市场自动执行交易,还要启动其他事件。ISDA大量分析这些场景,而且一个重要设计理念就是事件处理(eent processing),下图是金融交易可能遇到的一些事件。这样的事件处理系统在传统区块链、智能合约、或是预言机都没有出现过,这是一个新机制。
ISDA智能合约机制充满事件处理机制
ISDA的工作带来重要信息,区块链和智能合约系统和当初以太坊的智能合约设计差距非常远,在架构和内容上都不同。
3.4基础设施不同
我们已经看到新区块链在架构不同,在工程不同,另外基础设施也会不同,而基础设施包括网络、数据库和存储。
下面这张图,左边是传统的互联网,上面安全,下面不安全,是一个开放性的架构。右边是一个新的架构,这是互链网架构。下面加一个共识层,上面加一个核心的区块链,还有应用层。我们可以看到,如果我们根据ISDA的做法,还会有智能合约和预言机出现,包括标准式的预言机和合约。这个跟我们现在知道的互联网和金融架构不同。
区块链系统:在新书里面会提出了多个新区块链模包括。
-
皋陶模:顶层智能合约设计的模;
-
比特犬模:领域工程和模来创造智能合约;
-
烽火台模:预言机内事件处理模,一件事情发生后,这信息就像烽火在烽火台一样快速的传递,到达在正确的智能合约执行平台;
-
大雁模:这是新传递的模,信息可以有组织性往上报,而且上面的信息的可以有组织性的往下走;
-
熊猫模:基本思想就是在区块链系统,数据与软件分开处理;
-
独角兽模:一个可以被机器处理的智能合约语言,也是法言法语;
-
石榴模:一个事件处理器的模;
-
三架马车模:智能合约混合模;
-
金丝猴模:一种交易的跨链模。
网络系统:互联网虽然速度快,但是不安全,而且时常有欺诈行为。新网络思想追求速度,但是更加重要的是追求安全和隐私。保护隐私和监管是互链网的首要目的。这是我们在2019年提出新网络协议MEF,而且又兼容现在的协议,这就有可能打开一个新网络结构。朱波博士也提出Jazz(爵士音乐)模。在互链网上面,每个团队或者每个组织都可以在上面做开发和经商。不像在现在互联网上,只有大公司有能力开发系统做电商。在互链网上,世界更加扁平化,好像Jazz音乐一样,没有交响乐团也可以有发展空间。这些都是新思想。
操作系统:再来就是传统操作系统,传统操作系统多年没改变,架构也没有变。但是今天因为要监管数字金融交易,操作系统需要改变。我们提出操作数据库系统ODBS(Operating DataBase Systems)这概念。当我们有这种ODBS的时候,就可以监管所有的交易,业可以使用硬件来处理交易。在这新操作系统,结构、进程、存储、和安全机制都和跟传统的操作系统不一样。
数据库:数据库在过去有非常大的发展,例如大数据平台出现,但是当区块链来的时候,我预测会有还会有新的数据库结构出现。在2019年微软和德国出了一个BlockchainDB,我们也提出了BQL(Blockchain Query Language)和BDL(Blockchain Data Lake)。BQL使区块链查询更方便,而BDL是为监管区块链数据的平台,以后区块链交易都可以放在数据湖内查询和大数据分析。
4. 总结
另外,虽然这些都是改革,但又兼容现有的系统,例如MEF协议可以和现在TCP或是BBR协议一同使用,新操作系统兼容现在运行的应用,新数据库结构也兼容现在的数据库和其应用。区块链确实改变,不仅是应用的改变,系统设计也改变,而且是结构上的改变,基础设施的改变。这样的改变才有可能在理论上占有前沿的地位,拥有国际话语权,制定国际标准,这是1024的精神。只是跟随国外的技中国发展,不可能在理论上有最前沿的地位,也不会在国际上有话语权。国外单位例如ISDA已经大量制定金融交易的标准,已经走在中国前面了。
以后怎么发展,以后那个会留下来,现在还未可知,但是一个很清晰的图已经出现。现在的以太坊,比特币,超级账本不会是将来。将来的区块链有非常大的改变,有可能是这些链的改进版,也可能是全新的项目像Libra一样。举个例子,十年以后或是二十年以后,可能现在所有的区块链机制都可能全翻新,有可能现在部分思想会留下来,但是不改变是没有办法的。(作者:蔡维德、姜晓芳、马圣程、向伟静、杨冬、王帅)
蔡维德北航数字社会与区块链实验室主任,天德科技首席科学家,国家科技部重大项目负责人,中国信息界区块链研究院院长,国家大数据(贵州)综合试验区区块链互联网实验室主任, 天民(青岛)国际SandBox研究院院长, 赛迪(青岛)区块链研究院名誉院长,中国亚洲经济发展协会区块链产业专业委员会会长,北互金区块链专委会主任
点击链接,查看视频版
文章标题:互链网—重新定义区块链
文章链接:https://www.btchangqing.cn/13484.html
更新时间:2020年04月28日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。