ibm区块链和以太坊 ibm区块链和以太坊的关系
一、区块链12年:应用在了哪些领域
#「闪光时刻」主题征文二期#
人们曾无数次地谈起区块链的适用场景和使用时机。但实际上,简单粗暴地将区块链和所有业务捆绑在一起的行为是非常愚蠢且荒谬的。
单纯用“区块链”这个词(而不是它背后的技术)进行炒作的话,结果终将是一场空。但如果使用得当的话,区块链也确实可以推动某些经济领域的发展。
要想实现这一目标,就需要一步步地慢慢来。Gartner的专家认为,区块链目前正处于“摆脱幻想”阶段边缘。在这一阶段,其技术弊端暴露无遗,各路媒体也大都持批判态度。
那么,到底有没有真正以区块链为基础的好产品呢?如果有的话,又是在哪些领域呢?
首先,金融服务是一个不错的选择,毕竟很多传统中介机构都存在低透明度和高佣金的问题。目前,许多大银行已经在研究并测试去中心化的解决方案了。那么现在市场上可供选择的方案有哪些呢?
净额清算就是一个很好的例子。它以Hyperledger Fabric为基础,能够抵消由两个或多个交易方之间交易所导致的多个头寸或支付费用。常被用来确定多方协议中应获得酬金的一方。净额作为一个普遍概念,在金融市场中(证券交易中)有许多更为具体的用途。
此外,大家对区块链债券、抵押贷款和银行担保的讨论也层出不穷。几乎所有的大银行,包括伊斯兰银行,都在尝试这种做法。
Hyperledger Fabric和Corda区块链技术也常被应用于其他用例,但前景究竟如何就需要我们通过之后的持续跟踪观察才能得出最终结论。
美国银行、高盛、花旗银行、摩根士丹利、摩根大通和中国银行、澳大利亚联邦银行在2019年都取得了不错的效果。此外,在银行业中,人们常会提到跨境金融交易,甚至有意图要摆脱SWIFT。
有人认为,区块链技术在版权保护和打击数据造假方面大有推广前景。例如,出于保护版权的目的,初创公司Sputnik DLT在Waves平台上开发了Depositor服务。
同样,Emernotar是基于Emercoin的类似解决方案,使用的是SHA-512算法。据开发者介绍,企业和律师可以借助Emernotar服务来签订合同,使用在线服务来收集用户许可,创意产业代表也可以以此来确认版权。
以Emercoin技术为基础的democracynotary.org平台旨在保护与选举相关的重要信息。虽然在选举过程中,区块链尚无法保证投票的匿名性,但至少可以保证投票的真实性。
最近,这一平台的效果在马其顿的一项全民公投中得到了检验:公投内容关于是否批准一项与希腊的条约——要求更改马其顿的国名为“北马其顿”。该平台对全民投票过程中的公开报告进行公证,进而阻断了虚假信息的传播。
区块链用例在房地产交易注册方面极具发展前景。去年,曾有人试图利用以太坊区块链上的智能合约在司法管辖区进行此类购买/销售交易。虽然并不是所有地方的立法机构都能理解律师在做的事情,但过去和将来都有尝试。
例如,最著名的例子是,曾通过加利福尼亚一个去中心化的Propy市场,达成了一项出售10英亩土地的交易,交易完全以比特币进行,并使用区块链进行注册。此后,欧盟也完成了首个区块链房地产销售。
2018年12月,瑞士金融市场监管局批准了区块链公司“Blockimmo房地产公司”的商业模式。目前,Blockimmo平台正处于测试阶段,可供瑞士和列支敦士登的居民使用。之后,该公司计划将进入其他整个欧洲市场。
部分专家十分看好区块链在批发和物流领域的应用前景;但同时,也有部分专家认为它在该领域毫无用武之地。然而,作为消费者,我们更应该肯定行业内已经取得的成功。
2018年晚秋,石油巨头BP和壳牌(Shell)、大型银行及公司推出了Vakt区块链平台,旨在优化商品交易流程——包括将纸质文档转换为智能合约。
同时,阿联酋也在领域内使用了区块链技术——Maqta Gateway LLC在阿布扎比推出了首个区块链物流解决方案。公司开发的Silsal区块链技术可以提高物流和货运效率。Maqta Gateway希望能够通过DLT技术来减少文书工作量,促进实时状态更新并加快信息共享速度。
去年秋天还启动了IBM食品信托区块链平台——平台以Hyperledger Fabric技术为基础,旨在调节食品行业供应链。家乐福(Carrefour)、雀巢(Nestle)、都乐食品(Dole Food)、泰森食品(Tyson Foods)、克罗格(Kroger)、联合利华(Unilever)、沃尔玛(Walmart)等知名企业都是该平台成员。IBM区块链服务每月费用从100美元到10,000美元不等,这也解释了为何这些行业巨头愿意在这方面进行投资。
2017年秋天启动了去中心化的Shelf.Network拍卖协议。汽车经销商可以通过该平台进行汽车销售和租赁交易。
一年后,该拍卖网络获得了日本IT巨头Broadleaf的投资。同时,Broadleaf也获得了供应Shelf.Network技术的许可,为东南亚国家(包括日本、缅甸、泰国、印度尼西亚、越南、老挝、澳大利亚、印度和新加坡)建立汽车和零部件销售的贸易网络。
到2018年底,有6万辆来自美国的汽车加入了该服务网络。Shelf.Network还实现了与Carfax web服务的交互,可以通过后者向个人和企业提供车辆历史报告。例如,初创公司Auto1 Group GmbH在德国购买汽车时,通过区块链对贷款和保险产品进行了记录,这大大提高了交易速度(如果采用传统文书工作的话,需要两周时间才可完成)。
IBM商业价值研究所对大公司进行的一项调查显示,到2021年,区块链将在汽车行业发挥关键作用,同时,区块链也将被应用于航空领域。例如,S7航空公司和阿尔法银行(俄罗斯)已经通过在Hyperledger区块链平台上应用智能合约,实现了实时支付飞机燃油费用。
行内各界都相信DLT技术能够简化并加快相互结算流程、消除各类财务风险、实现流程自动化。与批发物流领域相同,该技术在运输领域也具有重要应用意义。
区块链技术也正逐步渗透进公共部门,被广泛用于文件认证流程。例如,Proofstack服务能够将文件与所有者的个人签名、日期和时间戳一起归档,然后将存档哈希散列写入区块链。用户还可以选择影响时间戳类型的国家,以及生成存档所需的存储位置(计算机、云端)。人们可以通过创建的存档来确认文件在何时由何人进行归档。与此同时,区块链在司法系统中的应用也越来越普及。例如,ServeManager和Integra已经将区块链技术应用到跟踪传票交付的服务中了。
在中国,由政府支持的区块链解决方案持续、迅速发展。其司法区块链系统“天平链”在发布仅三个月后,就采集了约100万份在线证据数据。平台上提交的所有资料均通过DLT认证,共计19万份文件。平台电子证据系统由北京互联网法院、中国工业控制系统应急响应小组(CICS-CERT)、工信部研究中心、百度互联网集团和TrustDo区块链初创公司共同开发。平台以互联网巨头百度的超链基础设施为基础,优化了证据收集和存储过程,通过区块链保证数据的真实性。此外,平台还通过降低与互联网相关的诉讼成本,实现了节约时间和资源的目的。
作为全球集装箱航运的领导者,Maersk于去年春天开始使用Insurwave区块链解决方案。该海上保险平台由咨询公司EY和Guardtime共同开发,以微软Azure云技术为基础。在与Insurwave合作的第一年,Maersk计划将为1000艘远洋船舶投保,数字交易总量将超50万笔。
目前,平台用户有Willis Towers Watson、XL Catlin和MS Amlin。开发商正试图扩展Insurwave的功能,将保险业务拓展到航空和能源领域。
专门从事投资流管理的英国金融科技公司Calastone宣布将计算全部转移到区块链上完成。该公司预计,此项技术将有助于削减全球结算部门数十亿美元的成本。Calastone为1700多家公司提供风险评估管理服务、IT基础设施和支付解决方案,其客户包括摩根大通资产管理公司(JP Morgan Asset management)、施罗德(Schroders)和景顺(Invesco)。
如果企业目标是争取交易及DLT注册表中输入信息透明度的话,则会为区块链创造绝佳的应用场景;但是,如果企业追求的是保持匿名性或“追踪”金融交易的话,则没有区块链施展拳脚的机会。
新加坡电力集团(Singapore Power Group)推出了可再生能源(REC)证书区块链交易市场。其公司代表表示,该“内部开发”平台旨在提高此类证书交易的安全性、可靠性和可追踪性。
REC证书是证明太阳能电池板释放电量的凭证,由Cleantech Solar Asia和LYS Energy Solutions进行销售。有意购买证书的City Developments Limited和DBS Bank都对该平台十分感兴趣。Katoen Natie Singapore也已加入该平台,计划很快启动可再生电力生产能力。
韩国最大的电信公司KT公司也推出了自己的区块链网络,其分布式注册技术涉及用户认证和改善国际漫游服务。KT公司可以借此将客户数据安全传输给合作伙伴。网络带宽每秒可处理100,000个事务。
时间将会证明这些举措是否会得到大众市场的认可。同样,区块链在电力、数据、用户标识的账户/记录/交易方面的应用都是老生常谈了。
在2017年底,麻省理工学院(MIT)使用Blockcerts钱包(可发行一种“可验证、防篡改”的认证证书),通过比特币区块链为一百多名毕业生签发了数字毕业证书。
该试验项目得到了软件公司Learning Machine的支持,该公司曾与Media Lab一起参与了Blockcerts的研发工作。
这样做的目的是让学生成为自己档案真正的所有者。Learning Machine首席执行官克里斯•贾杰斯(Chris Jagers)表示,即便有一天该机构不复存在了,人们也可以提取其中存储的重要官方信息。
第比利斯商业技术大学(Tbilisi University of Business and Technology)也使用了同样的方法:该大学通过与Emercoin合作,使用了类似的区块链平台Trusted Diploma。该平台能够借助区块链来修复注册数据(所学科目、培训质量和取得的分数)。以此来看,在将来,区块链或许能在进一步推广数字学习方法方面有用武之地。
二、主流区块链技术有哪些
本文试图对区块链有关技术流派和主流平台进行一个概览,作为学习区块链技术体系的导览,意在抛砖引玉,促进区块链开发社区的讨论与共识。区块链技术的流派未战先谋局,你想投入区块链开发这个领域,至少先要搞清楚现在有哪些玩家,各自的主张和实力如何。划分区块链技术流派并无一定之规,据我所见,或可有以下四种方式:第一是按照节点准入规则,划分为公有链、私有链和联盟链。公有链的代表自然是比特币和以太坊,私有链则以R3 Corda声名最盛,联盟链的代表作品是Hyperledger名下的Fabric。公有链注重匿名性与去中心化,而私有链及联盟链注重高效率,而且还往往设置了准入门槛。公有链、私有链与联盟链之间的这些不同都在技术中有所体现,比如私有链和联盟链假设节点数目不大,可以采用PBFT算法来形成共识。而公有链假设有大量且不断动态变化的节点网络,用PBFT效率太低,只能采用类似抽彩票的算法来确定意见领袖。这就意味着,私有链与联盟链很难变成公有链,而用公有链来作联盟链或私有链虽然容易,却也并非即插即用。此种差异,学者不可不察。第二是按照共享目标,划分为共享账本和共享状态机两派。比特币是典型的共享账本,而Chain和BigchainDB也应属此类,这几个区块链系统在各个节点之间共享一本总账,因此对接金融应用比较方便。另一大类区块链系统中,各个节点所共享的是可完成图灵完备计算的状态机,如以太坊、Fabric,它们都通过执行智能合约而改变共享状态机状态,进而达成种种复杂功能。第三是按照梅兰妮·斯旺所描述的代际演进,将区块链系统分为1.0、2.0和3.0三代。其中1.0支撑去中心化交易和支付系统,2.0通过智能合约支撑行业应用,3.0支撑去中心化的社会体系。比特币和Chain应属于区块链1.0系统,而以太坊和Fabric是区块链2.0系统,目前尚无成功的区块链3.0系统出现,不成功的尝试倒是有那么一个,就是著名的The DAO。第四是按照核心数据结构,分为区块链和分布式总账两派。区块链这一派在系统中真的实现了一个区块的链作为核心数据结构,而分布式总账这一派,只是吸取了区块链的精神,并没有真用一条区块链作为核心数据结构,或者虽然暂时用了,但声明说吾项庄舞区块链,意在分布式总账耳,若假以时日,因缘际会,未尝不可取而代之也。主流区块链技术平台了解流派划分,仍是只能用来指点江山,吹牛论道,要动手,总要有个切入点。区块链货币据说已经有上千个了,但值得关注的技术平台大概只有数十个,而如果要进入区块链开发领域,打下一个好基础,练出一身好功夫,捞到几个好offer,则值得深入研究学习的平台,屈指可数。首先当然是比特币。比特币作为区块链的第一个也是目前为止最成功、最重要的样板工程,已经上线运行了八年多,本身没有发生任何严重的安全和运维事故,其稳定与强悍堪称当代软件系统典范。比特币Bitcoin Core是一个代码质量高、文档良好的开源软件,从学习区块链原理、掌握核心技术的角度来说,Bitcoin Core是最佳切入点,能够学到原汁原味的区块链技术。当然,Bitcoin Core是用C++写的,而且用了一些C++11和Boost库的机制,对学习者的C++水平提出了较高的要求。学习比特币平台开发还有一个优势,就是可以对接繁荣的比特币技术社区。目前围绕比特币进行改进和提升的人很多,人多力量就大,诸如隔离验证、闪电网络、侧链等比较新的想法和技术,都率先在比特币社区里落地。比如侧链技术的主要领导者Blockstream是由密码学货币元老Adam Back领衔的,而Blockstream是Bitcoin Core最大的贡献者之一,所以一些有关侧链的技术在比特币社区里讨论最充分。但比特币作为一个典型的区块链1.0系统,是不是支撑其他类型区块链应用的最佳技术平台,存在很大的争议。另外,也不是所有人都有能力和必要精通区块链底层技术。所以对那些急于冲到区块链领域里做(quān)事(qián)的人来说,可能更直截了当的学习目标是以太坊和Hyperledger Fabric。在以太坊上面用Solidity进行的智能合约开发是切入区块链开发最简单的方式,没有之一。以太坊的理想非常宏大,由于配备了强大的图灵完备的智能合约虚拟机,因此可以成为一切区块链项目的母平台,是驮住整个区块链世界的大乌龟。在以太坊上开发一个类似比特币的加密货币,是一个不折不扣的小目标。一般有经验的开发者在文档指导下,半天到一天即可入门。问题在于,入门以后又如何?靠写Solidity是否就可以包打天下?这是大大存疑的。我们也可以反过来说,如果以太坊+Solidity是区块链的终极解决方案,那么怎么还会出现那么多区块链技术门派呢?特别是,以太坊似乎并没有给现实世界中巨型的中心化组织们留下一条活路,这种彻底不妥协的革命态度有可能也成为以太坊推广的障碍。当前以太坊项目的开发进展并不顺利。一个比较突出的问题是项目过多,力量分散,导致项目质量参差不齐。但尽管如此,跟其他区块链2.0平台相比,以太坊提供的开发环境是最简单最完善的。初学区块链的人绝对有必要学习以太坊,从而对区块链和智能合约建立起一个最“正宗”的认识。主流区块链技术平台的第三支就是Fabric,它是Hyperledger的第一个也是最知名的孵化项目。 Fabric最早来自IBM的Open Blockchain项目,到2015年11月,IBM将当时已经开发完成的44,000行Go语言代码交给Linux基金会,并入Hyperledger项目之中。在2016年3月一次黑客马拉松中,Blockstream和DAH两家公司将各自的代码并入Open Blockchain,随后改名为Fabric。到目前为止,Fabric与Intel提供的Sawtooth Lake并列为Hyperledger的一级孵化项目,但前者得到的关注远超后者。从技术角度来说,Fabric思路不错,重点是满足企业商用的需求,比如解决交易量问题。众所周知,比特币最大的短板是它每秒钟7个交易的上限,完全无法满足现实需要。而Fabric目标是实现每秒钟10万交易,这个量接近刚刚过去的双十一交易量瞬时峰值,完全可以满足正常条件下的行业级应用。Fabric用Go语言开发,也提供多种语言的API。特别值得一提的是,Fabric比较充分地运用了容器技术,比如其智能合约就运行在容器当中。这也是Go语言带给Fabric的一项福利,因为Go语言静态编译部署的特征很适合开发容器中的程序。Fabric还有一些特点,比如其membership服务可以设置节点准入审查,这是典型的联盟链特征。再比如其共识算法是可定制的。Fabric的短板是体系较为复杂,虽有文档,但缺少经验的开发者学习起来障碍比较大。然而由于其定位清楚,迎合了不少企业的心态,所以已经有多家机构在基于Fabric秘密研发行业内的联盟链项目。
三、各区块链架构的横向比较
各区块链架构的横向比较
时常听人们谈起区块链,从 2009年比特币诞生至今,各式各样的区块链系统或基于区块链的应用不断被开发出来,并被应用到大量的场景中,而区块链技术本身也在不停地变化和改进。
区块链又被称为分布式账本,与之对应的则是中心化账本,比如银行。与中心化账本不同的是,分布式账本依靠的是将账本数据冗余存储在所有参与节点中,来保证账本的安全性。简单地说,区块链会用到三种底层技术:点对点网络技术、密码学技术和分布式一致性算法。而通常,区块链系统还会“免费附赠”一种被称为智能合约的功能。智能合约虽然不是区块链系统的必要组成部分,但由于区块链天生所具备的去中心化特点,使它可以很好地为智能合约提供可信的计算环境。
为了适应不同场景的需求,区块链系统在实际应用的过程中往往会需要进行各种改造,以满足特定业务的要求,比如身份认证、共识机制、密钥管理、交易频次、响应时间、隐私保护、监管要求等。而实际应用区块链系统的公司往往没有进行这种改造的能力,于是市场上慢慢出现了一些用于定制专用区块链系统的框架,采用这些框架就可以很方便地定制出适用于企业自身业务的区块链系统。
本文将对目前市场上几个典型的区块链框架进行横向对比,看看它们都有哪些特点,以及它们之间到底有哪些区别。为了保持对比的公正性,本文将只针对开源的区块链框架进行讨论。
各区块链架构的简单介绍
1、比特币
比特币(bitcoin)源自一名叫做中本聪(Satoshi Nakamoto)的人在 2008年发表的一篇名为《比特币:一种点对点的电子现金系统》(Bitcoin: A Peer-to-PeerElectronic Cash System)的论文,文中描述了一种被他称为“比特币”的电子货币及其算法。在之后的几年里,比特币不断成长和成熟,而它的底层技术也逐渐被人们认识并抽象出来,这就是区块链技术。比特币作为区块链的鼻祖,在区块链的大家族中具有举足轻重的地位,基于比特币技术开发出的山寨币(altcoins)的数量有如天上繁星,数不胜数。
从论文中可以得知,中本聪设计比特币的目的,就是希望能够实现一种完全基于点对点网络的电子现金系统,使得在线支付能够直接由一方发起并支付给另外一方,中间不需要通过任何的中介机构。总结来说,他希望比特币的设计能够实现以下这些目标:
●不需要中央机构就可以发行货币
●不需要中介机构就可以支付
●保持使用者的匿名性
●交易无法被撤销
从电子现金系统的角度来看,以上这些目标在比特币中基本都得到了实现,但是依然有一些技术问题有待解决,比如延展性攻击、区块容量限制、区块分叉、扩展性等。
在应用场景方面,目前大量的数字货币项目都是基于比特币架构来设计的,此外还有一些比较实际的应用案例,比如彩色币、t?等。
彩色币(coloredcoin),通过仔细跟踪一些特定比特币的来龙去脉,可以将它们与其他的比特币区分开来,这些特定的比特币就叫作彩色币。它们具有一些特殊的属性,从而具有与比特币面值无关的价值,利用彩色币的这种特性,使得开发者可以在比特币网络上创建其它的数字资产。彩色币本身就是比特币,存储和转移不需要第三方,可以利用已经存在的比特币的基础。
t?是比特币区块链在金融领域的应用,是美国在线零售商 Overstock推出的基于区块链的私有和公有股权交易平台。
2、以太坊
以太坊(ethereum)的目标是提供一个带有图灵完备语言的区块链,用这种语言可以创建合约来编写任意状态转换功能,用户只要简单地用几行代码来实现逻辑,就能够创建一个基于区块链的应用程序,并应用于货币以外的场景。
以太坊的设计思想是不直接“支持”任何应用,但图灵完备的编程语言意味着理论上任意的合约逻辑和任何类型的应用都可以被创建出来。总结来说,以太坊在比特币的设计目标之外,还需要实现以下几个目标:
●图灵完备的合约语言
●内置的持久化状态存储
目前基于以太坊的合约项目已达到数百个,比较有名的有 Augur、TheDAO、Digix、FirstBlood等。
Augur是一个去中心化的预测市场平台,基于以太坊区块链技术。用户可以用数字货币进行预测和下注,依靠群众的智慧来预判事件的发展结果,可以有效地消除对手方风险和服务器的中心化风险。
限于篇幅,基于以太坊智能合约平台的项目就不多介绍了。基于以太坊的代码进行改造的区块链项目也有不少,但几乎都是闭源项目,只能依靠一些公开的特性来推断,所以就不在本文展开讨论了。
3、Fabric
Fabric是由 IBM和 DAH主导开发的一个区块链框架,是超级帐本的项目成员之一。它的功能与以太坊类似,也是一个分布式的智能合约平台。但与以太坊和比特币不同的是,它从一开始就是一个框架,而不是一个公有链,也没有内置的代币(token)。
超级账本(hyperledger)是 Linux基金会于 2015年发起的推进区块链技术和标准的开源项目,加入成员包括:荷兰银行(ABN AMRO)、埃森哲(Accenture)等十几个不同利益体,目标是让成员共同合作,共建开放平台,满足来自多个不同行业各种用户案例,并简化业务流程。
作为一个区块链框架,Fabric采用了松耦合的设计,将共识机制、身份验证等组件模块化,使之在应用过程中可以方便地替换成自定义的模块。除此之外,Fabric还采用了容器技术,将智能合约代码(chaincode)放在 docker中运行,从而使得智能合约可以用几乎任意的高级语言来编写。
以下是 Fabric的一些设计目标:
●模块化设计,组件可替换
●运行于 docker的智能合约
目前已经有不少采用 Fabric架构进行开发的概念验证(POC)项目在实施过程中,其中不乏一些金融机构做出的尝试,不过由于项目刚刚起步,还没有比较成熟的落地应用。
4、DNA
DNA(Distributed Networks Architecture,分布式网络架构),是由总部位于上海的区块链创业公司“分布科技”开发的区块链架构,可以同时支持公有链、联盟链、私有链等不同应用类型和场景,并快速与业务系统集成。
与以太坊、Fabric不同的是,DNA在系统底层实现了对多种数字资产的支持,用户可以直接在链上创建自己的资产类型,并用智能合约来控制它的发行逻辑。对于绝大部分的区块链应用场景,数字资产是必不可少的,而为每一种数字资产都开发一套基于智能合约的转账、发行逻辑是非常浪费且低效的。因此,由区块链底层提供直接的数字资产功能是十分必要的。而对于那些完全不需要数字资产的应用场景,同样可以基于 DNA提供的智能合约架构来编写任意的自定义逻辑来实现。
DNA的设计目标主要有以下几点:
●多种数字资产的底层支持
●图灵完备的智能合约和状态持久化
●跨链互操作性
●交易的最终性
目前已有不少金融机构采用 DNA架构来进行区块链概念验证产品的开发。除此之外,还有一些已经落地的区块链项目,如小蚁区块链、法链等。
小蚁(antshares)是一个定位于资产数字化的公有链,将实体世界的资产和权益进行数字化,通过点对点网络进行登记发行、转让交易、清算交割等金融业务的去中心化网络协议。它采用社区化开发的模式,在架构上与 DNA保持一致,从而可以与任何基于DNA的区块链系统发生跨链互操作。
法链是全球第一个大规模商用的法律存证区块链,一个底层基于 DNA区块链技术,并由多个机构参与建立和运营的证据记录和保存系统。该系统没有中心控制点,且数据一旦录入,单个机构或节点无法篡改,从而满足司法存证的要求。
5、Corda
Corda是由一家总部位于纽约的区块链创业公司 R3CEV开发的,由其发起的 R3区块链联盟,至今已吸引了数十家巨头银行的参与,其中包括富国银行、美国银行、纽约梅隆银行、花旗银行、德国商业银行、德意志银行、汇丰银行、三菱 UFJ金融集团、摩根士丹利、澳大利亚国民银行、加拿大皇家银行、瑞典北欧斯安银行(SEB)、法国兴业银行等。
从 R3成员的组成上也可以看出,Corda是一款专门用于银行与银行间业务的区块链架构。尽管 R3自己声称 Corda不是区块链,但从各项特征来看,它具备区块链的一些特性。
技术对比
1、数字资产
接下来,将对前文中提到的这些区块链框架进行一系列的技术对比,并从多个维度展开介绍它们的区别与相似之处。
区块链的内置代币通常是一种经济激励模型和防止垃圾交易的手段。比特币天生就有且只有一种内置代币,所以在比特币系统中所有的“交易”本质上都是转账行为,除非通过外部的协议层来给比特币增加额外的数字资产。
以太坊和 DNA具有内置代币,它们的作用除了以上提到的经济激励和防止垃圾交易之外,还具有为系统内置功能提供一个收费的渠道。比如以太坊的智能合约运行需要消耗 GAS,而 DNA的数字资产创建也需要消耗一定的代币。
以太坊和 Fabric没有内置的多种数字资产支持,而是通过智能合约来实现相应的功能。这种方式的好处在于,系统设计可以做到非常简洁,而且资产的行为可以任意指定,自由度极高。然而这样的设计也会带来一系列的负面影响,比如所有的资产创建者不得不自己编写重复的业务逻辑,而用户也没有办法通过统一的方式去操作自己的资产。
相比之下,DNA和 Corda采用了在底层支持多种数字资产的方式,让资产创建者可以方便地创建自己的资产类型,而用户也可以在同一个客户端中管理所有的资产。对于逻辑更加复杂一点的业务场景来说,他们同样可以利用智能合约来强化资产的功能,或者创建一种与资产无关的业务逻辑。
2、账户系统
UTXO(Unspent Transaction Output)是这样一种机制:每一枚数字货币都会被登记在一个账户的所有权之下,一枚数字货币有两种状态,即要么还没有被花费,要么已经被花费。当需要使用一枚数字货币的时候,就将它的状态标记为已经花费,并创造一枚新的与之等额的数字货币,将它的所有权登记到新的账户之下。在这个过程中,被标记为已花费的数字货币就被称为交易的输入,而创造出来的新的数字货币被称为交易的输出,在一笔交易中,可以包含多个输入和多个输出,但是输入之和与输出之和必须相等。要计算一个账户的余额时,只要将所有登记在该账户下的数字货币的面额相加即可得出。
比特币和 Corda就采用了 UTXO这样一种账户机制,而以太坊则采用了更加直观的余额机制:每个账户有一个状态,状态中直接记录了账户当前的余额,转账的逻辑就是从一个账户中减去一部分余额,并在另一个账户中加上相应的余额,减去的部分和加上的部分必须相等。DNA在账户机制上同时兼容这两种模式。
那么 UTXO模式和余额模式,究竟有什么优缺点呢?UTXO最大的好处就是,基于 UTXO的交易可以并行验证且任意排序,因为所有的 UTXO之间都是没有关联的,这对区块链未来的伸缩性是有很大帮助的,而基于余额的设计就没有这个优势了;反过来,余额设计的优点是设计思想非常简洁和直觉化,便于程序实现,特别是在智能合约中,要处理 UTXO的状态是非常困难的。这也是为什么以智能合约为主要功能的以太坊选择余额设计的原因,而比特币、OnchainDNA、Corda这些以数字资产为核心的架构则更倾向于 UTXO设计。
关于身份认证,比特币和以太坊基本没有身份认证的设计,原因很简单,因为这两者的设计思想都是强调隐私和匿名,而反对监管和中心化,而身份认证就势必要引入一些中心或者弱化的中心机构。Fabric、DNA和 Corda不约而同地选择了采用数字证书来对用户身份进行认证,原因在于这三者都有应用于现有金融系统的设计目标,而金融系统必然要考虑合规化并接受监管,此外现有的金融系统已经大范围地采用数字证书方案,这样便可以和区块链系统快速集成。