首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Hyperledger Fabric Endorsement policies——背书策略

背书策略

背书策略用于指导peer如何确定交易是否得到了的认可。当一个peer接收到一个事务时,它会调用与事务的Chaincode相关联的VSCC(验证系统链代码),作为事务验证流程的一部分,以确定交易的有效性。一个交易包含了一个或多个peer背书节点中的背书支持。VSCC的任务是做出以下决定:

所有的背书都是有效的(也就是说,它们是有效的签名,而不是预期的消息)。

有适当数量的背书

背书来自预期的来源(s)

背书策略指的是第二和第三点其中的一种方式。

CLI中的背书策略语法

在CLI中,使用一种简单的布尔表达式语言来表达对主体的背书策略。

一个主体被描述为MSP,它的任务是验证签名者的身份,以及签名者在MSP中所扮演的角色。目前,支持两个角色,即成员和管理员。角色组成,MSP必须承载MSP ID,角色是成员和管理员两个字符串之一。例如一个有效的主体是“Org0.admin”(任何组织的任何管理员)或是Org1.member(任何组织的成员)。

该语言的语法是:

EXPR(E[, E...])

EXPR使用AND或者OR其中之一作为表达式,E要么是一个主体(上面描述的是语法),要么是另一个对EXPR的嵌套调用。

例如:

AND('Org1.member', 'Org2.member', 'Org3.member')三个主体必须同时背书并认可签名

OR('Org1.member', 'Org2.member')两个主体中的任意一个背书并认可签名

OR('Org1.member', AND('Org2.member', 'Org3.member'))主体1背书并认可签名或者主体2和主体3同时背书并认可签名

为chaincode指定背书策略

使用这种语法,chaincode部署人员可以请求对chaincode的背书在指定的策略上进行验证。注意-默认策略需要一个来自默认MSP的成员的签名。如果在实例化chaincode时,在CLI中没有指定策略,则使用此方法。

可以在实例化时使用“-P”关键词指定策略,然后执行策略。

例如:

peer chaincode instantiate -C -n mycc -P"AND('Org1.member', 'Org2.member')"

这个命令使用AND('Org1.member', 'Org2.member') 背书策略来部署chaincode mycc,该策略要求Org1和Org2的成员两个都必须签署事务。

关于本号

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180301G05ONH00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券