BTA | 吴萌野:区块链中间件驱动应用生态规模化落地-阿里云开发者社区

开发者社区> 安全> 正文

BTA | 吴萌野:区块链中间件驱动应用生态规模化落地

简介:

如果说互联网解决信息不对称,移动互联网解决沟通不及时,那么区块链解决的是信任难建立和价值难共享。比特币3.0时代已经到来,3.0时代意味着“随处可用的区块链“。如何实现随处可用?吴萌野老师认为,一是基础链,二是中间件。有关基础链的技术问题和解决方案,吴萌野老师给出的答案是从计算层的改进方向:一是采用更快速的智能合约容器和运行时,并优化共识节点规模。谈到中间件,他希望通过中间件搭建连接互联网云服务和区块链智能合约的中间桥梁,推动区块链应用生态规模化落地。


640?wx_fmt=png&wxfrom=5&wx_lazy=1 

吴萌野1999年毕业于是清华大学电子工程系,是国内顶尖区块链专家和架构师,首次提出链中间件理论,现任丝链SilkChain首席架构师。同时担任多家区块链项目的技术咨询专家,澳洲CSIROData61国家研究所中国专家。连续创业者,曾任水滴互助CTO、新东方乐词CTO、音悦台CTO、DX.com (08086.HK) CTO,校内、现金巴士等项目的早期投资人。

 

以下为吴萌野的演讲实录:



区块链的过去和未来?


从2008到2018的十年间,区块链已经经历了从1.0到2.0的进程。2008年中本聪发布比特币,标志着区块链1.0时代的开启。2013年,Daniel Larimer提出去中心化自治公司(DecentralizedOrganized Company)的概念,2015年VitalikButerin 发布以太坊,首次用图灵完备的智能合约和虚拟机实现了DAO(Decentralized Autonomous Organization)。


640?wx_fmt=png


谈到这里,我想说区块链不仅仅是一项技术,它更是一个伟大的时代变革。就像互联网的到来解决了信息不对称的问题,移动互联网解决沟通不及时的问题,区块链给我们带来解决信任难以建立以及价值难以共享这两个世界性的难题。因此,区块链不仅仅只是技术。

 

回到刚刚的话题,我们怎么定义区块链的1.0,2.0和3.0呢?从技术上定义,区块链1.0是UTXO & Ledger,UTXO分布式账本确立了去中心化的可信交易体系。区块链2.0则是SmartContract+Token,智能合约和Token确立了业务规则的可信运作体系和价值传输体系。不过,任何技术的发展都是服务于商业目标的,类比互联网1.0到2.0,是将静态且单向的内容发布生态扩展为分享且交互式的内容互联生态。类似的,我们从生态角度来定义区块链,1.0实现了跨国界跨组织的匿名可信货币交易(通过比特币);2.0实现了分布式组织之间的商业规则数字化定义能力,同时引入通证经济。我们预测3.0时代,可以认为是Blockchain everywhere,区块链无处不在,随处可用。所有行业在需要利用到区块链的去中心化信任机制以及集股权、物权、币权三权一体的通证机制时,都可以快速无缝的将他们现有的系统部署到区块链上。


640?wx_fmt=png


要做到Blockchain everywhere,需要哪些技术支撑和技术储备呢?从宏观上看,基础链方面我们需要一到三条公有链,若干条行业链。基础链类似Linux的两三个发行版,需要实现垂直业务单元化、水平层次可插拔可优化;行业链属于基础链针对行业的优化版本。那么如何去推动区块链在商业应用上的落地?我们认为,区块链和互联网的云系统之间有一条很大的鸿沟需要去逾越。一定要有一套中间件的体系,填这个鸿沟,粘合现在的基础链和互联网的云服务。基于这个理念,我们为用户提供SDK,写10行代码就可以将互联网云服务上的应用与区块链对接。


640?wx_fmt=png



基础链的技术问题和解决方案


基础链的技术问题从水平分层来说可以分为四层,数据层、通信层、共识层、计算层。重点从计算层的优化来说,容器技术,交易验证、排序、打包等可以优化计算层。采用更成熟和快速的容器技术,打造专属容器;引入更快的运行及合约语言,如LLVM、WebAssembly等虚拟化技术都可以加速计算。


640?wx_fmt=png


智能合约要分层,对链上的合约要有严格的分层规范和标准,将不需要的多节点验证的操作移至链外云环境,我认为链上应该分为控制层、数据层,然后将业务逻辑层移至链外实现。此外,还要引入并行执行机制,分片机制等优化计算资源,以及改用DAG等Blockless网格拓扑结构节省打包区块时间,提升整个区块的性能。


为什么要做垂直业务切分?我看了以太坊的数据,以太坊上总共部署了1293个Ðapps,包括Crypto kitties、crypto ColorsCrypto lambos等等五花八门的游戏和应用。但这样会造成资源和应用上的问题,打个比方来说,就是我要建个借贷账本,为啥要下载别人养猫的记录,我借的钱迟迟到不了账,原来是因为养猫的人热情太高。


在互联网的云世界中,购买云空间后,资源可以独享,但是区块链上还不能给一个空间或计算单元一个专属的空间,让不同的应用之间互不干扰。

 

理想的基础链模型,要进行业务的分区,把业务进行垂直划分,并且弹性扩容。业务分配有规律可行,可以参考阿里云单元计算的概念。把不同的业务,包括区块链例如区块链养猫、区块链借贷等等,分配给不同的链上单元。每个单元有自己的SmartContract,有自己的共识层,有自己的分布式账本,理论上他们是一个个私有链,两个业务可以实现互通互操作。底层可以通过跨链数字资产转移协议来实现互换。


640?wx_fmt=png


以上概念可以扩展为BaaS(Blockchainas a Service),即未来每一个独立的业务都应该可以从一个BaaS服务商那里,租用一个独立的区块链基础设施来部署。不同的链路之间通过价值共识协议进行数字资产的跨链交换。

谈到这里,我们终于可以提出区块链中间件的概念了。



区块链中间件


什么是区块链中间件?区块链中间件是连接互联网云服务和区块链智能合约的中间桥梁。区块链中间件由三个部分组成,分别是:跨链访问中间件,链外协作层CryptoApps(可以有不同的命名方式);智能和约的可视化编辑器。


640?wx_fmt=png


通过这些中间件的组成部分,我们希望达到哪些目标呢?终极目标是对DAPPS开发者隐藏开发的细节,开发者不需要了解区块链的技术,就可以做应用。我们通过中间件,对所有开发者提供统一的基础链访问接口。现有的互联网云服务提供者只需要增加几行代码,就可以与智能合约实现交互。跨链访问中间件,可以通过统一的API,可视化界面实现部署智能合约。

 

跨链访问中间件


跨链访问中间件分为两个层次,第一部分是Dapps和Blockchain之间的跨链通用访问API,实现使用一套API代码,就可以对现在绝大部分区块链基础设置的访问;第二部分是Blockchain之间的跨链价值传输协议,实现不同区块链之间的数字资产转移,目前大家想得到的,这个是去中心化交易所的基础技术,其实远不仅如此,这个协议将是未来区块链3.0时代实现互联互通的必备条件,也是未来最底层的区块链基础设施。


有了跨链访问中间件,应用开发者无需关注特定区块链的技术细节,只需要掌握和学习一套API,基础链开发者无需关注其他链的技术细节,只需要实现跨链协议要求的接口,就可以和其他链路进行价值互通。


链外协作层CryptoApps


我们认为链上智能合约应该分为两层,第一层是DataContract,涉及到内部数据调用,例如转账,相当于数据层;第二层是BusinessProcess,相当于控制层,判断事实、并执行命令。


举两个例子。


以太坊合约没有分层概念,实现一个天气赌博的业务,引入了多个合约混合实现,合约入口不单一,合约流程和业务混杂。其中Weather feed通过Oracle服务提供。


分布式账本平台Corda的合约中有Contract、Flow两个概念,这个合约定义的很好,这里面首先写了一个Flow的概念,事件在Flow中流转,驱动合约的一步步进行。Corda合约的链外服务也是由Oracle服务提供的,但是链外服务没有特定的规范,集成也有相当的难度。


CryptoApps就是对Oracle的改进,或者说是制定了Oracle的规范。


CryptoApps应该做的事情是对事实提供验证,并且应该实现可信签名,加密通道,结果不可篡改,事件驱动等特性。


有了CryptoApps链外协作层,现有互联网的业务,通常是API化和服务化的,就可以很容易的与链上的智能合约交互了。


智能合约编辑器


所谓合约编辑器,就是用可视化的界面,让业务人员通过拖拽定义一个业务流程和商业规则,保存之后,就自动编译成链上智能合约。


给大家看的这个示例是我们实现的一个以太坊智能合约编辑器,初步实现了我们之前提到的双层合约定义,也就是控制层、数据层。


基于跨链访问API,我们将能够实现针对任意主流链的可视化智能合约编辑器。


有了这个神器,将不再需要手动编写代码去实现智能合约,所有的业务流程和商业规则,在抽取出来之后,都可以通过这个自动部署成智能合约。


讲了上面中间件的三个组成部分,大家是不是可以相信,未来的区块链实践将不再是技术极客们的专利,任何商业组织,利用他们现有的经验和系统,只需要稍加改动,就可以部署到任意的主流区块链上了。



行业链的落地实践


区块链对于行业链是有需求的,所有的基础链都需要抱行业的大腿,为啥呢,一个没有成熟应用的链,始终只是玩具和试验品。在这里就不点名了,我指的是在座所有的各位。


未来每个大的行业,都会有自己的独立公链,往往这些链都是由一个成熟的基础链演变改进来的。我自己参与的项目叫做SilkChain。丝链是全行业商业组织间的DAO平台(新一代智能合约平台),由十几家全球贸易行业领袖机构联合发起,在全球最大行业—“国际贸易行业”首先落地,现有业务已覆盖1500万用户,近百亿美元的年交易额。


640?wx_fmt=png


丝链优先构建“全球商户信用体系”和“供应链金融体系”,树立区块链3.0时代行业基础链的标杆。我们投资人认为,如果说行业链有未来,或者说未来有行业链,那么丝链SilkChain将会是行业链中的一条新的大腿。



640?wx_fmt=gif



原文发布时间为:2018年04月08日
本文作者:区块链大本营
本文来源:CSDN区块链大本营,如需转载请联系原作者。

版权声明:如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developerteam@list.alibaba-inc.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
+ 订阅

云安全开发者的大本营

其他文章