Toggle navigation
VA伐木累
社区
VA伐木累
Proxy
JSON
BASE64
MyGit
登录
注册
×
登录
邮箱
密码
忘记密码?
1.Fabric 1.4 单节点部署 证书生成相关
•发布于
•作者
我不叫王大锤
•859 次浏览
•最后一次编辑是
•来自
技术
``` 1.创建两个文件 configtx.yaml 用于创建起始配置信息 crypto-config.yaml 用于创建证书文件的的配置文件 configtx.yaml 内容如下(注意缩进和空格 强校验): # Copyright IBM Corp. All Rights Reserved. # # SPDX-License-Identifier: Apache-2.0 # --- Organizations: - &OrdererOrg Name: OrdererOrg ID: OrdererMSP MSPDir: crypto-config/ordererOrganizations/krsp.com/msp Policies: Readers: Type: Signature Rule: "OR('OrdererMSP.member')" Writers: Type: Signature Rule: "OR('OrdererMSP.member')" Admins: Type: Signature Rule: "OR('OrdererMSP.admin')" - &Wx Name: WxMSP ID: WxMSP MSPDir: crypto-config/peerOrganizations/wx.krsp.com/msp Policies: Readers: Type: Signature Rule: "OR('WxMSP.admin', 'WxMSP.peer', 'WxMSP.client')" Writers: Type: Signature Rule: "OR('WxMSP.admin', 'WxMSP.client')" Admins: Type: Signature Rule: "OR('WxMSP.admin')" AnchorPeers: - Host: peer0.wx.krsp.com Port: 7051 - &Up Name: UpMSP ID: UpMSP MSPDir: crypto-config/peerOrganizations/up.krsp.com/msp Policies: Readers: Type: Signature Rule: "OR('UpMSP.admin', 'UpMSP.peer', 'UpMSP.client')" Writers: Type: Signature Rule: "OR('UpMSP.admin', 'UpMSP.client')" Admins: Type: Signature Rule: "OR('UpMSP.admin')" AnchorPeers: - Host: peer0.up.krsp.com Port: 7051 Capabilities: Global: &ChannelCapabilities V1_1: true Orderer: &OrdererCapabilities V1_1: true Application: &ApplicationCapabilities V1_2: true Application: &ApplicationDefaults Organizations: Policies: Readers: Type: ImplicitMeta Rule: "ANY Readers" Writers: Type: ImplicitMeta Rule: "ANY Writers" Admins: Type: ImplicitMeta Rule: "MAJORITY Admins" Capabilities: <<: *ApplicationCapabilities Orderer: &OrdererDefaults OrdererType: solo Addresses: - orderer.krsp.com:7050 BatchTimeout: 2s BatchSize: MaxMessageCount: 10 AbsoluteMaxBytes: 98 MB PreferredMaxBytes: 512 KB Kafka: Brokers: - 127.0.0.1:9092 Organizations: Policies: Readers: Type: ImplicitMeta Rule: "ANY Readers" Writers: Type: ImplicitMeta Rule: "ANY Writers" Admins: Type: ImplicitMeta Rule: "MAJORITY Admins" BlockValidation: Type: ImplicitMeta Rule: "ANY Writers" Capabilities: <<: *OrdererCapabilities Channel: &ChannelDefaults Policies: Readers: Type: ImplicitMeta Rule: "ANY Readers" Writers: Type: ImplicitMeta Rule: "ANY Writers" Admins: Type: ImplicitMeta Rule: "MAJORITY Admins" Capabilities: <<: *ChannelCapabilities Profiles: TwoOrgsOrdererGenesis: <<: *ChannelDefaults Orderer: <<: *OrdererDefaults Organizations: - *OrdererOrg Consortiums: SampleConsortium: Organizations: - *Wx - *Up TwoOrgsChannel: Consortium: SampleConsortium Application: <<: *ApplicationDefaults Organizations: - *Wx - *Up crypto-config.yaml 内容如下(注意缩进和空格 强校验): # Copyright IBM Corp. All Rights Reserved. # # SPDX-License-Identifier: Apache-2.0 # # --------------------------------------------------------------------------- # "OrdererOrgs" - Definition of organizations managing orderer nodes # --------------------------------------------------------------------------- OrdererOrgs: - Name: Orderer Domain: krsp.com CA: Country: US Province: California Locality: San Francisco Specs: - Hostname: orderer PeerOrgs: - Name: Wx Domain: wx.krsp.com EnableNodeOUs: true CA: Country: US Province: California Locality: San Francisco Template: Count: 2 Users: Count: 1 - Name: Up Domain: up.krsp.com EnableNodeOUs: true CA: Country: US Province: California Locality: San Francisco Template: Count: 2 Users: Count: 1 2.新增配置和证书文件脚本 注意相对路径,因为需要用到Fabric源码 生成二进制文件,进而生成相关的配置文件,以及证书文件 touch generate.sh 脚本文件内容如下: #!/bin/bash +x # # Copyright IBM Corp. All Rights Reserved. # # SPDX-License-Identifier: Apache-2.0 # #set -e CHANNEL_NAME=$1 : ${CHANNEL_NAME:="mychannel"} echo $CHANNEL_NAME export FABRIC_ROOT=$PWD/../.. export FABRIC_CFG_PATH=$PWD echo OS_ARCH=$(echo "$(uname -s|tr '[:upper:]' '[:lower:]'|sed 's/mingw64_nt.*/windows/')-$(uname -m | sed 's/x86_64/amd64/g')" | awk '{print tolower($0)}') function generateCerts (){ CRYPTOGEN=$FABRIC_ROOT/release/$OS_ARCH/bin/cryptogen if [ -f "$CRYPTOGEN" ]; then echo "Using cryptogen -> $CRYPTOGEN" else echo "Building cryptogen" make -C $FABRIC_ROOT release fi echo echo "##########################################################" echo "##### Generate certificates using cryptogen tool #########" echo "##########################################################" $CRYPTOGEN generate --config=./crypto-config.yaml echo } ## Generate orderer genesis block , channel configuration transaction and anchor peer update transactions function generateChannelArtifacts() { CONFIGTXGEN=$FABRIC_ROOT/release/$OS_ARCH/bin/configtxgen if [ -f "$CONFIGTXGEN" ]; then echo "Using configtxgen -> $CONFIGTXGEN" else echo "Building configtxgen" make -C $FABRIC_ROOT release fi echo "##########################################################" echo "######### Generating Orderer Genesis block ##############" echo "##########################################################" # Note: For some unknown reason (at least for now) the block file can't be # named orderer.genesis.block or the orderer will fail to launch! $CONFIGTXGEN -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block echo echo "#################################################################" echo "### Generating channel configuration transaction 'channel.tx' ###" echo "#################################################################" $CONFIGTXGEN -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME echo echo "#################################################################" echo "####### Generating anchor peer update for upMSP ##########" echo "#################################################################" $CONFIGTXGEN -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/UpMSPanchors.tx -channelID $CHANNEL_NAME -asOrg UpMSP echo echo "#################################################################" echo "####### Generating anchor peer update for Org2MSP ##########" echo "#################################################################" $CONFIGTXGEN -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/WxMSPanchors.tx -channelID $CHANNEL_NAME -asOrg WxMSP echo } generateCerts generateChannelArtifacts ####脚本文件结束 3.三个文件放在同级目录下 执行 generate.sh 即可生成相关配置文件。 目录如下: ├── channel-artifacts │ ├── channel.tx │ ├── genesis.block │ ├── UpMSPanchors.tx │ └── WxMSPanchors.tx ├── configtx.yaml ├── crypto-config │ ├── ordererOrganizations │ │ ├── example.com │ │ │ └── orderers │ │ └── krsp.com │ │ ├── ca │ │ ├── msp │ │ ├── orderers │ │ ├── tlsca │ │ └── users │ └── peerOrganizations │ ├── up.krsp.com │ │ ├── ca │ │ ├── msp │ │ ├── peers │ │ ├── tlsca │ │ └── users │ └── wx.krsp.com │ ├── ca │ ├── msp │ ├── peers │ ├── tlsca │ └── users ├── crypto-config.yaml ```
0 回复
作者
我不叫王大锤
积分: 28
无人回复话题
SonarQube 9.4 + PostgreSQL
shell倒计时
日常网络巧技
使用ssh创建socks5代理服务
NodeJS集群demo
作者其他话题
Fabric 离线安装 1.4版本镜像
回到顶部
友情链接:
JFinal
©2015 Powered by
jfinalbbs
沪ICP备15012258号