美文网首页
006 hyperledger-fabric 生成组织结构及身份

006 hyperledger-fabric 生成组织结构及身份

作者: 唐僧取经 | 来源:发表于2018-08-06 15:40 被阅读0次

hyperledger-fabric 生成组织结构及身份证书(手动)

msp:每个组织有个根证书
每个部门下面有自己的证书

查看模版文件

确定是在 fabric-samples/first-network 路径下

   $ sudo ../bin/cryptogen showtemplate

修改组织结构模版文件:

模版文件:fabric-samples/first-network/crypto-config.yaml

fabric中有两个组件:Peer和Orderer
Orderer是用来形成共识的,决定写的操作顺序,通知发送给peer

组织结构:
OrdererOrgs:
  - Name:   Orderer    order节点名称
    Domain: example.com    域名
    Specs:
      - Hostname: orderer 主机名称
            主机名称:域名
      
      
组织结构:
PeerOrgs:
  - Name:   Org1     peer节点
    Domain: org1.example.com     域名
    EnableNodeOUs: true
    
    Template:     # 指定Org1组织下的peer节点数量
      Count: 1 
    Users:       # 指定Org1组织下的user数量,都有管理员权,默认会有一个admin
      Count: 2
      Admin(默认)
      User1
      User2

      节点名称:peer0.org1.example.com
 
 
 
  - Name: Org2   组织二
    Domain: org2.example.com
    EnableNodeOUs: true
   
    Template:     # 指定Org2组织下的peer节点数量
      Count: 1
    Users:      # 指定org2组织下的user数量,都有管理员权,默认会有一个admin
      Count: 1

        节点名称:peer0.org2.example.com     默认从peer0开始命名 

生成组织关系和身份证书====

$ cd hyfa/fabric-samples/first-network/

为fabric网络生成指定拓扑结构的组织关系和身份证书
指定使用的配置文件

$ sudo ../bin/cryptogen generate --config=./crypto-config.yaml

此命令依赖 crypto-config.yaml 配置文件

会有如下输出:

org1.example.com
org2.example.com

证书和密钥(即MSP材料)将被输出到目录 first-network/crypto-config 的目录中

ordererOrganizations子目录下包括构成Orderer组织(1个Orderer节点)的身份信息

peerOrganizations子目录下为所有的Peer节点组织(2个组织, 4个节点)的相关身份信息. 其中最关键的是MSP目录, 代表了实体的身份信息

生成的组织结构整体框架图

➜  crypto-config git:(1252c7a) ✗ tree -L 3
.
├── ordererOrganizations
│   └── example.com
│       ├── ca
│       ├── msp
│       ├── orderers
│       ├── tlsca
│       └── users
└── peerOrganizations
    ├── org1.example.com
    │   ├── ca
    │   ├── msp
    │   ├── peers
    │   ├── tlsca
    │   └── users
    └── org2.example.com
        ├── ca
        ├── msp
        ├── peers
        ├── tlsca
        └── users

组织结构详细目录

➜  crypto-config git:(1252c7a) ✗ tree
.
├── ordererOrganizations
│   └── example.com
│       ├── ca    作为order的根ca证书
│       │   ├── ca.example.com-cert.pem    证书
│       │   └── d042d57d1b7e24cd2af828e8780cebbd1a86c8f666d12bb9f4ced895e0e5b5f8_sk   私钥文件
│       ├── msp 成员服务提供,里面包括对应证书信息
│       │   ├── admincerts
│       │   │   └── Admin@example.com-cert.pem
│       │   ├── cacerts   同上面的根证书
│       │   │   └── ca.example.com-cert.pem
│       │   └── tlscacerts   同下面的tlsca根证书
│       │       └── tlsca.example.com-cert.pem
│       ├── orderers    order节点的描述信息一个order可以搭建成集群环境(有的需求会出现多个order服务节点的情况)
│       │   └── orderer.example.com
│       │       ├── msp
│       │       │   ├── admincerts
│       │       │   │   └── Admin@example.com-cert.pem
│       │       │   ├── cacerts
│       │       │   │   └── ca.example.com-cert.pem
│       │       │   ├── keystore
│       │       │   │   └── 060f342790a79cf3f39c98e627d96c7ff2f34cfad9f5736cba865598727dd741_sk
│       │       │   ├── signcerts
│       │       │   │   └── orderer.example.com-cert.pem
│       │       │   └── tlscacerts
│       │       │       └── tlsca.example.com-cert.pem
│       │       └── tls
│       │           ├── ca.crt
│       │           ├── server.crt
│       │           └── server.key
│       ├── tlsca    tls根证书,代表真个组织的根证书,可以代替上面msp和各个节点里面的tls
│       │   ├── 86107d1158872c5ef3130e7679d4ee7dccfdbc22d23ce70a84119b3ac49e203d_sk
│       │   └── tlsca.example.com-cert.pem   根tlsca证书
│       └── users
│           └── Admin@example.com
│               ├── msp
│               │   ├── admincerts
│               │   │   └── Admin@example.com-cert.pem
│               │   ├── cacerts
│               │   │   └── ca.example.com-cert.pem
│               │   ├── keystore
│               │   │   └── 54434260338005dc27522a061307ae1578c6c0646cd774a81d1e80d80da7bbad_sk
│               │   ├── signcerts
│               │   │   └── Admin@example.com-cert.pem
│               │   └── tlscacerts
│               │       └── tlsca.example.com-cert.pem
│               └── tls
│                   ├── ca.crt
│                   ├── client.crt
│                   └── client.key
└── peerOrganizations
    ├── org1.example.com
    │   ├── ca
    │   │   ├── 2d8a04ffa017463f180253907ad5de8698febad4859104bc8784ae6d8e569f26_sk
    │   │   └── ca.org1.example.com-cert.pem
    │   ├── msp
    │   │   ├── admincerts
    │   │   │   └── Admin@org1.example.com-cert.pem
    │   │   ├── cacerts
    │   │   │   └── ca.org1.example.com-cert.pem
    │   │   ├── config.yaml
    │   │   └── tlscacerts
    │   │       └── tlsca.org1.example.com-cert.pem
    │   ├── peers
    │   │   ├── peer0.org1.example.com
    │   │   │   ├── msp
    │   │   │   │   ├── admincerts
    │   │   │   │   │   └── Admin@org1.example.com-cert.pem
    │   │   │   │   ├── cacerts
    │   │   │   │   │   └── ca.org1.example.com-cert.pem
    │   │   │   │   ├── config.yaml
    │   │   │   │   ├── keystore
    │   │   │   │   │   └── b10886cb1ec2f215e729d440bfd5af924255d6e8eb04ebbd4d80ecae1e91dfa3_sk
    │   │   │   │   ├── signcerts
    │   │   │   │   │   └── peer0.org1.example.com-cert.pem
    │   │   │   │   └── tlscacerts
    │   │   │   │       └── tlsca.org1.example.com-cert.pem
    │   │   │   └── tls
    │   │   │       ├── ca.crt
    │   │   │       ├── server.crt
    │   │   │       └── server.key
    │   │   └── peer1.org1.example.com
    │   │       ├── msp
    │   │       │   ├── admincerts
    │   │       │   │   └── Admin@org1.example.com-cert.pem
    │   │       │   ├── cacerts
    │   │       │   │   └── ca.org1.example.com-cert.pem
    │   │       │   ├── config.yaml
    │   │       │   ├── keystore
    │   │       │   │   └── 424fb625f08e9b70ea6b6ed2cfa2e5cfd2ba5de743996b2a424456f3f1b7a106_sk
    │   │       │   ├── signcerts
    │   │       │   │   └── peer1.org1.example.com-cert.pem
    │   │       │   └── tlscacerts
    │   │       │       └── tlsca.org1.example.com-cert.pem
    │   │       └── tls
    │   │           ├── ca.crt
    │   │           ├── server.crt
    │   │           └── server.key
    │   ├── tlscatls根证书,代表真个组织的根证书,可以代替上面msp和各个节点里面的tls
    │   │   ├── 6fbafc28204a85f3d0cbf4c8d813e2fd4cfe484f85720875f1ce802fbe3980e1_sk
    │   │   └── tlsca.org1.example.com-cert.pem  tls根证书,可以代替上面msp中和各个节点的tls证书
    │   └── users
    │       ├── Admin@org1.example.com
    │       │   ├── msp
    │       │   │   ├── admincerts
    │       │   │   │   └── Admin@org1.example.com-cert.pem
    │       │   │   ├── cacerts
    │       │   │   │   └── ca.org1.example.com-cert.pem
    │       │   │   ├── keystore
    │       │   │   │   └── a4eb450a1eb178242d2d762d0c2538639f44f6a78f941a66e53fb5064b3f24dd_sk
    │       │   │   ├── signcerts
    │       │   │   │   └── Admin@org1.example.com-cert.pem
    │       │   │   └── tlscacerts
    │       │   │       └── tlsca.org1.example.com-cert.pem
    │       │   └── tls
    │       │       ├── ca.crt
    │       │       ├── client.crt
    │       │       └── client.key
    │       └── User1@org1.example.com  就是模版中配置的user下面的count数量
    │           ├── msp
    │           │   ├── admincerts
    │           │   │   └── User1@org1.example.com-cert.pem
    │           │   ├── cacerts
    │           │   │   └── ca.org1.example.com-cert.pem
    │           │   ├── keystore
    │           │   │   └── 45b99a4abb9e3f56c957f9bfc3a05dd58ed06ef30ec8f7dd9b328182349c8656_sk
    │           │   ├── signcerts
    │           │   │   └── User1@org1.example.com-cert.pem
    │           │   └── tlscacerts
    │           │       └── tlsca.org1.example.com-cert.pem
    │           └── tls
    │               ├── ca.crt
    │               ├── client.crt
    │               └── client.key
    └── org2.example.com
        ├── ca
        │   ├── 617acba87a371d2507c1cd5e8022392079a9d69c873a729947c195feeae23a2f_sk
        │   └── ca.org2.example.com-cert.pem
        ├── msp
        │   ├── admincerts
        │   │   └── Admin@org2.example.com-cert.pem
        │   ├── cacerts
        │   │   └── ca.org2.example.com-cert.pem
        │   ├── config.yaml
        │   └── tlscacerts
        │       └── tlsca.org2.example.com-cert.pem
        ├── peers
        │   ├── peer0.org2.example.com
        │   │   ├── msp
        │   │   │   ├── admincerts
        │   │   │   │   └── Admin@org2.example.com-cert.pem
        │   │   │   ├── cacerts
        │   │   │   │   └── ca.org2.example.com-cert.pem
        │   │   │   ├── config.yaml
        │   │   │   ├── keystore
        │   │   │   │   └── b4e00492b10b96f83f8c8c767683b1af6c944068fae75487ee19120685a88afe_sk
        │   │   │   ├── signcerts
        │   │   │   │   └── peer0.org2.example.com-cert.pem
        │   │   │   └── tlscacerts
        │   │   │       └── tlsca.org2.example.com-cert.pem
        │   │   └── tls
        │   │       ├── ca.crt
        │   │       ├── server.crt
        │   │       └── server.key
        │   └── peer1.org2.example.com
        │       ├── msp
        │       │   ├── admincerts
        │       │   │   └── Admin@org2.example.com-cert.pem
        │       │   ├── cacerts
        │       │   │   └── ca.org2.example.com-cert.pem
        │       │   ├── config.yaml
        │       │   ├── keystore
        │       │   │   └── 90bda9afd75aad13e86028a6e8cc32fcaa660002c175b042be05a8a36b203497_sk
        │       │   ├── signcerts
        │       │   │   └── peer1.org2.example.com-cert.pem
        │       │   └── tlscacerts
        │       │       └── tlsca.org2.example.com-cert.pem
        │       └── tls
        │           ├── ca.crt
        │           ├── server.crt
        │           └── server.key
        ├── tlsca
        │   ├── 5a6f19fa718fa8665334fc806ae93e6e9176ed2b7e571ab4b3b32bd423ad589a_sk
        │   └── tlsca.org2.example.com-cert.pem
        └── users
            ├── Admin@org2.example.com
            │   ├── msp
            │   │   ├── admincerts
            │   │   │   └── Admin@org2.example.com-cert.pem
            │   │   ├── cacerts
            │   │   │   └── ca.org2.example.com-cert.pem
            │   │   ├── keystore
            │   │   │   └── 16bc1cca9532f72524d9becdd33b5a1688825fae135846af05aa1412d1f7ca01_sk
            │   │   ├── signcerts
            │   │   │   └── Admin@org2.example.com-cert.pem
            │   │   └── tlscacerts
            │   │       └── tlsca.org2.example.com-cert.pem
            │   └── tls
            │       ├── ca.crt
            │       ├── client.crt
            │       └── client.key
            └── User1@org2.example.com
                ├── msp
                │   ├── admincerts
                │   │   └── User1@org2.example.com-cert.pem
                │   ├── cacerts
                │   │   └── ca.org2.example.com-cert.pem
                │   ├── keystore
                │   │   └── dae816d9183e8c5a546686a909f260dc137bf7141263f29e55e17c5d89c258c2_sk
                │   ├── signcerts
                │   │   └── User1@org2.example.com-cert.pem
                │   └── tlscacerts
                │       └── tlsca.org2.example.com-cert.pem
                └── tls
                    ├── ca.crt
                    ├── client.crt
                    └── client.key


相关文章

网友评论

      本文标题:006 hyperledger-fabric 生成组织结构及身份

      本文链接:https://www.haomeiwen.com/subject/gqlgvftx.html