Как именно работает Hyperledger Fabric CA

Я смущен тем, как работает ткань-ca. Я впервые работаю с CA. Я следил за официальной документацией по ткани и у меня есть следующий вопрос.

Вот как я подхожу к запуску сервера ЦС, а затем регистрирую и регистрирую личность клиента.

1- Я запускаю сервер Fabric CA через докер, мой докер

fabric-ca:
  image: hyperledger/fabric-ca
  container_name: fabric-ca
  ports:
    - "7054:7054"
  environment:
    - FABRIC_CA_SERVER_HOME=/etc/hyperledger/fabric-ca-server
    - FABRIC_CA_CLIENT_HOME=/etc/hyperledger/fabric-ca-client
    - FABRIC_CA_LOGLEVEL=debug
    - FABRIC_CA_SERVER_CA_NAME=fabric-ca
  volumes:
    - "./fabric-ca-server:/etc/hyperledger/fabric-ca-server"
    - "./fabric-ca-client:/etc/hyperledger/fabric-ca-client"
  command: sh -c 'fabric-ca-server start -b rootadmin:rootadminpw'

2- Теперь контейнер докеров запускается успешно, и у меня есть следующие файлы/сертификаты, сгенерированные в моем PWD.

▶ tree .
.
├── fabric-ca-client
├── fabric-ca-dokcer-compose.yaml
└── fabric-ca-server
    ├── ca-cert.pem
    ├── fabric-ca-server-config.yaml
    ├── fabric-ca-server.db
    └── msp
        └── keystore
            └── 45eed6744814fc8f2055ead83036b9bb15e5b9c5c5fd2b36db2419a7e585b8c3_sk

4 directories, 5 files
  1. Я следил за этим руководством по OpenSSL (https://jamielinux.com/docs/openssl-certificate-authority/), в соответствии с которым нам нужен самоподписанный корневой сертификат.
    * Я понимаю, что сгенерированные выше сертификаты являются самоподписанными корневыми сертификатами.

4- Теперь, согласно документации fabric-ca, нам нужно зарегистрировать загрузочную идентификацию.

fabric-ca-client enroll -u http://rootadmin:rootadminpw@localhost:7054

Эта команда создает файлы шифрования и файл конфигурации в каталоге fabric-ca-client следующим образом.

▶ tree .                                                                
.
├── fabric-ca-client-config.yaml
└── msp
    ├── cacerts
    │   └── localhost-7054.pem
    ├── intermediatecerts
    │   └── localhost-7054.pem
    ├── keystore
    │   └── b06fc324d2176a14db0fde95a951f846b57e533ea34bf94ab231345bdf3b13a5_sk
    └── signcerts
        └── cert.pem

5 directories, 5 files

Итак, в чем разница между этими криптографическими данными и криптографическими данными, сгенерированными на сервере, особенно файлами .pem.

А также какая связь между криптофайлами сервера и клиента? Эти клиентские криптовалюты подписаны сервером?

А также, если я запускаю команду fabric-ca-client несколько раз, файлы .pem остаются прежними, но я получаю несколько файлов в папке keystore, которые, как я понимаю, являются закрытыми ключами.

Наконец, в чем именно разница между командой enroll и register?


person Asad Hayat    schedule 03.07.2018    source источник
comment
вау, тут так много помощи :(   -  person Next Developer    schedule 03.05.2019
comment
xD Я тоже ищу ответ..   -  person M Yil    schedule 18.12.2019