今日は、特定のCAでのFabricについて話します
作曲ファブリックCAアーキテクチャ
PKI公開鍵インフラストラクチャのセットを達成するためのファブリックCAは、その主な機能にMSPするすべての必要な証明書MSP、生成するために使用することができ、会員証明書の作成、署名、失効およびその他の機能を含め、管理を。
複数のアプリケーションを必要とせず、それゆえ、ファブリックCAは、システムのパフォーマンスに与える影響はありませんが、証明書のMSPメンバーが展開されると、メンバーはリソースのファブリックネットワークの様々なアクセスできる、ということに注意してください。
ファブリックCAは、CSアーキテクチャの典型的なもので、最初の部分がありFabric CA Server
、それはサーバーのREST APIインタフェース、リスニングデフォルトのプロバイダである7054
ポートを、他の部分はあるFabric CA Client
コマンドラインツールを含む、クライアントのFabric CA SDK
開発キット、我々は両方のことを見ることができますサーバー、またはクライアント、それは経由でREST API
行いました。前者は、プログラムCA証明書を操作しているコマンドライン操作CA証明書の形で実現します。Fabric CA Server
情報生成された証明書はに書き込むことができる属性关系数据库
またはLDAP目录服务器
にFabric CA Server
サーバー、デフォルトでは、リレーショナルデータベースですSQLite
。また、Fabric CA Server
あなたはまた、高可用性クラスタモードを実現することができ、例えば、あるHA-Proxy
クラスタ内のすべてのサーバが同じデータベースを共有できるように、負荷分散ソフトウェアエージェントにおけるクラスター・アプローチの展開を可能にします。
セキュリティ上の理由から、CA機関は、ほとんどの使用するルート証明書+中間証明書のルート証明書チェーンの実装を。秘密鍵の漏洩や期限切れの中間証明書は、ちょうどこの中間証明書の失効について話して、ユーザーに新しい証明書を発行する場合、結果として、多段中間証明書は、大幅に事務負担のルート証明書を減らすことができます。しかし、いずれにしても、確認してRoot CA
セキュリティ環境を生成し、秘密鍵が損なわれないことを保証します。
ファブリックCAのインストールと機能
Fabric CA Server
構成情報、我々はできるfabric-ca-server-config.yaml
その他の関連情報と同様に構成すること。
初期の管理者にまずadmin
次のような情報は、以下のとおりです。
# Contains identity information which is used when LDAP is disabled
identities:
- name: admin
pass: adminpw
type: client
affiliation: ""
attrs:
hf.Registrar.Roles: "client,user,peer,validator,auditor,ca"
hf.Registrar.DelegateRoles: "client,user,validator,auditor"
hf.Revoker: true
hf.IntermediateCA: true
どこhf.Registrar.Roles
証明書の属性が定義され、クライアントの一部は、タイプを登録することができます。
CAのルート証明書署名証明書の構成情報を引き継ぎました:
ca:
# Name of this CA
name:
certfile: ca.crt
keyfile: ca.key
# Chain file (default: chain-cert.pem)
chainfile: ca-chain.pem
最後の属性は、最後の属性が設定されている場合、証明書はそれとルートCA証明書、その後、ルートCA証明書信頼されている定義certfile
フォームの証明書チェーン一緒に。
次は、CSR(証明書署名要求)セクションの定義は次のとおりです。
csr:
cn: fabric-ca-server
names:
- C: US
ST: "North Carolina"
L:
O: Hyperledger
OU: Fabric
hosts:
- 2008f00aff38
ca:
pathlen:
pathlenzero:
expiry:
該当するプロパティは、CSRを生成しないとき場合は、上記のデフォルトを使用します。
証明書署名証明書の最も重要な期間であるいくつかの関連するデフォルトの属性、があります。
signing:
profiles:
ca:
usage:
- cert sign
expiry: 8000h
caconstraint:
isca: true
default:
usage:
- cert sign
expiry: 8000h
証明書を生成するために使用される暗号化アルゴリズム、およびパスワードの強度上の楕円形:
bccsp:
default: SW
sw:
hash: SHA2
security: 256
filekeystore:
# The directory used for the software file-based keystore
keystore: /var/hyperledger/fabric-ca-server/keystore
データベース定義を格納について:
db:
type: sqlite3
datasource: /var/hyperledger/fabric-ca-server/state.db
tls:
enabled: false
certfiles:
- db-server-cert.pem
client:
certfile: db-client-cert.pem
keyfile: db-client-key.pem