月亮链 月亮链
Ctrl+D收藏月亮链
首页 > PEPE币 > 正文

CHA:星云研究院:Hyperledger Fabric论文分析_onlychain

作者:

时间:1900/1/1 0:00:00

本文作者:星云研究院资深研究院汤载阳博士。华中科技大学计算机博士,日本会津大学和法国南巴黎国立电信学院访问学者,研究方向包括分布式系统、无线网络和区块链共识,在TPDS、ICDCS等顶级期刊会议上发表过论文。前言最近部门开始了Survey的计划,从Cryptology,Consensus和传统分布式系统三个方向调研目前业内关于Blockchain的最新进展。在寒冷的冬天,能窝在被窝里看论文也算是不幸中的万幸。本来一直也有想写专栏的计划,刚好借此机会整理下看过的论文。既然是系列开头,第一篇论文选择还是比较慎重的,我们最终选择了发表于EuroSys18的论文《HyperledgerFabric:ADistributedOperatingSystemforPermissionedBlockchains》,该论文介绍了IBM在联盟链方向的最新研究成果。话不多说,开始正文。FabricFabric是属于Hyperledger的一个子项目,后者是由Linux基金会发起面向区块链技术的开源项目,主要成员包括IBM、R3、Intel等等。Hyperledger实际上还有很多子项目,其中另一个比较著名的是SawtoothLake,由Intel主导,包含了一种全新的共识机制Proof-of-ElapsedTime,该共识策略支持Intel的SGX技术。Fabricv0.6在2016年九月发布,当时的Fabric和其他联盟链没有太大区别,采用PBFT共识。这篇论文介绍的是最新v1.0Fabric,主要对上述若干问题进行了较大改进,从节点架构上来看,取消了原来的Validating和Non-Validating节点,取而代之的是Endorser节点、Committer节点和全新的Orderer模块。专有名词解释:BFT:Byzantine-faulttolerant拜占庭容错,即有恶意节点情况下的容错CFT:crashfaulttolerant无恶意节点情况下的容错SMR:state-machinereplication状态机复制,分布式系统中最重要概念MSP:membershipserviceprovider成员管理模块,负责Fabric中三类节点的认证管理PTM:peertransactionmanager更新最新的交易的状态,以<k,v>形式存储VSCC:validationsystemchaincode验证chaincode,后文会详细介绍ESCC:endorsementsystemchaincode背书chaincode,后文会详细介绍Basics关于区块链的划分,通常包括公链、联盟链和私有链。最近几年学术圈给出了更为严谨的定义,即permissionlesschain和permissionedchain。在本文中,作者给出publicblockchain和permissionedblockchain的定义如下:Publicblockchainstypicallyinvolveanativecryptocurrencyandoftenuseconsensusbasedon“proofofwork”(PoW)andeconomicincentives.Apermissionedblockchainprovidesawaytosecuretheinteractionsamongagroupofentitiesthathaveacommongoalbutwhichdonotfullytrusteachother.可以看出来两者最主要的区别在于参与节点的身份是否确定以及是否引入了经济激励机制。当然无论publicchain还是permissionedchain,其本质仍然都是状态机复制,但由于智能合约的出现产生了新的变化。如果我们将智能合约看做一种分布式应用,blockchain和传统SMR的区别在于:多个智能合约可以同时运行;任何人都可以随时部署智能合约;智能合约代码不可信,甚至可能产生恶意后果Order-execute大部分区块链所采用的流程是:将transactions排序打包然后同步到每个节点,每个节点再按顺序执行这些交易。在论文中,这种架构被称之为“order-executearchitecture”,即先“order”再“execute”。如下图所示:

星云发布下半年研发路线图 包括将支持以太坊资产跨链等:星云基金会今日发布下半年研发路线图,重点是去中心化金融服务,包括:1.Link.nextDAO跨链资产:支持以太坊资产跨链;2.Swap.nextDAO去中心化闪兑交易:提供自动做市和流动性,允许自由创建交易对;3.Market.nextDAO去中心化借贷:资产在用户手中,去中心化抵押资金池,规避智能合约资产安全风险;4.DeFi APP:NAS nano pro升级版,移动端星云生态入口升级;5.PoD链上治理升级。[2020/8/10]

这样的架构存在一些问题,首先所有节点按照顺序执行交易会限制性能,通常将不相关的操作并发执行可以提升性能,但是对智能合约很难做到并发,因为代码之间的依赖关系很难确定。此外,order-execute最大的限制是,所有节点所执行的交易必须满足确定性。类似以太坊这样采用Solidity这样的编程语言可以一定程度上保证代码确定性,但对于更流行的语言,则很难保证确定性。在联盟链中,一种可行的做法是,仅让部分节点运行代码,然后同步最终状态至全网。这样子一方面通过选择运行代码的节点从而保证代码运行的一致性,并且减少了验证节点数也提升了性能。但论文中也指出现有的联盟链存在一些问题,例如:Fixedtrustmodel:即合约执行背书和共识机制绑定,这种紧耦合的架构不够灵活;Hard-codedconsensus:共识机制通常为硬编码的形式固定,但实际上即便是BFT这一类的算法在不同场景下表现也不尽相同Execute-order-validateFabric采用了全新的交易架构,称之为execute-order-validate,如下图所示。

动态 | 星云基金会2019下半年财务报告:期末余额逾1864万USDT:2月3日,星云基金会发布《星云基金会财务报告》(2019年8月1日-2019年12月31日)。查询发现,本期基金会财报期初余额为72,310,379.04 USDT,期末余额为18,642,110.71 USDT。[2020/2/3]

在上述架构中,智能合约这种分布式应用包括了两个部分:chaincode:即原来的smartcontractcode,在execute阶段可以运行,值得注意的是,还有一种特殊的systemchaincodes,这类chaincodes定义了整个链的底层设置,包括validationsystemchaincode和endorsementsystemchaincode。endorsementpolicy:这个概念理解起来就有点绕了,可以理解为独立于共识模块的一种验证或者背书机制。传统consensus包括了验证节点是否作恶以及交易本身是否正确两个任务,而在Fabric中,将后者抽离成为endorsementpolicy。实际上这个模块也是可以替换的,比如“五个endorser节点中只要有三个执行结果一致则完成验证”这种策略完全可以换成“只需要XXXendorser节点完成执行则通过验证”。如下图所示,在Fabric中有三类节点,包括:

动态 | 七星云将筹资近240亿美元提供电动公交升级:据coindesk报道,区块链和人工智能技术公司七星云集团与中国国家运输能力有限公司(NTS)签订了独家合同,为该全方位服务运营商提供大规模的电动公交升级服务。七星云将通过其监管投诉区块链生态系统发行固定收益租赁融资产品。对于以中国为基础的融资,七星云将专注于固定收益产品的销售。对于国际市场,七星云将提供固定收益和资产数字化产品。具体来说,纳斯达克上市公司七星云计划在三年期间分别筹集约87.5亿美元及150亿美元。[2018/8/21]

Clients:这类节点即发起交易或者调用智能合约的普通节点;Peers:执行验证交易的节点,这类节点需要有全量ledger数据,在这类节点中,只有一部分负责执行交易,即endorsingpeers;OSNs:上述所有节点都需要认证,由MSP统一发放,形式可以为offline也可以为online。详细的交易流程如下图所示:

1.client发起交易,首先将交易信息发给定义好的若干endorsers,注意此处的endorsers是由交易本身的chaincode和其中的endorsementpolicy共同决定;此处proposemessage包括信息如下:tx=<clientID,chaincodeID,txPayload,timestamp,clientSig>clientID:提交交易的client的IDchaincodeID:交易所属的chaincode的IDtxPayload:交易本体信息timestamp:时间戳clientSig:client签名endorser收到message后,用client公钥验证clientSig,然后运行交易并验证输出结果。如果该endorser被选择为背书节点,则把结果发回给提交的client;该client收集每个endorser返回的信息,当满足endorsementpolicy后,则进入ordering阶段,反之该交易失败;client将通过endorsement的交易广播至所有orderers,后者通过某种共识机制对所有通过endorsement的交易进行排序,保证所有节点的数据满足时序一致性;orderers再将排序后的交易广播至其他peers,这里广播的实际上就是一个包含了若干交易的block和一个sequencenumber;所有peers验证block之后,更新自身的ledger,即完成上链。当然上述流程中有一些较强的假设,比如对于P2P传输而言,需要满足liveness,即broadcast(tx)操作在有限的时间内一定可以到达所有其他节点。关于ordering,可采用不同的共识机制,目前支持Kafka,BFT-SMaRt和Solo。Kafka是基于ZooKeeper的Paxos实现,可以实现50%的CFT;BFT-SMaRt则是PBFT的实现,可以实现33%的BFT;Solo是单order节点的ordering,主要用于开发测试。P2P传输,采用的是epidemicmulticast,包括了push和pull两种模式。Chaincode每一条链的配置位于特殊的configurationblocks中,包括了:MSPs定义OSNs地址consensus和ordering的部分参数,例如batchsize、timeoutsordering中的基本操作定义通过channelconfigurationupdatetransaction可以更新channel的配置每个application的chaincode包括了endorsementsystemchainco和validationsystemchainc。Evaluation为了测试,Fabric设计了一种UTXO模型的代币,简称Fabcoin。通过一个chaincode不断产生SPEND和MINTtransactions,分别模拟Fabcoin的产生和销毁。实验1:测试blocksize和Throughput关系,结论是在blocksize超过2MB之后TPS不再显著提升;不同transaction的size略有差别,比如MINTtransaction因为需要带有CB验证所以更大。

现场 | 星云链徐义吉:下一代区块链的三个明确诉求:金色财经现场报道,今日中本聪团队见面会暨第一届区块链技术与行业落地研讨会在上海举行,在圆桌论坛《下一代区块链技术展望》上嘉宾围绕“下一代区块链技术机会在哪里、挑战在哪里”展开了讨论,星云链创始人徐义吉表示,展望下一代区块链,三个明确的诉求或者是当前仍旧面对的问题:

第一,是一个价值尺度。我们有几千条区块链,甚至更多的地方我们没有一个基于去中心化的价值把这些链进行打通和交互,这是现在非常严重的问题;

第二,我们说叫自净化,这个系统我们说因为区块链还在高速发展,但是它是一个分布式系统,所以你面对的这种错、漏、BUG,系统升级是非常痛苦的,在去年5月份之后有重大的事件出来,系统需要有一个自净化的能力;

第三,是区块链世界原生的激励,我们现在讨论很多的还是说币价,还是我们很多的投资者,大家有没有想过区块链真正发展起来一定来自于用户和开发者之间的一种良性互动,这种良性互动一定是需要系统内升有一种制度的保证,和内升激励的保证,这是我们非常看重的问题。

我觉得区块链更多的是需要有一些耐心,需要我们更理性去看待它。相对于我们说九几年的互联网,相对于我们早期的那些创新的事物,还是有很长一段时间来走,但是我们还是对于这些有不变的初心和热情,这里面我觉得非常开心。[2018/6/27]

实验2:性能测试,

nebulas发布星云激励计划第一季评选周期调整公告:nebulas发布星云激励计划第一季评选周期调整公告称,目前星云第一季激励计划仍在进行中,已有超过1600个应用提交到了星云主网。我们对参加者热情的参与和建设星云DApp生态的贡献精神表示感谢。经过两周的观察和审核我们发现,每周日是应用提交高峰。考虑到应用排名参考的是整周的表现,而且周日会继续举办Hackathon等活动,所以从本周起,我们决定将应用评选截止日期提前到周六24:00。所以每周日的提交将并入下周提交。[2018/5/24]

结论是validation是主要瓶颈,但随着vCPU增加得到了缓解,但是endorsement由于很难并行因此提升有限。32-vCPUpeers可以达到3560tps和3420tps;实验3:RAMdisk,tmpfs相比SSD提升了9%;实验4:Scalability,

标签:CHAHAIChainAINplugchain币机制ChainXonlychainhealthchain

PEPE币热门资讯
STO:STO 如何革新房地产行业_区块链工程好就业吗

导语:无论从市场上可获取公开信息的数字化证券项目,还是根据标准共识提供咨询服务的项目信息来看,我们都可以确定:全球房地产行业正在经历一次应用区块链技术的革新.

1900/1/1 0:00:00
加密货币:作为思潮的加密货币,如何在艺术界掀起风暴?_InnovaMinex

编者按:本文来自碳链价值,作者:福布斯记者RachelWolfson,受访者:艺术家VesaKivinen,翻译:氪-12、Diana,Odaily星球日报经授权转载.

1900/1/1 0:00:00
ONE:谁能想到,波场逆市上涨原因竟是资金盘?_onekey信用卡

编者按:本文来自区块律动BlockBeats,作者:0x29,星球日报经授权发布。「TronOne先机!波场官方推荐!注册即送1088TRX.

1900/1/1 0:00:00
ACE:涉嫌操纵美国大选的Facebook,正在考虑区块链变革登陆服务_BOOK

继稳定币传闻之外,社交巨头Facebook开始考虑区块链在登陆服务上的变革。近日,FacebookCEO马克·扎克伯格在接受哈佛大学法学院教授JonathanZittrain的视频采访时表示,其.

1900/1/1 0:00:00
区块链:蚂蚁金服推出 BaaS 平台:巨头角逐之下,商业机会正快速来临_CEO

文|遂心出品|Odaily星球日报午后的阳光透过落地窗直射进来,蚂蚁金服BaaS平台技术总监李书博等人站在讲台上等待提问,台下,近200位准备参赛的区块链从业者跃跃欲试.

1900/1/1 0:00:00