背书策略

背书策略用于指导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 <channelid> -n mycc -P "AND('Org1.member', 'Org2.member')"

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

Hyperledger Fabric Endorsement policies——背书策略相关推荐

  1. Hyperledger Fabric权限管理和策略

    权限管理是区块链网络十分重要的功能,负责控制某个身份在某个场景下是否允许采取某个操作(如读写某个资源). 超级账本 Fabric 项目通过策略(Policy)来灵活指定各场景下的操作权限. 策略应用场 ...

  2. 区块链学习8:超级账本项目Fabric中的背书、背书节点、背书策略、背书签名

    ☞ ░ 前往老猿Python博文目录 ░ 在Hyperledger Fabric区块链中,有背书节点进行背书,Hyperledger Fabric 使用背书策略来定义哪些节点需要执行交易. Hyper ...

  3. Linux搭建Hyperledger Fabric区块链框架 - Hyperledger Fabric模型概念

    企业选型的区块链底层技术 Hyperledger Fabric 概念 2015年,Linux基金会启动了Hyperledger项目,目标是发展跨行业的区块链技术. Hyperledger Fabric ...

  4. Hyperledger Fabric 2.0 官方文档中文版 第3章 关键概念

    Hyperledger Fabric 2.0 官方文档中文版 第3章 关键概念 总目录 3.关键概念 引言 什么是区块链? 区块链为什么有用? 什么是Hyperledger Fabric? Hyper ...

  5. Hyperledger Fabric和FISCO BCOS技术对比

    1 起源 Hyperledger Fabric 是分布式账本解决方案的平台,该平台以模块化架构为基础,提供高度的机密性,灵活性和可扩展性.它旨在支持不同组件的可插拔实现,并适应整个经济生态系统中存在的 ...

  6. Hyperledger Fabric 背书策略

    背书策略是为了告知peer节点,交易是否被正确的背书.当peer接收到一个交易到时候,它将会invoke与交易相关的chaincode的VSCC(Validation System Chaincode ...

  7. Hyperledger Fabric从源码分析背书提案过程

    在之前的文章中 Hyperledger Fabric从源码分析链码安装过程 Hyperledger Fabric从源码分析链码实例化过程 Hyperledger Fabric从源码分析链码查询与调用 ...

  8. Fabric背书策略

    1 用途 1.1 交易流程回顾 Hyperledger Fabric 区块链网络交易的执行分为以下几个步骤.Endorser 与 Committer 都是 Hyperledger Fabric 区块链 ...

  9. Fabric框架的学习-4-链码与背书策略

    六. 智能合约 6.1 Golang版本的ChainCode的代码结构 链代码的包名的指定 // xxx.go package main // main不能改 必须要引入的包 // go get gi ...

  10. Hyperledger Fabric 交易背书报错 no peer combination can satisfy the endorsement policy

    Hyperledger Fabric 交易背书报错 no peer combination can satisfy the endorsement policy 例子: https://github. ...

最新文章

  1. LeetCode简单题之二叉搜索树中的众数
  2. java连接mysql数据库(jsp显示和控制台显示)
  3. Python基础知识3: if判断语句
  4. html加入购物车的动画,关于购物车添加按钮的动画
  5. php解析定时任务格式,php 实现定时任务简单实现
  6. Flutter BindingBase服务扩展浅析
  7. 【Selenium2】【项目实战】
  8. 调整Eclipse字体大小
  9. 【寒江雪】Go实现Builder Pattern
  10. Crazy Bird
  11. 计算机窗口闪屏,电脑闪屏怎么办?如何解决电脑经常闪屏问题
  12. mybatis-plus调用自身的 selectById 方法报错:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You hav
  13. 数据库——sql server安装教程
  14. 让按钮变灰色,不可用/
  15. 2022-2028全球半永久汽车紧固件行业调研及趋势分析报告
  16. unity2d随机生成物体_unity2D游戏关卡地图编辑随机生成系统Strata Easy 2D Level Generator 1.3...
  17. 小程序Cannot set property 'userInfo' of undefined
  18. r语言读取C盘的csv文件,R语言开发之CSV文件的读写操作实现
  19. Apache Flink流处理(一)
  20. AI:2020年6月22日北京智源大会演讲分享之机器感知专题论坛—15:30-16:10孙富春教授《机器人视触觉传感器与主动感知》

热门文章

  1. java证书验证失败_SVN提示https证书验证失败解决办法
  2. 华为鸿蒙巴龙麒麟,华为5G新机强势曝光:麒麟985+巴龙5000+鸿蒙系统,颜值性能炸裂...
  3. 估计理论(4):例5.8说明如何用完备的充分统计量找到MVU估计
  4. Aho-Corasick
  5. 【面向代码】学习 Deep Learning(三)Convolution Neural Network(CNN)
  6. sublime text 2/3 快捷键汇总
  7. shiro(SpringBoot+SpringMVC+Mybatis+Shrio):丰富的登录模块附有GIF动图,博主可免费答疑
  8. arcgis自带的python版本_arcgis10.3自带的python2.7.8怎么安装geopandas?
  9. java自动扫描不好使_Spring 自动扫描 不支持jar包 component-scan
  10. 微信AD密码输入显示服务器出错怎么回事呢,微信提示账户或密码错误,请重新输入,怎么办...