CCF区块链专委会主任斯雪明:区块链体系结构或向拟态群体异构体系结构演进

CCF区块链专委会主任斯雪明:区块链体系结构或向拟态群体异构体系结构演进

李小平 发布在 链圈子 47073

11月24日--25日,由中国计算机学会主办的首届中国区块链技术大会(China Computer Federation ChinaBC 2018)在杭州未来科技城举行。复旦大学教授、中国计算机学会区块链专委会主任斯雪明在25日上午发表了题为“区块链—形式化表示与体系结构演进”的演讲。

微信图片_20181125222510

 

以下为现场演讲速记,由巴比特整理发布:

 

尊敬的各位嘉宾,大家上午好。我今天的演讲主题是“区块链—形式化表示与体系结构演进”。分为四个部分:

第一部分是传统信息系统的数学模型与特点 第二部分是区块链系统的形式化表示 第三部分是典型区块链体系结构 第四部分是区块链体系结构可能的演进方向
 

一、传统信息系统的数学模型与特点

 

我们首先要讲一下什么是信息系统,信息系统是一个人造系统,它由人、硬件、软件和数据资源组成,目的是及时、正确的收集、加工存储、传递和提供信息,实现组织中各项活动的管理、调节和控制。

下面是信息系统形式化的表示。信息系统S由代表S的不同模块 (我们称之为“论域”U)、论域的属性集A、A的值域V、U到V的信息函数fi、fi到fi的单域状态转换算子组成。

QQ浏览器截图20181125222652

QQ浏览器截图20181125222853

通过这样的形式化表示,最终得到U到U的状态转换函数,这个函数随着时间的变化而变化。我们考虑到传统的信息系统的某一论域时,属性取值在时间轴上是稳定不变的。所以传统的信息系统具有静态性的特点

QQ浏览器截图20181125223006

另外,当对两个信息系统S和S’进行比较的时候,差异度d(S,S’)越小表示两个系统越相似,对于传统的计算机系统,这两个系统的差异度往往会更小。

QQ浏览器截图20181125223047

最后,传统信息系统具有中心化的特点,中心(特权用户) 独自可以进行数据的增、删、改、存等操作,也可以执行服务的发布与撤回等。而普通用户与特权用户的权限有很大的差别。中心化导致系统的机密性、完整性、可用性容易受到内部人或外部黑客的破坏。

总而言之,传统的信息系统具有静态性、相似性、中心化等特点。传统信息系统各维度通常是静态的,数据通常无冗余或少冗余(可能有2-3个备份),各信息系统之间通常是相似的,具有中心化的特点,操作权限和数据的增、删、改权限总是集中的。

 

二、区块链系统的形式化表示

 

目前典型的区块链系统包括了四个环节:发起交易、传播交易、验证交易、添加区块。(这里的“交易”是广义的交易)

发起交易:可能涉及Token,智能合约,记录或其他信息; 传播交易:在节点的帮助下,该交易被广播到P2P网络中; 验证交易:借助已知的算法,网络中节点验证交易的合法性和用户状态; 添加区块:交易一旦完成,新的区块被添加到区块链上,从此永久不可篡改。

下图是我们对区块链系统的一般的形式化表示,其中包括消息单元、共识(包括打包和同步)和存储(包括数据存储和状态存储)的过程。

QQ浏览器截图20181125223129

消息单元主要包括消息的数据格式、处理方式; 打包过程主要包括消息的验证,验证通过加入区块,同时提出证明(证明自己打包的权限),同时将区块信息和形成的区块的证明打包CON; 同步操作主要是对打包CON进行验证,验证通过就开始下一论的共识,否则继续进行当前打包操作

目前来看,比特币是最具有代表性的单链非许可链。消息单元以普通转账交易为主(交易双方地址、输入输出金额),消息打包前,需要工作量证明(PoW)取得记账权,算力决定了进行PoW的能力,PoW的验证与区块的传播异步,可能存在分叉,状态以UTXO为主,传递模式。

除了比特币之外,以太坊也是单链非许可链的一个典型代表。和比特币相比,主要增加了智能合约和世界状态的概念。

下图为比特币系统的形式化表示。以(上述)区块链一般的形式化表示为前提,给出了比特币的具体情况。主要包括PoW打包和UTXO状态存储过程。

QQ浏览器截图20181125223151

以fabric为代表的单链许可链,CA(Certification Authority)作为所有节点加入系统的认证,普通客户端通过部署链码(chaincode)、调用链码发起交易,通过背书策略申请peer节点(Endorse node)的背书签名,Order节点验证客户端节点的交易和背书消息,通过Kafka(Zookeeper)对交易进行排序,转发给peer节点(Committer node),Committer node通过CouchDB(或者LevelDB)存储区块信息和历史状态以及世界状态。

下图为 fabric的形式化表示,这里就不再专门介绍了。

QQ浏览器截图20181125223244

除了前面提到的典型的区块链系统之外,现在还出现了新型的IOTA为代表的DAG结构的区块链。DAG(Directed Acyclic Graph,有向无环图)中没有传统的区块的概念,交易并发进入系统,交易产生的同时对已有交易进行验证(这使得DAG结构的吞吐率远远大于单链结构),存在安全性差和中心化倾向等问题。

下图为IOTA的形式化表示。图中,消息单元除了基本的区块链元素之外,还包括了对两个父交节点的引用。由于IOTA没有区块的概念,所以打包过程是直接对消息单元进行验证,没有同步的操作。

QQ浏览器截图20181125223317

 

三、典型区块链体系结构

 

我们对比特币、以太坊、、fabric、IOTA体系结构及其特点进行了深入研究,今天讲的绝大部分内容都是第一次讲,所以有不当之处还请大家批评指正。

下图是我们提炼的比特币的体系结构。在这个体系结构中,比特币的节点发起的交易进入了矿工的交易池,节点通过最新和区块和从交易池中来选取部分交易,不停地变更区块头的随机数进行PoW竞争。竞争成功后产生新的区块,加入到区块链中,并广播到整个网络。

QQ浏览器截图20181125223347

下图为比特币流程示意图。因为在座的各位对比特币系统比较熟悉,所以在这里也不再多讲。

QQ浏览器截图20181125223427

下图为以太坊的体系结构图。在以太坊中,节点分为内部节点和智能合约节点。与比特币不同的是,以太坊有叔块的概念。由于以太坊的出块间隔只有十几秒的时间,因此以太坊中临时分叉与孤块会大量产生,整个网络的安全性都会下降,以太坊鼓励人们引用叔块就可以提高网络安全性。

QQ浏览器截图20181125223455

下图为以太坊的流程示意图,由于时间关系,这个示意图在这里就不细讲了。

QQ浏览器截图20181125223526

下图为EOS的体系结构图,EOS是更加中心化的,但是这样的操作系统也会存在一些安全隐患。

QQ浏览器截图20181125223553

下图为EOS的流程示意图。

QQ浏览器截图20181125223620

下图为fabric1.2的体系结构图。在fabric1.2中,客户端节点发生交易,通过链码(ChainCode)的背书策略,背书(Endorser)节点收到交易提案(Proposal)后,验证签名并确定提交者是否有权执行操作,同时根据背书策略模拟执行智能合约,并将结果还给客户端。

QQ浏览器截图20181125223646

客户端收到背书(Endorser)节点返回的信息后,判断提案结果是否一致,以及是否参照指定的背书策略执行,如果没有足够的背书,则中止处理;否则,应用程序客户端把数据打包到一起组成一个交易并签名,发送给Orderers。

Orderers对接收到的交易进行共识排序,然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给提交(Committer)节点;提交(Committer)节点收到区块后,会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改历史状态和世界状态。

下图为fabric1.2的流程示意图。

QQ浏览器截图20181125223722

下图为IOTA的体系结构图。IOTA设计POW这一步是为了防止有人恶意发很多transaction从而阻塞整个网络,或者更进一步通过更改整个DAG的形状而达成一些攻击。

QQ浏览器截图20181125223738

下图为IOTA的流程示意图。

QQ浏览器截图20181125223816

最后,我们来谈一下区块链系统的特点。我们认为,区块链系统具有静态性、多中心、分布式、冗余、高度同构等特点

目前的区块链信息系统通常也是静态的,具有多中心的特点,数据分布式存储和共享,在许可链中,各节点数据存在一定的冗余,在非许可链中,高度冗余,各节点运行的系统高度同构。

 

四、区块链体系结构可能的演进方向

 

我不敢说区块链体系结构一定会往这个方向演进,但是它是一种可能。传统的信息系统具有静态性、相似性和中心化等特点;典型的区块链系统具有静态性、多中心、分布式、冗余和高度同构等特点;理想的区块链系统应该具有动态性、多中心,分布式、适度冗余、异构性和群体性等特点。

那么,如何构建理想的区块链体系结构呢?我们可以从自然界中得到启示。

自然界的启示一:拟态现象

拟态现象是一个生物学概念,指一种生物在形态、行为等特征上模拟另一种生物,从而使一方或双方受益的生态适应现象。比如:拟态章鱼

QQ浏览器截图20181125224118_看图王

拟态章鱼通常生活在15米以内的浅水沙地,通常在河口水域,在这种水域里,有很多贝壳、虾蟹等拟态章鱼喜欢的食物。拟态章鱼是自然界中顶级伪装高手,会模仿各种海洋生物,包括海蛇、狮子鱼、扁鱼、蛙鱼、海星、大蟹、贝类、鳐鱼等15种动物的外观和运动。

它的身体有数万个色袋,叫作“色包”,它靠一个复杂的肌肉网络控制。色包含色素,并靠色素 (颜色) 来表现多种色度。通过放松或收缩色袋,拟态章鱼仅用不到1秒就能让自身与任何背景颜色及图案相一致。

自然界的启示二:群飞和群游现象

群飞又叫聚集式飞行,鸟群能够在快速飞行的过程中整齐划一地转向, 其目的是能够免遭老鹰等捕食者的袭击。典型代表是椋(liáng)鸟

椋鸟在飞行中形成球状紧凑队形,并在接下来扩大和收缩,不断变换形状。一大群椋鸟在称为“辊式觅食”(roller-feeding)的做法中一起觅食:鸟群后面的椋鸟不断飞到前面去寻找食物。这种有组织的觅食方法意味着每只鸟都可以变成头鸟,同时能密切注意捕食者来袭。

u=2956662041,334928406&fm=15&gp=0

群游是一种鱼群的集体行为,鱼群能够通过对周围环境变化做出迅速 感知和统一变向,不仅可以有效抵御捕食者,还能够提高捕食效率和 游动速度。

timg_看图王

根据上述生物学中的拟态现象和群飞、群游现象,我们提出了拟态群体异构体系结构,简称MCH体系结构。

• 区块链系统中的部件可以根据应用场景动态调整变化 • 不同部件的不同实现方式,完成统一的目的 • 系统的部件异构,构建最适合应用的区块链系统
针对特定的应用场景,选择合适的异构部件,构建最优的体系结构, 达到理想的应用目标。

下图为拟态群体异构体系结构。

QQ浏览器截图20181125224732

下图为拟态群体异构体系结构主要组成。

QQ浏览器截图20181125224800

我们下面来看它怎么来变化出来的,在拟态群体异构体系结构中,DAPP1,DAPP2,…,DAPP3是不同的应用,以DAPPr为例,通过参数提炼得到C1,…,CK,然后通过拟态决策,变成异构候选集。然后就构成了不同的节点,这些节点之间我们希望能从软硬件来说它是异构或部分异构。这样的异构节点最后就产生了不同的区块链。

QQ浏览器截图20181125224835

值得注意的是,现在很多区块链的体系结构,并不适合真实的应用场景。所以我们认为,体系结构应该是动态可变的,根据不同的应用场景有不同的体系结构。

最后,我要讲的是,长期以来,信息系统在不断地演进,体系结构创新是信息系统发展的永恒之路。我们从信息系统的角度来考察区块链的体系结构演进,首先对传统信息系统进行了数学建模,指出了传统信息系统的特点;然后对经典区块链系统进行了研究,给出了区块链系统的形式化表示和体系结构模型,提炼了经典区块链系统的特点;最后,我们根据理想区块链系统的特点,从自然界的拟态、群飞、群游现象中得到启发,提出了拟态群体异构体系结构。

我的报告就到这里,谢谢大家。

评论(1)
登录 账号发表你的看法,还没有账号?立即免费 注册
  • 秀逗了-you 2018-11-26
    参加了会议,但是目前还没有电子版ppt放出。