什么是身份系统

区块链网络中的角色包括对等节点(peer),订购着,客户端应用程序,管理员等等。这些参与者的身份都封装在X.509数字证书中。这些身份信息真的非常重要,因为他们决定了在网络中参与者具体的权限。 Hyperledger Fabric 在身份中使用 principal 属性来决定他们的相关权限。principal 就像用户 ID 或组 ID 一样,但又更灵活一点,因为他们可以包含更多的参与者身份属性。当我们提到 principal 的时候,其实也就是讲到了系统里参与者身份属性的权限。这些属性通常是参与者的组织单位,组织单元,角色或参与者的特定身份。

更重要的,一个身份必须要是可验证的(也就是说得是真实的身份),因此,身份授权必须来自于最受信赖的系统了。Hyperledger Fabric 中的会员服务提供者( membership service provider 下文简称MSP)干的就是这个活儿。进一步来说,MSP 代表着组织中决定成员规则的组件,就这样,它管理着组织中成员有效的身份。Fabric 中默认的 MSP 实现使用 X.509 证书作为身份,并采用传统的公钥基础结构(PKI)分层模型。

一个简单的场景来描述身份系统

假设你去超市买些杂货,在结账时你注意到商家只支持银联付款。如果你使用支付宝付款,那将不被接受,尽管你的支付宝里有钱并且实名认证过了。

所以,有一个有效的支付方式(如支付宝)并不够,它必须要被商家所接受!PKI 和 MSP 在一起就代表着这种场景,PKI 提供了一系列的身份(银联、万事达、微信、支付宝等等),MSP 决定哪些才是参与网络组织的成员(那种支付能被接受)。

PKI 证书颁发机构和 MSP 提供了相似功能的结合。PKI 就像一个名片提供者 — 它颁发许多不同类型的可验证身份。另一方面,MSP 就像商店接受的银行卡提供商列表 — 决定了商店支付网络中哪些参与者(支付方式)是被信任的。MSP 将可验证身份转变为区块链网络的成员

什么是 PKIs

公钥基础设施(PKI)是一组提供网络安全通信的互联网技术。是 PKI 才有了 HTTPS 中的S - 如果您在Web浏览器上阅读本文档,则可能已经使用了 PKI 来确保它来自可靠源。

*公钥基础设施(PKI)的要素。PKI 由证书颁发机构组成,证书颁发机构向各方(例如,服务的用户,服务提供商)颁发数字证书,然后使用这些证书在他们与其环境交换的消息中对自己进行身份验证。CA 的证书废弃列表(CRL)包含着各种无效证书。证书被废弃的原因可能有多种,例如,与证书关联的私人密码资料已被暴露。

区块链网络不仅仅是一个通信网络,它依赖于 PKI 标准来确保各个网络参与者之间的安全通信,并确保发布在区块链上的消息得到正确的验证。因此,了解 PKI 的基础知识以及 MSP 将会非常重要。

PKI有四个关键要素:

  • 数字证书
  • 公匙跟私钥
  • 证书颁发机构
  • 废弃证书列表

Hyperledger Fabric 安全基础:身份系统 PKIs的更多相关文章

  1. Hyperledger Fabric基础知识

    文章目录 什么是Hyperledger Fabric? Hyperledger架构是怎么工作的? Hyperledger交易如何执行 总结 Hyperledger Fabric基础知识 本文我们会介绍 ...

  2. Hyperledger Fabric Chaincode for Operators——实操智能合约

    什么是Chaincode(智能合约)? chaincode是一个程序,它是使用Go语言编写的,最终在Java等其他编程语言中实现了指定的接口.chaincode运行在一个被背书peer进程独立出来的安 ...

  3. 第5章 Hyperledger Fabric功能

    Hyperledger Fabric is a unique implementation of distributed ledger technology (DLT) that delivers e ...

  4. Hyperledger Fabric(1)基础架构

    前言 在区块链的家谱里,第一代区块链系统是以比特币为代表的公链,主要实现的是数字货币的功能:第二代区块链系统是以以太坊平台为代表的公链,创造性的实现了智能合约.而第三代区块链系统,则是HyperLed ...

  5. (一)Hyperledger Fabric 1.1安装部署-基础环境搭建

    在学习和开发hyperledger fabric的时候遇到了一些坑,现将自己的一些总结和心得整理如下,以期对大家有所帮助.本次使用的宿主机环境:ubuntu,版本:Ubuntu 16.04.3 LTS ...

  6. HyperLedger Fabric 1.4 基础环境搭建(7)

    学习了前面几章理论知识后,本章开始介绍实践操作,先介绍Fabric基础环境搭建,采用的操作系统为Centos 7 64位,依次介绍Docker安装.Docker-Compose安装.GO语言环境安装. ...

  7. Hyperledger Fabric无系统通道启动及通道的创建和删除

    前言 在Hyperledger Fabric组织的动态添加和删除中,我们已经完成了在运行着的网络中动态添加和删除组织,但目前为止,我们启动 orderer 节点的方式都是通过系统通道的方式,这样自带系 ...

  8. Hyperledger Fabric MSP Identity Validity Rules——MSP身份验证规则

    MSP Identity Validity Rules——MSP身份验证规则 正如Hyperledger Fabric Membership Service Providers (MSP)——成员服务 ...

  9. Fedora 25-64位操作系统中安装配置Hyperledger Fabric过程

    安装过程参照Hyperledger Fabric的官方文档,文档地址:http://hyperledger-fabric.readthedocs.io/en/latest/prereqs.html 0 ...

随机推荐

  1. C语言笔记 09_共用体&typedef&输入|输出

    共用体 共用体允许您在相同的内存位置存储不同的数据类型.您可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值.共用体提供了一种使用相同的内存位置的有效方式. 定义共用体 为了定义共用体, ...

  2. trie上构建后缀数组

    例题: 往事太多,有时候忘了就忘了吧. 如果有非记不可的,就只能用点附加手段啦! 我们定义一棵往事树是一个 n 个点 n-1 条边的有向无环图,点编号为 1到 n,其中 1 号点被称为是根结点,除根结 ...

  3. 007_STM32程序移植之_多通道ADC转换

    1. 测试环境:STM32C8T6 2. 测试:使用DMA进行多通道ADC转换 3. 描述:用 ADC 连续采集 12 路模拟信号,并由 DMA 传输到内存.ADC 配置为扫描 并且连续转换模式,AD ...

  4. scrapy 4 学习 crawl spider

    前情提要: 一:图片懒加载(面对图片懒加载怎么办) ---用selenium设置图片加载的位置 --- 分析懒加载的属性,直接获取 二: 如何提高scrapy的爬取效率 增加并发:默认scrapy开启 ...

  5. CF633C Spy Syndrome 2 trie树

    这个模型以前绝对见过,模拟赛的时候开始敲了一个AC自动机,纯属脑抽~ code: #include <bits/stdc++.h> #define N 5000006 #define NN ...

  6. linux中如何修改最大文件句柄数

    1.使用ulimit -a可以查看,其中的open files后面的数就是最大文件句柄数 2.临时方法:使用ulimit -n size修改最大文件句柄数(这种方法只针对当前进程有效) 3.永久方法: ...

  7. java spring boot- freemarker 配置 yml使用流程

    1.pom.xml  加入maven 依赖 <!-- 引入 freemarker 模板依赖 --><dependency> <groupId>org.springf ...

  8. ICEM—倾斜孔

    原视频下载:https://yunpan.cn/cS3UGMEscrYpL  访问密码 839b

  9. Android 之Activity启动模式(二)之 Intent的Flag属性

    首页博客链接关于我留言板 前面介绍了通过launchMode设置Activity的启动模式.本章接着介绍Activity的启动模式相关内容,讲解的内容是Intent与启动模式相关的Flag,以及and ...

  10. iOS-VideoToolbox硬编码H264

    前言 VideoToolBox是iOS8之后,苹果开发的用于硬解码编码H264/H265(iOS11以后支持)的API. 对于H264还不了解的童鞋一定要先看下这边的H264的简介. 编码流程 我们实 ...