美文网首页
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