0
本文作者: 陈伊莉 | 2018-11-30 15:49 |
在近日2018中国区块链大会上,中国计算机学会区块链专委会主任、复旦教授斯雪明介绍了一番区块链形式化表示与体系结构演进。
雷锋网了解到,他指出,长期以来,信息系统在不断地演进地体系结构的创新是信息系统发展的永恒之路。如果从信息系统的角度来考虑区块链的体系结构演进,首先通过对传统信息系统进行数学建模,意识到传统信息系统的特点,然后对经典区块链系统进行了研究,给出了信息系统的形式化表示和体系结构模型,提炼了经典区块链系统的特点,最后根据理想区块链系统的特点,从自然界的拟态群飞、群游现象之间得到了启发,提出了拟态群体异构结构。
以下是演讲原文,雷锋网AI金融评论作了不改变原意的编辑:
信息系统是一个人造系统、它由人,硬件、软件和数据资源组成,目的是及时、政府地收集、加工存储、传递和提供信息实现组织中各项活动的管理、调节和动作。
传统信息系统具有静态性、相似性、中心化的特点。论域用来代表信息系统的不同模块。考虑到传统的信息系统的某一论域时,属性取值在时间轴上是稳定不变的。所以传统的信息系统是具有静态性的特点。另外,传统信息系统的中心独自可以进行数据的增、删、改、存等操作,也可以执行服务的发布与撤回。这是特权用户具有的特点。普通的用户跟特权用户有很大的差别,中心化就导致机密性、完整性、可用性容易受到内部人或外部黑客的破坏。
传统的信息系统各维度通常是静态的,数据通常没有冗余,或者是冗余比较少,大概有两到三个备份。各个系统之间通常是相似的,同时具有集中化的特点。
典型的区块链系统包括四个环节:发起交易、传播交易、验证交易、添加区块。
这里的交易一般指的是广义的交易。发起交易可能涉及TOKEN、智能合约、记录等其他的信息在节点的帮助下,该交易被广播到P2P网络中。验证交易需要先验证交易的合法性,最后新的区块就添加到链上,从此就不可分割,不可改造。
区块链系统的一般形式化表示包括打包和巩固、数据存储和状态存储。消息单元主要包括消息的数据流失,以及消息的处理方式,打包主要是对消息的验证,验证通过加入区块,同时提出证明,证明自己打包的权限,同时将自己形成的区块的证明打包CUM。同步主要是对区块证明的打包进行验证,验证通过就开始下一步的共识。存储操作主要包括数学存储和状态存储。
在单链的未许可链中,比特币是具有代表性的,比特币的消息单元以普遍转账交易为主,消息打包前,需要工具来证明取得记帐权,算力决定了进行POW的能力。POW的验证与区块的传播异步,可能存在分叉,状态以UTXO为主,传播模式。
在这个体系结构中,比特币有一个交易池,通过实际打包,从交易池中间来选取部分交易,跟其他的进行POW的竞争,成功之后产生新的区块,然后给其他的节点。在完成POW之前,收到等于或者是大于正在操作的区块的时候,会放弃目前的POW竞争,并接受新的区块,在这个基础上进行新的POW。
上图是以太坊的体系结构图。以太坊的节点分为了内部节点和合约节点。与比特币不同的是,以太坊有叔块的概念。(如果一个块不是最长链的一部分,那么它被称为是“孤块”,在以太坊就叫做叔块。)一个孤立的块是一个块,它也是合法的,许多进出主链当中,在进行POW的时候,同时要进行叔块结合的信息,同时以太坊也包括私人合约,能够进行有限的操作。
以fabric为代表的单链许可链,CA作为所有节点加入系统的认证,普通用户通过部署链码发起交易,然后通过背书策略申请节点的背书签名,ORDER节点验证客户端节点的交易和背书消息,专发给ChainCode。
除了前面提到的典型的区块链系统之外,现在还出现了新型的以IOTA为代表的有向无环图(DAG)的区块链。它没有传统区块的概念,交易产生的同时对已有交易进行验证,消息产生后直接进入TANGLE系统,存在中心化严重的问题。
上图是IOTA的形式化表示,在这个图中除了基本的区块链中的元素之外,还包括了对两个负交节点的引用。它直接对消息单元进行验证,在IOTA上没有同步的操作。
在IOTA中间,系统中节点进行简单的POW,主要是为了防止交易泛滥,然后包括已经发生的两笔交易,然后产生新的交易,交易直接进行IOTA的管控。
前面也说到,传统信息系统的特点包括静态性、相似性、中心化,而当前的区块链系统一般也具有静态型性、多中心、分布式、冗余、高度同构等特点。而理想的区块链有六个特点:动态性、多中心、分布式、适度冗余、异构性地、群体性。
那么如何构建理想区块链呢?我们从自然界得到了启示,自然界是我们最好的老师。
第一,我们从拟态现象得到了启示。拟态是一种生物在形态、行为等特征上模拟另一种生物或环境、从而使一方或双方受益的生态。比如变色龙,以及最厉害的拟态章鱼。
章鱼它除了可以变颜色之外,比如模拟沙子,它还可以变化成15种以上的海洋生物,变它们的动作,变它们的外观,比如红鱼、海蛇等。当它变海蛇的时候,章鱼把6只脚藏在地下,伸出2只爪子,再加上颜色又和海蛇一样,所以看起来很像海蛇。章鱼是非哺乳类动物最聪明的一个。章鱼以不确定的色彩、纹理、形状的变化给攻击者造成了认知困境。
第二个启示来自于动物的群飞和群游现象。群飞又叫聚集式飞行,鸟群能够在快速飞行的过程中整齐划一的专向,其目的是能够免遭老鹰等捕捉。群飞很多情况是在非常密集的环境中飞行,但是鸟和鸟之间绝对不会相撞,而且非常可以快速地变化队形。鱼群的群游也是类似,目的一方面是为了避免大型的捕食,海洋生物的袭击,还能提高捕食的效率。
从上述生物学中的拟态群飞、群游现象,我们提出了一种拟态群体异构体系结构,简称MCH体系结构。区块链系统中的部件可以根据应用场景动态调整变化,不同的部件有不同实现方式,但完成统一的目的,系统的部件异构构建最适合应用的区块链系统。
MCH的目标就是,针对特定的应用场景,选择合适的异构部件,构建最优的系统结构,达到理想应用目标。
这是我们说MCH体系结构的图。主要包括节点环境、网络组织结构,智能合约,密码算法、共识算法等。
具体是怎么运作的呢?所有运行在系统中的应用,DAPP1、DAPP2,通过参数的提炼,比如DPPR提炼出一组参数——C1到CK,代入决策,形成异构候选集,然后这些候选集就构成了下方不同的节点。我们希望这些节点之间从软硬件来说它是异构,或者说是部分异构。异构的节点最后就产生了不同的区块链。
我们这里要注意的是,现在的区块链,链就一条,根据这样一个MCH系统链就多条。从数字货币交易来说,比特币和以太坊还是适用的,但是在真正应用时,很多体系结构并不适合。所以我们认为,应该根据不同的应用场景,有不同的体系结构,体系结构应该是可以动态变化的。这样一来,对于性能要求高的场景,我们可以用高性能的部件;要求安全性的场合,就用安全性好的部件。
特别是我们要注意的是,我们现在正处于量子计算很可能大规模、商业化的时代,现在区块链系统使用的一些密码算法,等量子计算大规模的机器出来以后,都将会是不安全的。如果有些系统需要运行三十年、五十年,在这个状况下,我们怎么做到平滑过渡呢?
我认为,如果部件是动态变化的,兼容前面,又可以为后面的调整留下空间,对系统来说会是非常有用的。
更多资讯,请关注雷锋网AI金融评论
雷峰网版权文章,未经授权禁止转载。详情见转载须知。