From 825a0c69d357ef6351ca5164a57dfde73204ed08 Mon Sep 17 00:00:00 2001 From: Baohua Yang Date: Thu, 5 Oct 2017 23:21:54 +0800 Subject: [PATCH] Split a separate dev dir for testing latest code --- hyperledger/1.0.2/Makefile | 11 +- hyperledger/1.0.2/base-kafka.yaml | 56 -- hyperledger/1.0.2/base.yaml | 29 +- .../docker-compose-1orgs-1peers-dev.yaml | 125 +-- .../docker-compose-2orgs-4peers-couchdb.yaml | 12 +- .../docker-compose-2orgs-4peers-event.yaml | 12 +- .../docker-compose-2orgs-4peers-kafka.yaml | 60 +- .../1.0.2/docker-compose-2orgs-4peers.yaml | 16 +- .../1.0.2/docker-compose-base-dev.yaml | 96 ++ ...base.yaml => docker-compose-base-e2e.yaml} | 8 +- .../1.0.2/docker-compose-base-kafka.yaml | 96 +- .../1.0.2/e2e_cli/docker-compose-cli.yaml | 24 +- .../e2e_cli/docker-compose-e2e-template.yaml | 24 +- .../1.0.2/e2e_cli/docker-compose-e2e.yaml | 24 +- hyperledger/1.0.3/Makefile | 133 +++ hyperledger/1.0.3/README.md | 144 +++ .../{1.0.2/base-dev.yaml => 1.0.3/base.yaml} | 127 ++- hyperledger/1.0.3/config_update/add-org.sh | 27 + .../1.0.3/config_update/configtxlator_run.sh | 13 + .../docker-compose-1orgs-1peers-dev.yaml | 82 ++ .../docker-compose-2orgs-4peers-couchdb.yaml | 107 ++ .../docker-compose-2orgs-4peers-event.yaml | 91 ++ .../docker-compose-2orgs-4peers-kafka.yaml | 109 +++ .../1.0.3/docker-compose-2orgs-4peers.yaml | 54 ++ .../1.0.3/docker-compose-base-dev.yaml | 96 ++ .../1.0.3/docker-compose-base-e2e.yaml | 169 ++++ .../1.0.3/docker-compose-base-kafka.yaml | 259 +++++ .../1.0.3/docs/artifacts_generation.md | 276 ++++++ hyperledger/1.0.3/docs/chaincode_test.md | 35 + hyperledger/1.0.3/docs/configtxlator.md | 195 ++++ hyperledger/1.0.3/docs/couchdb_usage.md | 32 + hyperledger/1.0.3/docs/detailed_steps.md | 122 +++ .../1.0.3/docs/docker-compose-1peer-usage.md | 221 +++++ hyperledger/1.0.3/docs/events.md | 33 + hyperledger/1.0.3/docs/kafka_usage.md | 0 hyperledger/1.0.3/docs/peer_cmds.md | 37 + hyperledger/1.0.3/docs/setup.md | 21 + hyperledger/1.0.3/docs/verification_test.md | 10 + .../e2e_cli/base/docker-compose-base.yaml | 135 +++ hyperledger/1.0.3/e2e_cli/base/peer-base.yaml | 26 + .../channel-artifacts/Org1MSPanchors.tx | Bin 0 -> 296 bytes .../channel-artifacts/Org2MSPanchors.tx | Bin 0 -> 296 bytes .../e2e_cli/channel-artifacts/channel.tx | Bin 0 -> 406 bytes .../channel-artifacts/orderer.genesis.block | Bin 0 -> 9068 bytes hyperledger/1.0.3/e2e_cli/configtx.yaml | 153 +++ hyperledger/1.0.3/e2e_cli/crypto-config.yaml | 93 ++ ...36b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk | 5 + .../example.com/ca/ca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...ee7303daa9c62125dc5e7086338cedd47ae498f_sk | 5 + .../signcerts/orderer.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../orderers/orderer.example.com/tls/ca.crt | 14 + .../orderer.example.com/tls/server.crt | 15 + .../orderer.example.com/tls/server.key | 5 + ...f811c274e08b949930d761e0314982751bf85c1_sk | 5 + .../tlsca/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk | 5 + .../msp/signcerts/Admin@example.com-cert.pem | 13 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../users/Admin@example.com/tls/ca.crt | 14 + .../users/Admin@example.com/tls/server.crt | 14 + .../users/Admin@example.com/tls/server.key | 5 + ...5286e8869bb7bd051454cd4166aa2887a2ad451_sk | 5 + .../ca/ca.org1.example.com-cert.pem | 14 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + .../tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk | 5 + .../signcerts/peer0.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer0.org1.example.com/tls/ca.crt | 15 + .../peer0.org1.example.com/tls/server.crt | 15 + .../peer0.org1.example.com/tls/server.key | 5 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...29dada8e62bf2b5f180ac6e49c79a70c40858e2_sk | 5 + .../signcerts/peer1.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer1.org1.example.com/tls/ca.crt | 15 + .../peer1.org1.example.com/tls/server.crt | 15 + .../peer1.org1.example.com/tls/server.key | 5 + ...855786c12e356170090a2d3e4cd4477705b40dc_sk | 5 + .../tlsca/tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...61e78a2b47935e318ec1800de5fc5c164dae9ae_sk | 5 + .../signcerts/Admin@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/Admin@org1.example.com/tls/ca.crt | 15 + .../Admin@org1.example.com/tls/server.crt | 14 + .../Admin@org1.example.com/tls/server.key | 5 + .../User1@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...6ce6f18989d35301fbdf10582e31a872da8200e_sk | 5 + .../signcerts/User1@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/User1@org1.example.com/tls/ca.crt | 15 + .../User1@org1.example.com/tls/server.crt | 14 + .../User1@org1.example.com/tls/server.key | 5 + ...a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk | 5 + .../ca/ca.org2.example.com-cert.pem | 14 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + .../tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...0954c8d339a2a293c5643a3217a55c6b14668cc_sk | 5 + .../signcerts/peer0.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer0.org2.example.com/tls/ca.crt | 15 + .../peer0.org2.example.com/tls/server.crt | 15 + .../peer0.org2.example.com/tls/server.key | 5 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...17acad0701f44e9b6c08f99af1b7fb0220808e7_sk | 5 + .../signcerts/peer1.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer1.org2.example.com/tls/ca.crt | 15 + .../peer1.org2.example.com/tls/server.crt | 15 + .../peer1.org2.example.com/tls/server.key | 5 + ...f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk | 5 + .../tlsca/tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...e517005a9905816bc2fc2ab3aece92e0daff4c8_sk | 5 + .../signcerts/Admin@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/Admin@org2.example.com/tls/ca.crt | 15 + .../Admin@org2.example.com/tls/server.crt | 14 + .../Admin@org2.example.com/tls/server.key | 5 + .../User1@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...d8efaed2db1095645a9ec5a6ff6276ed6e24893_sk | 5 + .../signcerts/User1@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/User1@org2.example.com/tls/ca.crt | 15 + .../User1@org2.example.com/tls/server.crt | 14 + .../User1@org2.example.com/tls/server.key | 5 + .../1.0.3/e2e_cli/docker-compose-cli.yaml | 163 ++++ .../1.0.3/e2e_cli/docker-compose-couch.yaml | 67 ++ .../e2e_cli/docker-compose-e2e-template.yaml | 159 +++ .../1.0.3/e2e_cli/docker-compose-e2e.yaml | 159 +++ .../1.0.3/e2e_cli/download-dockerimages.sh | 81 ++ hyperledger/1.0.3/e2e_cli/end-to-end.rst | 912 ++++++++++++++++++ .../chaincode_example02.go | 199 ++++ hyperledger/1.0.3/e2e_cli/network_setup.sh | 101 ++ hyperledger/1.0.3/e2e_cli/scripts/script.sh | 273 ++++++ hyperledger/1.0.3/kafka/README.md | 13 + .../kafka/channel-artifacts/Org1MSPanchors.tx | Bin 0 -> 296 bytes .../kafka/channel-artifacts/Org2MSPanchors.tx | Bin 0 -> 296 bytes .../1.0.3/kafka/channel-artifacts/channel.tx | Bin 0 -> 406 bytes .../channel-artifacts/orderer.genesis.block | Bin 0 -> 9162 bytes hyperledger/1.0.3/kafka/configtx.yaml | 153 +++ hyperledger/1.0.3/kafka/crypto-config.yaml | 81 ++ ...f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk | 5 + .../example.com/ca/ca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...03d61d7f93088befb5c873493caf8d1883036f0_sk | 5 + .../signcerts/orderer.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../orderers/orderer.example.com/tls/ca.crt | 14 + .../orderer.example.com/tls/server.crt | 15 + .../orderer.example.com/tls/server.key | 5 + ...c281120af5460055a4deb9c5b5f335f12fb4af8_sk | 5 + .../tlsca/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...e8c9880300d1e53322729fa76768edba75e9c65_sk | 5 + .../msp/signcerts/Admin@example.com-cert.pem | 13 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../users/Admin@example.com/tls/ca.crt | 14 + .../users/Admin@example.com/tls/server.crt | 14 + .../users/Admin@example.com/tls/server.key | 5 + ...c0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk | 5 + .../ca/ca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + .../tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...82e01aad20716730fe07728ebc111bb37b1ec69_sk | 5 + .../signcerts/peer0.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer0.org1.example.com/tls/ca.crt | 15 + .../peer0.org1.example.com/tls/server.crt | 15 + .../peer0.org1.example.com/tls/server.key | 5 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...159d1110710dc3464646cfe49c3b07a57c47b05_sk | 5 + .../signcerts/peer1.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer1.org1.example.com/tls/ca.crt | 15 + .../peer1.org1.example.com/tls/server.crt | 15 + .../peer1.org1.example.com/tls/server.key | 5 + ...87ee32e2f62ac4136f872c5e1baec126a852eb4_sk | 5 + .../tlsca/tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...af33acd4916980d3761629968e08cec1ba4f560_sk | 5 + .../signcerts/Admin@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/Admin@org1.example.com/tls/ca.crt | 15 + .../Admin@org1.example.com/tls/server.crt | 14 + .../Admin@org1.example.com/tls/server.key | 5 + .../User1@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk | 5 + .../signcerts/User1@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/User1@org1.example.com/tls/ca.crt | 15 + .../User1@org1.example.com/tls/server.crt | 14 + .../User1@org1.example.com/tls/server.key | 5 + ...2ae172ad2b4452cf21c769cb4630bae6dcdd151_sk | 5 + .../ca/ca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + .../tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...8083a25b7c1c0951752dff8b765ea8e51638d99_sk | 5 + .../signcerts/peer0.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer0.org2.example.com/tls/ca.crt | 15 + .../peer0.org2.example.com/tls/server.crt | 15 + .../peer0.org2.example.com/tls/server.key | 5 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk | 5 + .../signcerts/peer1.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer1.org2.example.com/tls/ca.crt | 15 + .../peer1.org2.example.com/tls/server.crt | 15 + .../peer1.org2.example.com/tls/server.key | 5 + ...d11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk | 5 + .../tlsca/tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...3743fe43c419724f5f3d462b97e75e914a85fd0_sk | 5 + .../signcerts/Admin@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/Admin@org2.example.com/tls/ca.crt | 15 + .../Admin@org2.example.com/tls/server.crt | 14 + .../Admin@org2.example.com/tls/server.key | 5 + .../User1@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...ee24ea432ad18bab787415babf4cd1bd37e2625_sk | 5 + .../signcerts/User1@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/User1@org2.example.com/tls/ca.crt | 15 + .../User1@org2.example.com/tls/server.crt | 14 + .../User1@org2.example.com/tls/server.key | 5 + .../chaincode_example02.go | 199 ++++ hyperledger/1.0.3/kafka/gen_artifacts.sh | 58 ++ hyperledger/1.0.3/scripts/clean_env.sh | 26 + hyperledger/1.0.3/scripts/download_images.sh | 73 ++ hyperledger/1.0.3/scripts/func.sh | 256 +++++ hyperledger/1.0.3/scripts/header.sh | 19 + hyperledger/1.0.3/scripts/initialize_all.sh | 58 ++ hyperledger/1.0.3/scripts/initialize_peer0.sh | 61 ++ hyperledger/1.0.3/scripts/log.txt | 19 + hyperledger/1.0.3/scripts/setup_Docker.sh | 40 + hyperledger/1.0.3/scripts/test_cc_all.sh | 49 + hyperledger/1.0.3/scripts/test_cc_peer0.sh | 28 + hyperledger/1.0.3/scripts/test_lscc.sh | 59 ++ hyperledger/1.0.3/scripts/test_qscc.sh | 27 + hyperledger/1.0/docker-compose-1peer.yaml | 8 +- .../docker-compose-2orgs-4peers-couchdb.yaml | 12 +- .../docker-compose-2orgs-4peers-event.yaml | 10 +- .../1.0/docker-compose-2orgs-4peers.yaml | 16 +- hyperledger/1.0/docker-compose-dev.yaml | 2 +- .../1.0/e2e_cli/docker-compose-cli.yaml | 24 +- .../e2e_cli/docker-compose-e2e-template.yaml | 24 +- .../1.0/e2e_cli/docker-compose-e2e.yaml | 24 +- hyperledger/1.0/kafka/orderer-kafka.yaml | 8 +- hyperledger/dev/Makefile | 133 +++ hyperledger/dev/README.md | 144 +++ hyperledger/dev/base.yaml | 126 +++ hyperledger/dev/config_update/add-org.sh | 27 + .../dev/config_update/configtxlator_run.sh | 13 + .../dev/docker-compose-1orgs-1peers-dev.yaml | 92 ++ hyperledger/dev/docker-compose-base-dev.yaml | 96 ++ .../dev/docker-compose-base-kafka.yaml | 259 +++++ hyperledger/dev/docs/artifacts_generation.md | 276 ++++++ hyperledger/dev/docs/chaincode_test.md | 35 + hyperledger/dev/docs/configtxlator.md | 195 ++++ hyperledger/dev/docs/couchdb_usage.md | 32 + hyperledger/dev/docs/detailed_steps.md | 122 +++ .../dev/docs/docker-compose-1peer-usage.md | 221 +++++ hyperledger/dev/docs/events.md | 33 + hyperledger/dev/docs/kafka_usage.md | 0 hyperledger/dev/docs/peer_cmds.md | 37 + hyperledger/dev/docs/setup.md | 21 + hyperledger/dev/docs/verification_test.md | 10 + .../dev/e2e_cli/base/docker-compose-base.yaml | 135 +++ hyperledger/dev/e2e_cli/base/peer-base.yaml | 26 + .../channel-artifacts/Org1MSPanchors.tx | Bin 0 -> 296 bytes .../channel-artifacts/Org2MSPanchors.tx | Bin 0 -> 296 bytes .../dev/e2e_cli/channel-artifacts/channel.tx | Bin 0 -> 406 bytes .../channel-artifacts/orderer.genesis.block | Bin 0 -> 9068 bytes hyperledger/dev/e2e_cli/configtx.yaml | 153 +++ hyperledger/dev/e2e_cli/crypto-config.yaml | 93 ++ ...36b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk | 5 + .../example.com/ca/ca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...ee7303daa9c62125dc5e7086338cedd47ae498f_sk | 5 + .../signcerts/orderer.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../orderers/orderer.example.com/tls/ca.crt | 14 + .../orderer.example.com/tls/server.crt | 15 + .../orderer.example.com/tls/server.key | 5 + ...f811c274e08b949930d761e0314982751bf85c1_sk | 5 + .../tlsca/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk | 5 + .../msp/signcerts/Admin@example.com-cert.pem | 13 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../users/Admin@example.com/tls/ca.crt | 14 + .../users/Admin@example.com/tls/server.crt | 14 + .../users/Admin@example.com/tls/server.key | 5 + ...5286e8869bb7bd051454cd4166aa2887a2ad451_sk | 5 + .../ca/ca.org1.example.com-cert.pem | 14 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + .../tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk | 5 + .../signcerts/peer0.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer0.org1.example.com/tls/ca.crt | 15 + .../peer0.org1.example.com/tls/server.crt | 15 + .../peer0.org1.example.com/tls/server.key | 5 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...29dada8e62bf2b5f180ac6e49c79a70c40858e2_sk | 5 + .../signcerts/peer1.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer1.org1.example.com/tls/ca.crt | 15 + .../peer1.org1.example.com/tls/server.crt | 15 + .../peer1.org1.example.com/tls/server.key | 5 + ...855786c12e356170090a2d3e4cd4477705b40dc_sk | 5 + .../tlsca/tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...61e78a2b47935e318ec1800de5fc5c164dae9ae_sk | 5 + .../signcerts/Admin@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/Admin@org1.example.com/tls/ca.crt | 15 + .../Admin@org1.example.com/tls/server.crt | 14 + .../Admin@org1.example.com/tls/server.key | 5 + .../User1@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...6ce6f18989d35301fbdf10582e31a872da8200e_sk | 5 + .../signcerts/User1@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/User1@org1.example.com/tls/ca.crt | 15 + .../User1@org1.example.com/tls/server.crt | 14 + .../User1@org1.example.com/tls/server.key | 5 + ...a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk | 5 + .../ca/ca.org2.example.com-cert.pem | 14 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + .../tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...0954c8d339a2a293c5643a3217a55c6b14668cc_sk | 5 + .../signcerts/peer0.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer0.org2.example.com/tls/ca.crt | 15 + .../peer0.org2.example.com/tls/server.crt | 15 + .../peer0.org2.example.com/tls/server.key | 5 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...17acad0701f44e9b6c08f99af1b7fb0220808e7_sk | 5 + .../signcerts/peer1.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer1.org2.example.com/tls/ca.crt | 15 + .../peer1.org2.example.com/tls/server.crt | 15 + .../peer1.org2.example.com/tls/server.key | 5 + ...f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk | 5 + .../tlsca/tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...e517005a9905816bc2fc2ab3aece92e0daff4c8_sk | 5 + .../signcerts/Admin@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/Admin@org2.example.com/tls/ca.crt | 15 + .../Admin@org2.example.com/tls/server.crt | 14 + .../Admin@org2.example.com/tls/server.key | 5 + .../User1@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...d8efaed2db1095645a9ec5a6ff6276ed6e24893_sk | 5 + .../signcerts/User1@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/User1@org2.example.com/tls/ca.crt | 15 + .../User1@org2.example.com/tls/server.crt | 14 + .../User1@org2.example.com/tls/server.key | 5 + .../dev/e2e_cli/docker-compose-cli.yaml | 163 ++++ .../dev/e2e_cli/docker-compose-couch.yaml | 67 ++ .../e2e_cli/docker-compose-e2e-template.yaml | 159 +++ .../dev/e2e_cli/docker-compose-e2e.yaml | 159 +++ .../dev/e2e_cli/download-dockerimages.sh | 81 ++ hyperledger/dev/e2e_cli/end-to-end.rst | 912 ++++++++++++++++++ .../chaincode_example02.go | 199 ++++ hyperledger/dev/e2e_cli/network_setup.sh | 101 ++ hyperledger/dev/e2e_cli/scripts/script.sh | 273 ++++++ hyperledger/dev/kafka/README.md | 13 + .../kafka/channel-artifacts/Org1MSPanchors.tx | Bin 0 -> 296 bytes .../kafka/channel-artifacts/Org2MSPanchors.tx | Bin 0 -> 296 bytes .../dev/kafka/channel-artifacts/channel.tx | Bin 0 -> 406 bytes .../channel-artifacts/orderer.genesis.block | Bin 0 -> 9162 bytes hyperledger/dev/kafka/configtx.yaml | 153 +++ hyperledger/dev/kafka/crypto-config.yaml | 81 ++ ...f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk | 5 + .../example.com/ca/ca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...03d61d7f93088befb5c873493caf8d1883036f0_sk | 5 + .../signcerts/orderer.example.com-cert.pem | 14 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../orderers/orderer.example.com/tls/ca.crt | 14 + .../orderer.example.com/tls/server.crt | 15 + .../orderer.example.com/tls/server.key | 5 + ...c281120af5460055a4deb9c5b5f335f12fb4af8_sk | 5 + .../tlsca/tlsca.example.com-cert.pem | 14 + .../msp/admincerts/Admin@example.com-cert.pem | 13 + .../msp/cacerts/ca.example.com-cert.pem | 14 + ...e8c9880300d1e53322729fa76768edba75e9c65_sk | 5 + .../msp/signcerts/Admin@example.com-cert.pem | 13 + .../msp/tlscacerts/tlsca.example.com-cert.pem | 14 + .../users/Admin@example.com/tls/ca.crt | 14 + .../users/Admin@example.com/tls/server.crt | 14 + .../users/Admin@example.com/tls/server.key | 5 + ...c0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk | 5 + .../ca/ca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + .../tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...82e01aad20716730fe07728ebc111bb37b1ec69_sk | 5 + .../signcerts/peer0.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer0.org1.example.com/tls/ca.crt | 15 + .../peer0.org1.example.com/tls/server.crt | 15 + .../peer0.org1.example.com/tls/server.key | 5 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...159d1110710dc3464646cfe49c3b07a57c47b05_sk | 5 + .../signcerts/peer1.org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../peers/peer1.org1.example.com/tls/ca.crt | 15 + .../peer1.org1.example.com/tls/server.crt | 15 + .../peer1.org1.example.com/tls/server.key | 5 + ...87ee32e2f62ac4136f872c5e1baec126a852eb4_sk | 5 + .../tlsca/tlsca.org1.example.com-cert.pem | 15 + .../Admin@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...af33acd4916980d3761629968e08cec1ba4f560_sk | 5 + .../signcerts/Admin@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/Admin@org1.example.com/tls/ca.crt | 15 + .../Admin@org1.example.com/tls/server.crt | 14 + .../Admin@org1.example.com/tls/server.key | 5 + .../User1@org1.example.com-cert.pem | 14 + .../msp/cacerts/ca.org1.example.com-cert.pem | 15 + ...cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk | 5 + .../signcerts/User1@org1.example.com-cert.pem | 14 + .../tlsca.org1.example.com-cert.pem | 15 + .../users/User1@org1.example.com/tls/ca.crt | 15 + .../User1@org1.example.com/tls/server.crt | 14 + .../User1@org1.example.com/tls/server.key | 5 + ...2ae172ad2b4452cf21c769cb4630bae6dcdd151_sk | 5 + .../ca/ca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + .../tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...8083a25b7c1c0951752dff8b765ea8e51638d99_sk | 5 + .../signcerts/peer0.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer0.org2.example.com/tls/ca.crt | 15 + .../peer0.org2.example.com/tls/server.crt | 15 + .../peer0.org2.example.com/tls/server.key | 5 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk | 5 + .../signcerts/peer1.org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../peers/peer1.org2.example.com/tls/ca.crt | 15 + .../peer1.org2.example.com/tls/server.crt | 15 + .../peer1.org2.example.com/tls/server.key | 5 + ...d11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk | 5 + .../tlsca/tlsca.org2.example.com-cert.pem | 15 + .../Admin@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...3743fe43c419724f5f3d462b97e75e914a85fd0_sk | 5 + .../signcerts/Admin@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/Admin@org2.example.com/tls/ca.crt | 15 + .../Admin@org2.example.com/tls/server.crt | 14 + .../Admin@org2.example.com/tls/server.key | 5 + .../User1@org2.example.com-cert.pem | 14 + .../msp/cacerts/ca.org2.example.com-cert.pem | 15 + ...ee24ea432ad18bab787415babf4cd1bd37e2625_sk | 5 + .../signcerts/User1@org2.example.com-cert.pem | 14 + .../tlsca.org2.example.com-cert.pem | 15 + .../users/User1@org2.example.com/tls/ca.crt | 15 + .../User1@org2.example.com/tls/server.crt | 14 + .../User1@org2.example.com/tls/server.key | 5 + .../chaincode_example02.go | 199 ++++ hyperledger/dev/kafka/gen_artifacts.sh | 58 ++ hyperledger/dev/scripts/clean_env.sh | 26 + hyperledger/dev/scripts/download_images.sh | 73 ++ hyperledger/dev/scripts/func.sh | 256 +++++ hyperledger/dev/scripts/header.sh | 19 + hyperledger/dev/scripts/initialize_all.sh | 58 ++ hyperledger/dev/scripts/initialize_peer0.sh | 61 ++ hyperledger/dev/scripts/log.txt | 19 + hyperledger/dev/scripts/setup_Docker.sh | 40 + hyperledger/dev/scripts/test_cc_all.sh | 49 + hyperledger/dev/scripts/test_cc_peer0.sh | 28 + hyperledger/dev/scripts/test_lscc.sh | 59 ++ hyperledger/dev/scripts/test_qscc.sh | 27 + 546 files changed, 16969 insertions(+), 345 deletions(-) delete mode 100644 hyperledger/1.0.2/base-kafka.yaml create mode 100644 hyperledger/1.0.2/docker-compose-base-dev.yaml rename hyperledger/1.0.2/{docker-compose-base.yaml => docker-compose-base-e2e.yaml} (96%) create mode 100644 hyperledger/1.0.3/Makefile create mode 100644 hyperledger/1.0.3/README.md rename hyperledger/{1.0.2/base-dev.yaml => 1.0.3/base.yaml} (63%) create mode 100644 hyperledger/1.0.3/config_update/add-org.sh create mode 100644 hyperledger/1.0.3/config_update/configtxlator_run.sh create mode 100644 hyperledger/1.0.3/docker-compose-1orgs-1peers-dev.yaml create mode 100644 hyperledger/1.0.3/docker-compose-2orgs-4peers-couchdb.yaml create mode 100644 hyperledger/1.0.3/docker-compose-2orgs-4peers-event.yaml create mode 100644 hyperledger/1.0.3/docker-compose-2orgs-4peers-kafka.yaml create mode 100644 hyperledger/1.0.3/docker-compose-2orgs-4peers.yaml create mode 100644 hyperledger/1.0.3/docker-compose-base-dev.yaml create mode 100644 hyperledger/1.0.3/docker-compose-base-e2e.yaml create mode 100644 hyperledger/1.0.3/docker-compose-base-kafka.yaml create mode 100644 hyperledger/1.0.3/docs/artifacts_generation.md create mode 100644 hyperledger/1.0.3/docs/chaincode_test.md create mode 100644 hyperledger/1.0.3/docs/configtxlator.md create mode 100644 hyperledger/1.0.3/docs/couchdb_usage.md create mode 100644 hyperledger/1.0.3/docs/detailed_steps.md create mode 100644 hyperledger/1.0.3/docs/docker-compose-1peer-usage.md create mode 100644 hyperledger/1.0.3/docs/events.md create mode 100644 hyperledger/1.0.3/docs/kafka_usage.md create mode 100644 hyperledger/1.0.3/docs/peer_cmds.md create mode 100644 hyperledger/1.0.3/docs/setup.md create mode 100644 hyperledger/1.0.3/docs/verification_test.md create mode 100644 hyperledger/1.0.3/e2e_cli/base/docker-compose-base.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/base/peer-base.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/channel-artifacts/Org1MSPanchors.tx create mode 100644 hyperledger/1.0.3/e2e_cli/channel-artifacts/Org2MSPanchors.tx create mode 100644 hyperledger/1.0.3/e2e_cli/channel-artifacts/channel.tx create mode 100644 hyperledger/1.0.3/e2e_cli/channel-artifacts/orderer.genesis.block create mode 100644 hyperledger/1.0.3/e2e_cli/configtx.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/e2e_cli/docker-compose-cli.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/docker-compose-couch.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/docker-compose-e2e-template.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/docker-compose-e2e.yaml create mode 100644 hyperledger/1.0.3/e2e_cli/download-dockerimages.sh create mode 100644 hyperledger/1.0.3/e2e_cli/end-to-end.rst create mode 100644 hyperledger/1.0.3/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go create mode 100644 hyperledger/1.0.3/e2e_cli/network_setup.sh create mode 100644 hyperledger/1.0.3/e2e_cli/scripts/script.sh create mode 100644 hyperledger/1.0.3/kafka/README.md create mode 100644 hyperledger/1.0.3/kafka/channel-artifacts/Org1MSPanchors.tx create mode 100644 hyperledger/1.0.3/kafka/channel-artifacts/Org2MSPanchors.tx create mode 100644 hyperledger/1.0.3/kafka/channel-artifacts/channel.tx create mode 100644 hyperledger/1.0.3/kafka/channel-artifacts/orderer.genesis.block create mode 100644 hyperledger/1.0.3/kafka/configtx.yaml create mode 100644 hyperledger/1.0.3/kafka/crypto-config.yaml create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt create mode 100644 hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key create mode 100644 hyperledger/1.0.3/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go create mode 100644 hyperledger/1.0.3/kafka/gen_artifacts.sh create mode 100644 hyperledger/1.0.3/scripts/clean_env.sh create mode 100644 hyperledger/1.0.3/scripts/download_images.sh create mode 100644 hyperledger/1.0.3/scripts/func.sh create mode 100644 hyperledger/1.0.3/scripts/header.sh create mode 100644 hyperledger/1.0.3/scripts/initialize_all.sh create mode 100644 hyperledger/1.0.3/scripts/initialize_peer0.sh create mode 100644 hyperledger/1.0.3/scripts/log.txt create mode 100644 hyperledger/1.0.3/scripts/setup_Docker.sh create mode 100644 hyperledger/1.0.3/scripts/test_cc_all.sh create mode 100644 hyperledger/1.0.3/scripts/test_cc_peer0.sh create mode 100644 hyperledger/1.0.3/scripts/test_lscc.sh create mode 100644 hyperledger/1.0.3/scripts/test_qscc.sh create mode 100644 hyperledger/dev/Makefile create mode 100644 hyperledger/dev/README.md create mode 100644 hyperledger/dev/base.yaml create mode 100644 hyperledger/dev/config_update/add-org.sh create mode 100644 hyperledger/dev/config_update/configtxlator_run.sh create mode 100644 hyperledger/dev/docker-compose-1orgs-1peers-dev.yaml create mode 100644 hyperledger/dev/docker-compose-base-dev.yaml create mode 100644 hyperledger/dev/docker-compose-base-kafka.yaml create mode 100644 hyperledger/dev/docs/artifacts_generation.md create mode 100644 hyperledger/dev/docs/chaincode_test.md create mode 100644 hyperledger/dev/docs/configtxlator.md create mode 100644 hyperledger/dev/docs/couchdb_usage.md create mode 100644 hyperledger/dev/docs/detailed_steps.md create mode 100644 hyperledger/dev/docs/docker-compose-1peer-usage.md create mode 100644 hyperledger/dev/docs/events.md create mode 100644 hyperledger/dev/docs/kafka_usage.md create mode 100644 hyperledger/dev/docs/peer_cmds.md create mode 100644 hyperledger/dev/docs/setup.md create mode 100644 hyperledger/dev/docs/verification_test.md create mode 100644 hyperledger/dev/e2e_cli/base/docker-compose-base.yaml create mode 100644 hyperledger/dev/e2e_cli/base/peer-base.yaml create mode 100644 hyperledger/dev/e2e_cli/channel-artifacts/Org1MSPanchors.tx create mode 100644 hyperledger/dev/e2e_cli/channel-artifacts/Org2MSPanchors.tx create mode 100644 hyperledger/dev/e2e_cli/channel-artifacts/channel.tx create mode 100644 hyperledger/dev/e2e_cli/channel-artifacts/orderer.genesis.block create mode 100644 hyperledger/dev/e2e_cli/configtx.yaml create mode 100644 hyperledger/dev/e2e_cli/crypto-config.yaml create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key create mode 100644 hyperledger/dev/e2e_cli/docker-compose-cli.yaml create mode 100644 hyperledger/dev/e2e_cli/docker-compose-couch.yaml create mode 100644 hyperledger/dev/e2e_cli/docker-compose-e2e-template.yaml create mode 100644 hyperledger/dev/e2e_cli/docker-compose-e2e.yaml create mode 100644 hyperledger/dev/e2e_cli/download-dockerimages.sh create mode 100644 hyperledger/dev/e2e_cli/end-to-end.rst create mode 100644 hyperledger/dev/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go create mode 100644 hyperledger/dev/e2e_cli/network_setup.sh create mode 100644 hyperledger/dev/e2e_cli/scripts/script.sh create mode 100644 hyperledger/dev/kafka/README.md create mode 100644 hyperledger/dev/kafka/channel-artifacts/Org1MSPanchors.tx create mode 100644 hyperledger/dev/kafka/channel-artifacts/Org2MSPanchors.tx create mode 100644 hyperledger/dev/kafka/channel-artifacts/channel.tx create mode 100644 hyperledger/dev/kafka/channel-artifacts/orderer.genesis.block create mode 100644 hyperledger/dev/kafka/configtx.yaml create mode 100644 hyperledger/dev/kafka/crypto-config.yaml create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt create mode 100644 hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key create mode 100644 hyperledger/dev/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go create mode 100644 hyperledger/dev/kafka/gen_artifacts.sh create mode 100644 hyperledger/dev/scripts/clean_env.sh create mode 100644 hyperledger/dev/scripts/download_images.sh create mode 100644 hyperledger/dev/scripts/func.sh create mode 100644 hyperledger/dev/scripts/header.sh create mode 100644 hyperledger/dev/scripts/initialize_all.sh create mode 100644 hyperledger/dev/scripts/initialize_peer0.sh create mode 100644 hyperledger/dev/scripts/log.txt create mode 100644 hyperledger/dev/scripts/setup_Docker.sh create mode 100644 hyperledger/dev/scripts/test_cc_all.sh create mode 100644 hyperledger/dev/scripts/test_cc_peer0.sh create mode 100644 hyperledger/dev/scripts/test_lscc.sh create mode 100644 hyperledger/dev/scripts/test_qscc.sh diff --git a/hyperledger/1.0.2/Makefile b/hyperledger/1.0.2/Makefile index dbc38b5d..8017207a 100644 --- a/hyperledger/1.0.2/Makefile +++ b/hyperledger/1.0.2/Makefile @@ -28,13 +28,13 @@ all: ready: restart @echo "Restart, init network and then do cc testing..." - if [ "$DEV_ENABLED" = "true" ]; then \ - sleep 35; \ + if [ "$(DEV_ENABLED)" = "true" ]; then \ + echo "In DEV mode, wait for rebuilding ..." && sleep 35; \ make init_peer0; \ - sleep 2; \ + sleep 5; \ make test_peer0; \ else \ - sleep 3; \ + echo "In Normal mode ..." && sleep 3; \ make init; \ sleep 2; \ make test_cc; \ @@ -45,7 +45,7 @@ ready: restart @echo "run 'make stop' when done." start: # bootup the fabric network - @echo "Start a fabric network with 2-org-4-peer" + @echo "Start a fabric network with ${COMPOSE_FILE}" make clean docker-compose -f ${COMPOSE_FILE} up -d # Start a fabric network @@ -113,6 +113,7 @@ logs_check: logs_save logs_view logs_save: # save logs docker logs peer0.org1.example.com >& /tmp/dev_peer.log + docker logs orderer.example.com >& /tmp/dev_orderer.log logs_view: # view logs less /tmp/dev_peer.log diff --git a/hyperledger/1.0.2/base-kafka.yaml b/hyperledger/1.0.2/base-kafka.yaml deleted file mode 100644 index ded5ee70..00000000 --- a/hyperledger/1.0.2/base-kafka.yaml +++ /dev/null @@ -1,56 +0,0 @@ -# This is the default base file for kafka based ordering -# Notice that chaincode is executed inside docker in default net mode -# https://github.com/yeasy/docker-compose-files - -# Depends on the yeasy/hyperledger-fabric image. - -version: '2' - -services: - orderer-base: - #image: yeasy/hyperledger-fabric-orderer:1.0.2 - image: hyperledger/fabric-orderer:x86_64-1.0.2 - restart: always - environment: - - ORDERER_GENERAL_LOGLEVEL=DEBUG - - ORDERER_GENERAL_LISTENADDRESS=0.0.0.0 - - ORDERER_GENERAL_GENESISMETHOD=file - - ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.genesis.block - - ORDERER_GENERAL_LOCALMSPID=OrdererMSP - - ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/orderer/msp - - ORDERER_GENERAL_LEDGERTYPE=file - - ORDERER_GENERAL_BATCHTIMEOUT=2s - - ORDERER_GENERAL_MAXMESSAGECOUNT=10 - - ORDERER_GENERAL_MAXWINDOWSIZE=1000 - - ORDERER_GENERAL_LISTENPORT=7050 - # enabled TLS - - ORDERER_GENERAL_TLS_ENABLED=true - - ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key - - ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt - - ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt] - # Kafka related configurations - - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s - - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s - - ORDERER_KAFKA_VERBOSE=true - expose: - - "7050" # - command: orderer start - - zookeeper-base: - image: hyperledger/fabric-zookeeper:x86_64-1.0.2 - restart: always - expose: - - '2181' - - '2888' - - '3888' - - kafka-base: - image: hyperledger/fabric-kafka:x86_64-1.0.2 - restart: always - environment: - - KAFKA_MESSAGE_MAX_BYTES=1048576 # 1 * 1024 * 1024 B - - KAFKA_REPLICA_FETCH_MAX_BYTES=1048576 # 1 * 1024 * 1024 B - - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false - - KAFKA_LOG_RETENTION_MS=-1 - expose: - - '9092' diff --git a/hyperledger/1.0.2/base.yaml b/hyperledger/1.0.2/base.yaml index 79d8f23b..d2bc5114 100644 --- a/hyperledger/1.0.2/base.yaml +++ b/hyperledger/1.0.2/base.yaml @@ -21,6 +21,7 @@ services: restart: always environment: - ORDERER_GENERAL_LOGLEVEL=DEBUG + - ORDERER_GENERAL_LOGFORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} - ORDERER_GENERAL_LISTENADDRESS=0.0.0.0 - ORDERER_GENERAL_GENESISMETHOD=file - ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.genesis.block @@ -42,12 +43,13 @@ services: command: orderer start peer-base: - image: yeasy/hyperledger-fabric:1.0.2 + image: yeasy/hyperledger-fabric-peer:1.0.2 #image: hyperledger/fabric-peer:x86_64-1.0.2 restart: always environment: - CORE_PEER_ADDRESSAUTODETECT=false - CORE_LOGGING_LEVEL=DEBUG + - CORE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=102_default # uncomment this to use specific network - CORE_PEER_GOSSIP_USELEADERELECTION=true - CORE_PEER_GOSSIP_ORGLEADER=false # this node is the group leader, default to false @@ -56,6 +58,8 @@ services: - CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt - CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key - CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt + - CORE_CHIANCODE_LOGGING_LEVEL=DEBUG + - CORE_CHIANCODE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} expose: - "7050" # Rest - "7051" # Grpc @@ -81,6 +85,7 @@ services: environment: #- GOPATH=/opt/gopath - CORE_LOGGING_LEVEL=DEBUG + - CORE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} - CORE_PEER_TLS_ENABLED=true # to enable TLS, change to true - ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem - CHANNEL_NAME:="businesschannel" @@ -91,5 +96,27 @@ services: #container_name: couchdb0 image: hyperledger/fabric-couchdb:x86_64-1.0.2 restart: always + tty: true # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, # for example map it to utilize Fauxton User Interface in dev environments. + + zookeeper-base: + image: hyperledger/fabric-zookeeper:x86_64-1.0.2 + restart: always + tty: true + expose: + - '2181' + - '2888' + - '3888' + + kafka-base: + image: hyperledger/fabric-kafka:x86_64-1.0.2 + restart: always + tty: true + environment: + - KAFKA_MESSAGE_MAX_BYTES=1048576 # 1 * 1024 * 1024 B + - KAFKA_REPLICA_FETCH_MAX_BYTES=1048576 # 1 * 1024 * 1024 B + - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false + - KAFKA_LOG_RETENTION_MS=-1 + expose: + - '9092' diff --git a/hyperledger/1.0.2/docker-compose-1orgs-1peers-dev.yaml b/hyperledger/1.0.2/docker-compose-1orgs-1peers-dev.yaml index aede7ee5..06284975 100644 --- a/hyperledger/1.0.2/docker-compose-1orgs-1peers-dev.yaml +++ b/hyperledger/1.0.2/docker-compose-1orgs-1peers-dev.yaml @@ -10,70 +10,81 @@ version: '2.0' services: orderer.example.com: # There can be multiple orderers extends: - file: base-dev.yaml - service: orderer-base - container_name: orderer.example.com - hostname: orderer.example.com - ports: - - "7050:7050" - volumes: - - ./e2e_cli/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block - - ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp - - ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls - command: bash -c 'orderer start' - #command: bash -c 'bash /tmp/orderer_build.sh; orderer start' + file: docker-compose-base-dev.yaml + service: orderer.example.com + depends_on: + - kafka0 + - kafka1 + - kafka2 + - kafka3 peer0.org1.example.com: extends: - file: base-dev.yaml - service: peer-base - container_name: peer0.org1.example.com - hostname: peer0.org1.example.com - environment: - - CORE_PEER_ID=peer0.org1.example.com - - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 - - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org1.example.com:7052 - - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051 - - CORE_PEER_LOCALMSPID=Org1MSP - volumes: - - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp - - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls - ports: - - 7051:7051 - - 7052:7052 - - 7053:7053 - #command: bash -c 'peer node start' - command: bash -c 'bash /tmp/peer_build.sh; peer node start' + file: docker-compose-base-dev.yaml + service: peer0.org1.example.com + depends_on: + - orderer.example.com cli: extends: - file: base-dev.yaml - service: cli-base - container_name: fabric-cli - hostname: fabric-cli - tty: true - environment: - - CORE_PEER_ID=fabric-cli - - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 - - CORE_PEER_LOCALMSPID=Org1MSP - - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt - - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key - - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt - - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp - volumes: - - $GOPATH/src/github.com/hyperledger/fabric:/opt/gopath/src/github.com/hyperledger/fabric - - /tmp/:/tmp/ + file: docker-compose-base-dev.yaml + service: cli + depends_on: + - peer0.org1.example.com + - orderer.example.com -# ca.example.com: # not used currently -# extends: -# file: base.yaml -# service: ca-base -# container_name: ca.example.com -# hostname: ca.example.com -# # command: /go/src/github.com/hyperledger/fabric-ca/bin/ca server start -ca testdata/ec.pem #-ca-key testdata/ec-key.pem -config testdata/testconfig.json -# ports: -# - "7054:7054" -# command: fabric-ca-server start -b admin:adminpw +# ZooKeeper services, at least 3 nodes + zookeeper0: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper0 + + zookeeper1: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper1 + + zookeeper2: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper2 + +# Kafka services, at least 4 node to tolerant work with 1 node failure + kafka0: + extends: + file: docker-compose-base-kafka.yaml + service: kafka0 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + extends: + file: docker-compose-base-kafka.yaml + service: kafka1 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + extends: + file: docker-compose-base-kafka.yaml + service: kafka2 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + extends: + file: docker-compose-base-kafka.yaml + service: kafka3 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 #networks: # default: diff --git a/hyperledger/1.0.2/docker-compose-2orgs-4peers-couchdb.yaml b/hyperledger/1.0.2/docker-compose-2orgs-4peers-couchdb.yaml index a59c4302..2a72db46 100644 --- a/hyperledger/1.0.2/docker-compose-2orgs-4peers-couchdb.yaml +++ b/hyperledger/1.0.2/docker-compose-2orgs-4peers-couchdb.yaml @@ -17,12 +17,12 @@ version: '2' services: orderer.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: orderer.example.com peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -32,7 +32,7 @@ services: peer1.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org1.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -42,7 +42,7 @@ services: peer0.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org2.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -52,7 +52,7 @@ services: peer1.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org2.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -102,6 +102,6 @@ services: cli: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: cli diff --git a/hyperledger/1.0.2/docker-compose-2orgs-4peers-event.yaml b/hyperledger/1.0.2/docker-compose-2orgs-4peers-event.yaml index 6365e0bb..5ea09dd6 100644 --- a/hyperledger/1.0.2/docker-compose-2orgs-4peers-event.yaml +++ b/hyperledger/1.0.2/docker-compose-2orgs-4peers-event.yaml @@ -19,32 +19,32 @@ services: orderer.example.com: # There can be multiple orderers extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: orderer.example.com peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org2.example.com cli: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: cli environment: - CORE_PEER_TLS_ENABLED=false # event-listener doesn't support TLS diff --git a/hyperledger/1.0.2/docker-compose-2orgs-4peers-kafka.yaml b/hyperledger/1.0.2/docker-compose-2orgs-4peers-kafka.yaml index 2b6a2ba8..bbbf4f10 100644 --- a/hyperledger/1.0.2/docker-compose-2orgs-4peers-kafka.yaml +++ b/hyperledger/1.0.2/docker-compose-2orgs-4peers-kafka.yaml @@ -51,38 +51,26 @@ services: # ZooKeeper services, at least 3 nodes zookeeper0: extends: - file: base-kafka.yaml - service: zookeeper-base - environment: - - ZOO_MY_ID=1 - - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + file: docker-compose-base-kafka.yaml + file: docker-compose-base-kafka.yaml + service: zookeeper0 zookeeper1: extends: - file: base-kafka.yaml - service: zookeeper-base - environment: - - ZOO_MY_ID=2 - - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + file: docker-compose-base-kafka.yaml + file: docker-compose-base-kafka.yaml + service: zookeeper1 zookeeper2: extends: - file: base-kafka.yaml - service: zookeeper-base - environment: - - ZOO_MY_ID=3 - - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + file: docker-compose-base-kafka.yaml + service: zookeeper2 # Kafka services, at least 4 node to tolerant work with 1 node failure kafka0: extends: - file: base-kafka.yaml - service: kafka-base - environment: - - KAFKA_BROKER_ID=0 - - KAFKA_MIN_INSYNC_REPLICAS=2 - - KAFKA_DEFAULT_REPLICATION_FACTOR=3 - - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + file: docker-compose-base-kafka.yaml + service: kafka0 depends_on: - zookeeper0 - zookeeper1 @@ -90,13 +78,8 @@ services: kafka1: extends: - file: base-kafka.yaml - service: kafka-base - environment: - - KAFKA_BROKER_ID=1 - - KAFKA_DEFAULT_REPLICATION_FACTOR=3 - - KAFKA_MIN_INSYNC_REPLICAS=2 - - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + file: docker-compose-base-kafka.yaml + service: kafka1 depends_on: - zookeeper0 - zookeeper1 @@ -104,13 +87,8 @@ services: kafka2: extends: - file: base-kafka.yaml - service: kafka-base - environment: - - KAFKA_BROKER_ID=2 - - KAFKA_DEFAULT_REPLICATION_FACTOR=3 - - KAFKA_MIN_INSYNC_REPLICAS=2 - - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + file: docker-compose-base-kafka.yaml + service: kafka2 depends_on: - zookeeper0 - zookeeper1 @@ -118,17 +96,13 @@ services: kafka3: extends: - file: base-kafka.yaml - service: kafka-base - environment: - - KAFKA_BROKER_ID=3 - - KAFKA_DEFAULT_REPLICATION_FACTOR=3 - - KAFKA_MIN_INSYNC_REPLICAS=2 - - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + file: docker-compose-base-kafka.yaml + service: kafka3 depends_on: - zookeeper0 - zookeeper1 - zookeeper2 + #networks: # default: # external: diff --git a/hyperledger/1.0.2/docker-compose-2orgs-4peers.yaml b/hyperledger/1.0.2/docker-compose-2orgs-4peers.yaml index 8ae680ba..52b15061 100644 --- a/hyperledger/1.0.2/docker-compose-2orgs-4peers.yaml +++ b/hyperledger/1.0.2/docker-compose-2orgs-4peers.yaml @@ -10,42 +10,42 @@ version: '2.0' services: # ca.org1.example.com: # extends: -# file: docker-compose-base.yaml +# file: docker-compose-base-e2e.yaml # service: ca.org1.example.com # ca.org2.example.com: # extends: -# file: docker-compose-base.yaml +# file: docker-compose-base-e2e.yaml # service: ca.org2.example.com cli: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: cli orderer.example.com: # There can be multiple orderers extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: orderer.example.com peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org2.example.com #networks: diff --git a/hyperledger/1.0.2/docker-compose-base-dev.yaml b/hyperledger/1.0.2/docker-compose-base-dev.yaml new file mode 100644 index 00000000..8af2bc84 --- /dev/null +++ b/hyperledger/1.0.2/docker-compose-base-dev.yaml @@ -0,0 +1,96 @@ +# This is the development compose file to config env and command +# Notice that chaincode is executed inside docker in default net mode +# https://github.com/yeasy/docker-compose-files + +# Depends on the yeasy/hyperledger-fabric image. + +version: '2' + +services: + orderer.example.com: # There can be multiple orderers + extends: + file: base.yaml + service: orderer-base + image: yeasy/hyperledger-fabric:1.0.2 + container_name: orderer.example.com + hostname: orderer.example.com + ports: + - "7050:7050" + environment: + # Kafka related configurations + - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s + - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s + - ORDERER_KAFKA_VERBOSE=true + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric + # for e2e_cli case + #- ./e2e_cli/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + #- ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + #- ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + # for kafka case + - ./kafka/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + command: bash -c 'bash /tmp/orderer_build.sh; orderer start' # use this if to debug orderer + #command: bash -c 'orderer start' # use this if to debug orderer + + peer0.org1.example.com: + extends: + file: base.yaml + service: peer-base + image: yeasy/hyperledger-fabric:1.0.2 + container_name: peer0.org1.example.com + hostname: peer0.org1.example.com + environment: + - CORE_PEER_ID=peer0.org1.example.com + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org1.example.com:7052 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric + # e2e mode configuration + #- ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + #- ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + # kafka mode configuration + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 7051:7051 + - 7052:7052 + - 7053:7053 + #command: bash -c 'bash /tmp/peer_build.sh; peer node start' + command: bash -c 'peer node start' + + cli: + extends: + file: base.yaml + service: cli-base + image: yeasy/hyperledger-fabric:1.0.2 + container_name: fabric-cli + hostname: fabric-cli + tty: true + environment: + - CORE_PEER_ID=fabric-cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/opt/gopath/src/github.com/hyperledger/fabric + - /tmp/:/tmp/ + - ./scripts:/tmp/scripts + # e2e mode configuration + #- ./e2e_cli/channel-artifacts:/tmp/channel-artifacts + #- ./e2e_cli/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + #- ./e2e_cli/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + #- ./e2e_cli/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + #- ./e2e_cli/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples + # kafka mode configuration + - ./kafka/channel-artifacts:/tmp/channel-artifacts + - ./kafka/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + - ./kafka/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + - ./kafka/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + - ./kafka/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples diff --git a/hyperledger/1.0.2/docker-compose-base.yaml b/hyperledger/1.0.2/docker-compose-base-e2e.yaml similarity index 96% rename from hyperledger/1.0.2/docker-compose-base.yaml rename to hyperledger/1.0.2/docker-compose-base-e2e.yaml index f76909a7..9997e880 100644 --- a/hyperledger/1.0.2/docker-compose-base.yaml +++ b/hyperledger/1.0.2/docker-compose-base-e2e.yaml @@ -13,8 +13,6 @@ version: '2' # v3 does not support 'extends' yet services: ca.org1.example.com: - #image: yeasy/hyperledger-fabric-ca:1.0.2 - #image: hyperledger/fabric-ca:x86_64-1.0.2 extends: file: base.yaml service: ca-base @@ -31,8 +29,6 @@ services: command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk -b admin:adminpw -d' ca.org2.example.com: - #image: yeasy/hyperledger-fabric-ca:1.0.2 - #image: hyperledger/fabric-ca:x86_64-1.0.2 extends: file: base.yaml service: ca-base @@ -63,8 +59,6 @@ services: command: orderer start cli: - #image: yeasy/hyperledger-fabric:1.0.2 - #image: hyperledger/fabric-tools:x86_64-1.0.2 extends: file: base.yaml service: cli-base @@ -172,4 +166,4 @@ services: ports: - 10051:7051 - 10052:7052 - - 10053:7053 + - 10053:7053 \ No newline at end of file diff --git a/hyperledger/1.0.2/docker-compose-base-kafka.yaml b/hyperledger/1.0.2/docker-compose-base-kafka.yaml index e27b6f6f..57317bb5 100644 --- a/hyperledger/1.0.2/docker-compose-base-kafka.yaml +++ b/hyperledger/1.0.2/docker-compose-base-kafka.yaml @@ -1,4 +1,4 @@ -# Base compose files for: +# Kafka enabled fabric network with: # ca.org1.example.com # ca.org2.example.com @@ -7,6 +7,8 @@ # peer1.org1.example.com # peer0.org2.example.com # peer1.org2.example.com +# 3 zookeeper nodes +# 4 kafka nodes # cli version: '2' # v3 does not support 'extends' yet @@ -50,12 +52,17 @@ services: orderer.example.com: # There can be multiple orderers extends: - file: base-kafka.yaml + file: base.yaml service: orderer-base container_name: orderer.example.com hostname: orderer.example.com ports: - "7050:7050" + environment: + # Kafka related configurations + - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s + - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s + - ORDERER_KAFKA_VERBOSE=true volumes: - ./kafka/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp @@ -63,8 +70,6 @@ services: command: orderer start cli: - #image: yeasy/hyperledger-fabric:1.0.2 - #image: hyperledger/fabric-tools:x86_64-1.0.2 extends: file: base.yaml service: cli-base @@ -72,7 +77,6 @@ services: hostname: fabric-cli tty: true environment: - #- GOPATH=/opt/gopath - CORE_PEER_ID=fabric-cli - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 - CORE_PEER_LOCALMSPID=Org1MSP @@ -81,7 +85,6 @@ services: - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp volumes: - #- ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/ - ./scripts:/tmp/scripts - ./kafka/channel-artifacts:/tmp/channel-artifacts - ./kafka/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml @@ -173,3 +176,84 @@ services: - 10051:7051 - 10052:7052 - 10053:7053 + + +# ZooKeeper services, at least 3 nodes + zookeeper0: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper0 + hostname: zookeeper0 + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper1 + hostname: zookeeper1 + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper2 + hostname: zookeeper2 + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + +# Kafka services, at least 4 node to tolerant work with 1 node failure + kafka0: + extends: + file: base.yaml + service: kafka-base + container_name: kafka0 + hostname: kafka0 + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka1: + extends: + file: base.yaml + service: kafka-base + container_name: kafka1 + hostname: kafka1 + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka2: + extends: + file: base.yaml + service: kafka-base + container_name: kafka2 + hostname: kafka2 + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka3: + extends: + file: base.yaml + service: kafka-base + container_name: kafka3 + hostname: kafka3 + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 diff --git a/hyperledger/1.0.2/e2e_cli/docker-compose-cli.yaml b/hyperledger/1.0.2/e2e_cli/docker-compose-cli.yaml index 8df8fae3..3353f27b 100644 --- a/hyperledger/1.0.2/e2e_cli/docker-compose-cli.yaml +++ b/hyperledger/1.0.2/e2e_cli/docker-compose-cli.yaml @@ -9,7 +9,7 @@ services: zookeeper0: container_name: zookeeper0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=1 @@ -18,7 +18,7 @@ services: zookeeper1: container_name: zookeeper1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=2 @@ -27,7 +27,7 @@ services: zookeeper2: container_name: zookeeper2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=3 @@ -36,7 +36,7 @@ services: kafka0: container_name: kafka0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=0 @@ -51,7 +51,7 @@ services: kafka1: container_name: kafka1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=1 @@ -66,7 +66,7 @@ services: kafka2: container_name: kafka2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=2 @@ -81,7 +81,7 @@ services: kafka3: container_name: kafka3 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=3 @@ -95,7 +95,7 @@ services: orderer.example.com: extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: orderer.example.com container_name: orderer.example.com depends_on: @@ -110,25 +110,25 @@ services: peer0.org1.example.com: container_name: peer0.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: container_name: peer1.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: container_name: peer0.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: container_name: peer1.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org2.example.com cli: diff --git a/hyperledger/1.0.2/e2e_cli/docker-compose-e2e-template.yaml b/hyperledger/1.0.2/e2e_cli/docker-compose-e2e-template.yaml index c5f160da..7db21047 100644 --- a/hyperledger/1.0.2/e2e_cli/docker-compose-e2e-template.yaml +++ b/hyperledger/1.0.2/e2e_cli/docker-compose-e2e-template.yaml @@ -39,7 +39,7 @@ services: zookeeper0: container_name: zookeeper0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=1 @@ -48,7 +48,7 @@ services: zookeeper1: container_name: zookeeper1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=2 @@ -57,7 +57,7 @@ services: zookeeper2: container_name: zookeeper2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=3 @@ -66,7 +66,7 @@ services: kafka0: container_name: kafka0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=0 @@ -81,7 +81,7 @@ services: kafka1: container_name: kafka1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=1 @@ -96,7 +96,7 @@ services: kafka2: container_name: kafka2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=2 @@ -111,7 +111,7 @@ services: kafka3: container_name: kafka3 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=3 @@ -125,7 +125,7 @@ services: orderer.example.com: extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: orderer.example.com container_name: orderer.example.com depends_on: @@ -137,23 +137,23 @@ services: peer0.org1.example.com: container_name: peer0.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: container_name: peer1.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: container_name: peer0.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: container_name: peer1.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org2.example.com diff --git a/hyperledger/1.0.2/e2e_cli/docker-compose-e2e.yaml b/hyperledger/1.0.2/e2e_cli/docker-compose-e2e.yaml index d5b57833..ba077420 100644 --- a/hyperledger/1.0.2/e2e_cli/docker-compose-e2e.yaml +++ b/hyperledger/1.0.2/e2e_cli/docker-compose-e2e.yaml @@ -39,7 +39,7 @@ services: zookeeper0: container_name: zookeeper0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=1 @@ -48,7 +48,7 @@ services: zookeeper1: container_name: zookeeper1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=2 @@ -57,7 +57,7 @@ services: zookeeper2: container_name: zookeeper2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=3 @@ -66,7 +66,7 @@ services: kafka0: container_name: kafka0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=0 @@ -81,7 +81,7 @@ services: kafka1: container_name: kafka1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=1 @@ -96,7 +96,7 @@ services: kafka2: container_name: kafka2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=2 @@ -111,7 +111,7 @@ services: kafka3: container_name: kafka3 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=3 @@ -125,7 +125,7 @@ services: orderer.example.com: extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: orderer.example.com container_name: orderer.example.com depends_on: @@ -137,23 +137,23 @@ services: peer0.org1.example.com: container_name: peer0.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: container_name: peer1.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: container_name: peer0.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: container_name: peer1.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org2.example.com diff --git a/hyperledger/1.0.3/Makefile b/hyperledger/1.0.3/Makefile new file mode 100644 index 00000000..d753d200 --- /dev/null +++ b/hyperledger/1.0.3/Makefile @@ -0,0 +1,133 @@ +KAFKA_ENABLED ?= false +COUCHDB_ENABLED ?= false +DEV_ENABLED ?= true + +COMPOSE_FILE ?= "docker-compose-2orgs-4peers.yaml" + +ifeq ($(KAFKA_ENABLED),true) +COMPOSE_FILE="docker-compose-2orgs-4peers-kafka.yaml" +endif + +ifeq ($(COUCHDB_ENABLED),true) +COMPOSE_FILE="docker-compose-2orgs-4peers-couchdb.yaml" +endif + +ifeq ($(DEV_ENABLED),true) +COMPOSE_FILE="docker-compose-1orgs-1peers-dev.yaml" +endif + +all: + @echo "Run test with ${COMPOSE_FILE}" + @echo "Please make sure u have setup Docker and pulled images by 'make setup'." + sleep 1 + + make ready + make lscc qscc + + make stop clean + +ready: restart + @echo "Restart, init network and then do cc testing..." + if [ "$(DEV_ENABLED)" = "true" ]; then \ + echo "In DEV mode, wait for rebuilding ..." && sleep 35; \ + make init_peer0; \ + sleep 2; \ + make test_peer0; \ + else \ + echo "In Normal mode ..." && sleep 3; \ + make init; \ + sleep 2; \ + make test_cc; \ + fi + + @echo "Now the fabric network is ready to play" + @echo "run 'make cli' to enter into the fabric-cli container." + @echo "run 'make stop' when done." + +start: # bootup the fabric network + @echo "Start a fabric network with 2-org-4-peer" + make clean + docker-compose -f ${COMPOSE_FILE} up -d # Start a fabric network + +init: # initialize the fabric network + @echo "Install and instantiate cc example02 on the fabric network" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/initialize_all.sh" + +init_peer0: # initialize the fabric network + @echo "Install and instantiate cc example02 on the fabric dev network" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/initialize_peer0.sh" + +stop: # stop the fabric network + @echo "Stop the fabric network" + docker-compose -f ${COMPOSE_FILE} down # Stop a fabric network + +restart: stop start + + +################## Chaincode testing operations ################ +test_cc: # test user chaincode on all peers + @echo "Invoke and query cc example02 on all peers" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_cc_all.sh" + +test_peer0: # test single peer + @echo "Invoke and query cc example02 on single peer0" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_cc_peer0.sh" + +qscc: # test qscc queries + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_qscc.sh" + +lscc: # test lscc quries + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_lscc.sh" + +################## Env setup related, no need to see usually ################ + +setup: # setup the environment + bash scripts/setup_Docker.sh # Install Docker, Docker-Compose + bash scripts/download_images.sh # Pull required Docker images + +clean: # clean up containers + @echo "Clean all containers and fabric cc images" + @-docker rm -f `docker ps -qa` + @-docker rmi $$(docker images | awk '$$1 ~ /dev-peer/ { print $$3}') + +clean_env: # clean up environment + @echo "Clean all images and containers" + bash scripts/clean_env.sh + +cli: # enter the cli container + docker exec -it fabric-cli bash + +peer: # enter the peer container + docker exec -it peer0.org1.example.com bash + +dev_compile: # rebuild the peer + docker exec -it peer0.org1.example.com bash /tmp/peer_build.sh + +ps: # show existing docker images + docker ps -a + +logs: # show logs + docker-compose -f ${COMPOSE_FILE} logs -f --tail 200 + +logs_check: logs_save logs_view + +logs_save: # save logs + docker logs peer0.org1.example.com >& /tmp/dev_peer.log + docker logs orderer.example.com >& /tmp/dev_orderer.log + +logs_view: # view logs + less /tmp/dev_peer.log + +gen_e2e: # generate e2e_cli artifacts + cd e2e_cli && bash gen_artifacts.sh + +gen_kafka: # generate kafka artifacts + cd kafka && bash gen_artifacts.sh + +download: # download required images + @echo "Download Docker images" + docker pull yeasy/hyperledger-fabric:latest + docker pull yeasy/hyperledger-fabric:1.0.3 + docker pull hyperledger/fabric-baseos:x86_64-0.4.2 + docker tag yeasy/hyperledger-fabric:latest hyperledger/fabric-ccenv:x86_64-1.1.0 + diff --git a/hyperledger/1.0.3/README.md b/hyperledger/1.0.3/README.md new file mode 100644 index 00000000..059dca52 --- /dev/null +++ b/hyperledger/1.0.3/README.md @@ -0,0 +1,144 @@ +# Hyperledger fabric 1.0.3 + +Here we show steps on how to setup a fabric 1.0.3 network on Linux (e.g., Ubuntu/Debian), and then use it to run chaincode tests. + +If you're not familiar with Docker and Blockchain technology yet, feel free to have a look at 2 books (in CN): + +* [Docker Practice](https://github.com/yeasy/docker_practice) +* [Blockchain Guide](https://github.com/yeasy/blockchain_guide) + + +## Pass-through + +The following command will run the entire process (start a fabric network, create channel, test chaincode and stop it.) pass-through. + +```sh +$ make setup # install docker/compose, and pull required images +$ make all +``` + +tldr :) + +`make all` actually call following command sequentially. + +* `make start` +* `make init` +* `make test_cc` +* `make stop` + +Otherwise, if u wanna know more or run the command manually, then go on reading the following part. + +## Environment Setup + +The following scripts will setup the environment by installing Docker, Docker-Compose and download required docker images. + +```sh +$ make setup # setup environment +``` + +If you want to setup the environment manually, then have a look at [manually setup](docs/setup.md). + +## Bootup Fabric Network + +Start a 4 peer (belonging to 2 organizations) fabric network. + +```sh +$ make start # Start a fabric network +``` +The script actually uses docker-compose to boot up the fabric network with several containers. + +There will be 7 running containers, include 4 peers, 1 cli, 1 ca and 1 orderer. + +```bash +$ make ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +1dc3f2557bdc hyperledger/fabric-tools "bash -c 'while tr..." 25 minutes ago Up 25 minutes fabric-cli +5e5f37a0ed3c hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:8051->7051/tcp, 0.0.0.0:8052->7052/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com +6cce94da6392 hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:9051->7051/tcp, 0.0.0.0:9052->7052/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com +e36c5e8d56c5 hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:7051-7053->7051-7053/tcp peer0.org1.example.com +1fdd3d2b6527 hyperledger/fabric-orderer "orderer start" 25 minutes ago Up 25 minutes 0.0.0.0:7050->7050/tcp orderer.example.com +8af323340651 hyperledger/fabric-ca "fabric-ca-server ..." 25 minutes ago Up 25 minutes 0.0.0.0:7054->7054/tcp fabric-ca +e41d8bca7fe5 hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:10051->7051/tcp, 0.0.0.0:10052->7052/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com +``` + +### Initialize Fabric network + +```bash +$ make init # Start a fabric network +``` + +The command actually calls the `./scripts/initialize.sh` script in the `fabric-cli` container to: + +* create a new application channel `businesschannel` +* join all peers into the channel +* install and instantiate chaincode `example02` for testing + +This script only needs to be executed once. + +You should see result like the following if the initialization is successful. + +```bash +============================================== +==========initialize businesschannel========== +============================================== + +Channel name : businesschannel +Creating channel... + +... + +===================== All GOOD, initialization completed ===================== +``` + +And there will be new chaincode container generated in the system, looks like + +```bash +$ make ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +9971c9fd1971 dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 54 seconds ago Up 53 seconds dev-peer1.org2.example.com-mycc-1.0 +e3092961b81b dev-peer1.org1.example.com-mycc-1.0 "chaincode -peer.a..." About a minute ago Up About a minute dev-peer1.org1.example.com-mycc-1.0 +57d3555f56e5 dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." About a minute ago Up About a minute dev-peer0.org2.example.com-mycc-1.0 +c9974dbc21d9 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 23 minutes ago Up 23 minutes dev-peer0.org1.example.com-mycc-1.0 +``` + + +## Test Chaincode + +```bash +$ make test_cc # test invoke and query with chaincode +``` + +More details, see [chaincode test](docs/chaincode_test.md). + + +## Stop the network + +```bash +$ make stop # stop the fabric network +``` + +## Clean environment + +Clean all related containers and images. + +```bash +$ make clean # clean the environment +``` + +## More to learn + +Topics | Description +-- | -- +[Detailed Explanation](./docs/detailed_steps.md) | Explain in detail how a 1-peer network start and test. +[Fetch blocks](docs/peer_cmds.md) | Fetch blocks using `peer channel fetch` cmd. +[Use Events](./docs/events.md) | Get events with block-listener +[Artifacts Generation](docs/artifacts_generation.md) | Will explain the usage of `cryptogen` and `configtxgen` to prepare the artifacts for booting the fabric network. +[couchDB](docs/couchdb_usage.md) | Use couchDB as the state DB. +[kafka](./kafka/README.md) | Use kafka as the ordering backend +[configtxlator](docs/configtxlator.md) | Use configtxlator to convert the configurations +[WIP] [Some verification tests](docs/verification_test.md) | + + +## Acknowledgement +* [Hyperledger Fabric](https://github.com/hyperledger/fabric/) project. +* [Hyperledger Fabric Getting Started](http://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html). diff --git a/hyperledger/1.0.2/base-dev.yaml b/hyperledger/1.0.3/base.yaml similarity index 63% rename from hyperledger/1.0.2/base-dev.yaml rename to hyperledger/1.0.3/base.yaml index c8ad236b..589ba6ff 100644 --- a/hyperledger/1.0.2/base-dev.yaml +++ b/hyperledger/1.0.3/base.yaml @@ -1,50 +1,23 @@ -# This is the development base file to config env and command +# This is the default base file to config env and command # Notice that chaincode is executed inside docker in default net mode # https://github.com/yeasy/docker-compose-files -# Depends on the yeasy/hyperledger-fabric image. +# Depends on the hyperledger/fabric-peer image. version: '2' services: - peer-base: - image: yeasy/hyperledger-fabric:latest + ca-base: + #image: yeasy/hyperledger-fabric-ca:1.0.3 + image: hyperledger/fabric-ca:x86_64-1.0.3 restart: always environment: - #- CORE_PEER_ID=peer0 - - CORE_PEER_ADDRESSAUTODETECT=false - - CORE_LOGGING_LEVEL=DEBUG - - CORE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} - - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=102_default # uncomment this to use specific network - #- CORE_PEER_NETWORKID=dev - - CORE_PEER_GOSSIP_USELEADERELECTION=true - - CORE_PEER_GOSSIP_ORGLEADER=false # this node is the group leader, default to false - - CORE_PEER_PROFILE_ENABLED=false - - CORE_PEER_TLS_ENABLED=true - - CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt - - CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key - - CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt - - CORE_CHIANCODE_LOGGING_LEVEL=DEBUG - - CORE_CHIANCODE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} - expose: - - "7050" # Rest - - "7051" # Grpc - - "7052" # Peer CLI - - "7053" # Peer Event - - "7054" # eCAP - - "7055" # eCAA - - "7056" # tCAP - - "7057" # eCAA - - "7058" # tlsCAP - - "7059" # tlsCAA - volumes: # docker.sock is mapped as the default CORE_VM_ENDPOINT - - /var/run/docker.sock:/var/run/docker.sock - - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric - command: bash -c 'bash /tmp/peer_build.sh; peer node start' + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_TLS_ENABLED=true orderer-base: - image: yeasy/hyperledger-fabric:latest - #image: hyperledger/fabric-orderer:x86_64-1.0.2 + #image: yeasy/hyperledger-fabric-orderer:1.0.3 + image: hyperledger/fabric-orderer:x86_64-1.0.3 restart: always environment: - ORDERER_GENERAL_LOGLEVEL=DEBUG @@ -67,29 +40,83 @@ services: - ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt] expose: - "7050" # + command: orderer start + + peer-base: + image: yeasy/hyperledger-fabric-peer:1.0.3 + #image: hyperledger/fabric-peer:x86_64-1.0.3 + restart: always + environment: + - CORE_PEER_ADDRESSAUTODETECT=false + - CORE_LOGGING_LEVEL=DEBUG + - CORE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} + - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=103_default # uncomment this to use specific network + - CORE_PEER_GOSSIP_USELEADERELECTION=true + - CORE_PEER_GOSSIP_ORGLEADER=false # this node is the group leader, default to false + - CORE_PEER_PROFILE_ENABLED=false + - CORE_PEER_TLS_ENABLED=true + - CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt + - CORE_CHIANCODE_LOGGING_LEVEL=DEBUG + - CORE_CHIANCODE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} + expose: + - "7050" # Rest + - "7051" # Grpc + - "7052" # Peer CLI + - "7053" # Peer Event + - "7054" # eCAP + - "7055" # eCAA + - "7056" # tCAP + - "7057" # eCAA + - "7058" # tlsCAP + - "7059" # tlsCAA volumes: # docker.sock is mapped as the default CORE_VM_ENDPOINT - - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric - #command: bash -c 'bash /tmp/orderer_build.sh; orderer start' # use this if to debug orderer - command: bash -c 'bash /tmp/orderer_build.sh; orderer start' + - /var/run/docker.sock:/var/run/docker.sock + #volumes: + # - /var/run/:/host/var/run/ + command: peer node start cli-base: - image: yeasy/hyperledger-fabric:latest - #image: hyperledger/fabric-tools:x86_64-1.0.2 + #image: yeasy/hyperledger-fabric:1.0.3 + image: hyperledger/fabric-tools:x86_64-1.0.3 restart: always tty: true environment: #- GOPATH=/opt/gopath - CORE_LOGGING_LEVEL=DEBUG + - CORE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} - CORE_PEER_TLS_ENABLED=true # to enable TLS, change to true - ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem - CHANNEL_NAME:="businesschannel" - volumes: - #- ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/ - - ./scripts:/tmp/scripts - - ./e2e_cli/channel-artifacts:/tmp/channel-artifacts - - ./e2e_cli/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml - - ./e2e_cli/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml - - ./e2e_cli/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto - - ./e2e_cli/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer - command: bash -c 'cd /tmp; bash scripts/func.sh; while true; do sleep 20170910; done' \ No newline at end of file + command: bash -c 'cd /tmp; bash scripts/func.sh; while true; do sleep 20170504; done' + + couchdb-base: + #container_name: couchdb0 + image: hyperledger/fabric-couchdb:x86_64-1.0.3 + restart: always + tty: true + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + + zookeeper-base: + image: hyperledger/fabric-zookeeper:x86_64-1.0.3 + restart: always + tty: true + expose: + - '2181' + - '2888' + - '3888' + + kafka-base: + image: hyperledger/fabric-kafka:x86_64-1.0.3 + restart: always + tty: true + environment: + - KAFKA_MESSAGE_MAX_BYTES=1048576 # 1 * 1024 * 1024 B + - KAFKA_REPLICA_FETCH_MAX_BYTES=1048576 # 1 * 1024 * 1024 B + - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false + - KAFKA_LOG_RETENTION_MS=-1 + expose: + - '9092' diff --git a/hyperledger/1.0.3/config_update/add-org.sh b/hyperledger/1.0.3/config_update/add-org.sh new file mode 100644 index 00000000..4ff49904 --- /dev/null +++ b/hyperledger/1.0.3/config_update/add-org.sh @@ -0,0 +1,27 @@ +#! /bin/bash + +echo "replace configtx.yaml and crypto-config.yaml" +cp ./peer/example2/configtx.yaml ./peer +cp ./peer/example2/crypto-config.yaml ./peer + +echo "replace auto-test script " +cp ./peer/example2/new-channel-auto-test-5-peers.sh ./peer/scripts + +echo "replace configtx.yaml" +cp ./peer/configtx.yaml /etc/hyperledger/fabric + +echo "Generate new certificates" + +cryptogen generate --config=./peer/crypto-config.yaml --output ./peer/crypto + +echo "Generate new certificates" +configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./peer/channel-artifacts/orderer_genesis.block + +echo "Create the configuration tx" +CHANNEL_NAME=newchannel +configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./peer/channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} + +echo "Define the anchor peer for Org1 on the channel" +configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./peer/channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP +configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./peer/channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP +configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./peer/channel-artifacts/Org3MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org3MSP \ No newline at end of file diff --git a/hyperledger/1.0.3/config_update/configtxlator_run.sh b/hyperledger/1.0.3/config_update/configtxlator_run.sh new file mode 100644 index 00000000..68c692e4 --- /dev/null +++ b/hyperledger/1.0.3/config_update/configtxlator_run.sh @@ -0,0 +1,13 @@ +#!/bin/bash + + +echo "Start configtxlator service and listen on port 7059" +docker run \ + --rm -it \ + --name configtxlator \ + -p 7059:7059 \ + yeasy/hyperledger-fabric \ + configtxlator start + + +docker rm -f configtxlator diff --git a/hyperledger/1.0.3/docker-compose-1orgs-1peers-dev.yaml b/hyperledger/1.0.3/docker-compose-1orgs-1peers-dev.yaml new file mode 100644 index 00000000..349b8bdc --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-1orgs-1peers-dev.yaml @@ -0,0 +1,82 @@ +# https://github.com/yeasy/docker-compose-files/tree/master/hyperledger +# This compose file will start a Hyperledger Fabric 1.0 MVE, including +# * 1 ca +# * 1 orderer +# * 1 peer +# * cli for testing + +version: '2.0' + +services: + orderer.example.com: # There can be multiple orderers + extends: + file: docker-compose-base-dev.yaml + service: orderer.example.com + + peer0.org1.example.com: + extends: + file: docker-compose-base-dev.yaml + service: peer0.org1.example.com + + cli: + extends: + file: docker-compose-base-dev.yaml + service: cli + +# ZooKeeper services, at least 3 nodes + zookeeper0: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper0 + + zookeeper1: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper1 + + zookeeper2: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper2 + +# Kafka services, at least 4 node to tolerant work with 1 node failure + kafka0: + extends: + file: docker-compose-base-kafka.yaml + service: kafka0 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + extends: + file: docker-compose-base-kafka.yaml + service: kafka1 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + extends: + file: docker-compose-base-kafka.yaml + service: kafka2 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + extends: + file: docker-compose-base-kafka.yaml + service: kafka3 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + +#networks: +# default: +# external: +# name: hyperledger_fabric diff --git a/hyperledger/1.0.3/docker-compose-2orgs-4peers-couchdb.yaml b/hyperledger/1.0.3/docker-compose-2orgs-4peers-couchdb.yaml new file mode 100644 index 00000000..2a72db46 --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-2orgs-4peers-couchdb.yaml @@ -0,0 +1,107 @@ +# github.com/yeasy/docker-compose-files +# fabric network with couchdb as the peer state db. +# including: +# orderer.example.com: orderer node +# peer0.org1.example.com: peer0 node +# peer1.org1.example.com: peer1 node +# peer0.org2.example.com: peer2 node +# peer1.org2.example.com: peer3 node +# couchdb0: couchdb node +# couchdb1: couchdb node +# couchdb2: couchdb node +# couchdb3: couchdb node +# cli: cli node + +version: '2' + +services: + orderer.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: orderer.example.com + + peer0.org1.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer0.org1.example.com + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb0:5984 + depends_on: + - couchdb0 + + peer1.org1.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer1.org1.example.com + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb1:5984 + depends_on: + - couchdb1 + + peer0.org2.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer0.org2.example.com + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb2:5984 + depends_on: + - couchdb2 + + peer1.org2.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer1.org2.example.com + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb3:5984 + depends_on: + - couchdb3 + + couchdb0: + extends: + file: base.yaml + service: couchdb-base + container_name: couchdb0 + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "5984:5984" # this is the restful API addr, can also access fauxton web ui thru http://localhost:5984/_utils/ + + couchdb1: + extends: + file: base.yaml + service: couchdb-base + container_name: couchdb1 + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "6984:5984" + + couchdb2: + extends: + file: base.yaml + service: couchdb-base + container_name: couchdb2 + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "7984:5984" + + couchdb3: + extends: + file: base.yaml + service: couchdb-base + container_name: couchdb3 + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "8984:5984" + + cli: + extends: + file: docker-compose-base-e2e.yaml + service: cli + diff --git a/hyperledger/1.0.3/docker-compose-2orgs-4peers-event.yaml b/hyperledger/1.0.3/docker-compose-2orgs-4peers-event.yaml new file mode 100644 index 00000000..80d5d5e8 --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-2orgs-4peers-event.yaml @@ -0,0 +1,91 @@ +# https://github.com/yeasy/docker-compose-files/tree/master/hyperledger +# This compose file will start a Hyperledger Fabric 1.0 MVE, including +# * 1 ca +# * 1 orderer +# * 4 peers in 2 orgs +# * cli for testing + +version: '2.0' + +services: + ca: + image: yeasy/hyperledger-fabric-ca:1.0.3 + container_name: fabric-ca + hostname: ca + # command: /go/src/github.com/hyperledger/fabric-ca/bin/ca server start -ca testdata/ec.pem -ca-key testdata/ec-key.pem -config testdata/testconfig.json + ports: + - "7054:7054" + command: fabric-ca-server start -b admin:adminpw + + orderer.example.com: # There can be multiple orderers + extends: + file: docker-compose-base-e2e.yaml + service: orderer.example.com + + peer0.org1.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer1.org2.example.com + + cli: + extends: + file: docker-compose-base-e2e.yaml + service: cli + environment: + - CORE_PEER_TLS_ENABLED=false # event-listener doesn't support TLS + + event-listener: + container_name: fabric-event-listener + hostname: fabric-event-listener + image: yeasy/hyperledger-fabric:1.0.3 + tty: true + environment: + - CORE_PEER_ID=fabric-event-listener + - CORE_LOGGING_LEVEL=DEBUG + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_ENABLED=false # event-listener doesn't support TLS + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + volumes: + #- ./e2e_cli/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples + - ./e2e_cli/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ + - ./e2e_cli/channel-artifacts:/opt/gopath/src/github.com/hyperledger/fabric/peer/channel-artifacts + - ./e2e_cli/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + - ./e2e_cli/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + - ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/ + depends_on: + - orderer.example.com + - peer0.org1.example.com + - peer1.org1.example.com + - peer0.org2.example.com + - peer1.org2.example.com + working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer + #command: bash -c 'block-listener -events-address=peer0.org1.example.com:7053 -events-mspdir=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/ -events-mspid=Org1MSP' + command: bash -c 'while true; do sleep 20170504; done' + +#networks: +# default: +# external: +# name: hyperledger_fabric +#networks: +# default: +# external: +# name: hyperledger_fabric diff --git a/hyperledger/1.0.3/docker-compose-2orgs-4peers-kafka.yaml b/hyperledger/1.0.3/docker-compose-2orgs-4peers-kafka.yaml new file mode 100644 index 00000000..bbbf4f10 --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-2orgs-4peers-kafka.yaml @@ -0,0 +1,109 @@ +# https://github.com/yeasy/docker-compose-files/tree/master/hyperledger +# This compose file will start a Hyperledger Fabric 1.0 MVE, including +# * 2 ca (not in use now) +# * 1 orderer +# * 4 peers in 2 orgs +# * cli for testing + +version: '2.0' + +services: +# ca.org1.example.com: +# extends: +# file: docker-compose-base-kafka.yaml +# service: ca.org1.example.com + +# ca.org2.example.com: +# extends: +# file: docker-compose-base-kafka.yaml +# service: ca.org2.example.com + + cli: + extends: + file: docker-compose-base-kafka.yaml + service: cli + + orderer.example.com: # There can be multiple orderers + extends: + file: docker-compose-base-kafka.yaml + service: orderer.example.com + + peer0.org1.example.com: + extends: + file: docker-compose-base-kafka.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + extends: + file: docker-compose-base-kafka.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + extends: + file: docker-compose-base-kafka.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + extends: + file: docker-compose-base-kafka.yaml + service: peer1.org2.example.com + +# ZooKeeper services, at least 3 nodes + zookeeper0: + extends: + file: docker-compose-base-kafka.yaml + file: docker-compose-base-kafka.yaml + service: zookeeper0 + + zookeeper1: + extends: + file: docker-compose-base-kafka.yaml + file: docker-compose-base-kafka.yaml + service: zookeeper1 + + zookeeper2: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper2 + +# Kafka services, at least 4 node to tolerant work with 1 node failure + kafka0: + extends: + file: docker-compose-base-kafka.yaml + service: kafka0 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + extends: + file: docker-compose-base-kafka.yaml + service: kafka1 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + extends: + file: docker-compose-base-kafka.yaml + service: kafka2 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + extends: + file: docker-compose-base-kafka.yaml + service: kafka3 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + +#networks: +# default: +# external: +# name: hyperledger_fabric diff --git a/hyperledger/1.0.3/docker-compose-2orgs-4peers.yaml b/hyperledger/1.0.3/docker-compose-2orgs-4peers.yaml new file mode 100644 index 00000000..52b15061 --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-2orgs-4peers.yaml @@ -0,0 +1,54 @@ +# https://github.com/yeasy/docker-compose-files/tree/master/hyperledger +# This compose file will start a Hyperledger Fabric 1.0 MVE, including +# * 2 ca (not in use now) +# * 1 orderer +# * 4 peers in 2 orgs +# * cli for testing + +version: '2.0' + +services: +# ca.org1.example.com: +# extends: +# file: docker-compose-base-e2e.yaml +# service: ca.org1.example.com + +# ca.org2.example.com: +# extends: +# file: docker-compose-base-e2e.yaml +# service: ca.org2.example.com + + cli: + extends: + file: docker-compose-base-e2e.yaml + service: cli + + orderer.example.com: # There can be multiple orderers + extends: + file: docker-compose-base-e2e.yaml + service: orderer.example.com + + peer0.org1.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + extends: + file: docker-compose-base-e2e.yaml + service: peer1.org2.example.com + +#networks: +# default: +# external: +# name: hyperledger_fabric diff --git a/hyperledger/1.0.3/docker-compose-base-dev.yaml b/hyperledger/1.0.3/docker-compose-base-dev.yaml new file mode 100644 index 00000000..6789a381 --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-base-dev.yaml @@ -0,0 +1,96 @@ +# This is the development compose file to config env and command +# Notice that chaincode is executed inside docker in default net mode +# https://github.com/yeasy/docker-compose-files + +# Depends on the yeasy/hyperledger-fabric image. + +version: '2' + +services: + orderer.example.com: # There can be multiple orderers + extends: + file: base.yaml + service: orderer-base + image: yeasy/hyperledger-fabric:1.0.3 + container_name: orderer.example.com + hostname: orderer.example.com + ports: + - "7050:7050" + environment: + # Kafka related configurations + - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s + - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s + - ORDERER_KAFKA_VERBOSE=true + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric + # for e2e_cli case + #- ./e2e_cli/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + #- ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + #- ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + # for kafka case + - ./kafka/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + #command: bash -c 'bash /tmp/orderer_build.sh; orderer start' # use this if to debug orderer + command: bash -c 'orderer start' # use this if to debug orderer + + peer0.org1.example.com: + extends: + file: base.yaml + service: peer-base + image: yeasy/hyperledger-fabric:latest + container_name: peer0.org1.example.com + hostname: peer0.org1.example.com + environment: + - CORE_PEER_ID=peer0.org1.example.com + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org1.example.com:7052 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric + # e2e mode configuration + #- ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + #- ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + # kafka mode configuration + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 7051:7051 + - 7052:7052 + - 7053:7053 + #command: bash -c 'bash /tmp/peer_build.sh; peer node start' + command: bash -c 'peer node start' + + cli: + extends: + file: base.yaml + service: cli-base + image: yeasy/hyperledger-fabric:1.0.3 + container_name: fabric-cli + hostname: fabric-cli + tty: true + environment: + - CORE_PEER_ID=fabric-cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/opt/gopath/src/github.com/hyperledger/fabric + - /tmp/:/tmp/ + - ./scripts:/tmp/scripts + # e2e mode configuration + #- ./e2e_cli/channel-artifacts:/tmp/channel-artifacts + #- ./e2e_cli/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + #- ./e2e_cli/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + #- ./e2e_cli/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + #- ./e2e_cli/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples + # kafka mode configuration + - ./kafka/channel-artifacts:/tmp/channel-artifacts + - ./kafka/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + - ./kafka/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + - ./kafka/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + - ./kafka/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples diff --git a/hyperledger/1.0.3/docker-compose-base-e2e.yaml b/hyperledger/1.0.3/docker-compose-base-e2e.yaml new file mode 100644 index 00000000..9997e880 --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-base-e2e.yaml @@ -0,0 +1,169 @@ +# Base compose files for: + +# ca.org1.example.com +# ca.org2.example.com +# orderer.example.com +# peer0.org1.example.com +# peer1.org1.example.com +# peer0.org2.example.com +# peer1.org2.example.com +# cli + +version: '2' # v3 does not support 'extends' yet + +services: + ca.org1.example.com: + extends: + file: base.yaml + service: ca-base + container_name: ca.org1.example.com + hostname: ca.org1.example.com + environment: + - FABRIC_CA_SERVER_CA_NAME=ca-org1 + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk + ports: + - "7054:7054" + volumes: + - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk -b admin:adminpw -d' + + ca.org2.example.com: + extends: + file: base.yaml + service: ca-base + container_name: ca.org2.example.com + hostname: ca.org2.example.com + environment: + - FABRIC_CA_SERVER_CA_NAME=ca-org2 + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk + ports: + - "8054:7054" + volumes: + - ./e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk -b admin:adminpw -d' + + orderer.example.com: # There can be multiple orderers + extends: + file: base.yaml + service: orderer-base + container_name: orderer.example.com + hostname: orderer.example.com + ports: + - "7050:7050" + volumes: + - ./e2e_cli/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + - ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + - ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + command: orderer start + + cli: + extends: + file: base.yaml + service: cli-base + container_name: fabric-cli + hostname: fabric-cli + tty: true + environment: + #- GOPATH=/opt/gopath + - CORE_PEER_ID=fabric-cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + volumes: + #- ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/ + - ./scripts:/tmp/scripts + - ./e2e_cli/channel-artifacts:/tmp/channel-artifacts + - ./e2e_cli/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + - ./e2e_cli/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + - ./e2e_cli/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + - ./e2e_cli/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples + +## following are peer nodes ## + + peer0.org1.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer0.org1.example.com + hostname: peer0.org1.example.com + environment: + - CORE_PEER_ID=peer0.org1.example.com + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org1.example.com:7052 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 7051:7051 + - 7052:7052 + - 7053:7053 + + peer1.org1.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer1.org1.example.com + hostname: peer1.org1.example.com + environment: + - CORE_PEER_ID=peer1.org1.example.com + - CORE_PEER_ADDRESS=peer1.org1.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer1.org1.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 8051:7051 + - 8052:7052 + - 8053:7053 + + peer0.org2.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer0.org2.example.com + hostname: peer0.org2.example.com + environment: + - CORE_PEER_ID=peer0.org2.example.com + - CORE_PEER_ADDRESS=peer0.org2.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org2.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org2.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org2.example.com:7051 + - CORE_PEER_LOCALMSPID=Org2MSP + volumes: + - ./e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp:/etc/hyperledger/fabric/msp + - ./e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 9051:7051 + - 9052:7052 + - 9053:7053 + + peer1.org2.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer1.org2.example.com + hostname: peer1.org2.example.com + environment: + - CORE_PEER_ID=peer1.org2.example.com + - CORE_PEER_ADDRESS=peer1.org2.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org2.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer1.org2.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org2.example.com:7051 + - CORE_PEER_LOCALMSPID=Org2MSP + volumes: + - ./e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp:/etc/hyperledger/fabric/msp + - ./e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 10051:7051 + - 10052:7052 + - 10053:7053 \ No newline at end of file diff --git a/hyperledger/1.0.3/docker-compose-base-kafka.yaml b/hyperledger/1.0.3/docker-compose-base-kafka.yaml new file mode 100644 index 00000000..22d8cec8 --- /dev/null +++ b/hyperledger/1.0.3/docker-compose-base-kafka.yaml @@ -0,0 +1,259 @@ +# Kafka enabled fabric network with: + +# ca.org1.example.com +# ca.org2.example.com +# orderer.example.com +# peer0.org1.example.com +# peer1.org1.example.com +# peer0.org2.example.com +# peer1.org2.example.com +# 3 zookeeper nodes +# 4 kafka nodes +# cli + +version: '2' # v3 does not support 'extends' yet + +services: + ca.org1.example.com: + #image: yeasy/hyperledger-fabric-ca:1.0.3 + #image: hyperledger/fabric-ca:x86_64-1.0.3 + extends: + file: base.yaml + service: ca-base + container_name: ca.org1.example.com + hostname: ca.org1.example.com + environment: + - FABRIC_CA_SERVER_CA_NAME=ca-org1 + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk + ports: + - "7054:7054" + volumes: + - ./kafka/crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk -b admin:adminpw -d' + + ca.org2.example.com: + #image: yeasy/hyperledger-fabric-ca:1.0.3 + #image: hyperledger/fabric-ca:x86_64-1.0.3 + extends: + file: base.yaml + service: ca-base + container_name: ca.org2.example.com + hostname: ca.org2.example.com + environment: + - FABRIC_CA_SERVER_CA_NAME=ca-org2 + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk + ports: + - "8054:7054" + volumes: + - ./kafka/crypto-config/peerOrganizations/org2.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk -b admin:adminpw -d' + + orderer.example.com: # There can be multiple orderers + extends: + file: base.yaml + service: orderer-base + container_name: orderer.example.com + hostname: orderer.example.com + ports: + - "7050:7050" + environment: + # Kafka related configurations + - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s + - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s + - ORDERER_KAFKA_VERBOSE=true + volumes: + - ./kafka/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + command: orderer start + + cli: + extends: + file: base.yaml + service: cli-base + container_name: fabric-cli + hostname: fabric-cli + tty: true + environment: + - CORE_PEER_ID=fabric-cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + volumes: + - ./scripts:/tmp/scripts + - ./kafka/channel-artifacts:/tmp/channel-artifacts + - ./kafka/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + - ./kafka/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + - ./kafka/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + - ./kafka/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples + +## following are peer nodes ## + + peer0.org1.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer0.org1.example.com + hostname: peer0.org1.example.com + environment: + - CORE_PEER_ID=peer0.org1.example.com + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org1.example.com:7052 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 7051:7051 + - 7052:7052 + - 7053:7053 + + peer1.org1.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer1.org1.example.com + hostname: peer1.org1.example.com + environment: + - CORE_PEER_ID=peer1.org1.example.com + - CORE_PEER_ADDRESS=peer1.org1.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer1.org1.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 8051:7051 + - 8052:7052 + - 8053:7053 + + peer0.org2.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer0.org2.example.com + hostname: peer0.org2.example.com + environment: + - CORE_PEER_ID=peer0.org2.example.com + - CORE_PEER_ADDRESS=peer0.org2.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org2.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org2.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org2.example.com:7051 + - CORE_PEER_LOCALMSPID=Org2MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 9051:7051 + - 9052:7052 + - 9053:7053 + + peer1.org2.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer1.org2.example.com + hostname: peer1.org2.example.com + environment: + - CORE_PEER_ID=peer1.org2.example.com + - CORE_PEER_ADDRESS=peer1.org2.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org2.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer1.org2.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org2.example.com:7051 + - CORE_PEER_LOCALMSPID=Org2MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 10051:7051 + - 10052:7052 + - 10053:7053 + + +# ZooKeeper services, at least 3 nodes + zookeeper0: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper0 + hostname: zookeeper0 + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper1 + hostname: zookeeper1 + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper2 + hostname: zookeeper2 + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + +# Kafka services, at least 4 node to tolerant work with 1 node failure + kafka0: + extends: + file: base.yaml + service: kafka-base + container_name: kafka0 + hostname: kafka0 + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka1: + extends: + file: base.yaml + service: kafka-base + container_name: kafka1 + hostname: kafka1 + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka2: + extends: + file: base.yaml + service: kafka-base + container_name: kafka2 + hostname: kafka2 + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka3: + extends: + file: base.yaml + service: kafka-base + container_name: kafka3 + hostname: kafka3 + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 diff --git a/hyperledger/1.0.3/docs/artifacts_generation.md b/hyperledger/1.0.3/docs/artifacts_generation.md new file mode 100644 index 00000000..59345df4 --- /dev/null +++ b/hyperledger/1.0.3/docs/artifacts_generation.md @@ -0,0 +1,276 @@ +## Usage of cryptogen and configtxgen + +To bootup a fabric network, we need: + +* crypto_config: crypto keys/certs for all organizations, see `e2e_cli/crypto-config` +* orderer_genesis.block: genesis block to bootup orderer, see `e2e_cli/channel-artifacts` +* channel.tx: transaction to create an application channel, see `e2e_cli/channel-artifacts` +* Org1MSPanchors.tx, Org2MSPanchors.tx: Transaction to update anchor config in Org1 and Org2, see `e2e_cli/channel-artifacts` + +### Generate crypto-config using cryptogen + +```bash +$ cryptogen generate --config=/etc/hyperledger/fabric/crypto-config.yaml --output ./crypto-config +``` +cryptogen will read configuration from `crypto-config.yaml`, by default it was put under `/etc/hyperledger/fabric/`. + +Then put the generated `crypto-config` under `/etc/hyperledger/fabric/`. + + +### Generate blocks/txs using [configtxgen](http://hyperledger-fabric.readthedocs.io/en/latest/configtxgen.html?highlight=crypto#) + +By default, configtxgen will read configuration from `/etc/hyperledger/fabric/configtx.yaml`, Please customize the configtx.yaml file before running. + +#### Create orderer genesis block + +```bash +$ configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/orderer.genesis.block +``` + +#### Create channel transaction artifact + +```bash +$ CHANNEL_NAME=businesschannel +$ configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} +``` + +`channel.tx` is used for creating a new application channel `businesschannel` + +#### Update anchor peer for Organizations on the channel + +Choose peer peer0.org1.example.com as org1's anchor peer, and peer0.org2.example.com as org2's anchor peer. + +```bash +$ configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP +``` + +```bash +$ configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP +``` + +> more details refer to Example2 + +### Examples + +#### Example1: how to add and re-join a new channel + +This example will explain how to add a new channel without change basic topology that desigend in configtx.yaml and crypto-config.yaml. +start a fabric network with `docker-compose-1peer.yaml`, and into container fabric-cli + +* 1 Regenerate `channel.tx` using with new channel name + +Create channel configuration for the to-be-created `testchannel`. + +```bash +$ root@cli: CHANNEL_NAME=testchannel +$ root@cli: configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} +``` + +* 2 regenerate anchor peer configuratoin for Organizations + +```bash +$ root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP + +$ root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP +``` + +* (optional)execute auto-test script + + You can skip this step, this will quickly check whether the network works, and also you can verify manually. +```bash +$ root@cli: bash ./peer/scripts/test_1peer.sh testchannel +``` + +* 3 Create new channel + +```bash +$ root@cli: peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/channel.tx +``` + +check whether genrated new block `testchannel.block` + +```bash +root@cli: ls testchannel.block +testchannel.block +``` + +* 4 Join new channel + + Join peer0.org1.example.com to the new channel + +```bash +$ root@cli: peer channel join -b ${CHANNEL_NAME}.block -o orderer.example.com:7050 + +Peer joined the channel! +``` + +check whether success + +```bash +$ root@cli: peer channel list + +Channels peers has joined to: + testchannel +``` + +* 5 Update anchor peer + +```bash +$ root@cli: peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/Org1MSPanchors.tx +``` + +* 6 Install + +```bash +peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 +``` + +* 7 Instantiate + +```bash +root@cli: peer chaincode instantiate -o orderer.example.com:7050 -C ${CHANNEL_NAME} -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member')" +``` + +* 8 Query + +```bash +root@cli: peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +The output should be: + +```bash +Query Result: 100 +UTC [main] main -> INFO 008 Exiting..... +``` + + + +#### Example2: how to add an organization or peer + +This example will explain how to add a new org or peer with changed the basic topology that desigend in configtx.yaml and crypto-config.yaml. + +##### all-in-one + +We privide some instance in current directory, in this case we add a new organization `Org3` and new peer `peer0.org3.example.com`. + +* 1 Generate necessary config and certs + +```bash +$ sudo docker-compose -f docker-compose-2orgs-4peers-event.yaml up +$ docker exec -it fabric-cli bash +$ root@cli: ./scripts/add-org.sh +``` + +> ** notice: For docker-compose-file clean, we did not mount these in the container, you need to mount yourself. + +* 2 Re-setup network + +```bash +echo "clean containers...." +docker rm -f `docker ps -aq` + +echo "clean images ..." +docker rmi -f `docker images|grep mycc-1.0|awk '{print $3}'` +``` + +```bash +$ sudo docker-compose -f docker-compose-2orgs-4peers-event.yaml up +``` + +* 3 execute auto-test + + Throuth this script to test whether the network works. +```bash +$ root@cli: bash ./scripts/test-5-peers.sh newchannel +``` + +The final output may look like following + +```bash +===================== Query on PEER4 on channel 'newchannel' is successful ===================== + +===================== All GOOD, End-2-End execution completed ===================== + +``` + + +##### manually + +* 1 Modify config + + modify configtx.yaml, crypto-cnfig.yaml and docker-compose files to adapt new change. and replace old file. + +* 2 Bootstrap network with `docker-compose-2orgs-4peers-event.yaml` + +```bash +$ docker-compose -f docker-compose-2orgs-4peers-event.yaml up +``` + +> notes:You may encounter some errors at startup and some peers can't start up, It's innocuous, ignore it, +because we will restart later, and now we just use tools in cli container. + + +* 3 Generate new certificates + +```bash +$ cryptogen generate --config=/etc/hyperledger/fabric/crypto-config.yaml --output ./crypto +``` + +* 4 Create the genesis block + +```bash +root@cli: configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/orderer_genesis.block +``` + +* 5 Create the configuration tx + +```bash +root@cli: CHANNEL_NAME=newchannel +root@cli: configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} +``` +`channel.tx` is used for generating new channel `newchannel` + +* 6 Define the anchor peer for Orgs on the channel + +```bash +root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP + +root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP + +root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org3MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org3MSP +``` + +* 7 Restart network + + As we have changed the configtx.yaml and regenerate `orderer_genesis.block`, + we'd better restart orderering service or all the service. + now we clean all the old service and boot a new network. + +```bash +echo "clean containers...." +docker rm -f `docker ps -aq` + +echo "clean images ..." +docker rmi -f `docker images|grep mycc-1.0|awk '{print $3}'` +``` + +```bash +$ sudo docker-compose -f docker-compose-2orgs.yml up +``` + +* 8 Execute auto-test script + + Until this step, we complete the network re-setup, and then we will test whether it works. + +```bash +$ root@cli: bash ./scripts/test-5-peers.sh +``` + +If the network works well. the output may looklike: + +```bash + +===================== All GOOD, End-2-End execution completed ===================== + +``` diff --git a/hyperledger/1.0.3/docs/chaincode_test.md b/hyperledger/1.0.3/docs/chaincode_test.md new file mode 100644 index 00000000..985d6fd6 --- /dev/null +++ b/hyperledger/1.0.3/docs/chaincode_test.md @@ -0,0 +1,35 @@ +## Chaincode Tests + +All the test command needs to be executed inside the `fabric-cli` container. + +Use the following command to login into the container fabric-cli + +```bash +$ docker exec -it fabric-cli bash +``` + +After finish the chaincode tests, you can log-out by `exit`. + + +### Chaincode Operations + +You can execute some chaincode operations, such as `query` or `invoke`, +and you can modify the parameters and execute this script repeatedly. + +```bash +$ bash ./scripts/test_4peers.sh #execute in container fabric-cli +``` + +You should see the following output: + +```bash +UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP +UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity +UTC [msp/identity] Sign -> DEBU 006 Sign: plaintext: 0AB7070A6D08031A0C08C3EAE9C90510...6D7963631A0A0A0571756572790A0161 +UTC [msp/identity] Sign -> DEBU 007 Sign: digest: FA308EF50C4812BADB60D58CE15C1CF41089EFB93B27D46885D92C92F55E98A0 +Query Result: 80 +UTC [main] main -> INFO 008 Exiting..... +===================== Query on PEER3 on channel 'businesschannel' is successful ===================== + +===================== All GOOD, End-2-End execution completed ===================== +``` diff --git a/hyperledger/1.0.3/docs/configtxlator.md b/hyperledger/1.0.3/docs/configtxlator.md new file mode 100644 index 00000000..c9617b01 --- /dev/null +++ b/hyperledger/1.0.3/docs/configtxlator.md @@ -0,0 +1,195 @@ +## Start the configtxlator + +First start a fabric network with docker-compose-2orgs-4peers.yaml, and make sure the network can work, +then we will use `configtxlator` to start an http server listening on the designated port and process request. + +```bash +$ docker exec -it fab-cli bash +$ configtxlator start +UTC [configtxlator] startServer -> INFO 001 Serving HTTP requests on 0.0.0.0:7059 + +``` +This logs appears, indicating startup successful. + +## Function + +### translation + +#### /protolator/decode/{msgName} + +Any of the configuration related protos, including `common.Block`, `common.Envelope`, `common.ConfigEnvelope`, +`common.ConfigUpdateEnvelope`, `common.Configuration`, and `common.ConfigUpdate` are valid targets for these URLs. +this will produces human readable version of config, such as translate to json + +Execute following command in new terminal, +```bash +$ docker exec -it fabric-cli bash +$ cd channel-artifacts +$ curl -X POST --data-binary @businesschannel_0.block http://127.0.0.1:7059/protolator/decode/common.Block > businesschannel_0.json +``` + +for channel.tx, use following msgType. + +```bash +curl -X POST --data-binary @channel.tx http://127.0.0.1:7059/protolator/decode/common.Envelope > channel.json +``` + +#### /protolator/encode/{msgName} + +And we can transform json to proto. +```bash +$ curl -X POST --data-binary @businesschannel_0.json http://127.0.0.1:7059/protolator/encode/common.Block > businesschannel_0.block +``` + +### Re-Configuration example + +1. here we will introduce how to re-configuration config.block, first fetch the block and translate it to json. + +```bash +$ ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +$ peer channel fetch config -o orderer.example.com:7050 -c businesschannel --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA|xargs mv true config_block.pb + +$ peer channel fetch config config_block.pb -o orderer.example.com:7050 -c businesschannel # with no-tls + +$ curl -X POST --data-binary @config_block.pb http://127.0.0.1:7059/protolator/decode/common.Block > config_block.json +``` + +2. Extract the config section from the block: + +```bash +$ apt-get install jq +$ jq .data.data[0].payload.data.config config_block.json > config.json +``` + +3. edit the config.json, set the batch size to 11, and saving it as update_config.json + +```bash +4. $ jq ".channel_group.groups.Orderer.values.BatchSize.value.max_message_count = 11" config.json > updated_config.json +``` + +5. Re-encode both the original config, and the updated config into proto: + +```bash +$ curl -X POST --data-binary @config.json http://127.0.0.1:7059/protolator/encode/common.Config > config.pb +$ curl -X POST --data-binary @updated_config.json http://127.0.0.1:7059/protolator/encode/common.Config > updated_config.pb +``` + +6. send them to the configtxlator service to compute the config update which transitions between the two. + +```bash +$ curl -X POST -F original=@config.pb -F updated=@updated_config.pb http://127.0.0.1:7059/configtxlator/compute/update-from-configs -F channel=businesschannel > config_update.pb +``` + +7. we decode the ConfigUpdate so that we may work with it as text: +```bash +$ curl -X POST --data-binary @config_update.pb http://127.0.0.1:7059/protolator/decode/common.ConfigUpdate > config_update.json +``` + +8. Then, we wrap it in an envelope message: + +```bash +$ echo '{"payload":{"header":{"channel_header":{"channel_id":"businesschannel", "type":2}},"data":{"config_update":'$(cat config_update.json)'}}}' > config_update_as_envelope.json +``` + +9. Next, convert it back into the proto form of a full fledged config transaction: + +```bash +$ curl -X POST --data-binary @config_update_as_envelope.json http://127.0.0.1:7059/protolator/encode/common.Envelope > config_update_as_envelope.pb +```` + +10. Finally, submit the config update transaction to ordering to perform a config update. + +```bash +$ CORE_PEER_LOCALMSPID=OrdererMSP +$ CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/users/Admin@example.com/msp + +$ peer channel update -o orderer.example.com:7050 -c businesschannel -f config_update_as_envelope.pb --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA +$ peer channel update -f config_update_as_envelope.pb -o orderer.example.com:7050 -c businesschannel # with no-tls +``` + +### [WIP]Add an organization + +1. Execute `configtxgen` to generate `channel.tx` + +```bash +$ ORDERER_GENERAL_GENESISPROFILE=SampleDevModSolo #Change this env before start ordering service. +``` + +```bash +$ docker exec -it fabric-cli bash +$ configtxgen -profile SampleDevModSolo -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID businesschannel +``` + +2. create channel use channel.tx, then we will get block businesschannel.block + +```bash +$ peer channel create -o orderer.example.com:7050 -c businesschannel -f ./channel-artifacts/channel.tx +``` + +3. Start configtxlator + +```bash +$ docker exec -it fabric-cli bash +$ configtxlator start +``` + +4. In a new window, decoding current genesis block + +```bash +$ curl -X POST --data-binary @businesschannel.block http://127.0.0.1:7059/protolator/decode/common.Block > businesschannel.json +``` + +5. Extract current config + +```bash +jq .data.data[0].payload.data.config businesschannel.json > config.json +``` + +6. generating new config + +```bash +jq '. * {"channel_group":{"groups":{"Application":{"groups":{"ExampleOrg": .channel_group.groups.Application.groups.SampleOrg}}}}}' config.json | +jq '.channel_group.groups.Application.groups.ExampleOrg.values.MSP.value.config.name = "ExampleOrg"' > update_config.json +``` + +7. Translate config.json and update_config.json to proto + +```bash +curl -X POST --data-binary @config.json http://127.0.0.1:7059/protolator/encode/common.Config > config.pb +curl -X POST --data-binary @update_config.json http://127.0.0.1:7059/protolator/encode/common.Config > update_config.pb +``` + +8. Computing config update + +```bash +curl -X POST -F original=@config.pb -F updated=@update_config.pb http://127.0.0.1:7059/configtxlator/compute/update-from-configs -F channel=businesschannel > config_update.pb +``` + +9. Decoding config update + +```bash +curl -X POST --data-binary @config_update.pb http://127.0.0.1:7059/protolator/decode/common.ConfigUpdate > config_update.json +``` + +10. Generating config update envelope + +```bash +echo '{"payload":{"header":{"channel_header":{"channel_id":"businesschannel", "type":2}},"data":{"config_update":'$(cat config_update.json)'}}}' > config_update_in_envelope.json +``` + +11. Next, convert it back into the proto form of a full fledged config transaction: + +```bash +curl -X POST --data-binary @config_update_in_envelope.json http://127.0.0.1:7059/protolator/encode/common.Envelope > config_update_in_envelope.pb +``` + +12. Sending config update to channel + +```bash +$ CORE_PEER_LOCALMSPID=OrdererMSP +$ CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/users/Admin@example.com/msp + +$ peer channel update -o orderer.example.com:7050 -c businesschannel -f config_update_in_envelope.pb --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA +$ (optional)peer channel update -f config_update_as_envelope.pb -o orderer.example.com:7050 -c businesschannel # with no-tls +``` \ No newline at end of file diff --git a/hyperledger/1.0.3/docs/couchdb_usage.md b/hyperledger/1.0.3/docs/couchdb_usage.md new file mode 100644 index 00000000..8708d9f9 --- /dev/null +++ b/hyperledger/1.0.3/docs/couchdb_usage.md @@ -0,0 +1,32 @@ + +### Start network with CouchDB + +```bash +docker-compose -f docker-compose-2orgs-4peers.yaml -f docker-compose-2orgs-4peers-couchdb.yaml up +``` + +To use CouchDB instead of the default database leveldb, The same chaincode functions are available with CouchDB, however, there is the +added ability to perform rich and complex queries against the state database +data content contingent upon the chaincode data being modeled as JSON + +### Test chaincode_example02 + +```bash +docker exec -it fabric-cli bash + +bash ./scripts/initialize.sh + +bash ./scripts/test_4peers.sh +``` + +You can use chaincode_example02 chaincode against the CouchDB state database +using the steps outlined above, however in order to exercise the CouchDB query +capabilities you will need to use a chaincode that has data modeled as JSON. +(e.g. marbles02) + +### [WIP] [Test example marbles02](https://github.com/hyperledger/fabric/blob/master/examples/chaincode/go/marbles02/marbles_chaincode.go) + +### Interact with CouchDb by WEB-UI + +The browser is `http://localhost:5984/_utils`, then you will find a database named `businesschannel` + \ No newline at end of file diff --git a/hyperledger/1.0.3/docs/detailed_steps.md b/hyperledger/1.0.3/docs/detailed_steps.md new file mode 100644 index 00000000..1448f355 --- /dev/null +++ b/hyperledger/1.0.3/docs/detailed_steps.md @@ -0,0 +1,122 @@ +## Use default channel + +By default, all the peer will join the default chain of `testchainid`. + +```bash +$ docker exec -it fabric-cli bash +$ peer channel list +Channels peers has joined to: + testchainid +UTC [main] main -> INFO 001 Exiting..... +``` + +After the cluster is synced successfully, you can validate by install/instantiate, invoking or querying chaincode from the container or from the host. + +### install&instantiate +Use `docker exec -it fabric-cli bash` to open a bash inside container `fabric-cli`, which will accept our chaincode testing commands of `install&instantiate`, `invoke` and `query`. + +Inside the container, run the following command to install a new chaincode of the example02. The chaincode will initialize two accounts: `a` and `b`, with value of `100` and `200`. + +```bash +$ peer chaincode install -v 1.0 -n test_cc -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 +``` +This will take a while, and the result may look like following. + +```bash +[golang-platform] writeGopathSrc -> INFO 001 rootDirectory = /go/src +container] WriteFolderToTarPackage -> INFO 002 rootDirectory = /go/src +[main] main -> INFO 003 Exiting..... +``` + +Then instantiate the chaincode test_cc on defaule channel testchainid. +```bash +$ peer chaincode instantiate -v 1.0 -n test_cc -c '{"Args":["init","a","100","b","200"]}' -o orderer0:7050 +``` + +This will take a while, and the result may look like following: + +```bash +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 001 Using default escc +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default vscc +UTC [main] main -> INFO 003 Exiting..... +``` + +There should be no error in the return log, and in the peer nodes's output. +Wait several seconds till the deploy is finished. + +If the `peer chaincode install` and `peer chaincode instantiate` commands are executed successfully, there will generate a new chaincode container, besides the 4 existing one, name like `dev-peer0-test_cc-1.0`. +```bash +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +cf7bf529f214 dev-peer0-test_cc-1.0 "chaincode -peer.a..." 58 seconds ago Up 58 seconds dev-peer0-test_cc-1.0 +44b6870b0802 hyperledger/fabric-peer "bash -c 'while tr..." 14 minutes ago Up 14 minutes 7050-7059/tcp fabric-cli +ed2c4927c0ed hyperledger/fabric-peer "peer node start -..." 14 minutes ago Up 14 minutes 7050/tcp, 7052-7059/tcp, 0.0.0.0:7051->7051/tcp fabric-peer0 +af5ba8f213bb hyperledger/fabric-orderer "orderer" 14 minutes ago Up 14 minutes 0.0.0.0:7050->7050/tcp fabric-orderer0 +bbe31b98445f hyperledger/fabric-ca "fabric-ca-server ..." 14 minutes ago Up 14 minutes 7054/tcp, 0.0.0.0:7054->7054/tcp fabric-ca + +``` + +And will also generate a new chaincode image, name like `dev-peer0-test_cc-1.0`. +```bash +$ docker images +REPOSITORY TAG IMAGE ID CREATED SIZE +dev-peer0-test_cc-1.0 latest 84e5422eead5 About a minute ago 176 MB +... +``` + +### Query +Inside the container, query the existing value of `a` and `b`. + +*Notice that the query method can be called by invoke a transaction.* + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","a"]}' +``` + +The final output may look like the following, with a payload value of `100`. + +```bash +Query Result: 100 +[main] main -> INFO 001 Exiting..... +``` + +Query the value of `b` + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","b"]}' -o orderer0:7050 +``` + +The final output may look like the following, with a payload value of `200`. + +```bash +Query Result: 200 +[main] main -> INFO 001 Exiting..... +``` + + +### Invoke +Inside the container, invoke a transaction to transfer `10` from `a` to `b`. + +```bash +$ peer chaincode invoke -n test_cc -c '{"Args":["invoke","a","b","10"]}' -o orderer0:7050 +``` + +The final result may look like the following, the response should be `OK`. + +```bash +[chaincodeCmd] chaincodeInvokeOrQuery -> INFO 001 Invoke result: version:1 response: payload:"\n \215\263\337\322u\323?\242t$s\035l\270Ta\270\270+l6\322X\346\365k\020\215Phy\260\022C\n<\002\004lccc\001\007test_cc\004\001\001\001\001\000\000\007test_cc\002\001a\004\001\001\001\001\001b\004\001\001\001\001\002\001a\000\00290\001b\000\003210\000\032\003\010\310\001" endorsement: +[main] main -> INFO 002 Exiting..... +``` + +### Query +Query again the existing value of `a` and `b`. + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","a"]}' +``` +The new value of `a` should be 90. + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","b"]}' +``` +The new value of `b` should be 210. \ No newline at end of file diff --git a/hyperledger/1.0.3/docs/docker-compose-1peer-usage.md b/hyperledger/1.0.3/docs/docker-compose-1peer-usage.md new file mode 100644 index 00000000..c73b58ac --- /dev/null +++ b/hyperledger/1.0.3/docs/docker-compose-1peer-usage.md @@ -0,0 +1,221 @@ +### Explain 1-peer usage step by step + +This section will show you how to operate the chaincode in detail. +first start fabric network with `docker-compose-1peer.yaml`, and we will obtain the basic environmet that can be operated. + +```bash +$ docker-compose -f docker-compose-1peer.yaml up +``` + +There will be 4 containers running successfully. + +```bash +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +6688f290a9b9 hyperledger/fabric-peer "bash -c 'while tr..." About a minute ago Up About a minute 7050-7059/tcp fabric-cli +6ddbbd972ac3 hyperledger/fabric-peer "peer node start -..." About a minute ago Up About a minute 7050/tcp, 0.0.0.0:7051->7051/tcp, 7052/tcp, 7054-7059/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com +4afc759e0dc9 hyperledger/fabric-orderer "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com +bea1154c7162 hyperledger/fabric-ca "fabric-ca-server ..." About a minute ago Up About a minute 7054/tcp, 0.0.0.0:7054->7054/tcp fabric-ca +``` + + +#### Create artifacts + +**This step can be safely skipped.**. + +As we already put the needed artifacts `orderer.genesis.block` and `channel.tx` under `e2e_cli/channel-artifacts/`. + +Detailed steps in [GenerateArtifacts](artifacts_generation.md) explains the creation of `orderer.genesis.block` (needed by orderering service) and `channel.tx` (needed by cli to create new channel) and crypto related configuration files. + +#### Create new channel + +Create a new channel named `mychannel` with the existing `channel.tx` file. + +```bash +$ docker exec -it fabric-cli bash +``` +Into the container and execute following commands: + +```bash +$ CHANNEL_NAME="businesschannel" +$ peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/channel.tx +``` +The cmd will return lots of info, which is the content of the configuration block. + +And a block with the same name of the channel will be created locally. + +```bash +$ ls businesschannel.block +businesschannel.block +``` + +Check the log output of `orderer.example.com`, should find some message like + +```bash +orderer.example.com | UTC [orderer/multichain] newChain -> INFO 004 Created and starting new chain newchannel +``` + +#### Join the channel + +Use the following command to join `peer0.org1.example.com` the channel + +```bash +$ peer channel join -b ${CHANNEL_NAME}.block + +Peer joined the channel! +``` + +Will receive the `Peer joined the channel!` response if succeed. + +Then use the following command, we will find the channels that peers joined. + +```bash +$ peer channel list +Channels peers has joined to: + mychannel +2017-04-11 03:44:40.313 UTC [main] main -> INFO 001 Exiting..... +``` + +#### Update anchor peers + +The `configtx.yaml` file contains the definitions for our sample network and presents the topology of the network components - three members (OrdererOrg, Org1 & Org2), But in this MVE, we just use OrdererOrg and Org1, org1 has only peer(pee0.org1), and chose it as anchor peers for Org1. + +```bash +$ peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/Org1MSPanchors.tx +``` + +#### Install&Instantiate + +First `install` a chaincode named `mycc` to `peer0`. + +```bash +$ peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 +``` + +This will take a while, and the result may look like following. + +```bash +UTC [golang-platform] writeGopathSrc -> INFO 004 rootDirectory = /go/src +UTC [container] WriteFolderToTarPackage -> INFO 005 rootDirectory = /go/src +UTC [main] main -> INFO 006 Exiting..... +``` + +Then `instantiate` the chaincode mycc on channel `mychannel`, with initial args and the endorsement policy. + +```bash +$ peer chaincode instantiate -o orderer.example.com:7050 -C ${CHANNEL_NAME} -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member')" +``` + +This will take a while, and the result may look like following: + +```bash +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 004 Using default escc +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 005 Using default vscc +UTC [main] main -> INFO 006 Exiting..... +``` + +Now in the system, there will be a new `dev-peer0.org1.example.com-mycc-1.0` image and a `dev-peer0.org1.example.com-mycc-1.0` chaincode container. + +```bash +crluser@baas-test2:~$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +7aa088c76597 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 10 seconds ago Up 9 seconds dev-peer0.org1.example.com-mycc-1.0 +eb1d9c73b26b hyperledger/fabric-peer "bash -c 'while tr..." About a minute ago Up About a minute 7050-7059/tcp fabric-cli +2d6fd4f61e2b hyperledger/fabric-peer "peer node start -..." About a minute ago Up About a minute 7050/tcp, 0.0.0.0:7051->7051/tcp, 7052/tcp, 7054-7059/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com +832dcc64cc1b hyperledger/fabric-orderer "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com +c87095528f76 hyperledger/fabric-ca "fabric-ca-server ..." About a minute ago Up About a minute 7054/tcp, 0.0.0.0:7054->7054/tcp fabric-ca +``` + +#### Query + +Query the existing value of `a` and `b`. + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +The result may look like following, with a payload value of `100`. +```bash +Query Result: 100 +[main] main -> INFO 001 Exiting..... +``` + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +The result may look like following, with a payload value of `200`. + +```bash +Query Result: 200 +[main] main -> INFO 001 Exiting..... +``` + + +#### Invoke + +Inside the container, invoke a transaction to transfer `10` from `a` to `b`. + +```bash +$ peer chaincode invoke -o orderer.example.com:7050 -C ${CHANNEL_NAME} -n mycc -c '{"Args":["invoke","a","b","10"]}' +``` + +The result may look like following: + +```bash +UTC [chaincodeCmd] chaincodeInvokeOrQuery -> INFO 001 Invoke result: version:1 response: payload:"\n qm\251\207\312\277\256\261b\317:\300\000\014\203`\005\304\254\304,$a\360\327\010\342\342/y]\323\022X\nQ\022\031\n\004lccc\022\021\n\017\n\007test_cc\022\004\010\001\020\001\0224\n\007test_cc\022)\n\t\n\001a\022\004\010\001\020\001\n\t\n\001b\022\004\010\001\020\001\032\007\n\001a\032\00290\032\010\n\001b\032\003210\032\003\010\310\001" endorsement:\277\251j\021$\250\237H\353\377\331:\230\362n\216\224~\033\240\006\367%\002 \014\240|h\346\250\356\372\353\301;#\372\027\276!\252F\334/\221\210\254\215\363\235\341v\217\236\274<" > +2017-04-06 09:47:15.993 UTC [main] main -> INFO 002 Exiting..... +``` + +#### Query + +And then query the value of `a` and `b`. + + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +```bash +Query Result: 90 +[main] main -> INFO 001 Exiting..... +``` +The value of `a` should be `90`. + + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","b"]}' +``` + +The value of `b` should be `210` + +```bash +Query Result: 210 +[main] main -> INFO 001 Exiting..... +``` + +Finally, the output of the chaincode containers may look like following. + +```bash +$ docker logs -f dev-peer0.org1.example.com-mycc-1.0 +ex02 Init +Aval = 100, Bval = 200 +ex02 Invoke +Query Response:{"Name":"a","Amount":"100"} +ex02 Invoke +Aval = 90, Bval = 210 +ex02 Invoke +Query Response:{"Name":"b","Amount":"210"} +ex02 Invoke +Query Response:{"Name":"a","Amount":"90"} + +``` + +#### (optional) All-in-one testing operation + +Run this script will check whether the MVE bootstrap success. + +```bash +$ docker exec -it fabric-cli bash +$ bash ./scripts/test_1peer.sh +``` \ No newline at end of file diff --git a/hyperledger/1.0.3/docs/events.md b/hyperledger/1.0.3/docs/events.md new file mode 100644 index 00000000..a0e02dab --- /dev/null +++ b/hyperledger/1.0.3/docs/events.md @@ -0,0 +1,33 @@ +## Events +Events didn't support TLS, so make sure TLS has been disabled by setting *_TLS_ENABLED=false in peer-base.yaml and orderer-base.yaml +Next, start the network with following command: +```bash +$ bash scripts/start_fabric.sh docker-compose-2orgs-4peers-event.yaml +``` + +when the network starts successfully, we started a block-listener in container `fabric-event-listener`. +so observe the output of the service fabric-event-listener. + +Listening logs at a new terminal, + +```bash +$ docker logs -f fabric-event-listener +``` + +So when we do chaincode operations in container `fabric-cli`, + +```bash +$ docker exec -it fabric-cli bash +$ bash ./scripts/initialize.sh +``` + +then we will get some events at listening terminal looks like following: + +```bash +Received block +-------------- +Received transaction from channel businesschannel: + [header:_?EoLG{X zpC{zT!6;77UZPrCFkb~bel`Tj3>`kFxLS9n=MXi literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/e2e_cli/channel-artifacts/Org2MSPanchors.tx b/hyperledger/1.0.3/e2e_cli/channel-artifacts/Org2MSPanchors.tx new file mode 100644 index 0000000000000000000000000000000000000000..fa63a85a3d4ba7accddb75a23514b2fcdedd460c GIT binary patch literal 296 zcmd;D%ETqgCCtI3#Gh1JoSBzeT%4Sdn3tEDBh<~r)xpGtAsj9g%Ej$iP>_?EoLG{X zpC{zT!6;77UZPrCFkb~bel`Tj7N4AR)?TC7v?G$4FH^)PHg}H literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/e2e_cli/channel-artifacts/channel.tx b/hyperledger/1.0.3/e2e_cli/channel-artifacts/channel.tx new file mode 100644 index 0000000000000000000000000000000000000000..a0b869a636b56138cce06304dfabe87f3fbefd69 GIT binary patch literal 406 zcmd;@%*++f70baS#m2Gw|B|z;O8iNs#hH1j#l^`PiFtXcIa&^>#z_XrCMHIf7HP?b z$%ZDDiD^k`Cdn3-mS$;5mPRH<=835$hN&iICYDK-#wN*$CYGj_mWD~@7N$l?7N({` z>zTOLFma(9EaWew$;IthP>_?EoLG{XpC=?G#LdO-UzBd>8yq0S0Oc5gIZ{eoT+aD< z#rZ`gnWecxB0@r30>O#71v#k*QK{pMLJJsCjhw*9!HC;bB_%F4$CTX6yka2PHv9? literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/e2e_cli/channel-artifacts/orderer.genesis.block b/hyperledger/1.0.3/e2e_cli/channel-artifacts/orderer.genesis.block new file mode 100644 index 0000000000000000000000000000000000000000..072fafb522e2599b7173a48a550f2725a5140dcd GIT binary patch literal 9068 zcmds-?ThQ!eaEw#&E3h_-J6Rh%kECobUURFtdrQ5CD|?na`Y_Qk}X-XEENi}o@Gn2 zE!(mMh1ZM@QE8_x+sT8E|>=uKOR~`TF$zAN|X3UVh`7Kh&M`AAJ8Gf8pQ1_rc`X z=|^hv8-Ir(f6am)vf$5Iumit#_R^!5E*_ly$xpufx1YIuZRKVwJFvnebl&?~t&L+i z(ZCu+6T|E1#3sC2tB$oMgzMtg#P)~@j=8pDO>oz3wHq}Y#n8Iz);w(Dw5$nofxO+A z{_dZCt9+1uV4><`&$9|`^aB1;LjN3`wa4XZ-H0)OUGThOXRoSLVo;t z0IuHlmp=0T=P$l{4n8do2go0sBi}klzIlG#zi<4(gD>yDNQM)ncPU0u1y-P-${bpO zCBV&lq zT#jAY+;-NBr45*Z+_ z7mW+j0V2fqH^ZTGhOFi?vws%m5ghE7#1G4llZG7WEBn__gsnp?bBtw0D3Snrt-QNm zqf+aWl)wlStD)_UM)%#Z*JZx15~U`SSp8J-cesRL2Z zfNGmCrzl36C}vDx1=Y%m|5u_JMIX0lxCk0Y(TF0WvD1k@Tg%*2;$f#blN)?DHH9Lo zQBXF7{cBLZp`mQkvJaWKs1#i@T4H0d!?v+zA73pd3x{@QjkX5YyH+0)r6d#VF-LHA zBM{q75(Ma?Wpb6ALbp88>!$X!UyQM$>6!ySU(!QW<+OiztOro$t0XLQpYN6$ z$T_eV%#{cz5yHHi9|9wil5-&~Q|U;Zplw;iac4@*M{Nepq;VImW}35WvDG0cik?K% zJw0yNIprVMRW56u!)62{!G}9}y&oLE$)JzOcsrbd2 zIL$eDaIDe|*xH1b4%ryoOve)yx@=zCN(ICZrlG=Iq9vjVJmDiv++_o@KX1(`HaKkKfU4<&?+gElikWZ{zB*|Q& zAe80AVQn=60y@z@+=WN2pEUb{Cbj-pa=+>>rFnZjq%gFo%?G899B_$E>7`ob(N*^okjz zuS`Zcng~OxWmBm%kvcpR4(-b!S?1aWtP(q0cY2{dp~pMVSMo&lLwsn8k`rJw+wl{i zO)6~uG^+TL0BMqiAp@stJl^4pEJp27tMt67J8Rp^OzY4cnV$xI(593S7sjc*!Ake( z=v*~-ngbGQxMOHxWwlB~r9+J@F&fSbu15*>!m2N_%^hO8cmSO^OtQ-ccvWA9D|eY8 zzk+=6?4^?a&X5P?@0ZU$b@32+{U)|u55mCJaO6GY-7@wIH^w|d9^M?Y$J8fNDXvu_ z<9}nS_pSzC{2Vx^0xL<}nNq^;GPGA=nq91e>Ja~gDTihgDXXs;IpJvg7PpdT;xsUwKMSO@#Dw!w;w-#_d4c_;Ppd{8pdwAULg;WSHR0?cIv;p zyk7d-$iuTwBjEJ@(aYB{?}5*evodp!tXb$-`wKb_@Y?=9q{~&fjx*$g3i1~f@Mvho^O^gk1Noy0@`rEk5#C4l zK>j;#UVLx`?Eid@{OBC{hw~?$fAhjbEAJDn8=n%bOzq?}42QD@&tYt>H#f~-x_w## z5m|ifv|bXceaJ*qAj%~tCt~W|@r2;>oI56E8Zg^~X*@gdIka*URsa(jOjoN6 z*TX91^)%Y5mT4%K)1(_DmDSqJ*rD1QMH5n8^()==rd_u^PwiK0Svy?Oh6x%ytR^Q} zldH=($$W8=cIppk4tvxoo4DCC-F_sFABpn7M0b*m~ODuPMfy?s$9I@H^GQA`7UVi(9YT^zUU%6J(KoGUH63v2UeW+K43DJ~^ZgdOd|L>{k+4urP zHv72M)XMp*y)I3fq{-Filj(C*Rf+{Xi|uc!C2=WhI5s&F;`6P_4)|hRA8uPSeHhlo z>Y@!2ZpATUyvoUQl8>aW*>$QYk&5ncnQ&UQS(CXP)!ZgKXMwjX9c8hqRXFPj+Jh29 zZn6D~(Eg?^z0bZu3uWJ{g}sM#JC30swMt`B64m6t@brVDO|Q6<{Edw+Y2@BjXVLK*Ib z;$81|6)1U%yxc~HB-(jT6H;`$kQUn02_SdMP2V4i8~nTF z3+NnUM3qgHto(@f6{BYc=X_vGqH5=Tbw@aZyhsYlqz?Q(mBcg8pYa>GKOopiJ(^N)k7Xm99~5&rD^elS7#eEqBrJ zr4`m=*$OpgRMZff-oh2I%+2IX5A~r-aDWjieA^}%W6?4^b66o((x|!9b;91prnfs( zlI|)bf%{aFZWoevJq@i@>s>Jg!_}@CvTdqwL@{h+I+m>yOyt)+=nNvo5B8O$XBLv! zas%xzM3k6{{$f2DiPr)Fq+CTG#}ecKl9t zo|AN_fR(JbhE)T1`JUg48cy|YrJbPhvi1Z%e-Zha66D{y0rIcyarKH1Z;m*j=sic& zPk@a4GV-(K6z|-a;tk}r>nWaW6s}qJkB@*_-vjEm-@N#@D?t6%bL5}Sksluc_0akL z3p0gWd>Bxn2iv^c+|HrKB;(1TwW-$X|1*~QRNeLYfO;$Ne;J@|?+d861MdTB8llR_Z@##a}OGE4Ay-aDl;OM)z0`KL!d)oziL{2`c@9u3EoDQ3A`0l|| zOUf&2t+_7i%F5Dlc(Bx4+9yr$!o!(C6fqp?4AZ9CoOJ{--Zl+~!YyJeT{VB2)?XxZADXnocz z7u}mtsVw;YV3co*wu7_ya1#&%!!f(9MYRCAH{$Etu(hPpTC~9=*TwESg!w3tx);h# zNFCT7Ut}HF?^WIYJeqCdO5m6K$Pd@re=3lA>-oP6Qf~#{ODsP{NWCQz<_<``6?`8^ z?XylxAgmmB5^;uZDb3w!t*V5oDbW$*#k9rvA=3%lo1{TS2}4h+ys=nzfLx5CnyzeO zDv)KK8{oD^2uo|s*^(D8`=1b`iX#Wst3thE@jw%k1d_qXG zHQIi@(rA8|R-0hgY)C!I+pREO8}W@*F>R4{7oVWK(sDbpvxp$ODwWp3Q{Ak|wX|k5 z3_b3~Og9gQ1PT;lqb`#{qHU8_+nnPkFFPz3A z2y#}U^DD^9$fr)1{M=y|Uk2|S%Fnd5vUn>C!o(l0mTP;pULLCAXFn;wK6m;%7Xo;6 zbwSW^mTp$=t`Ho#0B@(qfA9E;yFC<-zhbBHuQqFV?YS$t_$Bb@YC<^k)ACp$i1(Kc hu1@SuQa>%0BDg7&=%?e{32Uw=+#;8Vx%{{ne!-S_|i literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/e2e_cli/configtx.yaml b/hyperledger/1.0.3/e2e_cli/configtx.yaml new file mode 100644 index 00000000..1ef7f325 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/configtx.yaml @@ -0,0 +1,153 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +################################################################################ +# +# Profile +# +# - Different configuration profiles may be encoded here to be specified +# as parameters to the configtxgen tool +# +################################################################################ +Profiles: + + TwoOrgsOrdererGenesis: + Orderer: + <<: *OrdererDefaults + Organizations: + - *OrdererOrg + Consortiums: + SampleConsortium: + Organizations: + - *Org1 + - *Org2 + TwoOrgsChannel: + Consortium: SampleConsortium + Application: + <<: *ApplicationDefaults + Organizations: + - *Org1 + - *Org2 + +################################################################################ +# +# Section: Organizations +# +# - This section defines the different organizational identities which will +# be referenced later in the configuration. +# +################################################################################ +Organizations: + + # SampleOrg defines an MSP using the sampleconfig. It should never be used + # in production but may be used as a template for other definitions + - &OrdererOrg + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: OrdererOrg + + # ID to load the MSP definition as + ID: OrdererMSP + + # MSPDir is the filesystem path which contains the MSP configuration + MSPDir: crypto-config/ordererOrganizations/example.com/msp + + - &Org1 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org1MSP + + # ID to load the MSP definition as + ID: Org1MSP + + MSPDir: crypto-config/peerOrganizations/org1.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org1.example.com + Port: 7051 + + - &Org2 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org2MSP + + # ID to load the MSP definition as + ID: Org2MSP + + MSPDir: crypto-config/peerOrganizations/org2.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org2.example.com + Port: 7051 + +################################################################################ +# +# SECTION: Orderer +# +# - This section defines the values to encode into a config transaction or +# genesis block for orderer related parameters +# +################################################################################ +Orderer: &OrdererDefaults + + # Orderer Type: The orderer implementation to start + # Available types are "solo" and "kafka" + OrdererType: solo + + Addresses: + - orderer.example.com:7050 + + # Batch Timeout: The amount of time to wait before creating a batch + BatchTimeout: 2s + + # Batch Size: Controls the number of messages batched into a block + BatchSize: + + # Max Message Count: The maximum number of messages to permit in a batch + MaxMessageCount: 10 + + # Absolute Max Bytes: The absolute maximum number of bytes allowed for + # the serialized messages in a batch. + AbsoluteMaxBytes: 98 MB + + # Preferred Max Bytes: The preferred maximum number of bytes allowed for + # the serialized messages in a batch. A message larger than the preferred + # max bytes will result in a batch larger than preferred max bytes. + PreferredMaxBytes: 512 KB + + Kafka: + # Brokers: A list of Kafka brokers to which the orderer connects. Edit + # this list to identify the brokers of the ordering service. + # NOTE: Use IP:port notation. + Brokers: + - kafka0:9092 + - kafka1:9092 + - kafka2:9092 + - kafka3:9092 + + # Organizations is the list of orgs which are defined as participants on + # the orderer side of the network + Organizations: + +################################################################################ +# +# SECTION: Application +# +# - This section defines the values to encode into a config transaction or +# genesis block for application related parameters +# +################################################################################ +Application: &ApplicationDefaults + + # Organizations is the list of orgs which are defined as participants on + # the application side of the network + Organizations: diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config.yaml b/hyperledger/1.0.3/e2e_cli/crypto-config.yaml new file mode 100644 index 00000000..74e01beb --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config.yaml @@ -0,0 +1,93 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +# --------------------------------------------------------------------------- +# "OrdererOrgs" - Definition of organizations managing orderer nodes +# --------------------------------------------------------------------------- +OrdererOrgs: + # --------------------------------------------------------------------------- + # Orderer + # --------------------------------------------------------------------------- + - Name: Orderer + Domain: example.com + CA: + Country: US + Province: California + Locality: San Francisco + # --------------------------------------------------------------------------- + # "Specs" - See PeerOrgs below for complete description + # --------------------------------------------------------------------------- + Specs: + - Hostname: orderer +# --------------------------------------------------------------------------- +# "PeerOrgs" - Definition of organizations managing peer nodes +# --------------------------------------------------------------------------- +PeerOrgs: + # --------------------------------------------------------------------------- + # Org1 + # --------------------------------------------------------------------------- + - Name: Org1 + Domain: org1.example.com + CA: + Country: US + Province: California + Locality: San Francisco + # --------------------------------------------------------------------------- + # "Specs" + # --------------------------------------------------------------------------- + # Uncomment this section to enable the explicit definition of hosts in your + # configuration. Most users will want to use Template, below + # + # Specs is an array of Spec entries. Each Spec entry consists of two fields: + # - Hostname: (Required) The desired hostname, sans the domain. + # - CommonName: (Optional) Specifies the template or explicit override for + # the CN. By default, this is the template: + # + # "{{.Hostname}}.{{.Domain}}" + # + # which obtains its values from the Spec.Hostname and + # Org.Domain, respectively. + # --------------------------------------------------------------------------- + # Specs: + # - Hostname: foo # implicitly "foo.org1.example.com" + # CommonName: foo27.org5.example.com # overrides Hostname-based FQDN set above + # - Hostname: bar + # - Hostname: baz + # --------------------------------------------------------------------------- + # "Template" + # --------------------------------------------------------------------------- + # Allows for the definition of 1 or more hosts that are created sequentially + # from a template. By default, this looks like "peer%d" from 0 to Count-1. + # You may override the number of nodes (Count), the starting index (Start) + # or the template used to construct the name (Hostname). + # + # Note: Template and Specs are not mutually exclusive. You may define both + # sections and the aggregate nodes will be created for you. Take care with + # name collisions + # --------------------------------------------------------------------------- + Template: + Count: 2 + # Start: 5 + # Hostname: {{.Prefix}}{{.Index}} # default + # --------------------------------------------------------------------------- + # "Users" + # --------------------------------------------------------------------------- + # Count: The number of user accounts _in addition_ to Admin + # --------------------------------------------------------------------------- + Users: + Count: 1 + # --------------------------------------------------------------------------- + # Org2: See "Org1" for full specification + # --------------------------------------------------------------------------- + - Name: Org2 + Domain: org2.example.com + CA: + Country: US + Province: California + Locality: San Francisco + Template: + Count: 2 + Users: + Count: 1 diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk new file mode 100644 index 00000000..5a47ea39 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgES9plinnjVaL0+bc +U4in/asws4O6EN5zGnAbjnW9z8qhRANCAAREJja+a8AzruQ+7ASDdgIK7hXvqJxL +ugcF5rtoCCG/0/BjFnKYLVmz1MvvrL7+Kg2vESvlkuWZR54OpKnWd0/R +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk new file mode 100644 index 00000000..7d897f37 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgTCSshHNuDC5JmNIN +cfSbZyZ/hgxaA1rrTCcSrC9yLqqhRANCAASgt3LoRZsO/f6qK1WOUqB7zUKeO8Jp +G0Hp2c1Gu4zpV9pjBGCVFYDyjMg2xy2FGt3ZJgfEljsHFnxL6eYoUtv0 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem new file mode 100644 index 00000000..0f0189b1 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICDTCCAbOgAwIBAgIRAOGKAb18r9BTgR+TQclAIIowCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMFgxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYI +KoZIzj0DAQcDQgAEoLdy6EWbDv3+qitVjlKge81CnjvCaRtB6dnNRruM6VfaYwRg +lRWA8ozINscthRrd2SYHxJY7BxZ8S+nmKFLb9KNNMEswDgYDVR0PAQH/BAQDAgeA +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy +8F/SzzLNDDLWm3cwCgYIKoZIzj0EAwIDSAAwRQIhAJcrEuSf3fR90PyXOpftXrgR +rhRIVG8spex7iLg4tkB/AiAzGamwDDqcRz9ryt80OHF2d618oS3UaZF/wPWo7oB9 +FA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt new file mode 100644 index 00000000..fe3ccc40 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICWjCCAgCgAwIBAgIRANqVGJ4RHohswpqlxF6pQHMwCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMFgxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0C +AQYIKoZIzj0DAQcDQgAEPzCwqaaQkxgt0ndGYPnVNZT4aC165Wo0QzDNS7N1srca +znZLqDZWnda1GQyJXUmQgpxDiqSPuFVXlKBdyLd+96OBljCBkzAOBgNVHQ8BAf8E +BAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQC +MAAwKwYDVR0jBCQwIoAggKgP+snFnS4lmw18n4EcJ04IuUmTDXYeAxSYJ1G/hcEw +JwYDVR0RBCAwHoITb3JkZXJlci5leGFtcGxlLmNvbYIHb3JkZXJlcjAKBggqhkjO +PQQDAgNIADBFAiEAiMaq4QYFv3S13HQeLzumDcErpw3sRRYq8aDCxDmoOkICIB7C +08FvQKkJEpyDN/mjVMufNU4rfpjsFRs5IUHXBdhR +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key new file mode 100644 index 00000000..c07f93bb --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgGNicEQgtNBNtuBwF +/eA9w4neMwEbTLdidHYL91KgiN2hRANCAAQ/MLCpppCTGC3Sd0Zg+dU1lPhoLXrl +ajRDMM1Ls3WytxrOdkuoNlad1rUZDIldSZCCnEOKpI+4VVeUoF3It373 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk new file mode 100644 index 00000000..deb81705 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg5owVFluDVt7bnMmG +wCVx+bu+9oZwsSAbAZCjHSHkIfmhRANCAAQQndFc2nHdXQbYUnW1QprgXeTYPdaa +E+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7eKq+ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk new file mode 100644 index 00000000..bf22e198 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg63wCP24vDJSChlDm +hzl0HaT6fxjJu5VjCDE3/Amrgr+hRANCAASbP7MpmOvhcwkX3js7m2pup0N2Xf1Q +C7Lw7gw2ewhxcboZzeEz3sGHarxkb7ALbEfosqhyQ7NfjPt5k+DCsNIe +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt new file mode 100644 index 00000000..69b37cfd --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLTCCAdOgAwIBAgIRAPLZMPocwV7bQv/aBksbj3swCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMFYxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEG +CCqGSM49AwEHA0IABINLFP3/CgcWppkAoSZeCNor0fcv5q97saAbwNBcFbnA+zV9 +akibIF/HkdBNBUXZ14n9F3fkk6Aax6C2JrVBYhujbDBqMA4GA1UdDwEB/wQEAwIF +oDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDAYDVR0TAQH/BAIwADAr +BgNVHSMEJDAigCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgnUb+FwTAKBggq +hkjOPQQDAgNIADBFAiEA7IGo+be4dRtBTsQ+M8epPzAONWG95ZvaMSJIcqv4gmQC +IB/9kNMil48sAj9DPeiZ8PHR9J3/e7rmHVwA4vrXXDFE +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key new file mode 100644 index 00000000..517f25d8 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgDaoqTS4AwLaselrb +EKOFBN5VJAD21LRMXrCwFMiJzjGhRANCAASDSxT9/woHFqaZAKEmXgjaK9H3L+av +e7GgG8DQXBW5wPs1fWpImyBfx5HQTQVF2deJ/Rd35JOgGsegtia1QWIb +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk new file mode 100644 index 00000000..db451a8e --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgYcrrkdnV1DlyF7U+ +p8OoOScIlCTWfxiNuHznRxhluhihRANCAAQdj4hNSYWuoK1ZEnR2UvbrN1jziqS2 +oKBtw/HX6CxDnYVS16x4P7bs0QXbx9ng+WWlcjq1XXq5iIrYWKsOQUzP +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..9323b560 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICFjCCAb2gAwIBAgIURa/X2XP3tM4wDlZ+LUq9VBmvcwswCgYIKoZIzj0EAwIw +aDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK +EwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt +Y2Etc2VydmVyMB4XDTE3MDkwMTExMDcwMFoXDTMyMDgyODExMDcwMFowaDELMAkG +A1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl +cmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy +dmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9iwm3wJWrnw8XX1kswyouzxa +RyBBhHEevB2eeNTfzmuo1ni7AvpTEVRnm6jP78gRYCotLNi1b+oUz+cTc6LYOaNF +MEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE +FBH7wDBnpFH363B5k52fUPtFx0z/MAoGCCqGSM49BAMCA0cAMEQCIBbgfmyJg/r/ +jJnhmw8bl62sH+nrX9C6U8tfv2Gnq1vUAiBzYjBOaZGC0Nz34cDwtgcRyI22CMTo +XvHdC/Ae4zxkUQ== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk new file mode 100644 index 00000000..16c8e757 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg7j9pou9IDBIzB9xQ +tqS7Qqz4vZ93ohCoDz7XX3BzHUqhRANCAATN4lpnJD3lnUoqt4uaOwKaKqSSYqKq +niDMG0ZOSAl1SaodiVMLyCfNObngAbZiaTgWgBIZkUc8NM7hUlndajv0 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem new file mode 100644 index 00000000..8daaa7f0 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQQxKXDrkcdGeP9KyddyIJRDAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzeJaZyQ95Z1KKreLmjsCmiqkkmKiqp4g +zBtGTkgJdUmqHYlTC8gnzTm54AG2Ymk4FoASGZFHPDTO4VJZ3Wo79KNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgyEPT8CERiWPO +XTQOlShuiGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDRwAwRAIgVCmgIF4T +s7QlHWzUdJYTxruGSlRPuwlekM4Au3kgilYCICmzzTR3z+zoBO2X9M4kyI/ebCxF +u2RbCYuMuMUowLDq +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt new file mode 100644 index 00000000..a758912f --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQfC/PBWN7YUi6LyfRsT71wTAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAw +NDJaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExlGcF+toks0eW58iyTd2GBFWDMlE +Fi6yLGIbTBu+hSDYw62/NSbbuYhO2zpCBYPCcRWDHzZTtsMgCpL1kFmQGaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgxV0DX8jX5odQyecAGFV4bBLjVhcA +kKLT5M1Ed3BbQNwwKAYDVR0RBCEwH4IWcGVlcjAub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjAwCgYIKoZIzj0EAwIDSAAwRQIhAO8SOW+CwnLdTE48RF0Gnv2FrkfryYok +1b7ixywliCinAiANq2PWBP0/kA0ieHEZs1/giCX9E+WLgrPfwm+8fISImg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key new file mode 100644 index 00000000..dceb37d9 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggARn3NoeQy+bhzuS +d/O4U9Q9JqWxqbdzF2zKkj617JuhRANCAATGUZwX62iSzR5bnyLJN3YYEVYMyUQW +LrIsYhtMG76FINjDrb81Jtu5iE7bOkIFg8JxFYMfNlO2wyAKkvWQWZAZ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk new file mode 100644 index 00000000..ca564d08 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgputMFhOeoXcCA4Ji +qp3Vwg/Aod0fwNtu/WCkwZvJOmmhRANCAARV39373sdyjrofATkrr/VgcAxS9irS +T0VNySdbuAIpfM90BJH5dpL4hPuY7Ml759Z08ZXIVUtDcwUX5XNzG24H +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem new file mode 100644 index 00000000..430112e6 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAN2DNjWSlgyPNMDEi/eX7V0wCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABFXf3fvex3KOuh8BOSuv9WBwDFL2KtJP +RU3JJ1u4Ail8z3QEkfl2kviE+5jsyXvn1nTxlchVS0NzBRflc3MbbgejTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQDwrDA8 +R4RoMxF9XvogVbE8WyWmjL614IQ4P6XfGzdxfwIgWV9nIQRCvnXKrCNCHlHr4sxO +xP5K34HRgj1Jr40ODrM= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt new file mode 100644 index 00000000..f386ac6d --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQREyFYdgealeFMbnWi/U3TjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAw +NDJaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEihFJm/6OPYljjccM0F4Kf5NOt3kd +s4xUXNh9mv1L7NjM6W69EHOT1uKiTpMlpMWezLqmdOs1eJ/gsNk54ySQBaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgxV0DX8jX5odQyecAGFV4bBLjVhcA +kKLT5M1Ed3BbQNwwKAYDVR0RBCEwH4IWcGVlcjEub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjEwCgYIKoZIzj0EAwIDSAAwRQIhAI2ZpaUW94I8N14ssLvvW194pKpNl7Bp +1kqcSpfCkpCvAiARSeo9lxDiOV1CAyOm1nbn/OFdz4Wh4m8iBz6RLZ6V5Q== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key new file mode 100644 index 00000000..1dded069 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg1H2Yv70N9yTJ3wRa +rorj5uf6eD2YgVue7roLupwNuh+hRANCAASKEUmb/o49iWONxwzQXgp/k063eR2z +jFRc2H2a/Uvs2Mzpbr0Qc5PW4qJOkyWkxZ7MuqZ06zV4n+Cw2TnjJJAF +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk new file mode 100644 index 00000000..db529097 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgNZgTFjntL+pcg3lX +UjVY+fT9vvCWsEJA5Oq/Hmc3pJahRANCAAThXfCOmsOXZzJdsQlHslPPzdk6OiTJ +qpPBIIhCYvb59wo5xA2/x2KqyUM1Y9Fkb5goUEBxj+XFOiK2lxnDX5qz +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk new file mode 100644 index 00000000..8e88a54d --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgg6uVXC5L+7kullxR +CYr44nbYJ0Lnb7DLKBqeyMKKOuKhRANCAAT44xBtnUqO0+5SSDJse2OarWXzd5ed +wwriIDKjisz45PBTsbqCJMB+qk2HtYKw1WXXwiQ2XZ0b6gayposlQVZ9 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt new file mode 100644 index 00000000..2c1ea60d --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRAIMSt9AP4hmYeHt8U1LCEOYwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBOOEkumNriBX3DEqLJEE3Y0XdgX +jYdFIryqjdzWO5qzcpAxQedlL0GTzQvo9SuC/bUWUg0LVkRerrou1l2QNgqjbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCDFXQNfyNfmh1DJ5wAYVXhsEuNWFwCQ +otPkzUR3cFtA3DAKBggqhkjOPQQDAgNHADBEAiBPR9N7JQJdskOnln/VBW2JTlSG +WpaOhsLbpmnhJkCS5gIgRPhhKcJ1a4v0hFeViajyt2TXyMPKbTsWhvJKKl+JM2M= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key new file mode 100644 index 00000000..9ef27525 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgdFo0hnDG1JcuPPro +0G5Qcn+DkAtgS3FfHG+6B10xsrShRANCAAQTjhJLpja4gV9wxKiyRBN2NF3YF42H +RSK8qo3c1juas3KQMUHnZS9Bk80L6PUrgv21FlINC1ZEXq66LtZdkDYK +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..df375717 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQXztS0I3Ktycdzqu1lDxfCjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7TZtpjohiXFwEeG6gbskdsEMtFcQxOQP +1MO1JCxgVTxg+9IYvKuqUMqmhQA0jlueI2Me5kW40blbhAtIKQ4+7KNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgyEPT8CERiWPO +XTQOlShuiGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDRwAwRAIgI7fCElam +9GuzoHW9nFi4jcbuGTMJ3gBHFZdyM37XB0MCIH3CoJDVZ401CnJGJNwrnL6cQJ2j +MgRs18HgngzZpPpo +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk new file mode 100644 index 00000000..69931061 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgmeOkDC6jW5YSAOZE +WnIYm30JTzWv8BHG72DJZOtwX1mhRANCAATtNm2mOiGJcXAR4bqBuyR2wQy0VxDE +5A/Uw7UkLGBVPGD70hi8q6pQyqaFADSOW54jYx7mRbjRuVuEC0gpDj7s +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..df375717 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQXztS0I3Ktycdzqu1lDxfCjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7TZtpjohiXFwEeG6gbskdsEMtFcQxOQP +1MO1JCxgVTxg+9IYvKuqUMqmhQA0jlueI2Me5kW40blbhAtIKQ4+7KNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgyEPT8CERiWPO +XTQOlShuiGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDRwAwRAIgI7fCElam +9GuzoHW9nFi4jcbuGTMJ3gBHFZdyM37XB0MCIH3CoJDVZ401CnJGJNwrnL6cQJ2j +MgRs18HgngzZpPpo +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt new file mode 100644 index 00000000..8ce96d29 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeGgAwIBAgIQaDKtYPBdqA6HCkJRnYE5QzAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAw +NDJaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXLHheXZQcGdaAUigHgFNPeAaLRgp +lsdSMYsiuBb9rkqcSgptyvGeGsjTDuee5L3suBekZrD+gnVTkiA3wjt646NsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMVdA1/I1+aHUMnnABhVeGwS41YXAJCi +0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDnQSd6SFqnLylHqBdnMQQrU09d +DgIXCiMqzZqo21alOgIgBdl8Mz85fL12VeYVZh92cG9d3OU4D43IofjysAzhNhE= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key new file mode 100644 index 00000000..7d36a43d --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg4Axz04NiqnAKLmBk +1dzVbOrTOZm2Oqlbn2rVJZ6vZIGhRANCAARcseF5dlBwZ1oBSKAeAU094BotGCmW +x1IxiyK4Fv2uSpxKCm3K8Z4ayNMO557kvey4F6RmsP6CdVOSIDfCO3rj +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk new file mode 100644 index 00000000..3ff056cc --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWMWVOsOqHMxvIR2H +9MRWWAUOzvMLydKhbZQ21ih27lShRANCAAQSNgQpT5K5L8J8tQNr96X2ZCicqGf6 +25mwVJPxWNsFO074q6/3Vx99M7/Sz2K0NhncvjRCeyOfJH6EZ+/nJsIY +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..80898236 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICFzCCAb2gAwIBAgIUGdYQPMsBSzrjEMQ1mzYWCKJvlfkwCgYIKoZIzj0EAwIw +aDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK +EwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt +Y2Etc2VydmVyMB4XDTE3MDkwMTExMDcwMFoXDTMyMDgyODExMDcwMFowaDELMAkG +A1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl +cmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy +dmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEF/LEuIBfqBVhG3KiVJPnWPzA +m6g00Z28jyHWAv8ciNxRpe6Gk81XeTYSUQAnJeWkKjk1J4GNmMIT5QJD/zfJWKNF +MEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE +FI1TmoFkXMUG9WsyR/UWPJUJ5fNsMAoGCCqGSM49BAMCA0gAMEUCIQDxjxJvZS0k +U7ELxF8wuk7KmgPvCCA5zRY5GUJFBRsflAIgev7lr2JhO8HqGN7QVcjXT9ifq/wt +xnDx7AQLyuDkEGw= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk new file mode 100644 index 00000000..babd0c76 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgkkT62Nb44Fsdyhvb +hSve2YU5+ogPDP52M7jYMhozsfqhRANCAAQ6n6iJprQGbdLVMYk+a8M+izvLRnKB +3E56hUVDsfHG/W8g3TMiQ5uvAfStU9s/wx3E2xnrlnngPE3QCfRLe6kA +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem new file mode 100644 index 00000000..e9f58790 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAJ0AFGGhkKzObCWXnBQ6nJYwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjAub3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABDqfqImmtAZt0tUxiT5rwz6LO8tGcoHc +TnqFRUOx8cb9byDdMyJDm68B9K1T2z/DHcTbGeuWeeA8TdAJ9Et7qQCjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIB7lUah1MXHA +N3Nm6WodfsAa/duGjJSDzFAbb4rHrnUvMAoGCCqGSM49BAMCA0gAMEUCIQDtt8py +pdFLxQ6y1t2wA69SeFsHVSvy97hktoiP0zFO5gIgd2E4eXL/pUSxlUGs3RzlEk1J +AAthjt2Bxkc8zNGwoCE= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt new file mode 100644 index 00000000..9fb7eed8 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICaDCCAg6gAwIBAgIRAKXEWX6cU9xZ4zUEc/qEXqEwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjAub3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFmL7xzltDeI2IuyoXfcxg8OvTNw +ezwlqzaia0GanQsnvsbzoem08sP1MoE141URx7D6hrstHPcKcjzJo+0rqjKjgZcw +gZQwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcD +AjAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAICyLU20/1KMoSty7iF9COYjmA3sW +4sun4MHuLAdPjRghMCgGA1UdEQQhMB+CFnBlZXIwLm9yZzIuZXhhbXBsZS5jb22C +BXBlZXIwMAoGCCqGSM49BAMCA0gAMEUCIQCbs+ypDbf0LkUltfL98DDd0NBuJ2Lc +opudMBqYgQd2MgIgebBbWQm0qTeRvAy0yMWGsbPWmXnrPo8qCJ5uN58lTW4= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key new file mode 100644 index 00000000..e34a532b --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgrEVSHddCzgt/bebN +WK6Mn/Nmw4bul+oLPqNvcKEBOQqhRANCAARZi+8c5bQ3iNiLsqF33MYPDr0zcHs8 +Jas2omtBmp0LJ77G86HptPLD9TKBNeNVEcew+oa7LRz3CnI8yaPtK6oy +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk new file mode 100644 index 00000000..da6d5d20 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgSB2awBKFfwQXSKYq +O1b9QwlKdVzg8FAf5MBQ6s/0T7+hRANCAAR9bXAk4NDrb91L5/wSfkv7RrnNkKcV +fcngncUN7iw/ThzruSv2qAbskWUPDbaoFQA7iVP799K7eKsADUIEBUbJ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem new file mode 100644 index 00000000..2504ee9a --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQLER8KhhC6lVOth63tWLBDDAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfW1wJODQ62/dS+f8En5L+0a5zZCnFX3J +4J3FDe4sP04c67kr9qgG7JFlDw22qBUAO4lT+/fSu3irAA1CBAVGyaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgf4N7xS7J +r2E3AE23A5j1jZGOJhbd4/jBLG5jhQmQ1JMCIHQZTsZcEI/E1gTGrex4WAocOk7N +9nwZjIQ5JMbC0Zo5 +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt new file mode 100644 index 00000000..b8143bd4 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICaDCCAg6gAwIBAgIRAOIAEsDplhG/9cgY3vCfxhcwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABLMduSDc7AQoWW8WLqOPA7mlSxnB +vJeapRX9Gjm/YRILCgqYLmAOYb58JlA4l3t2/oO6VMeLMN36vUuJ6OCUcbyjgZcw +gZQwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcD +AjAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAICyLU20/1KMoSty7iF9COYjmA3sW +4sun4MHuLAdPjRghMCgGA1UdEQQhMB+CFnBlZXIxLm9yZzIuZXhhbXBsZS5jb22C +BXBlZXIxMAoGCCqGSM49BAMCA0gAMEUCIQDaWW80GyurwJoXuqT87tJSc4WZWGdA +ZB64hoMZQzWCbgIgU5ptcg+ZTZR3x67HX0vtwA3mYsTzfdS/YHho67zoYKs= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key new file mode 100644 index 00000000..7c618377 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQguECyN4MYLvcdMajS +wBPSIN7K1NJqftoQdYsyIDrIGjmhRANCAASzHbkg3OwEKFlvFi6jjwO5pUsZwbyX +mqUV/Ro5v2ESCwoKmC5gDmG+fCZQOJd7dv6DulTHizDd+r1LiejglHG8 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk new file mode 100644 index 00000000..1e3c65e1 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg57hbOELvgqPt1UXK +lf0dQNLkn8rAqe5UNdUwsMqh/AShRANCAARpJkSmNfZWUZVgUkBYmnqiYDbeCxRf +glxE9mCO36niOLHrELFolknuhhCPh/XOhGKvGH2UvurTVe8llunMZmX8 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk new file mode 100644 index 00000000..634393a7 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgRAnHbo7t4+SOH0l7 +tnQUb9SftRzUgms0l7MhSrEV2+GhRANCAASd4JpJdkYEDmnFMU8fNfVLHyVZKLUz ++r2ca0YRfn8ZCkEeM0pkp3/bqgx5KucZT/vRAbILvGfJ2rn34lGq3T4Z +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt new file mode 100644 index 00000000..3f1812ab --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeGgAwIBAgIQSjoJ34cTmiyj8n+/c3HahDAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAw +NDNaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0MIGokHp4Ww9L8oK3N6zrVDW/LeC +xoGter3KRKZlp8dA/GCXbEcX53dhh9gRz0ZpzKxTHzuVb7oKkc8I5aVLnqNsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAICyLU20/1KMoSty7iF9COYjmA3sW4sun +4MHuLAdPjRghMAoGCCqGSM49BAMCA0gAMEUCIQD63nQFwhVhPJ0vp50LVQweqLN9 +C0TcTW/uMdAwkMbLVAIgTA+anZV4fqB/cvh07xbzdALG4N/cUR3q0FJeflFQpuc= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key new file mode 100644 index 00000000..b7f9ee17 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgb2hIVDMesM7EZACV +vY3P68ssiSn6SFDixGexbcDOuGWhRANCAATQwgaiQenhbD0vygrc3rOtUNb8t4LG +ga16vcpEpmWnx0D8YJdsRxfnd2GH2BHPRmnMrFMfO5VvugqRzwjlpUue +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..acce9ad0 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAInIZR/3hXJWaRWzunW9jWIwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQzWhcNMjcwODMwMTEwMDQz +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABG/aL7wTIUhKZHEG2x/ADZtlDPDFe4A8 +C5M/cwFTUm7Y1hfZgJioXMMiojbZbtEB3P7OhlEfhS7W5osrlAiXT3OjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIB7lUah1MXHA +N3Nm6WodfsAa/duGjJSDzFAbb4rHrnUvMAoGCCqGSM49BAMCA0gAMEUCIQCFpT7x +2YsjX/w+V6l3LBT/VEs2t6cKxiwKV/BnXJrY0AIgAg+rlKojdiNEYWKu9DdOB109 +cTeAUGWnOiqS0LXS3rQ= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk new file mode 100644 index 00000000..42a8052c --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgrf4DcQ4ilC70itT+ +7ahh1pbMlOd6W2q8Gf2mMsxqIL6hRANCAARv2i+8EyFISmRxBtsfwA2bZQzwxXuA +PAuTP3MBU1Ju2NYX2YCYqFzDIqI22W7RAdz+zoZRH4Uu1uaLK5QIl09z +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..acce9ad0 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAInIZR/3hXJWaRWzunW9jWIwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQzWhcNMjcwODMwMTEwMDQz +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABG/aL7wTIUhKZHEG2x/ADZtlDPDFe4A8 +C5M/cwFTUm7Y1hfZgJioXMMiojbZbtEB3P7OhlEfhS7W5osrlAiXT3OjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIB7lUah1MXHA +N3Nm6WodfsAa/duGjJSDzFAbb4rHrnUvMAoGCCqGSM49BAMCA0gAMEUCIQCFpT7x +2YsjX/w+V6l3LBT/VEs2t6cKxiwKV/BnXJrY0AIgAg+rlKojdiNEYWKu9DdOB109 +cTeAUGWnOiqS0LXS3rQ= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt new file mode 100644 index 00000000..514fa15d --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRAMObKli4UM2rqWKfrpYyuWowCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQzWhcNMjcwODMwMTEw +MDQzWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGy05kOY0lZ+8+HilYWga6psAb3Z +wNhTAz5+Vlow/UAJfDeIIUJ4ujQ3wuCtnJoJq7CyCnNhNrPCKnkcMGIQg6ejbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCAsi1NtP9SjKErcu4hfQjmI5gN7FuLL +p+DB7iwHT40YITAKBggqhkjOPQQDAgNHADBEAiAkO04TT5EVuG+hOuQrCQnOLDya +njdbFsAfusJnz4r9DgIgXzIhYBhtU5NIxoWvojfY1OoOmVszGkeYwhXqlLGW8pY= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key new file mode 100644 index 00000000..4aafbb6b --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgeuhUcD3Koj+7GkCM +D06OuKNUIqH5OBNe8uuXMivpv0ShRANCAARstOZDmNJWfvPh4pWFoGuqbAG92cDY +UwM+flZaMP1ACXw3iCFCeLo0N8LgrZyaCauwsgpzYTazwip5HDBiEIOn +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/e2e_cli/docker-compose-cli.yaml b/hyperledger/1.0.3/e2e_cli/docker-compose-cli.yaml new file mode 100644 index 00000000..3353f27b --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/docker-compose-cli.yaml @@ -0,0 +1,163 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + zookeeper0: + container_name: zookeeper0 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + container_name: zookeeper1 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + container_name: zookeeper2 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + kafka0: + container_name: kafka0 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + container_name: kafka1 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + container_name: kafka2 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + container_name: kafka3 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + orderer.example.com: + extends: + file: base/docker-compose-base-e2e.yaml + service: orderer.example.com + container_name: orderer.example.com + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + - kafka0 + - kafka1 + - kafka2 + - kafka3 + + peer0.org1.example.com: + container_name: peer0.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + container_name: peer1.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + container_name: peer0.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + container_name: peer1.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org2.example.com + + cli: + container_name: cli + image: hyperledger/fabric-tools + tty: true + environment: + - GOPATH=/opt/gopath + - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock + - CORE_LOGGING_LEVEL=DEBUG + - CORE_PEER_ID=cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_ENABLED=true + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer + command: /bin/bash -c './scripts/script.sh ${CHANNEL_NAME}; sleep $TIMEOUT' + volumes: + - /var/run/:/host/var/run/ + - ../chaincode/go/:/opt/gopath/src/github.com/hyperledger/fabric/examples/chaincode/go + - ./crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ + - ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/ + - ./channel-artifacts:/opt/gopath/src/github.com/hyperledger/fabric/peer/channel-artifacts + depends_on: + - orderer.example.com + - peer0.org1.example.com + - peer1.org1.example.com + - peer0.org2.example.com + - peer1.org2.example.com diff --git a/hyperledger/1.0.3/e2e_cli/docker-compose-couch.yaml b/hyperledger/1.0.3/e2e_cli/docker-compose-couch.yaml new file mode 100644 index 00000000..d2049b7f --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/docker-compose-couch.yaml @@ -0,0 +1,67 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + couchdb0: + container_name: couchdb0 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "5984:5984" + + peer0.org1.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb0:5984 + depends_on: + - couchdb0 + + couchdb1: + container_name: couchdb1 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "6984:5984" + + peer1.org1.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb1:5984 + depends_on: + - couchdb1 + + couchdb2: + container_name: couchdb2 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "7984:5984" + + peer0.org2.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb2:5984 + depends_on: + - couchdb2 + + couchdb3: + container_name: couchdb3 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "8984:5984" + + peer1.org2.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb3:5984 + depends_on: + - couchdb3 diff --git a/hyperledger/1.0.3/e2e_cli/docker-compose-e2e-template.yaml b/hyperledger/1.0.3/e2e_cli/docker-compose-e2e-template.yaml new file mode 100644 index 00000000..7db21047 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/docker-compose-e2e-template.yaml @@ -0,0 +1,159 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + ca0: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org1 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY + ports: + - "7054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg1 + + ca1: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org2 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/CA2_PRIVATE_KEY + ports: + - "8054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/CA2_PRIVATE_KEY -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org2.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg2 + + zookeeper0: + container_name: zookeeper0 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + container_name: zookeeper1 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + container_name: zookeeper2 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + kafka0: + container_name: kafka0 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + container_name: kafka1 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + container_name: kafka2 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + container_name: kafka3 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + orderer.example.com: + extends: + file: base/docker-compose-base-e2e.yaml + service: orderer.example.com + container_name: orderer.example.com + depends_on: + - kafka0 + - kafka1 + - kafka2 + - kafka3 + + peer0.org1.example.com: + container_name: peer0.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + container_name: peer1.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + container_name: peer0.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + container_name: peer1.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org2.example.com diff --git a/hyperledger/1.0.3/e2e_cli/docker-compose-e2e.yaml b/hyperledger/1.0.3/e2e_cli/docker-compose-e2e.yaml new file mode 100644 index 00000000..ba077420 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/docker-compose-e2e.yaml @@ -0,0 +1,159 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + ca0: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org1 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/2628c774d6def25e2bf6147c30f25fe76469d63d257965ac867544acd090148c_sk + ports: + - "7054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/2628c774d6def25e2bf6147c30f25fe76469d63d257965ac867544acd090148c_sk -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg1 + + ca1: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org2 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/3f39c678fc9b1f79cddb94f1e896cc3c487aa25c2ebf8b7f3e0205c2d21a37ec_sk + ports: + - "8054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/3f39c678fc9b1f79cddb94f1e896cc3c487aa25c2ebf8b7f3e0205c2d21a37ec_sk -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org2.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg2 + + zookeeper0: + container_name: zookeeper0 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + container_name: zookeeper1 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + container_name: zookeeper2 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + kafka0: + container_name: kafka0 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + container_name: kafka1 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + container_name: kafka2 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + container_name: kafka3 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + orderer.example.com: + extends: + file: base/docker-compose-base-e2e.yaml + service: orderer.example.com + container_name: orderer.example.com + depends_on: + - kafka0 + - kafka1 + - kafka2 + - kafka3 + + peer0.org1.example.com: + container_name: peer0.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + container_name: peer1.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + container_name: peer0.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + container_name: peer1.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org2.example.com diff --git a/hyperledger/1.0.3/e2e_cli/download-dockerimages.sh b/hyperledger/1.0.3/e2e_cli/download-dockerimages.sh new file mode 100644 index 00000000..cbe966b8 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/download-dockerimages.sh @@ -0,0 +1,81 @@ +#!/bin/bash -eu +# +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + + +################################################## +# This script pulls docker images from hyperledger +# docker hub repository and Tag it as +# hyperledger/fabric- latest tag +################################################## + +#Set ARCH variable i.e ppc64le,s390x,x86_64,i386 +ARCH=`uname -m` + +dockerFabricPull() { + local FABRIC_TAG=$1 + for IMAGES in peer orderer couchdb ccenv javaenv kafka tools zookeeper; do + echo "==> FABRIC IMAGE: $IMAGES" + echo + docker pull hyperledger/fabric-$IMAGES:$FABRIC_TAG + docker tag hyperledger/fabric-$IMAGES:$FABRIC_TAG hyperledger/fabric-$IMAGES + done +} + +dockerCaPull() { + local CA_TAG=$1 + echo "==> FABRIC CA IMAGE" + echo + docker pull hyperledger/fabric-ca:$CA_TAG + docker tag hyperledger/fabric-ca:$CA_TAG hyperledger/fabric-ca +} +usage() { + echo "Description " + echo + echo "Pulls docker images from hyperledger dockerhub repository" + echo "tag as hyperledger/fabric-:latest" + echo + echo "USAGE: " + echo + echo "./download-dockerimages.sh [-c ] [-f ]" + echo " -c fabric-ca docker image tag" + echo " -f fabric docker image tag" + echo + echo + echo "EXAMPLE:" + echo "./download-dockerimages.sh -c x86_64-1.0.0-beta -f x86_64-1.0.0-beta" + echo + echo "By default, pulls fabric-ca and fabric 1.0.0-beta docker images" + echo "from hyperledger dockerhub" + exit 0 +} + +while getopts "\?hc:f:" opt; do + case "$opt" in + c) CA_TAG="$OPTARG" + echo "Pull CA IMAGES" + ;; + + f) FABRIC_TAG="$OPTARG" + echo "Pull FABRIC TAG" + ;; + \?|h) usage + echo "Print Usage" + ;; + esac +done + +: ${CA_TAG:="$ARCH-1.0.0-beta"} +: ${FABRIC_TAG:="$ARCH-1.0.0-beta"} + +echo "===> Pulling fabric Images" +dockerFabricPull ${FABRIC_TAG} + +echo "===> Pulling fabric ca Image" +dockerCaPull ${CA_TAG} +echo +echo "===> List out hyperledger docker images" +docker images | grep hyperledger* diff --git a/hyperledger/1.0.3/e2e_cli/end-to-end.rst b/hyperledger/1.0.3/e2e_cli/end-to-end.rst new file mode 100644 index 00000000..9f187339 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/end-to-end.rst @@ -0,0 +1,912 @@ +End-to-End Flow +=============== + +The end-to-end verification provisions a sample Fabric network consisting of +two organizations, each maintaining two peers, and a Kafka-based ordering service. + +This verification makes use of two fundamental tools, which are necessary to +create a functioning transactional network with digital signature validation +and access control: + +* cryptogen - generates the x509 certificates used to identify and authenticate the various components in the network. +* configtxgen - generates the requisite configuration artifacts for orderer bootstrap and channel creation. + +Each tool consumes a configuration yaml file, within which we specify the topology +of our network (cryptogen) and the location of our certificates for various +configuration operations (configtxgen). Once the tools have been successfully run, +we are able to launch our network. More detail on the tools and the structure of +the network will be provided later in this document. For now, let's get going... + +Prerequisites +------------- + +- `Git client `__ +- `Docker `__ - v1.12 or higher +- `Docker Compose `__ - v1.8 or higher +- `Homebrew `__ - OSX only +- `Xcode `__ - OSX only (this can take upwards of an hour) +- `Docker Toolbox `__ - Windows users only +- `Go `__ - 1.7 or higher + +On Windows machines you will also need the following which provides a better alternative to the Windows command prompt: + +- `Git Bash `__ + +.. note:: On older versions of Windows, such as Windows 7, you + typically get this as part of installing Docker + Toolbox. However experience has shown this to be a poor + development environment with limited functionality. It is + suitable to run docker based scenarios, such as + :doc:`getting_started`, but you may not be able to find a + suitable ``make`` command to successfuly go through the + scenario described here. + +Setting the $GOPATH +^^^^^^^^^^^^^^^^^^^ +Make sure you have properly setup your Host's `GOPATH environment +variable `__. This is necessary for the +code to compile properly. + +Now create the following directory structure and ``cd`` into it: + +.. code:: bash + + mkdir -p $GOPATH/src/github.com/hyperledger + cd $GOPATH/src/github.com/hyperledger + +- Clone the Fabric code base into this path. + +.. code:: bash + + git clone http://gerrit.hyperledger.org/r/fabric + +or though a mirrored repository in github: + +.. code:: bash + + git clone https://github.com/hyperledger/fabric.git + +- If you are running OSX, perform the following: + +.. code:: bash + + brew install gnu-tar --with-default-names + brew install libtool + +Build the binaries +^^^^^^^^^^^^^^^^^^ + +- Now make the platform-specific binaries for ``cryptogen`` and ``configtxgen``. + +.. code:: bash + + cd $GOPATH/src/github.com/hyperledger/fabric + # ensure sure you are in the /fabric directory where the Makefile resides + make release + +This will output platform-specific binaries into the ``fabric/release`` folder. + +- Next, make the Fabric images. This typically takes between five to ten minutes, so + be patient: + +.. code:: bash + + # make sure you are in the /fabric directory + make docker + +Execute a ``docker images`` command in your terminal. If the images compiled +successfully, you should see an output similar to the following: + +.. code:: bash + + REPOSITORY TAG IMAGE ID CREATED SIZE + hyperledger/fabric-couchdb latest e2df4dd39ca9 38 minutes ago 1.51 GB + hyperledger/fabric-couchdb x86_64-1.0.0-beta e2df4dd39ca9 38 minutes ago 1.51 GB + hyperledger/fabric-kafka latest 08af4d797266 40 minutes ago 1.3 GB + hyperledger/fabric-kafka x86_64-1.0.0-beta 08af4d797266 40 minutes ago 1.3 GB + hyperledger/fabric-zookeeper latest 444e9e695367 40 minutes ago 1.31 GB + hyperledger/fabric-zookeeper x86_64-1.0.0-beta 444e9e695367 40 minutes ago 1.31 GB + hyperledger/fabric-testenv latest 8678d3101930 41 minutes ago 1.41 GB + hyperledger/fabric-testenv x86_64-1.0.0-beta 8678d3101930 41 minutes ago 1.41 GB + hyperledger/fabric-buildenv latest 60911392c82e 41 minutes ago 1.33 GB + hyperledger/fabric-buildenv x86_64-1.0.0-beta 60911392c82e 41 minutes ago 1.33 GB + hyperledger/fabric-orderer latest 2afab937b9cc 41 minutes ago 182 MB + hyperledger/fabric-orderer x86_64-1.0.0-beta 2afab937b9cc 41 minutes ago 182 MB + hyperledger/fabric-peer latest 9560e58e8089 41 minutes ago 185 MB + hyperledger/fabric-peer x86_64-1.0.0-beta 9560e58e8089 41 minutes ago 185 MB + hyperledger/fabric-javaenv latest 881ca5219fad 42 minutes ago 1.43 GB + hyperledger/fabric-javaenv x86_64-1.0.0-beta 881ca5219fad 42 minutes ago 1.43 GB + hyperledger/fabric-ccenv latest 28af77ffe9e9 43 minutes ago 1.29 GB + hyperledger/fabric-ccenv x86_64-1.0.0-beta 28af77ffe9e9 43 minutes ago 1.29 GB + hyperledger/fabric-baseimage x86_64-0.3.0 f4751a503f02 3 months ago 1.27 GB + hyperledger/fabric-baseos x86_64-0.3.0 c3a4cf3b3350 3 months ago 161 MB + +If you failed to compile the ``fabric-testenv`` image, then you can +perform a ``make clean`` followed by another ``make docker``. + +Cryptogen Tool +-------------- +We will use the cryptogen tool to generate the cryptographic material (x509 certs) +for our various network entities. The certificates are based on a standard PKI +implementation where validation is achieved by reaching a common trust anchor. + +How does it work? +^^^^^^^^^^^^^^^^^ + +Cryptogen consumes a file - ``crypto-config.yaml`` - that contains the network +topology and allows us to generate a library of certificates for both the +Organizations and the components that belong to those Organizations. Each +Organization is provisioned a unique root certificate (``ca-cert``), that binds +specific components (peers and orderers) to that Org. Transactions and communications +within Fabric are signed by an entity's private key (``keystore``), and then verified +by means of a public key (``signcerts``). You will notice a "count" variable within +this file. We use this to specify the number of peers per Organization; in our +case it's two peers per Org. The rest of this template is extremely +self-explanatory. + +After we run the tool, the certs will be parked in a folder titled ``crypto-config``. + +Configuration Transaction Generator +----------------------------------- + +The `configtxgen +tool `__ +is used to create four artifacts: orderer **bootstrap block**, fabric +**channel configuration transaction**, and two **anchor peer transactions** - one +for each Peer Org. + +The orderer block is the genesis block for the ordering service, and the +channel transaction file is broadcast to the orderer at channel creation +time. The anchor peer transactions, as the name might suggest, specify each +Org's anchor peer on this channel. + +How does it work? +^^^^^^^^^^^^^^^^^ + +Configtxgen consumes a file - ``configtx.yaml`` - that contains the definitions +for the sample network. There are three members - one Orderer Org (``OrdererOrg``) +and two Peer Orgs (``Org1`` & ``Org2``) each managing and maintaining two peer nodes. +This file also specifies a consortium - ``SampleConsortium`` - consisting of our +two Peer Orgs. Pay specific attention to the "Profiles" section at the top of +this file. You will notice that we have two unique headers. One for the orderer genesis +block - ``TwoOrgsOrdererGenesis`` - and one for our channel - ``TwoOrgsChannel``. +These headers are important, as we will pass them in as arguments when we create +our artifacts. This file also contains two additional specifications that are worth +noting. Firstly, we specify the anchor peers for each Peer Org +(``peer0.org1.example.com`` & ``peer0.org2.example.com``). Secondly, we point to +the location of the MSP directory for each member, in turn allowing us to store the +root certificates for each Org in the orderer genesis block. This is a critical +concept. Now any network entity communicating with the ordering service can have +its digital signature verified. + +For ease of use, a script - ``generateArtifacts.sh`` - is provided. The +script will generate the crypto material and our four configuration artifacts, and +subsequently output these files into the ``channel-artifacts`` folder. + +Run the shell script +^^^^^^^^^^^^^^^^^^^^ + +Make sure you are in the ``examples/e2e_cli`` directory where the script resides. +Decide upon a unique name for your channel and replace the parm +with a name of your choice. The script will fail if you do not supply a name. + +.. code:: bash + + cd examples/e2e_cli + ./generateArtifacts.sh + +The output of the script is somewhat verbose, as it generates the crypto +libraries and multiple artifacts. However, you will notice five distinct +and self-explanatory messages in your terminal. They are as follows: + +.. code:: bash + + ########################################################## + ##### Generate certificates using cryptogen tool ######### + ########################################################## + + ########################################################## + ######### Generating Orderer Genesis block ############## + ########################################################## + + ################################################################# + ### Generating channel configuration transaction 'channel.tx' ### + ################################################################# + + ################################################################# + ####### Generating anchor peer update for Org0MSP ########## + ################################################################# + + ################################################################# + ####### Generating anchor peer update for Org1MSP ########## + ################################################################# + + +These configuration transactions will bundle the crypto material for the +participating members and their network components and output an orderer +genesis block and three channel transaction artifacts. These artifacts are +required to successfully bootstrap a Fabric network and create a channel to +transact upon. + +Manually generate the artifacts (optional) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +You can refer to the ``generateArtifacts.sh`` script for the commands, however +for the sake of convenience we will also provide them here. + +First, let's set the environment variable for our platform architecture. +This command will detect your OS and use the appropriate binaries for the subsequent steps: + +.. code:: bash + + # for power or z + os_arch=$(echo "$(uname -s)-$(uname -m)" | awk '{print tolower($0)}') + + # for linux, osx or windows + os_arch=$(echo "$(uname -s)-amd64" | awk '{print tolower($0)}') + +Check to make sure it is set properly: + +.. code:: bash + + echo $os_arch + +Now let's run the tool. Our platform specific binary is in the ``release`` +directory, so we need to provide the relative path to where the tool resides. +Make sure you are in ``examples/e2e_cli``: + +.. code:: bash + + ./../../release/$os_arch/bin/cryptogen generate --config=./crypto-config.yaml + +You will likely see the following warning. It's innocuous, ignore it: + +.. code:: bash + + [bccsp] GetDefault -> WARN 001 Before using BCCSP, please call InitFactories(). Falling back to bootBCCSP. + +Next, we need to tell the ``configtxgen`` tool where to look for the +``configtx.yaml`` file that it needs to ingest. We will tell it look in our +present working directory: + +.. code:: bash + + FABRIC_CFG_PATH=$PWD + +Create the orderer genesis block: + +.. code:: bash + + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block + +You can ignore the logs regarding intermediate certs, we are not using them in +this crypto implementation. + +Create the channel transaction artifact: + +.. code:: bash + + # make sure to set the parm + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID + +Define the anchor peer for Org1 on the channel: + +.. code:: bash + + # make sure to set the parm + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID -asOrg Org1MSP + +Define the anchor peer for Org2 on the channel: + +.. code:: bash + + # make sure to set the parm + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID -asOrg Org2MSP + +Run the end-to-end test with Docker +----------------------------------- + +Make sure you are in the ``/e2e_cli`` directory. Then use docker-compose +to spawn the network entities and drive the tests. Notice that you can set a +``TIMEOUT`` variable (specified in seconds) so that your cli container does not +exit after the script completes. You can choose any value: + +.. code:: bash + + # the TIMEOUT variable is optional + CHANNEL_NAME= TIMEOUT= docker-compose -f docker-compose-cli.yaml up -d + +If you created a unique channel name, be sure to pass in that parameter. +For example, + +.. code:: bash + + CHANNEL_NAME=abc TIMEOUT=1000 docker-compose -f docker-compose-cli.yaml up -d + +Wait, 60 seconds or so. Behind the scenes, there are transactions being sent +to the peers. Execute a ``docker ps`` to view your active containers. +You should see an output identical to the following: + +.. code:: bash + + CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES + b568de3fe931 dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 4 minutes ago Up 4 minutes dev-peer1.org2.example.com-mycc-1.0 + 17c1c82087e7 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 4 minutes ago Up 4 minutes dev-peer0.org1.example.com-mycc-1.0 + 0e1c5034c47b dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." 4 minutes ago Up 4 minutes dev-peer0.org2.example.com-mycc-1.0 + 71339e7e1d38 hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com + add6113ffdcf hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com + 689396c0e520 hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com + 65424407a653 hyperledger/fabric-orderer "orderer" 5 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.example.com + ce14853db660 hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com + +If you set a moderately high ``TIMEOUT`` value, then you will see your cli +container as well. + +What's happening behind the scenes? +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +- A script - ``script.sh`` - is baked inside the CLI container. The + script drives the ``createChannel`` command against the supplied channel name + and uses the channel.tx file for channel configuration. + +- The output of ``createChannel`` is a genesis block - + ``.block`` - which gets stored on the peers' file systems and contains + the channel configuration specified from channel.tx. + +- The ``joinChannel`` command is exercised for all four peers, which takes as + input the previously generated genesis block. This command instructs the + peers to join ```` and create a chain starting with ``.block``. + +- Now we have a channel consisting of four peers, and two + organizations. This is our ``TwoOrgsChannel`` profile. + +- ``peer0.org1.example.com`` and ``peer1.org1.example.com`` belong to Org1; + ``peer0.org2.example.com`` and ``peer1.org2.example.com`` belong to Org2 + +- These relationships are defined through the ``crypto-config.yaml`` and + the MSP path is specified in our docker compose. + +- The anchor peers for Org1MSP (``peer0.org1.example.com``) and + Org2MSP (``peer0.org2.example.com``) are then updated. We do this by passing + the ``Org1MSPanchors.tx`` and ``Org2MSPanchors.tx`` artifacts to the ordering + service along with the name of our channel. + +- A chaincode - **chaincode_example02** - is installed on ``peer0.org1.example.com`` and + ``peer0.org2.example.com`` + +- The chaincode is then "instantiated" on ``peer0.org2.example.com``. Instantiation + adds the chaincode to the channel, starts the container for the target peer, + and initializes the key value pairs associated with the chaincode. The initial + values for this example are ["a","100" "b","200"]. This "instantiation" results + in a container by the name of ``dev-peer0.org2.example.com-mycc-1.0`` starting. + +- The instantiation also passes in an argument for the endorsement + policy. The policy is defined as + ``-P "OR ('Org1MSP.member','Org2MSP.member')"``, meaning that any + transaction must be endorsed by a peer tied to Org1 or Org2. + +- A query against the value of "a" is issued to ``peer0.org1.example.com``. The + chaincode was previously installed on ``peer0.org1.example.com``, so this will start + a container for Org1 peer0 by the name of ``dev-peer0.org1.example.com-mycc-1.0``. The result + of the query is also returned. No write operations have occurred, so + a query against "a" will still return a value of "100". + +- An invoke is sent to ``peer0.org1.example.com`` to move "10" from "a" to "b" + +- The chaincode is then installed on ``peer1.org2.example.com`` + +- A query is sent to ``peer1.org2.example.com`` for the value of "a". This starts a + third chaincode container by the name of ``dev-peer1.org2.example.com-mycc-1.0``. A + value of 90 is returned, correctly reflecting the previous + transaction during which the value for key "a" was modified by 10. + +What does this demonstrate? +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Chaincode **MUST** be installed on a peer in order for it to +successfully perform read/write operations against the ledger. +Furthermore, a chaincode container is not started for a peer until an ``init`` or +traditional transaction - read/write - is performed against that chaincode (e.g. query for +the value of "a"). The transaction causes the container to start. Also, +all peers in a channel maintain an exact copy of the ledger which +comprises the blockchain to store the immutable, sequenced record in +blocks, as well as a state database to maintain current fabric state. +This includes those peers that do not have chaincode installed on them +(like ``peer1.org1.example.com`` in the above example) . Finally, the chaincode is accessible +after it is installed (like ``peer1.org2.example.com`` in the above example) because it +has already been instantiated. + +How do I see these transactions? +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Check the logs for the CLI docker container. + +.. code:: bash + + docker logs -f cli + +You should see the following output: + +.. code:: bash + + 2017-05-16 17:08:01.366 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP + 2017-05-16 17:08:01.366 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity + 2017-05-16 17:08:01.366 UTC [msp/identity] Sign -> DEBU 006 Sign: plaintext: 0AB1070A6708031A0C08F1E3ECC80510...6D7963631A0A0A0571756572790A0161 + 2017-05-16 17:08:01.367 UTC [msp/identity] Sign -> DEBU 007 Sign: digest: E61DB37F4E8B0D32C9FE10E3936BA9B8CD278FAA1F3320B08712164248285C54 + Query Result: 90 + 2017-05-16 17:08:15.158 UTC [main] main -> INFO 008 Exiting..... + ===================== Query on PEER3 on channel 'mychannel' is successful ===================== + + ===================== All GOOD, End-2-End execution completed ===================== + + + _____ _ _ ____ _____ ____ _____ + | ____| | \ | | | _ \ | ____| |___ \ | ____| + | _| | \| | | | | | _____ | _| __) | | _| + | |___ | |\ | | |_| | |_____| | |___ / __/ | |___ + |_____| |_| \_| |____/ |_____| |_____| |_____| + +How can I see the chaincode logs? +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Inspect the individual chaincode containers to see the separate +transactions executed against each container. Here is the combined +output from each container: + +.. code:: bash + + $ docker logs dev-peer0.org2.example.com-mycc-1.0 + 04:30:45.947 [BCCSP_FACTORY] DEBU : Initialize BCCSP [SW] + ex02 Init + Aval = 100, Bval = 200 + + $ docker logs dev-peer0.org1.example.com-mycc-1.0 + 04:31:10.569 [BCCSP_FACTORY] DEBU : Initialize BCCSP [SW] + ex02 Invoke + Query Response:{"Name":"a","Amount":"100"} + ex02 Invoke + Aval = 90, Bval = 210 + + $ docker logs dev-peer1.org2.example.com-mycc-1.0 + 04:31:30.420 [BCCSP_FACTORY] DEBU : Initialize BCCSP [SW] + ex02 Invoke + Query Response:{"Name":"a","Amount":"90"} + +All in one +^^^^^^^^^^ + +You can also generate the artifacts and crypto, and drive the tests using a single +shell script. The ``cryptogen``, ``configtxgen`` and ``docker-compose`` commands are +embedded in the script. If you choose not to supply a channel ID, then the +script will use a default name of ``mychannel``. The cli timeout parameter +is an optional value; if you choose not to set it, then your cli container +will exit upon conclusion of the script. + +.. code:: bash + + ./network_setup.sh up + +OR + +.. code:: bash + + ./network_setup.sh up + +Understanding the docker-compose topology +----------------------------------------- + +The ``e2e_cli`` folder offers us two flavors of docker-compose files, both of which +are extended from the ``docker-compose-base.yaml``. Our first flavor, +``docker-compose-cli.yaml``, provides us with a CLI container, along with an orderer, +four peers, and the optional couchDB containers. We use this docker-compose for +the entirety of the instructions on this page. + +The second flavor, ``docker-compose-e2e.yaml``, is constructed to run end-to-end tests +using the Node.js SDK. Aside from functioning with the SDK, its primary differentiation +is that there are containers for the fabric-ca servers. As a result, we are able +to send REST calls to the organizational CAs for user registration and enrollment. + +If you want to use the ``docker-compose-e2e.yaml`` without first running the +**All in one** script, then we will need to make four slight modifications. +We need to point to the private keys for our Organization's CA's. You can locate +these values in your crypto-config folder. For example, to locate the private +key for Org1 we would follow this path - ``crypto-config/peerOrganizations/org1.example.com/ca/``. +The private key is a long hash value followed by ``_sk``. The path for Org2 +would be - ``crypto-config/peerOrganizations/org2.example.com/ca/``. + +In the ``docker-compose-e2e.yaml`` update the FABRIC_CA_SERVER_TLS_KEYFILE variable +for ca0 and ca1. You also need to edit the path that is provided in the command +to start the ca server. You are providing the same private key twice for each +CA container. + +Manually exercise the commands +------------------------------ + +Exit the currently-running containers: + +.. code:: bash + + docker rm -f $(docker ps -aq) + +Execute a ``docker images`` command in your terminal to view the +chaincode images. They will look similar to the following: + +.. code:: bash + + REPOSITORY TAG IMAGE ID CREATED SIZE + dev-peer1.org2.example.com-mycc-1.0 latest 4bc5e9b5dd97 5 seconds ago 176 MB + dev-peer0.org1.example.com-mycc-1.0 latest 6f2aeb032076 22 seconds ago 176 MB + dev-peer0.org2.example.com-mycc-1.0 latest 509b8e393cc6 39 seconds ago 176 MB + +Remove these images: + +.. code:: bash + + docker rmi + +For example: + +.. code:: bash + + docker rmi -f 4bc 6f2 509 + +Ensure you have the configuration artifacts. If you deleted them, run +the shell script again: + +.. code:: bash + + # remember to supply a channel ID + ./generateArtifacts.sh + +Modify the docker-compose file +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Open the ``docker-compose-cli.yaml`` file and comment out the command to run +``script.sh``. Navigate down to the cli container and place a ``#`` to the +left of the command. For example: + +.. code:: bash + + working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer + # command: /bin/bash -c './scripts/script.sh ${CHANNEL_NAME}; sleep $TIMEOUT' + +Save the file and return to the ``/e2e_cli`` directory. + +Now restart your network: + +.. code:: bash + + # make sure you are in the /e2e_cli directory where your docker-compose script resides + CHANNEL_NAME= TIMEOUT= docker-compose -f docker-compose-cli.yaml up -d + +If you want to see the realtime logs for your network, then do not supply the ``-d`` flag. +If you let the logs stream, then you will need to open a second terminal to execute the CLI calls. + +Command syntax +^^^^^^^^^^^^^^ + +Refer to the create and join commands in the ``script.sh`` for the exact syntax. + +For the following CLI commands against `peer0.org1.example.com` to work, we need +to preface our commands with the four environment variables given below. These +variables for ``peer0.org1.example.com`` are baked into the CLI container, +therefore we can operate without passing them. **HOWEVER**, if you want to send +calls to other peers or the orderer, then you will need to provide these +values accordingly. Inspect the ``docker-compose-base.yaml`` for the specific +paths: + +.. code:: bash + + # Environment variables for PEER0 + + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + CORE_PEER_LOCALMSPID="Org1MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + +Create channel +^^^^^^^^^^^^^^ + +Exec into the cli container: + +.. code:: bash + + docker exec -it cli bash + +If successful you should see the following: + +.. code:: bash + + root@0d78bb69300d:/opt/gopath/src/github.com/hyperledger/fabric/peer# + +Specify your channel name with the ``-c`` flag. Specify your channel +configuration transaction with the ``-f`` flag. In this case it is +``channel.tx``, however you can mount your own configuration transaction +with a different name. + +.. code:: bash + + # the channel.tx file is mounted in the channel-artifacts directory within your cli container + # as a result, we pass the full path for the file + # we also pass the path for the orderer ca-cert in order to verify the TLS handshake + # be sure to replace the $CHANNEL_NAME variable appropriately + + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem + + +.. note:: You will remain in the CLI container for the remainder of + these manual commands. You must also remember to preface all commands + with the corresponding environment variables when targeting a peer other than + ``peer0.org1.example.com``. + +Join channel +^^^^^^^^^^^^ + +Join specific peers to the channel + +.. code:: bash + + # By default, this joins ``peer0.org1.example.com`` only + # the channel.block was returned by the previous command + + peer channel join -b + +You can make other peers join the channel as necessary by making appropriate +changes in the four environment variables. + +Install chaincode onto a remote peer +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Install the sample go code onto one of the four peer nodes + +.. code:: bash + + peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 + +Instantiate chaincode and define the endorsement policy +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Instantiate the chaincode on a peer. This will launch a chaincode +container for the targeted peer and set the endorsement policy for the +chaincode. In this snippet, we define the policy as requiring an +endorsement from one peer node that is a part of either ``Org1`` or ``Org2``. +The command is: + +.. code:: bash + + # be sure to replace the $CHANNEL_NAME environment variable + # if you did not install your chaincode with a name of mycc, then modify that argument as well + + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 -c '{"Args":["init","a", "100", "b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" + +See the `endorsement +policies `__ +documentation for more details on policy implementation. + +Invoke chaincode +^^^^^^^^^^^^^^^^ + +.. code:: bash + + # be sure to set the -C and -n flags appropriately + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n mycc -c '{"Args":["invoke","a","b","10"]}' + +Make sure to wait a few seconds for the operation to complete. + +Query chaincode +^^^^^^^^^^^^^^^ + +.. code:: bash + + # be sure to set the -C and -n flags appropriately + peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}' + +The result of the above command should be the following: + +.. code:: bash + + Query Result: 90 + +Feel free to start over and manipulate the key value pairs and subsequent +invocations. + +Using CouchDB +------------- + +The state database can be switched from the default (goleveldb) to CouchDB. +The same chaincode functions are available with CouchDB, however, there is the +added ability to perform rich and complex queries against the state database +data content contingent upon the chaincode data being modeled as JSON. + +To use CouchDB instead of the default database (goleveldb), follow the same +procedure in the **Manually exercise the commands** section, except when starting +the network pass the couchdb docker-compose as well: + +.. code:: bash + + # make sure you are in the /e2e_cli directory where your docker-compose script resides + CHANNEL_NAME= TIMEOUT= docker-compose -f docker-compose-cli.yaml -f docker-compose-couch.yaml up -d + +**chaincode_example02** should now work using CouchDB underneath. + +.. note:: If you choose to implement mapping of the fabric-couchdb container + port to a host port, please make sure you are aware of the security + implications. Mapping of the port in a development environment makes the + CouchDB REST API available, and allows the + visualization of the database via the CouchDB web interface (Fauxton). + Production environments would likely refrain from implementing port mapping in + order to restrict outside access to the CouchDB containers. + +You can use **chaincode_example02** chaincode against the CouchDB state database +using the steps outlined above, however in order to exercise the CouchDB query +capabilities you will need to use a chaincode that has data modeled as JSON, +(e.g. **marbles02**). You can locate the **marbles02** chaincode in the +``fabric/examples/chaincode/go`` directory. + +We will follow the same process to create and join the channel as outlined in the +**Manually exercise the commands** section above. Once you have joined your +peer(s) to the channel, use the following steps to interact with the **marbles02** +chaincode: + +- Install and instantiate the chaincode on ``peer0.org1.example.com``: + +.. code:: bash + + # be sure to modify the $CHANNEL_NAME variable accordingly for the instantiate command + + peer chaincode install -o orderer.example.com:7050 -n marbles -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/marbles02 + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/marbles02 -c '{"Args":["init"]}' -P "OR ('Org0MSP.member','Org1MSP.member')" + +- Create some marbles and move them around: + +.. code:: bash + + # be sure to modify the $CHANNEL_NAME variable accordingly + + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["initMarble","marble1","blue","35","tom"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["initMarble","marble2","red","50","tom"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["initMarble","marble3","blue","70","tom"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["transferMarble","marble2","jerry"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["transferMarblesBasedOnColor","blue","jerry"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["delete","marble1"]}' + + +- If you chose to map the CouchDB ports in docker-compose, you can now view + the state database through the CouchDB web interface (Fauxton) by opening + a browser and navigating to the following URL: + + ``http://localhost:5984/_utils`` + +You should see a database named ``mychannel`` (or your unique channel name) and +the documents inside it. + +.. note:: For the below commands, be sure to update the $CHANNEL_NAME variable appropriately. + +You can run regular queries from the CLI (e.g. reading ``marble2``): + +.. code:: bash + + peer chaincode query -C $CHANNEL_NAME -n marbles -c '{"Args":["readMarble","marble2"]}' + +The output should display the details of ``marble2``: + +.. code:: bash + + Query Result: {"color":"red","docType":"marble","name":"marble2","owner":"jerry","size":50} + +You can retrieve the history of a specific marble - e.g. ``marble1``: + +.. code:: bash + + peer chaincode query -C $CHANNEL_NAME -n marbles -c '{"Args":["getHistoryForMarble","marble1"]}' + +The output should display the transactions on ``marble1``: + +.. code:: bash + + Query Result: [{"TxId":"1c3d3caf124c89f91a4c0f353723ac736c58155325f02890adebaa15e16e6464", "Value":{"docType":"marble","name":"marble1","color":"blue","size":35,"owner":"tom"}},{"TxId":"755d55c281889eaeebf405586f9e25d71d36eb3d35420af833a20a2f53a3eefd", "Value":{"docType":"marble","name":"marble1","color":"blue","size":35,"owner":"jerry"}},{"TxId":"819451032d813dde6247f85e56a89262555e04f14788ee33e28b232eef36d98f", "Value":}] + +You can also perform rich queries on the data content, such as querying marble fields by owner ``jerry``: + +.. code:: bash + + peer chaincode query -C $CHANNEL_NAME -n marbles -c '{"Args":["queryMarblesByOwner","jerry"]}' + +The output should display the two marbles owned by ``jerry``: + +.. code:: bash + + Query Result: [{"Key":"marble2", "Record":{"color":"red","docType":"marble","name":"marble2","owner":"jerry","size":50}},{"Key":"marble3", "Record":{"color":"blue","docType":"marble","name":"marble3","owner":"jerry","size":70}}] + +A Note on Data Persistence +-------------------------- + +If data persistence is desired on the peer container or the CouchDB container, +one option is to mount a directory in the docker-host into a relevant directory +in the container. For example, you may add the following two lines in +the peer container specification in the ``docker-compose-base.yaml`` file: + +.. code:: bash + + volumes: + - /var/hyperledger/peer0:/var/hyperledger/production + + +For the CouchDB container, you may add the following two lines in the CouchDB +container specification: + +.. code:: bash + + volumes: + - /var/hyperledger/couchdb0:/opt/couchdb/data + +Troubleshooting +--------------- + +- It's recommended to start your network fresh. Use the following command + to remove artifacts, crypto, containers and chaincode images: + +.. code:: bash + + ./network_setup.sh down + +- If you see docker errors, first check your version (should be 1.12 or above), + and then try restarting your docker process. Problems with Docker are + oftentimes not immediately recognizable. For example, you may see errors + resulting from an inability to access crypto material mounted within a + container. + +- If they persist remove your images and start from scratch: + +.. code:: bash + + make clean + make docker + +- If you see the below error: + +.. code:: bash + + Error: Error endorsing chaincode: rpc error: code = 2 desc = Error installing chaincode code mycc:1.0(chaincode /var/hyperledger/production/chaincodes/mycc.1.0 exits) + +You likely have chaincode images (e.g. ``dev-peer1.org2.example.com-mycc-1.0`` or +``dev-peer0.org1.example.com-mycc-1.0``) from prior runs. Remove them and try +again. + +.. code:: bash + + docker rmi -f $(docker images | grep peer[0-9]-peer[0-9] | awk '{print $3}') + +- If you see something similar to the following: + +.. code:: bash + + Error connecting: rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure + Error: rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure + +Make sure you pointed to the correct binaries in the release folder when +generating the artifacts, and that your backend is running against "beta" images +or compiled images from the current master branch. + +If you see the below error: + +.. code:: bash + + [configtx/tool/localconfig] Load -> CRIT 002 Error reading configuration: Unsupported Config Type "" + panic: Error reading configuration: Unsupported Config Type "" + +Then you did not set the ``FABRIC_CFG_PATH`` environment variable properly. The +configtxgen tool needs this variable in order to locate the configtx.yaml. Go +back and recreate your channel artifacts. + +- To cleanup the network, use the ``down`` option: + +.. code:: bash + + ./network_setup.sh down + +- If you continue to see errors, share your logs on the **# fabric-questions** + channel on `Hyperledger Rocket Chat `__. + +.. Licensed under Creative Commons Attribution 4.0 International License + https://creativecommons.org/licenses/by/4.0/ diff --git a/hyperledger/1.0.3/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go b/hyperledger/1.0.3/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go new file mode 100644 index 00000000..53438066 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go @@ -0,0 +1,199 @@ +/* +Copyright IBM Corp. 2016 All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package main + +//WARNING - this chaincode's ID is hard-coded in chaincode_example04 to illustrate one way of +//calling chaincode from a chaincode. If this example is modified, chaincode_example04.go has +//to be modified as well with the new ID of chaincode_example02. +//chaincode_example05 show's how chaincode ID can be passed in as a parameter instead of +//hard-coding. + +import ( + "fmt" + "strconv" + + "github.com/hyperledger/fabric/core/chaincode/shim" + pb "github.com/hyperledger/fabric/protos/peer" +) + +// SimpleChaincode example simple Chaincode implementation +type SimpleChaincode struct { +} + +func (t *SimpleChaincode) Init(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Init") + _, args := stub.GetFunctionAndParameters() + var A, B string // Entities + var Aval, Bval int // Asset holdings + var err error + + if len(args) != 4 { + return shim.Error("Incorrect number of arguments. Expecting 4") + } + + // Initialize the chaincode + A = args[0] + Aval, err = strconv.Atoi(args[1]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + B = args[2] + Bval, err = strconv.Atoi(args[3]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +func (t *SimpleChaincode) Invoke(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Invoke") + function, args := stub.GetFunctionAndParameters() + if function == "invoke" { + // Make payment of X units from A to B + return t.invoke(stub, args) + } else if function == "delete" { + // Deletes an entity from its state + return t.delete(stub, args) + } else if function == "query" { + // the old "Query" is now implemtned in invoke + return t.query(stub, args) + } + + return shim.Error("Invalid invoke function name. Expecting \"invoke\" \"delete\" \"query\"") +} + +// Transaction makes payment of X units from A to B +func (t *SimpleChaincode) invoke(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A, B string // Entities + var Aval, Bval int // Asset holdings + var X int // Transaction value + var err error + + if len(args) != 3 { + return shim.Error("Incorrect number of arguments. Expecting 3") + } + + A = args[0] + B = args[1] + + // Get the state from the ledger + // TODO: will be nice to have a GetAllState call to ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + return shim.Error("Failed to get state") + } + if Avalbytes == nil { + return shim.Error("Entity not found") + } + Aval, _ = strconv.Atoi(string(Avalbytes)) + + Bvalbytes, err := stub.GetState(B) + if err != nil { + return shim.Error("Failed to get state") + } + if Bvalbytes == nil { + return shim.Error("Entity not found") + } + Bval, _ = strconv.Atoi(string(Bvalbytes)) + + // Perform the execution + X, err = strconv.Atoi(args[2]) + if err != nil { + return shim.Error("Invalid transaction amount, expecting a integer value") + } + Aval = Aval - X + Bval = Bval + X + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state back to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +// Deletes an entity from state +func (t *SimpleChaincode) delete(stub shim.ChaincodeStubInterface, args []string) pb.Response { + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting 1") + } + + A := args[0] + + // Delete the key from the state in ledger + err := stub.DelState(A) + if err != nil { + return shim.Error("Failed to delete state") + } + + return shim.Success(nil) +} + +// query callback representing the query of a chaincode +func (t *SimpleChaincode) query(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A string // Entities + var err error + + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting name of the person to query") + } + + A = args[0] + + // Get the state from the ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + jsonResp := "{\"Error\":\"Failed to get state for " + A + "\"}" + return shim.Error(jsonResp) + } + + if Avalbytes == nil { + jsonResp := "{\"Error\":\"Nil amount for " + A + "\"}" + return shim.Error(jsonResp) + } + + jsonResp := "{\"Name\":\"" + A + "\",\"Amount\":\"" + string(Avalbytes) + "\"}" + fmt.Printf("Query Response:%s\n", jsonResp) + return shim.Success(Avalbytes) +} + +func main() { + err := shim.Start(new(SimpleChaincode)) + if err != nil { + fmt.Printf("Error starting Simple chaincode: %s", err) + } +} diff --git a/hyperledger/1.0.3/e2e_cli/network_setup.sh b/hyperledger/1.0.3/e2e_cli/network_setup.sh new file mode 100644 index 00000000..85fbd924 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/network_setup.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + + +UP_DOWN="$1" +CH_NAME="$2" +CLI_TIMEOUT="$3" +IF_COUCHDB="$4" + +: ${CLI_TIMEOUT:="10000"} + +COMPOSE_FILE=docker-compose-cli.yaml +COMPOSE_FILE_COUCH=docker-compose-couch.yaml +#COMPOSE_FILE=docker-compose-e2e.yaml + +function printHelp () { + echo "Usage: ./network_setup <\$channel-name> <\$cli_timeout> .\nThe arguments must be in order." +} + +function validateArgs () { + if [ -z "${UP_DOWN}" ]; then + echo "Option up / down / restart not mentioned" + printHelp + exit 1 + fi + if [ -z "${CH_NAME}" ]; then + echo "setting to default channel 'mychannel'" + CH_NAME=mychannel + fi +} + +function clearContainers () { + CONTAINER_IDS=$(docker ps -aq) + if [ -z "$CONTAINER_IDS" -o "$CONTAINER_IDS" = " " ]; then + echo "---- No containers available for deletion ----" + else + docker rm -f $CONTAINER_IDS + fi +} + +function removeUnwantedImages() { + DOCKER_IMAGE_IDS=$(docker images | grep "dev\|none\|test-vp\|peer[0-9]-" | awk '{print $3}') + if [ -z "$DOCKER_IMAGE_IDS" -o "$DOCKER_IMAGE_IDS" = " " ]; then + echo "---- No images available for deletion ----" + else + docker rmi -f $DOCKER_IMAGE_IDS + fi +} + +function networkUp () { + if [ -f "./crypto-config" ]; then + echo "crypto-config directory already exists." + else + #Generate all the artifacts that includes org certs, orderer genesis block, + # channel configuration transaction + source generateArtifacts.sh $CH_NAME + fi + + if [ "${IF_COUCHDB}" == "couchdb" ]; then + CHANNEL_NAME=$CH_NAME TIMEOUT=$CLI_TIMEOUT docker-compose -f $COMPOSE_FILE -f $COMPOSE_FILE_COUCH up -d 2>&1 + else + CHANNEL_NAME=$CH_NAME TIMEOUT=$CLI_TIMEOUT docker-compose -f $COMPOSE_FILE up -d 2>&1 + fi + if [ $? -ne 0 ]; then + echo "ERROR !!!! Unable to pull the images " + exit 1 + fi + docker logs -f cli +} + +function networkDown () { + docker-compose -f $COMPOSE_FILE down + + #Cleanup the chaincode containers + clearContainers + + #Cleanup images + removeUnwantedImages + + # remove orderer block and other channel configuration transactions and certs + rm -rf channel-artifacts/*.block channel-artifacts/*.tx crypto-config +} + +validateArgs + +#Create the network using docker compose +if [ "${UP_DOWN}" == "up" ]; then + networkUp +elif [ "${UP_DOWN}" == "down" ]; then ## Clear the network + networkDown +elif [ "${UP_DOWN}" == "restart" ]; then ## Restart the network + networkDown + networkUp +else + printHelp + exit 1 +fi diff --git a/hyperledger/1.0.3/e2e_cli/scripts/script.sh b/hyperledger/1.0.3/e2e_cli/scripts/script.sh new file mode 100644 index 00000000..46d92067 --- /dev/null +++ b/hyperledger/1.0.3/e2e_cli/scripts/script.sh @@ -0,0 +1,273 @@ +#!/bin/bash +# Copyright London Stock Exchange Group All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# +echo +echo " ____ _____ _ ____ _____ _____ ____ _____ " +echo "/ ___| |_ _| / \ | _ \ |_ _| | ____| |___ \ | ____|" +echo "\___ \ | | / _ \ | |_) | | | _____ | _| __) | | _| " +echo " ___) | | | / ___ \ | _ < | | |_____| | |___ / __/ | |___ " +echo "|____/ |_| /_/ \_\ |_| \_\ |_| |_____| |_____| |_____|" +echo + +CHANNEL_NAME="$1" +: ${CHANNEL_NAME:="mychannel"} +: ${TIMEOUT:="60"} +COUNTER=1 +MAX_RETRY=5 +ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +echo "Channel name : "$CHANNEL_NAME + +verifyResult () { + if [ $1 -ne 0 ] ; then + echo "!!!!!!!!!!!!!!! "$2" !!!!!!!!!!!!!!!!" + echo "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +setGlobals () { + + if [ $1 -eq 0 -o $1 -eq 1 ] ; then + CORE_PEER_LOCALMSPID="Org1MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + if [ $1 -eq 0 ]; then + CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org1.example.com:7051 + fi + else + CORE_PEER_LOCALMSPID="Org2MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp + if [ $1 -eq 2 ]; then + CORE_PEER_ADDRESS=peer0.org2.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org2.example.com:7051 + fi + fi + + env |grep CORE +} + +checkOSNAvailability() { + #Use orderer's MSP for fetching system channel config block + CORE_PEER_LOCALMSPID="OrdererMSP" + CORE_PEER_TLS_ROOTCERT_FILE=$ORDERER_CA + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp + + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo "Attempting to fetch system channel 'testchainid' ...$(($(date +%s)-starttime)) secs" + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" >&log.txt + else + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Received block/ {print $NF}') + test "$VALUE" = "0" && let rc=0 + done + cat log.txt + verifyResult $rc "Ordering Service is not available, Please try again ..." + echo "===================== Ordering Service is up and running ===================== " + echo +} + +createChannel() { + setGlobals 0 + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx >&log.txt + else + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Channel creation failed" + echo "===================== Channel \"$CHANNEL_NAME\" is created successfully ===================== " + echo +} + +updateAnchorPeers() { + PEER=$1 + setGlobals $PEER + + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx >&log.txt + else + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Anchor peer update failed" + echo "===================== Anchor peers for org \"$CORE_PEER_LOCALMSPID\" on \"$CHANNEL_NAME\" is updated successfully ===================== " + sleep 5 + echo +} + +## Sometimes Join takes time hence RETRY atleast for 5 times +joinWithRetry () { + peer channel join -b $CHANNEL_NAME.block >&log.txt + res=$? + cat log.txt + if [ $res -ne 0 -a $COUNTER -lt $MAX_RETRY ]; then + COUNTER=` expr $COUNTER + 1` + echo "PEER$1 failed to join the channel, Retry after 2 seconds" + sleep 2 + joinWithRetry $1 + else + COUNTER=1 + fi + verifyResult $res "After $MAX_RETRY attempts, PEER$ch has failed to Join the Channel" +} + +joinChannel () { + for ch in 0 1 2 3; do + setGlobals $ch + joinWithRetry $ch + echo "===================== PEER$ch joined on the channel \"$CHANNEL_NAME\" ===================== " + sleep 2 + echo + done +} + +installChaincode () { + PEER=$1 + setGlobals $PEER + peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 >&log.txt + res=$? + cat log.txt + verifyResult $res "Chaincode installation on remote peer PEER$PEER has Failed" + echo "===================== Chaincode is installed on remote peer PEER$PEER ===================== " + echo +} + +instantiateChaincode () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode instantiate -o orderer.example.com:7050 -C $CHANNEL_NAME -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + else + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Chaincode instantiation on PEER$PEER on channel '$CHANNEL_NAME' failed" + echo "===================== Chaincode Instantiation on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +chaincodeQuery () { + PEER=$1 + echo "===================== Querying on PEER$PEER on channel '$CHANNEL_NAME'... ===================== " + setGlobals $PEER + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo "Attempting to Query PEER$PEER ...$(($(date +%s)-starttime)) secs" + peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}' >&log.txt + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Query Result/ {print $NF}') + test "$VALUE" = "$2" && let rc=0 + done + echo + cat log.txt + if test $rc -eq 0 ; then + echo "===================== Query on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + else + echo "!!!!!!!!!!!!!!! Query result on PEER$PEER is INVALID !!!!!!!!!!!!!!!!" + echo "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +chaincodeInvoke () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode invoke -o orderer.example.com:7050 -C $CHANNEL_NAME -n mycc -c '{"Args":["invoke","a","b","10"]}' >&log.txt + else + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -c '{"Args":["invoke","a","b","10"]}' >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Invoke execution on PEER$PEER failed " + echo "===================== Invoke transaction on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +## Check for orderering service availablility +echo "Check orderering service availability..." +checkOSNAvailability + +## Create channel +echo "Creating channel..." +createChannel + +## Join all the peers to the channel +echo "Having all peers join the channel..." +joinChannel + +## Set the anchor peers for each org in the channel +echo "Updating anchor peers for org1..." +updateAnchorPeers 0 +echo "Updating anchor peers for org2..." +updateAnchorPeers 2 + +## Install chaincode on Peer0/Org1 and Peer2/Org2 +echo "Installing chaincode on org1/peer0..." +installChaincode 0 +echo "Install chaincode on org2/peer2..." +installChaincode 2 + +#Instantiate chaincode on Peer2/Org2 +echo "Instantiating chaincode on org2/peer2..." +instantiateChaincode 2 + +#Query on chaincode on Peer0/Org1 +echo "Querying chaincode on org1/peer0..." +chaincodeQuery 0 100 + +#Invoke on chaincode on Peer0/Org1 +echo "Sending invoke transaction on org1/peer0..." +chaincodeInvoke 0 + +## Install chaincode on Peer3/Org2 +echo "Installing chaincode on org2/peer3..." +installChaincode 3 + +#Query on chaincode on Peer3/Org2, check if the result is 90 +echo "Querying chaincode on org2/peer3..." +chaincodeQuery 3 90 + +echo +echo "===================== All GOOD, End-2-End execution completed ===================== " +echo + +echo +echo " _____ _ _ ____ _____ ____ _____ " +echo "| ____| | \ | | | _ \ | ____| |___ \ | ____|" +echo "| _| | \| | | | | | _____ | _| __) | | _| " +echo "| |___ | |\ | | |_| | |_____| | |___ / __/ | |___ " +echo "|_____| |_| \_| |____/ |_____| |_____| |_____|" +echo + +exit 0 diff --git a/hyperledger/1.0.3/kafka/README.md b/hyperledger/1.0.3/kafka/README.md new file mode 100644 index 00000000..97bbc6ae --- /dev/null +++ b/hyperledger/1.0.3/kafka/README.md @@ -0,0 +1,13 @@ +## Start a network base on kafka + +### Quick testing with kafka +```bash +$ KAFKA_ENABLED=true make +``` +When the fabric-network fully started, it takes about 30~60s to finish all the test. + +## Generate crypto-config and channel-artifacts + +```bash +$ make gen_kafka +``` diff --git a/hyperledger/1.0.3/kafka/channel-artifacts/Org1MSPanchors.tx b/hyperledger/1.0.3/kafka/channel-artifacts/Org1MSPanchors.tx new file mode 100644 index 0000000000000000000000000000000000000000..599d18989e2c758f980552a590b149206ed3fc88 GIT binary patch literal 296 zcmd;D%ETqgCCtI3#Gh1JoSBzeT%4Sdn3tEDBh<~r)xpGtAsj9g%Ej$iP>_?EoLG{X zpC{zT!6;77UZPrCFkb~bel`TjEB1l$!^>(gt-bv0|1n1PHF%E literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/kafka/channel-artifacts/Org2MSPanchors.tx b/hyperledger/1.0.3/kafka/channel-artifacts/Org2MSPanchors.tx new file mode 100644 index 0000000000000000000000000000000000000000..78b2f394fcd4e955f7ba22bd19178fef173aa8c9 GIT binary patch literal 296 zcmd;D%ETqgCCtI3#Gh1JoSBzeT%4Sdn3tEDBh<~r)xpGtAsj9g%Ej$iP>_?EoLG{X zpC{zT!6;Op1*C%Xs|(3;Npp!6067MF`9L@5 brB)>77UZPrCFkb~bel`Tj3>`kFxLS9k5*1? literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/kafka/channel-artifacts/channel.tx b/hyperledger/1.0.3/kafka/channel-artifacts/channel.tx new file mode 100644 index 0000000000000000000000000000000000000000..b3b8ada26d712f2f82c532df8721aa0f7688533a GIT binary patch literal 406 zcma)&!AiqG6h%#nZG1&74?)Q?JG*kGlQy%nxR#1txDuI}PIMrdgiQJyBKQM-fa1z; zaOXD}G*v4IF7JJZ1NXsw2d>~U@WXEKa{KhQ8SToYGgdpNZiKZu8y@SCJW`BNo}`K> z!njCf%2dMnIF+0-IuV)?&BlyNK4MBR9&=9QB#Eg^;uxQOc=X}77-x70{b^ZdMv2-K z7DMbqZ&qEC)A<>0w1IwvFakI!tShS8EOXpLguz_oWv0K|@YTZyZ(Vuk1>WD*D1z>E xksIsq0C$28!YU7%hkRZdrgu@9T2~JDal3)GzKWmBxfY8xrY%;?u=V|C$vaT!ZXy5x literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/kafka/channel-artifacts/orderer.genesis.block b/hyperledger/1.0.3/kafka/channel-artifacts/orderer.genesis.block new file mode 100644 index 0000000000000000000000000000000000000000..0870b97b3f2d2986a723dd32a203663df1984dc4 GIT binary patch literal 9162 zcmds7TdeEYS?)~da=OmU^x)IcOgGRD8x_!`(>PAzIF*XJe2wGSi7$zhjCk-Zwi7!} z;v~L24H6*rWsnASq#{%y^#NW035l0JAs%=DsS;EwDpD&zJfI3BctF4t*vU@LKC{nt zI2EXSOMAy_{p(^cf9w0ce+67#ytVw7pZng|e&?_M{Xg>0qrd*$|NNsL{oS{I@E7y% zHB}yd67lF!GRAs@LL?nz`M7eyYt+|OSk^y{Xh85if7ktuKmWBKe&LJA*IDoZi~J^w{OAqva(`nx8)t+3 z@D1c2J_EqjWq;!$-~G(R@81QV6x9LpyLXYV-$g#Sd#*1F|M;bM${&*9c`~!NJ;)Aw7{Ajl`76p+dUSsOU+f7LsRjL1@;yJ40tub`FQfI!mKRMV(J_zzW&j z1Pk&BMx-na)nh=UQP`+4(QApx4U78rR#dEnl_&H_mT4ww&L?U!a5#1gEG`Xtp|m$O z=&%WzN;zzbb1RYNVqKz1qbSRcWy5os$SqPThuv~8K*EUzgOMgGV!|9p;F)AaPxN#( z4cnO+2A-%)5*8jt?=VSCo9GQ!S#~`$lvcpPq`j!f3F96D1SZ)Yrgm>;%vdCchvx)S zu|L6>-E{1E=9rA9YI6=u3{7+mYNTtey~Vsgka?1H-K)ZzS(>DknwGQ*#gLL`LoG>GMw6}*@pjg# zHlVcT1v;t`2^edzUp|bEOptI!FeDTyXiO41DQ-zYgJL-o(w#8nXGp`rAyyHOu^OZS zlsi?CI=l-u?aDq$L2fkl<-H#?b$Q^JhBAOHxk{);)DP#Y0JgBy?JPSKR?%`OfP42V z)6kW8NRuq|8Hi7ogW^+OpK-D<9^j$FOrvPxb*Cx{Qx328eN_qc6=D(-J(H(3Uv)#vwun9Qb;lk=E4Lf<}potRhh$^~RZgR@iR_22I2zbb;NQxYptvOX}w4uvz z6t(8S;UZx=5al7s@;w6ciC%)$xkWJO*KN;k4WngZPVwK-pw_Q?1`{ZLf57fhO8!Xx%YKk8j8g$ zTL9(?1aJ-u$i#<0K9Lt9B|sidM`4$$2;*Q1+s*BYA?Ph#O}lFsH~Qfa(0h}Ej%D@C z=0Jqe;l9e-I-n1Ap~ws=UZ$gMK-Y%BN|*$)uCEAGN9ldnOQ%34>}c85QkP_^dEMeC{f4bpc~`-h8Vl!nP~xL)MtF5*NF-*9%9DqJwK}LpH{=#?(c6QIZEH<`yclQBlSp%d~S@ zV$w|Ujx0Fvzv01>2Emi@;62O~l!}@i=|NohV9?x$8EDRXjR89;_V%7RUG;ox2%37} zjWxo9)N)SbJ!ZPp#kQbiPM8VSBIbK)FiSn&3{xxLZCAd9k2}3(3r@AvYh)q{I(Rl8 z=cN4r(2%S76>+G=veJ+vU1ii!hfsvX0XIwmFi;?j72$zd5}|x26tquLJi~W;3cg5s z=)m8uWvhd`NyMnse#AjmU(`2Cb~_VmgbFI?rtxqvQ35Md3G6Hfg91%iy3EIRR&O^k zi=g8!jw>SA^!;ihkqJrW-Hsvb1+_+SxjS0xLWYu+thKRd7<)pz-BM->ySp%(&iO}z z>Eb15hyF6Ytb>>JjlXp^G4e~u=Wab$D8O6DOU3`^Z++t8HRP4+((T-+0j`=OZzFFN zu|IRI%^l>m>upM@dT%JjF$&rE6hpmz)%fCb;1$v+gs$d?PPE%1uOTmh=dt+I`NikK zUCJ|-OD9kYLA>#;tsgC8&Wd};LdyRy;pnlz4zWa z#azA(K1~LZwHO(JZyV*TkvEW6Z+#N^)Olsjv6tZG(-S<$Toqi8IW6cp=BnUY%xV4J zL|!X~0;l!7^ZY61^x%=NeG%L)Z#3F${aqL%|5ZW$umbL=Mz{)`dlkqxD#&lYUit#J zR;v8>U%&Y0D;MyOcaiVkMZS0UUgcjtcITGo#m?=7=bd}7*Bi!?C1-n%vw$Wzu zn>%;@%y;gB>aEkxEf>CFDPGC^Yg*b8$>zrg6SSGbnY!aU z3JNH*RZTW~W3*Po5n3BfXGS+Oq?yQ~30+Q8K?kMECt)ejx$v}WcV(Fu;e-PuJG8qp zJb4D~7(7g1she`RI{J$S!@II;I+KxVYWqc_7di^j-otheEa$N`L_6DLUgayTdW`PW zq#^Mi)zGw3bg4kz<@s5cWK*jFDSTyBQ4ksaC}7trmSHw3?by{!aROndFEg>Q1|;St zU1BpF?WNvc6Ze)LV3|cSt2hvs;n45qpg$hcPk1O;z~j&|>#o;)U#tb*tgr2x zb*4f}nq<3%>?t0O_rRL&5|i#sQ3b`3LHrE!*T0^FIx+lql$snoJ*dl?ktrd17AB~!< zCi6g=@$J<>+4zym!mPD?1SoEpg}-?$NYv6S%%~Gcima2xY@7f$={2?32C+V(=gdm} zDEJe5{;ac3oCe27Ll9{U*UqN-{pp#~G<0%kpG*V0RN^w{Q@Dl)1}7cQl0?l)`UkTx z$)#LQ^s=nTN)=@_k)Gt>P&g;Cl0rX@_W{?<&o%G!Bn&zeN%Uw}3JTS2E-kWe%-x-TPBakjRYv%!$Y0KLyd%>uD1SAb9{^fL~ZZX z6R*<98vDsQC8fQWr4EO;$nM%xarCB2Hj>C;-!LK~Z zmY)RUC3@DY$QO{GE?mJI*IdEvQqEp!!*h$;Np>Q?i2Q8P;Ir2nyo%gDH@M~@ia|~a z_{j!2>)3A|#VJ;b(+^(1_}43O`cHR}AKXR$_9#vdl}|5DC44NNyh`M}RGmY4vlPXh!I;?j&Nb#?9~_lQ{L)(5sR) z-rl>bB4NE-tQ%t>Yz0(N^Q_Y`tSu+@Hep>tM>kGI&f=7|eQoJUwOUjspfFf~`Fc6P zi5-K_gjJo5^8gd9&Kg#`5>ad?#mxz}fU0oq1zEV?Xm~R*MAmE5?k$<4Is>_%w{F* z*leS2nPE(LDYon>a|&;6bDLEjN}HW^JsU4Hkc*Z;wX%A>t1wKrYc85-Y;Cp^pVg^| zCLKfWD+O&Dg46Eg6)*jY@06mA))>0EQPYitLTsqH?JHb1UFb?&)1 zRkP5_)=$L_W@9}<$}H7jIOr;;L8Qx~Lu#>~BA;;_{tSTjb}FTZPbm z0eK$z#MAe4@eANi$A~?D>B7K`iem#WM38c3#}m2JbGvv4eD;vjrj4y})j-{DcGh;c zagaO3@xp%>Kc7B_^We_aoj}{(IC1R6NE5jLZ$`&2nS9Af5837~SyA}q7TQD~I`zvU cL;ftX-(^21pK;EjeUbtJ}6UX2G0XeM(G5`Po literal 0 HcmV?d00001 diff --git a/hyperledger/1.0.3/kafka/configtx.yaml b/hyperledger/1.0.3/kafka/configtx.yaml new file mode 100644 index 00000000..92ca5448 --- /dev/null +++ b/hyperledger/1.0.3/kafka/configtx.yaml @@ -0,0 +1,153 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +################################################################################ +# +# Profile +# +# - Different configuration profiles may be encoded here to be specified +# as parameters to the configtxgen tool +# +################################################################################ +Profiles: + + TwoOrgsOrdererGenesis: + Orderer: + <<: *OrdererDefaults + Organizations: + - *OrdererOrg + Consortiums: + SampleConsortium: + Organizations: + - *Org1 + - *Org2 + TwoOrgsChannel: + Consortium: SampleConsortium + Application: + <<: *ApplicationDefaults + Organizations: + - *Org1 + - *Org2 + +################################################################################ +# +# Section: Organizations +# +# - This section defines the different organizational identities which will +# be referenced later in the configuration. +# +################################################################################ +Organizations: + + # SampleOrg defines an MSP using the sampleconfig. It should never be used + # in production but may be used as a template for other definitions + - &OrdererOrg + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: OrdererOrg + + # ID to load the MSP definition as + ID: OrdererMSP + + # MSPDir is the filesystem path which contains the MSP configuration + MSPDir: crypto-config/ordererOrganizations/example.com/msp + + - &Org1 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org1MSP + + # ID to load the MSP definition as + ID: Org1MSP + + MSPDir: crypto-config/peerOrganizations/org1.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org1.example.com + Port: 7051 + + - &Org2 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org2MSP + + # ID to load the MSP definition as + ID: Org2MSP + + MSPDir: crypto-config/peerOrganizations/org2.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org2.example.com + Port: 7051 + +################################################################################ +# +# SECTION: Orderer +# +# - This section defines the values to encode into a config transaction or +# genesis block for orderer related parameters +# +################################################################################ +Orderer: &OrdererDefaults + + # Orderer Type: The orderer implementation to start + # Available types are "solo" and "kafka" + OrdererType: kafka + + Addresses: + - orderer.example.com:7050 + + # Batch Timeout: The amount of time to wait before creating a batch + BatchTimeout: 2s + + # Batch Size: Controls the number of messages batched into a block + BatchSize: + + # Max Message Count: The maximum number of messages to permit in a batch + MaxMessageCount: 10 + + # Absolute Max Bytes: The absolute maximum number of bytes allowed for + # the serialized messages in a batch. + AbsoluteMaxBytes: 98 MB + + # Preferred Max Bytes: The preferred maximum number of bytes allowed for + # the serialized messages in a batch. A message larger than the preferred + # max bytes will result in a batch larger than preferred max bytes. + PreferredMaxBytes: 512 KB + + Kafka: + # Brokers: A list of Kafka brokers to which the orderer connects. Edit + # this list to identify the brokers of the ordering service. + # NOTE: Use IP:port notation. + Brokers: + - kafka0:9092 + - kafka1:9092 + - kafka2:9092 + - kafka3:9092 + + # Organizations is the list of orgs which are defined as participants on + # the orderer side of the network + Organizations: + +################################################################################ +# +# SECTION: Application +# +# - This section defines the values to encode into a config transaction or +# genesis block for application related parameters +# +################################################################################ +Application: &ApplicationDefaults + + # Organizations is the list of orgs which are defined as participants on + # the application side of the network + Organizations: \ No newline at end of file diff --git a/hyperledger/1.0.3/kafka/crypto-config.yaml b/hyperledger/1.0.3/kafka/crypto-config.yaml new file mode 100644 index 00000000..06ad8185 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config.yaml @@ -0,0 +1,81 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +# --------------------------------------------------------------------------- +# "OrdererOrgs" - Definition of organizations managing orderer nodes +# --------------------------------------------------------------------------- +OrdererOrgs: + # --------------------------------------------------------------------------- + # Orderer + # --------------------------------------------------------------------------- + - Name: Orderer + Domain: example.com + # --------------------------------------------------------------------------- + # "Specs" - See PeerOrgs below for complete description + # --------------------------------------------------------------------------- + Specs: + - Hostname: orderer +# --------------------------------------------------------------------------- +# "PeerOrgs" - Definition of organizations managing peer nodes +# --------------------------------------------------------------------------- +PeerOrgs: + # --------------------------------------------------------------------------- + # Org1 + # --------------------------------------------------------------------------- + - Name: Org1 + Domain: org1.example.com + # --------------------------------------------------------------------------- + # "Specs" + # --------------------------------------------------------------------------- + # Uncomment this section to enable the explicit definition of hosts in your + # configuration. Most users will want to use Template, below + # + # Specs is an array of Spec entries. Each Spec entry consists of two fields: + # - Hostname: (Required) The desired hostname, sans the domain. + # - CommonName: (Optional) Specifies the template or explicit override for + # the CN. By default, this is the template: + # + # "{{.Hostname}}.{{.Domain}}" + # + # which obtains its values from the Spec.Hostname and + # Org.Domain, respectively. + # --------------------------------------------------------------------------- + # Specs: + # - Hostname: foo # implicitly "foo.org1.example.com" + # CommonName: foo27.org5.example.com # overrides Hostname-based FQDN set above + # - Hostname: bar + # - Hostname: baz + # --------------------------------------------------------------------------- + # "Template" + # --------------------------------------------------------------------------- + # Allows for the definition of 1 or more hosts that are created sequentially + # from a template. By default, this looks like "peer%d" from 0 to Count-1. + # You may override the number of nodes (Count), the starting index (Start) + # or the template used to construct the name (Hostname). + # + # Note: Template and Specs are not mutually exclusive. You may define both + # sections and the aggregate nodes will be created for you. Take care with + # name collisions + # --------------------------------------------------------------------------- + Template: + Count: 2 + # Start: 5 + # Hostname: {{.Prefix}}{{.Index}} # default + # --------------------------------------------------------------------------- + # "Users" + # --------------------------------------------------------------------------- + # Count: The number of user accounts _in addition_ to Admin + # --------------------------------------------------------------------------- + Users: + Count: 1 + # --------------------------------------------------------------------------- + # Org2: See "Org1" for full specification + # --------------------------------------------------------------------------- + - Name: Org2 + Domain: org2.example.com + Template: + Count: 2 + Users: + Count: 1 diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk new file mode 100644 index 00000000..4ffd6eb4 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgM4o2FiiE5OyPE+o1 +H1KqX6rU9b1dVK0dvZ2UaLD8UFahRANCAATM0PsnILzXKXZCIon7sJgXOF1zoyX4 +s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKD +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk new file mode 100644 index 00000000..7da05dbd --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgf6gVM7prpq2dVAF0 +XZsrMRl1ngQWHP3g8vQPHoUMCM+hRANCAASxVOz9WeuZQ/+bZRf4TgXIoMzlkwhi +sGGkbJzu3IFvp7RPBzlXak4PzLZhTbcXBHr6Uax570iZqYRMgwelvnZu +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem new file mode 100644 index 00000000..94c9d485 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICDTCCAbOgAwIBAgIRALKzAgSMqygfH0YaCqLdBWkwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFgxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYI +KoZIzj0DAQcDQgAEsVTs/VnrmUP/m2UX+E4FyKDM5ZMIYrBhpGyc7tyBb6e0Twc5 +V2pOD8y2YU23FwR6+lGsee9ImamETIMHpb52bqNNMEswDgYDVR0PAQH/BAQDAgeA +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgBlWYkL4peVkD3m2kTwO0P/EmqDpo +6ZQO9sYB5xwtvk8wCgYIKoZIzj0EAwIDSAAwRQIhAKOsudnRbopdMBcOQf8vyeJh +AfyWjxqXzQoLCCpgUxaEAiBUR+ROeUkaiwUkT5Pkvkfo3dmoA4gqwnH4WfvkXDqP +jg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt new file mode 100644 index 00000000..1169850c --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICWjCCAgCgAwIBAgIRAK7kSOvolrl5Oqn1j6MXCDkwCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFgxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0C +AQYIKoZIzj0DAQcDQgAEz3vOY8Dga6/uct3qkXiMyO3z6GoVaaWs//C+2bXDW6TA +eNxg5hTYJFhlPdbj7wPC2tzRy/l11ue/0Zqad8lfpaOBljCBkzAOBgNVHQ8BAf8E +BAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQC +MAAwKwYDVR0jBCQwIoAgktHqTAvQ+K2pBwfqDCgRIK9UYAVaTeucW18zXxL7Svgw +JwYDVR0RBCAwHoITb3JkZXJlci5leGFtcGxlLmNvbYIHb3JkZXJlcjAKBggqhkjO +PQQDAgNIADBFAiEAy+f0Vdu4sPrIZLhWCTKdJXXzm70vMAAcJGCqvo30KqkCICVX +DX6tq+Tw5AQKu9UoZeGHawSSPYw6eKElz8U3kN8b +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key new file mode 100644 index 00000000..5479f04b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgjBMgv0lVc5MiD6FQ +m69sJ8l7VBw/caLKQbLPxbXieiKhRANCAATPe85jwOBrr+5y3eqReIzI7fPoahVp +paz/8L7ZtcNbpMB43GDmFNgkWGU91uPvA8La3NHL+XXW57/Rmpp3yV+l +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk new file mode 100644 index 00000000..0f74ced9 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgs34D8BnRo1WJZL8J +wW3rYaZjCF9nipPRBYAnAtJKmLuhRANCAAQG4y+DxWAQIC22aS4nFOVpYV0/IQAp +4/MyxGZ1jPSkcnpsinJLCC0pX8YSG5sXM7raYnOlxy5+wGU8YeMjNB+s +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk new file mode 100644 index 00000000..63bd61d9 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQguvc2KI5t+mMd1pPH +bd1dBsWr25SYfpgdrlet+8EGPD6hRANCAARSC/NovC8NtxpJTzt3YXe1KJ8G2el2 +ENIV9ekyg6BIhe3ruznwBVpLFahlmZVK2pNhe5XwEkBeHZ/Fgwfn7yV7 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt new file mode 100644 index 00000000..2d3eba11 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICKzCCAdKgAwIBAgIQDnBVSgj/w031TaF6zsUDkjAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowVjELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYI +KoZIzj0DAQcDQgAEuIgH+i6I78B5s35WLzf52pKq2lqPSxb1O2p0P5qxbPhouUHp +AuaGSUE+lA7rOEkhOgIS3Augfq973WRLSv8H16NsMGowDgYDVR0PAQH/BAQDAgWg +MB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAMBgNVHRMBAf8EAjAAMCsG +A1UdIwQkMCKAIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S+0r4MAoGCCqG +SM49BAMCA0cAMEQCIBlJHFWffEbo55UO9i1coa6o0940YOLzXMDb/hyRPyO/AiA8 +zm7S0giNChs+xYS6V0vfA/wh4HJVgDuGrvXHag4IMQ== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key new file mode 100644 index 00000000..de885c49 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgqeIIYAsjWCcMmRkp +C3C9hs0Q2opH7TbmrdrXoZJj/LGhRANCAAS4iAf6LojvwHmzflYvN/nakqraWo9L +FvU7anQ/mrFs+Gi5QekC5oZJQT6UDus4SSE6AhLcC6B+r3vdZEtK/wfX +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk new file mode 100644 index 00000000..0a76b1d6 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQghIfmhCzLHkJqLBrp +ZD16VLNqPxH9Dpdr7IRK/3I79wKhRANCAATF5TnbRZU9YBnAYy7zkYlWZpLx3eyL +r16b+nnFgwajBCQWkoyls5fDTnMB9K4gdHQJvv/Cu9pWpKZXTVVl9onJ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk new file mode 100644 index 00000000..fa645576 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgqWPbCN4RHdB5tr8x +Ij4IT03vyzFZr0osDrvgJWQE+mShRANCAARBeheIf6n/DYsdMK/J0ON8PqOJSk98 +fwA51/eIg0joCJj9rLBTU0/iYeSemqwpQNWrhp3jH1C/LEBgfZCkMlwx +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem new file mode 100644 index 00000000..a6289469 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQRv6BL/u3L+PhJ1aSrRZPnzAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQXoXiH+p/w2LHTCvydDjfD6jiUpPfH8A +Odf3iINI6AiY/aywU1NP4mHknpqsKUDVq4ad4x9QvyxAYH2QpDJcMaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgYahj3le0 +Jc8KI9AHz+jOn3NjIywfp9JdC6pnQzETZQACIHV/+u7hDb3ytzLgjkxnqHUpLBhv +RkzctwF1AVEl11AM +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt new file mode 100644 index 00000000..c887f2fd --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQfHsr/8TSwM4bk0kgS5u/0jAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/ZORGlh6kSbpdAn0LfZfvC/pJYaO +RCSrPvL1A6b1/Qnwe+BLO9d1EfiwyZhcEReTfr18Bnh2AeCLnL+uuVIy0KOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgpKm2JRN6LYLzW97fCH7jLi9irEE2 ++HLF4brsEmqFLrQwKAYDVR0RBCEwH4IWcGVlcjAub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjAwCgYIKoZIzj0EAwIDSAAwRQIhALqbj7LKlLTE6ER06UVEtVPjSPhKg7iu +KSc3eHMmtQGIAiAMMpP60aVgR3wZYTXqpbla8JZyK7x1oX/eUv0mW4WQZg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key new file mode 100644 index 00000000..b80c94f7 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgd0S7NjRobJcDsPoo +kwP/IUjrQqKmIZHY7q1qke/YOWChRANCAAT9k5EaWHqRJul0CfQt9l+8L+klho5E +JKs+8vUDpvX9CfB74Es713UR+LDJmFwRF5N+vXwGeHYB4Iucv665UjLQ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk new file mode 100644 index 00000000..0f9c7902 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgKfBefTd8K711TEBx +fuJNRG1LHMD9FQBQgKaOSmm3GoChRANCAAS2B4Zl80zNmngDiFDFBrHVQAHc6RXO +MMj4hZOkgHyMvLDpRD7Lq+UkEsMlG4FzNKpnHy9XwPawHZB5cC2tWR3I +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem new file mode 100644 index 00000000..31af4ab1 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRANYetlHEfJZZtMDqu35quOowCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABLYHhmXzTM2aeAOIUMUGsdVAAdzpFc4w +yPiFk6SAfIy8sOlEPsur5SQSwyUbgXM0qmcfL1fA9rAdkHlwLa1ZHcijTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIG3mFUm075OC +5nkfPbwPS547HFNB7cI/yPu97NLksODSMAoGCCqGSM49BAMCA0cAMEQCIA9ewJLN +2dWDwOB2smtJqOH5bskm8/LqlDeBNBYk70I3AiAnKAJoS/gZ+deb59eeqbi8Kv/k +5+Cr1DM0EPJ0zUqt5A== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt new file mode 100644 index 00000000..02da6a84 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQcqeN5foMMTg0eO+c6c/gGzAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7/7EMgj817wspCOGdZQ+6QBMXqt7 +KHoCirhvQtzxnT74opAgsnYMRpImF82fipkJAbyEcJ4xWR8oJ2GrtNr/6KOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgpKm2JRN6LYLzW97fCH7jLi9irEE2 ++HLF4brsEmqFLrQwKAYDVR0RBCEwH4IWcGVlcjEub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjEwCgYIKoZIzj0EAwIDSAAwRQIhAO8Yc3MNSQJl3708UIuwk7owSsPYJVYy +xOvuKXLKh67ZAiBIe+QihTNuvlDJvFTCdsJcfgBBHPkQd5L8iQsfivGgrQ== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key new file mode 100644 index 00000000..fd620d94 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgOe2zWsHZMTGT1BKl +zywbCiql0z4CYsjVlgzbrakPYi6hRANCAATv/sQyCPzXvCykI4Z1lD7pAExeq3so +egKKuG9C3PGdPviikCCydgxGkiYXzZ+KmQkBvIRwnjFZHygnYau02v/o +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk new file mode 100644 index 00000000..5dd137f0 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgnTd8izocVAEJLbac +tWICw67lbMboThXvjWbCOiGaJ9ehRANCAAQucl1GqxUYcyj+UBt8ZGPxlXtaqo6t +33uAupgBAmHU0q0GBodXsIEb3L/Ca2T99y/CKjYpdJXN5JqAiqms3m9d +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk new file mode 100644 index 00000000..7e8b1b54 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgzS8FrIAa3qOjX73P +FjHDJvZwle0ScdR62UlRVmA3p0OhRANCAAR8mqog4zWWF85O/ncT4E1M12BpCFGH +rouoMnxgl9FIpF5BCbpSmzxI31Lbyzs4TMO46wnRyqROKBVwX3CUXJHL +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt new file mode 100644 index 00000000..6f348cd3 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOjCCAeGgAwIBAgIQbK6FbU31KwALmK2Z45TmrTAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEd4/ZO57UEMCL6ThW5R8bi6kMsd3p +kzvPJqEXiswtC0ROG7YT0Ky0lyJuo5BF/nv/AKBGsT5ZHOZxypYs4ZARWaNsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIKSptiUTei2C81ve3wh+4y4vYqxBNvhy +xeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIDUpGUSRRy0RcZf3z7h3oAdNuK32 +uSLdZ0FqMGdYGcIIAiBde2WvxP3CmqLZSQEw2mR6IpRcJYap1cozSmXCwEmnfQ== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key new file mode 100644 index 00000000..4e421ee8 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgZQ+RJAXOT6aQ2t6R +LrrVc7E8EUeso32PJFusiutCz6mhRANCAAR3j9k7ntQQwIvpOFblHxuLqQyx3emT +O88moReKzC0LRE4bthPQrLSXIm6jkEX+e/8AoEaxPlkc5nHKlizhkBFZ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..15d23464 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAOwkDt1N4pGtDlkFHJuqDD4wCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABJyxgiK73CXyfUfyUyhckIojRm5rB5vv +fA4rNq3b8E7rVhMUK103WYPL96EwyQY7KbXNMC1dBIwPWohDmh6aTamjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIG3mFUm075OC +5nkfPbwPS547HFNB7cI/yPu97NLksODSMAoGCCqGSM49BAMCA0cAMEQCIGYABqah +FIRnanjFKgFf8c9qYZgc2Ta/4W1tHwogF8CBAiAL0jCWG4IgJCsjEx7QcHH9rJ6F +K86H6HK+pAx9RAq5zw== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk new file mode 100644 index 00000000..71a50a98 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg1BSYBh9z9Ezju00p +nmxVx945igBfYvmIrAjKqedeo8ahRANCAAScsYIiu9wl8n1H8lMoXJCKI0Zuaweb +73wOKzat2/BO61YTFCtdN1mDy/ehMMkGOym1zTAtXQSMD1qIQ5oemk2p +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..15d23464 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAOwkDt1N4pGtDlkFHJuqDD4wCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABJyxgiK73CXyfUfyUyhckIojRm5rB5vv +fA4rNq3b8E7rVhMUK103WYPL96EwyQY7KbXNMC1dBIwPWohDmh6aTamjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIG3mFUm075OC +5nkfPbwPS547HFNB7cI/yPu97NLksODSMAoGCCqGSM49BAMCA0cAMEQCIGYABqah +FIRnanjFKgFf8c9qYZgc2Ta/4W1tHwogF8CBAiAL0jCWG4IgJCsjEx7QcHH9rJ6F +K86H6HK+pAx9RAq5zw== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt new file mode 100644 index 00000000..a093adc8 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRAK+m8QW4ZVe8E0GHWIe1Y6EwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABK4/kv7B+amCXRQMkt2lPsaaVc7H +pLOPN24yPlv2pCZIRxQ5ekjDufRwZzwyhD8XKTsUGSZ0wq1sUp2TH7HDWeyjbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCCkqbYlE3otgvNb3t8IfuMuL2KsQTb4 +csXhuuwSaoUutDAKBggqhkjOPQQDAgNHADBEAiBcMqQWvQrFTqRlS2fAr9cs4Iw/ +bXxvqlfD4+yp4KK+hAIgM8Dm0UcxmN0Do/CUs7O2BXbdm83P7nBgHRSrsHqqIZk= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key new file mode 100644 index 00000000..450e6263 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgcJu0Pjoi6cIYvbUF +VNPCoCnvKPw0iYnIYU2n5aT5KaOhRANCAASuP5L+wfmpgl0UDJLdpT7GmlXOx6Sz +jzduMj5b9qQmSEcUOXpIw7n0cGc8MoQ/Fyk7FBkmdMKtbFKdkx+xw1ns +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk new file mode 100644 index 00000000..2eea69f5 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWP5Agcauhf6fy5xu +ZvAK5MtFgaMpzQgxxWCGX0wRwnyhRANCAASoCn9eQZC0jiDp0D0yS8EmeisW+4XB +FtLz92MzCQOjJ90xDuQJLU0mWI0gQ2A7QFUUE29w7N3zmjRTd7AwvUZ/ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk new file mode 100644 index 00000000..dd2b56ba --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggkPxt/gVSQd3pbXm +6/8Cau/Ne6OENP5XoDJPK6a3IoihRANCAARh1uKnuDcGCCchPAAFZOQKfCK35Nbb +yos613b25s1eZuNbPP4dDioScEKhysYJ6aH1dVsghDBtI939I9EkhbYP +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem new file mode 100644 index 00000000..b8c795ce --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQNY7sACQPpsjgEWEueGFt/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYdbip7g3BggnITwABWTkCnwit+TW28qL +Otd29ubNXmbjWzz+HQ4qEnBCocrGCemh9XVbIIQwbSPd/SPRJIW2D6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgiqAh/B1Idvgp +/8Sukq4XKtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDSAAwRQIhALA333hl +SlkK2WOjOrLnYCVJ5jCwSE+fPw6Z14aR3HzDAiACWwyCNHAXQhSDTLUtrrNcjvBL +J0FtUXOA+WqW+QAkOA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt new file mode 100644 index 00000000..03cfd5aa --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZjCCAg2gAwIBAgIQWGnXQt0AoR4REuCVbs6zlDAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjcqsHOVhT8r6Yq2/tUg/ykzSKEwd +J1k3iR24ayG0fz5glYJeyifTln8pCvylgq7pB8mAz1+zwsEM8B/xehLQLaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgu7waLAmy87xr+IaE3RHNALNUi7ng +XcqW0ao7Ol+BnGQwKAYDVR0RBCEwH4IWcGVlcjAub3JnMi5leGFtcGxlLmNvbYIF +cGVlcjAwCgYIKoZIzj0EAwIDRwAwRAIhAMLX9t5BiN+n6uiEluFNt7Lt6JTx+rI4 +oyGqAGLoSh0dAh89MT/FybJ9xaH4p2wNHP0UEC3EGbVlrxbMPYnRva3n +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key new file mode 100644 index 00000000..0dee39d2 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgaaAw2M+Jjd0kqcEh +X64tUhB+fZ4H+N95OaThJAxJhqihRANCAASNyqwc5WFPyvpirb+1SD/KTNIoTB0n +WTeJHbhrIbR/PmCVgl7KJ9OWfykK/KWCrukHyYDPX7PCwQzwH/F6EtAt +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk new file mode 100644 index 00000000..03ce86f1 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgSJpf6xdRTXN8dxGE +JnP4wVbl5ZCsY2LSyTYvs/uusfqhRANCAATn000+n8NNnEgsHmPu7GxPgaqN841V +INBjGCYRdFyBV/Amk7DKNfUp+8wB8xORpNz0aE3FwyhJk79Ew6SEKvU5 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem new file mode 100644 index 00000000..c78d2bda --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRALIyFgGGfzpgc2/oWpTB1NgwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABOfTTT6fw02cSCweY+7sbE+Bqo3zjVUg +0GMYJhF0XIFX8CaTsMo19Sn7zAHzE5Gk3PRoTcXDKEmTv0TDpIQq9TmjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIH/wwAH+ +FWdLXi39ZxczcrG8Cf+ZbpeSDiJu19ffaim3AiAnsV8jqkuWBbSoOm8gWCL/IN8B +aUD9Aef9n6eby2yVFw== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt new file mode 100644 index 00000000..a42cf44d --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQeVi4SFq4m/ie4/Pi0iO+cjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZn17CfxaLDKbSym6YFrtwb9fYKLN +2dn+ICAB6lz25CaeEKmMZHIrx7o26gC/mToWGQXEMeGtleOGup7OIZrzvaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgu7waLAmy87xr+IaE3RHNALNUi7ng +XcqW0ao7Ol+BnGQwKAYDVR0RBCEwH4IWcGVlcjEub3JnMi5leGFtcGxlLmNvbYIF +cGVlcjEwCgYIKoZIzj0EAwIDSAAwRQIhALhGjX8OX5WTBW77e3Z/SRKcNjLJVEVX +EMB1Qyh1uuRZAiBPdXICXzbFkvmlugmBkZM7brvdsbD9OBSZp5h9mT+5VA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key new file mode 100644 index 00000000..48635bd7 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgxqC3XS5MsKplVfle +c0BeE3IwtyKvA9i9Iw59jLkr12ChRANCAARmfXsJ/FosMptLKbpgWu3Bv19gos3Z +2f4gIAHqXPbkJp4QqYxkcivHujbqAL+ZOhYZBcQx4a2V44a6ns4hmvO9 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk new file mode 100644 index 00000000..f3748758 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgcDQcSAwAgH6IyC7F +9qhL7lOoG/X7P91IS5lsPNmO0MChRANCAAS0E6yIFyZHDdDuzsU1FbykIYWAii2h +WHD5JuOnt3UtFWGA5VVp6X4qlpevZBEt9GbVNME4rzjUuwOqOnBfT+i/ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk new file mode 100644 index 00000000..acb3a6e9 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgq2verE4fZu7kZm4/ +wuQvX+JBMH1muuAzSqIOha4BpZahRANCAARKHXoU8Z5N1ausFupTfV+0M8ppA2DP +13HqV0ZU4qDaxNar/3D6LgfgbEJ6i/hQoKY9Dxgvtjv482CTQwNVC1F6 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt new file mode 100644 index 00000000..d03d30f1 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOjCCAeGgAwIBAgIQDbX/9cHP/3v16UV4DGuliDAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEli72eW9spinfvIqW/DlMTrODFUnL +Dy9cVk4jNqLLQpVlKr8LEsOry++Q5oMGxJUqF/RcuqwvObhbO00iXZ7FXaNsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAILu8GiwJsvO8a/iGhN0RzQCzVIu54F3K +ltGqOzpfgZxkMAoGCCqGSM49BAMCA0cAMEQCIGz8cqx3zSJQ3s4J6KFZmbl4t/3t +TdhairGVxp7wkoFtAiAW8ZRGIhai5hLQP5WipTKhAvQ4pJgfKKv+x5qsFhd8LQ== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key new file mode 100644 index 00000000..aecfed0b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg4MzqB6RP8kfnxqd3 +UniPmiguvOOx49lZN0P/2Ci2WyChRANCAASWLvZ5b2ymKd+8ipb8OUxOs4MVScsP +L1xWTiM2ostClWUqvwsSw6vL75DmgwbElSoX9Fy6rC85uFs7TSJdnsVd +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..03390dbd --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQPjxSaySzMl8OI6d/d9EQ8TAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAj0c26ysDXfaGNv0ULagAHaMbAPMwdFC +LW0zDfgkXQej6NwAHHiSW2bO24k5AnLGpE6KXp93B4Gp7+C9KfHc/6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgiqAh/B1Idvgp +/8Sukq4XKtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgXby74wXo +69S4SigYb3jsH46PloCz5Sz4rpSp8wXBGF4CIAUW9VFS8WlxNOfOMmTlGq9/YZRx +fooT82J32YC5JRF/ +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk new file mode 100644 index 00000000..b3399c82 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgJtQcYZnHkNkRyx1N +2mNogLIgN9tiYZanUzSwb7MIJXOhRANCAAQCPRzbrKwNd9oY2/RQtqAAdoxsA8zB +0UItbTMN+CRdB6Po3AAceJJbZs7biTkCcsakTopen3cHganv4L0p8dz/ +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..03390dbd --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQPjxSaySzMl8OI6d/d9EQ8TAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAj0c26ysDXfaGNv0ULagAHaMbAPMwdFC +LW0zDfgkXQej6NwAHHiSW2bO24k5AnLGpE6KXp93B4Gp7+C9KfHc/6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgiqAh/B1Idvgp +/8Sukq4XKtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgXby74wXo +69S4SigYb3jsH46PloCz5Sz4rpSp8wXBGF4CIAUW9VFS8WlxNOfOMmTlGq9/YZRx +fooT82J32YC5JRF/ +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt new file mode 100644 index 00000000..e4237493 --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRALwfZx1LADfmoosxXk+jB1swCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGArlNZA6tXqh8KOD5npWi5JRcl5 +L0RYfQT7Kos1IRuMyAG6WLSiQJsLFJtB1Jt4E17MDA7tDguKj6DZf0ci4zyjbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCC7vBosCbLzvGv4hoTdEc0As1SLueBd +ypbRqjs6X4GcZDAKBggqhkjOPQQDAgNHADBEAiBQN5uQaDykiyB0p519Txm6EFZf +vVeF4G+vhsApW75eAAIgAqjxjKkvD1dvcK7MEMQ2kZLDo7zyfjTJSUlGBryF57o= +-----END CERTIFICATE----- diff --git a/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key new file mode 100644 index 00000000..36185c7b --- /dev/null +++ b/hyperledger/1.0.3/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgllOpasTquq5J45Af +rkxmJyBx5m1XIKuMUxc82SGZcT+hRANCAARgK5TWQOrV6ofCjg+Z6VouSUXJeS9E +WH0E+yqLNSEbjMgBuli0okCbCxSbQdSbeBNezAwO7Q4Lio+g2X9HIuM8 +-----END PRIVATE KEY----- diff --git a/hyperledger/1.0.3/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go b/hyperledger/1.0.3/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go new file mode 100644 index 00000000..53438066 --- /dev/null +++ b/hyperledger/1.0.3/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go @@ -0,0 +1,199 @@ +/* +Copyright IBM Corp. 2016 All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package main + +//WARNING - this chaincode's ID is hard-coded in chaincode_example04 to illustrate one way of +//calling chaincode from a chaincode. If this example is modified, chaincode_example04.go has +//to be modified as well with the new ID of chaincode_example02. +//chaincode_example05 show's how chaincode ID can be passed in as a parameter instead of +//hard-coding. + +import ( + "fmt" + "strconv" + + "github.com/hyperledger/fabric/core/chaincode/shim" + pb "github.com/hyperledger/fabric/protos/peer" +) + +// SimpleChaincode example simple Chaincode implementation +type SimpleChaincode struct { +} + +func (t *SimpleChaincode) Init(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Init") + _, args := stub.GetFunctionAndParameters() + var A, B string // Entities + var Aval, Bval int // Asset holdings + var err error + + if len(args) != 4 { + return shim.Error("Incorrect number of arguments. Expecting 4") + } + + // Initialize the chaincode + A = args[0] + Aval, err = strconv.Atoi(args[1]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + B = args[2] + Bval, err = strconv.Atoi(args[3]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +func (t *SimpleChaincode) Invoke(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Invoke") + function, args := stub.GetFunctionAndParameters() + if function == "invoke" { + // Make payment of X units from A to B + return t.invoke(stub, args) + } else if function == "delete" { + // Deletes an entity from its state + return t.delete(stub, args) + } else if function == "query" { + // the old "Query" is now implemtned in invoke + return t.query(stub, args) + } + + return shim.Error("Invalid invoke function name. Expecting \"invoke\" \"delete\" \"query\"") +} + +// Transaction makes payment of X units from A to B +func (t *SimpleChaincode) invoke(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A, B string // Entities + var Aval, Bval int // Asset holdings + var X int // Transaction value + var err error + + if len(args) != 3 { + return shim.Error("Incorrect number of arguments. Expecting 3") + } + + A = args[0] + B = args[1] + + // Get the state from the ledger + // TODO: will be nice to have a GetAllState call to ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + return shim.Error("Failed to get state") + } + if Avalbytes == nil { + return shim.Error("Entity not found") + } + Aval, _ = strconv.Atoi(string(Avalbytes)) + + Bvalbytes, err := stub.GetState(B) + if err != nil { + return shim.Error("Failed to get state") + } + if Bvalbytes == nil { + return shim.Error("Entity not found") + } + Bval, _ = strconv.Atoi(string(Bvalbytes)) + + // Perform the execution + X, err = strconv.Atoi(args[2]) + if err != nil { + return shim.Error("Invalid transaction amount, expecting a integer value") + } + Aval = Aval - X + Bval = Bval + X + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state back to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +// Deletes an entity from state +func (t *SimpleChaincode) delete(stub shim.ChaincodeStubInterface, args []string) pb.Response { + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting 1") + } + + A := args[0] + + // Delete the key from the state in ledger + err := stub.DelState(A) + if err != nil { + return shim.Error("Failed to delete state") + } + + return shim.Success(nil) +} + +// query callback representing the query of a chaincode +func (t *SimpleChaincode) query(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A string // Entities + var err error + + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting name of the person to query") + } + + A = args[0] + + // Get the state from the ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + jsonResp := "{\"Error\":\"Failed to get state for " + A + "\"}" + return shim.Error(jsonResp) + } + + if Avalbytes == nil { + jsonResp := "{\"Error\":\"Nil amount for " + A + "\"}" + return shim.Error(jsonResp) + } + + jsonResp := "{\"Name\":\"" + A + "\",\"Amount\":\"" + string(Avalbytes) + "\"}" + fmt.Printf("Query Response:%s\n", jsonResp) + return shim.Success(Avalbytes) +} + +func main() { + err := shim.Start(new(SimpleChaincode)) + if err != nil { + fmt.Printf("Error starting Simple chaincode: %s", err) + } +} diff --git a/hyperledger/1.0.3/kafka/gen_artifacts.sh b/hyperledger/1.0.3/kafka/gen_artifacts.sh new file mode 100644 index 00000000..bd203ee9 --- /dev/null +++ b/hyperledger/1.0.3/kafka/gen_artifacts.sh @@ -0,0 +1,58 @@ +#! /bin/bash + +GEN_IMG=yeasy/hyperledger-fabric:1.0.3 +GEN_CONTAINER=generator +CFG_DIR=/etc/hyperledger/fabric +TMP_DIR=/tmp +ARTIFACTS_DIR=$TMP_DIR/channel-artifacts +CHANNEL_NAME=businesschannel + +echo "Clean potential existing container $GEN_CONTAINER" +[ "$(docker ps -a | grep $GEN_CONTAINER)" ] && docker rm -f $GEN_CONTAINER + +echo "Remove existing artifacts" +rm -rf crypto-config channel-artifacts + +echo "Starting container $GEN_CONTAINER in background" +docker run \ + -d -it \ + --name $GEN_CONTAINER \ + $GEN_IMG bash -c 'while true; do sleep 20171001; done' + +echo "Create the $ARTIFACTS_DIR path" +docker exec -it $GEN_CONTAINER \ + mkdir -p $ARTIFACTS_DIR + +echo "Copy crypto-config.yaml and configtx.yaml into $GEN_CONTAINER:/tmp" +docker cp ./crypto-config.yaml $GEN_CONTAINER:$CFG_DIR +docker cp ./configtx.yaml $GEN_CONTAINER:$CFG_DIR + +echo "Generating crypto-config and export" +docker exec -it $GEN_CONTAINER \ + cryptogen generate --config=$CFG_DIR/crypto-config.yaml --output $TMP_DIR/crypto-config +echo "Export crypto-config to local" +docker cp $GEN_CONTAINER:$TMP_DIR/crypto-config ./ + +echo "Copy crypto-config to the config path" +docker exec -it $GEN_CONTAINER \ + cp -r $TMP_DIR/crypto-config $CFG_DIR + +echo "Generating orderer genesis block file" +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsOrdererGenesis -outputBlock $ARTIFACTS_DIR/orderer.genesis.block + +echo "Create the new application channel tx" +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsChannel -outputCreateChannelTx $ARTIFACTS_DIR/channel.tx -channelID ${CHANNEL_NAME} + +echo "Creating the anchor peer configuration tx" +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate $ARTIFACTS_DIR/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate $ARTIFACTS_DIR/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP + +echo "Export $ARTIFACTS_DIR to local" +docker cp $GEN_CONTAINER:$ARTIFACTS_DIR ./ + +echo "Remove the container $GEN_CONTAINER" +docker rm -f $GEN_CONTAINER \ No newline at end of file diff --git a/hyperledger/1.0.3/scripts/clean_env.sh b/hyperledger/1.0.3/scripts/clean_env.sh new file mode 100644 index 00000000..855c347a --- /dev/null +++ b/hyperledger/1.0.3/scripts/clean_env.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash + +# This script will remove all containers and hyperledger related images + +# Detecting whether can import the header file to render colorful cli output +# Need add choice option +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +echo_b "Clean up all containers..." +docker rm -f `docker ps -qa` + +echo_b "Clean up all chaincode-images..." +docker rmi -f $(docker images |grep 'dev-peer*'|awk '{print $3}') + +echo_b "Clean up all hyperledger related images..." +docker rmi $(docker images |grep 'hyperledger') + +echo_g "Env cleanup done!" \ No newline at end of file diff --git a/hyperledger/1.0.3/scripts/download_images.sh b/hyperledger/1.0.3/scripts/download_images.sh new file mode 100644 index 00000000..cb4599b0 --- /dev/null +++ b/hyperledger/1.0.3/scripts/download_images.sh @@ -0,0 +1,73 @@ +#!/usr/bin/env bash + +# Detecting whether can import the header file to render colorful cli output +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +ARCH=x86_64 +BASEIMAGE_RELEASE=0.3.2 +BASE_VERSION=1.1.0 +PROJECT_VERSION=1.0.3 + +# For testing 1.0.0 images +IMG_TAG=1.0.3 + +echo_b "Downloading images from DockerHub... need a while" + +# TODO: we may need some checking on pulling result? +docker pull yeasy/hyperledger-fabric-base:$IMG_TAG \ + && docker pull yeasy/hyperledger-fabric-peer:$IMG_TAG \ + && docker pull yeasy/hyperledger-fabric-orderer:$IMG_TAG \ + && docker pull yeasy/hyperledger-fabric-ca:$IMG_TAG \ + && docker pull hyperledger/fabric-couchdb:$ARCH-$IMG_TAG \ + && docker pull hyperledger/fabric-kafka:$ARCH-$IMG_TAG \ + && docker pull hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG + +# Only useful for debugging +# docker pull yeasy/hyperledger-fabric + +echo_b "===Pulling fabric images from official repo... with tag = ${IMG_TAG}" +docker pull hyperledger/fabric-peer:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-tools:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-orderer:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-ca:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-ccenv:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-baseimage:$ARCH-$BASEIMAGE_RELEASE +docker pull hyperledger/fabric-baseos:$ARCH-$BASEIMAGE_RELEASE +docker pull hyperledger/fabric-couchdb:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-kafka:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG + +echo_g "Done, now can startup the network using docker-compose..." + +exit 0 + + +# following part is not necessary now. +echo_b "===Re-tagging images to *latest* tag" +docker tag hyperledger/fabric-peer:$ARCH-$IMG_TAG hyperledger/fabric-peer +docker tag hyperledger/fabric-tools:$ARCH-$IMG_TAG hyperledger/fabric-tools +docker tag hyperledger/fabric-orderer:$ARCH-$IMG_TAG hyperledger/fabric-orderer +docker tag hyperledger/fabric-ca:$ARCH-$IMG_TAG hyperledger/fabric-ca +docker tag hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG hyperledger/fabric-zookeeper +docker tag hyperledger/fabric-kafka:$ARCH-$IMG_TAG hyperledger/fabric-kafka +docker tag hyperledger/fabric-couchdb:$ARCH-$IMG_TAG hyperledger/fabric-couchdb + +echo_b "Rename images with official tags..." +docker tag yeasy/hyperledger-fabric-peer:$IMG_TAG hyperledger/fabric-peer \ + && docker tag yeasy/hyperledger-fabric-peer:$IMG_TAG hyperledger/fabric-tools \ + && docker tag yeasy/hyperledger-fabric-orderer:$IMG_TAG hyperledger/fabric-orderer \ + && docker tag yeasy/hyperledger-fabric-ca:$IMG_TAG hyperledger/fabric-ca \ + && docker tag yeasy/hyperledger-fabric-base:$IMG_TAG hyperledger/fabric-ccenv:$ARCH-$PROJECT_VERSION \ + && docker tag yeasy/hyperledger-fabric-base:$IMG_TAG hyperledger/fabric-baseos:$ARCH-$BASEIMAGE_RELEASE \ + && docker tag yeasy/hyperledger-fabric-base:$IMG_TAG hyperledger/fabric-baseimage:$ARCH-$BASEIMAGE_RELEASE \ + && docker tag hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG hyperledger/fabric-zookeeper \ + && docker tag hyperledger/fabric-kafka:$ARCH-$IMG_TAG hyperledger/fabric-kafka + diff --git a/hyperledger/1.0.3/scripts/func.sh b/hyperledger/1.0.3/scripts/func.sh new file mode 100644 index 00000000..9abdc536 --- /dev/null +++ b/hyperledger/1.0.3/scripts/func.sh @@ -0,0 +1,256 @@ +#!/bin/bash + +# Some useful functions for cc testing + +# Detecting whether can import the header file to render colorful cli output +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +CHANNEL_NAME="$1" +: ${CHANNEL_NAME:="businesschannel"} + +CC_NAME=mycc + +: ${TIMEOUT:="60"} +COUNTER=1 +MAX_RETRY=5 + +ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +verifyResult () { + if [ $1 -ne 0 ] ; then + echo_b "!!!!!!!!!!!!!!! "$2" !!!!!!!!!!!!!!!!" + echo_r "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +setGlobals () { + + if [ $1 -eq 0 -o $1 -eq 1 ] ; then + CORE_PEER_LOCALMSPID="Org1MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + if [ $1 -eq 0 ]; then + CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org1.example.com:7051 + fi + else + CORE_PEER_LOCALMSPID="Org2MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp + if [ $1 -eq 2 ]; then + CORE_PEER_ADDRESS=peer0.org2.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org2.example.com:7051 + fi + fi + + env |grep CORE +} + +checkOSNAvailability() { + #Use orderer's MSP for fetching system channel config block + CORE_PEER_LOCALMSPID="OrdererMSP" + CORE_PEER_TLS_ROOTCERT_FILE=$ORDERER_CA + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp + + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo "Attempting to fetch system channel 'testchainid' ...$(($(date +%s)-starttime)) secs" + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" >&log.txt + else + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Received block/ {print $NF}') + test "$VALUE" = "0" && let rc=0 + done + cat log.txt + verifyResult $rc "Ordering Service is not available, Please try again ..." + echo "===================== Ordering Service is up and running ===================== " + echo +} + +# Use peer0/org1 to create a channel +channelCreate() { + setGlobals 0 + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --timeout $TIMEOUT >&log.txt + else + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA --timeout $TIMEOUT >&log.txt + fi + res=$? + cat log.txt + if [ $res -ne 0 -a $COUNTER -lt $MAX_RETRY ]; then + COUNTER=` expr $COUNTER + 1` + echo_b "PEER$1 failed to create the channel, Retry after 3 seconds" + sleep 3 + channelCreate + else + COUNTER=1 + fi + verifyResult $res "Channel creation failed" + echo_g "===================== Channel \"$CHANNEL_NAME\" is created successfully ===================== " + echo +} + +updateAnchorPeers() { + PEER=$1 + setGlobals $PEER + + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx >&log.txt + else + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Anchor peer update failed" + echo "===================== Anchor peers for org \"$CORE_PEER_LOCALMSPID\" on \"$CHANNEL_NAME\" is updated successfully ===================== " + sleep 5 + echo +} + +## Sometimes Join takes time hence RETRY atleast for 5 times +joinWithRetry () { + peer channel join -b $CHANNEL_NAME.block >&log.txt + res=$? + cat log.txt + if [ $res -ne 0 -a $COUNTER -lt $MAX_RETRY ]; then + COUNTER=` expr $COUNTER + 1` + echo_b "PEER$1 failed to join the channel, Retry after 2 seconds" + sleep 2 + joinWithRetry $1 + else + COUNTER=1 + fi + verifyResult $res "After $MAX_RETRY attempts, PEER$ch has failed to Join the Channel" +} + +# Join given (by default all) peers into the channel +channelJoin () { + peer_to_join=$(seq 0 3) + if [ $# -gt 0 ]; then + peer_to_join=$@ + fi + for i in $peer_to_join; do + setGlobals $i + joinWithRetry $i + echo_g "===================== PEER$i joined on the channel \"$CHANNEL_NAME\" ===================== " + sleep 2 + echo + done +} + +# Instantiate chaincode on specifized peer node +chaincodeInstantiate () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode instantiate -o orderer.example.com:7050 -C $CHANNEL_NAME -n $CC_NAME -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + else + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n $CC_NAME -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Chaincode instantiation on PEER$PEER on channel '$CHANNEL_NAME' failed" + echo_g "===================== Chaincode Instantiation on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +chaincodeQuery () { + PEER=$1 + echo_b "===================== Querying on PEER$PEER on channel '$CHANNEL_NAME'... ===================== " + setGlobals $PEER + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo_b "Attempting to Query PEER$PEER ...$(($(date +%s)-starttime)) secs" + peer chaincode query -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["query","a"]}' >&log.txt + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Query Result/ {print $NF}') + test "$VALUE" = "$2" && let rc=0 + done + echo + cat log.txt + if test $rc -eq 0 ; then + echo_g "===================== Query on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + else + echo_r "!!!!!!!!!!!!!!! Query result on PEER$PEER is INVALID !!!!!!!!!!!!!!!!" + echo_r "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +chaincodeInvoke () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode invoke -o orderer.example.com:7050 -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["invoke","a","b","10"]}' >&log.txt + else + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["invoke","a","b","10"]}' >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Invoke execution on PEER$PEER failed " + echo_g "===================== Invoke transaction on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +# Install chaincode on specifized peer node +chaincodeInstall () { + PEER=$1 + VERSION=$2 + setGlobals $PEER + peer chaincode install -n $CC_NAME -v $VERSION -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 >&log.txt + res=$? + cat log.txt + verifyResult $res "Chaincode installation on remote peer PEER$PEER has Failed" + echo_g "===================== Chaincode is installed on remote peer PEER$PEER ===================== " + echo +} + +# chaincodeUpgrade 0 1.1 +chaincodeUpgrade () { + PEER=$1 + VERSION=$2 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode upgrade -o orderer.example.com:7050 -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["upgrade","a","100","b","200"]}' -v $VERSION >&log.txt + else + peer chaincode upgrade -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["upgrade","a","100","b","200"]}' -v $VERSION >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Upgrade execution on PEER$PEER failed " + echo_g "===================== Upgrade transaction on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + diff --git a/hyperledger/1.0.3/scripts/header.sh b/hyperledger/1.0.3/scripts/header.sh new file mode 100644 index 00000000..7620a87e --- /dev/null +++ b/hyperledger/1.0.3/scripts/header.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +## DO NOT MODIFY THE FOLLOWING PART, UNLESS YOU KNOW WHAT IT MEANS ## +echo_r () { + [ $# -ne 1 ] && return 0 + echo -e "\033[31m$1\033[0m" +} +echo_g () { + [ $# -ne 1 ] && return 0 + echo -e "\033[32m$1\033[0m" +} +echo_y () { + [ $# -ne 1 ] && return 0 + echo -e "\033[33m$1\033[0m" +} +echo_b () { + [ $# -ne 1 ] && return 0 + echo -e "\033[34m$1\033[0m" +} \ No newline at end of file diff --git a/hyperledger/1.0.3/scripts/initialize_all.sh b/hyperledger/1.0.3/scripts/initialize_all.sh new file mode 100644 index 00000000..31845b4b --- /dev/null +++ b/hyperledger/1.0.3/scripts/initialize_all.sh @@ -0,0 +1,58 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo +echo " ============================================== " +echo " ==========initialize businesschannel========== " +echo " ============================================== " +echo + +echo_b "Channel name : "$CHANNEL_NAME + +## Create channel +echo_b "Creating channel..." +channelCreate + +## Join all the peers to the channel +echo_b "Having all peers join the channel..." +channelJoin + + +## Set the anchor peers for each org in the channel +echo_b "Updating anchor peers for org1..." +updateAnchorPeers 0 +echo_b "Updating anchor peers for org2..." +updateAnchorPeers 2 + +## Install chaincode on all peers +echo_b "Installing chaincode on all 4 peers..." +chaincodeInstall 0 1.0 +chaincodeInstall 1 1.0 +chaincodeInstall 2 1.0 +chaincodeInstall 3 1.0 + +# Instantiate chaincode on all peers +# Instantiate can only be executed once on any node +echo_b "Instantiating chaincode on all 2 channels (once for each channel)..." +chaincodeInstantiate 0 +chaincodeInstantiate 2 + +echo +echo_g "===================== All GOOD, initialization completed ===================== " +echo + +echo +echo " _____ _ _ ____ " +echo "| ____| | \ | | | _ \ " +echo "| _| | \| | | | | |" +echo "| |___ | |\ | | |_| |" +echo "|_____| |_| \_| |____/ " +echo + +exit 0 diff --git a/hyperledger/1.0.3/scripts/initialize_peer0.sh b/hyperledger/1.0.3/scripts/initialize_peer0.sh new file mode 100644 index 00000000..4d9a571c --- /dev/null +++ b/hyperledger/1.0.3/scripts/initialize_peer0.sh @@ -0,0 +1,61 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo +echo " ============================================== " +echo " ==========initialize businesschannel========== " +echo " ============================================== " +echo + +echo_b "Channel name : "$CHANNEL_NAME + +## Create channel +echo_b "Creating channel..." +channelCreate + +sleep 1 + +## Join all the peers to the channel +echo_b "Having peer0 join the channel..." +channelJoin 0 + +sleep 1 + +## Set the anchor peers for each org in the channel +echo_b "Updating anchor peers for peer0/org1..." +updateAnchorPeers 0 + +sleep 1 + +## Install chaincode on all peers +echo_b "Installing chaincode on peer0..." +chaincodeInstall 0 1.0 + +sleep 1 + +# Instantiate chaincode on all peers +# Instantiate can only be executed once on any node +echo_b "Instantiating chaincode on the channel..." +chaincodeInstantiate 0 + +sleep 1 + +echo +echo_g "===================== All GOOD, initialization completed ===================== " +echo + +echo +echo " _____ _ _ ____ " +echo "| ____| | \ | | | _ \ " +echo "| _| | \| | | | | |" +echo "| |___ | |\ | | |_| |" +echo "|_____| |_| \_| |____/ " +echo + +exit 0 diff --git a/hyperledger/1.0.3/scripts/log.txt b/hyperledger/1.0.3/scripts/log.txt new file mode 100644 index 00000000..be06fc3b --- /dev/null +++ b/hyperledger/1.0.3/scripts/log.txt @@ -0,0 +1,19 @@ +2017-09-15 06:32:05.922 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP +2017-09-15 06:32:05.922 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity +2017-09-15 06:32:05.928 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized +Error: genesis block file not found open businesschannel.block: no such file or directory +Usage: + peer channel join [flags] + +Flags: + -b, --blockpath string Path to file containing genesis block + +Global Flags: + --cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint + --logging-level string Default logging level and overrides, see core.yaml for full syntax + -o, --orderer string Ordering service endpoint + --ordererTLSHostnameOverride string The hostname override to use when validating the TLS connection to the orderer. + --test.coverprofile string Done (default "coverage.cov") + --tls Use TLS when communicating with the orderer endpoint + -v, --version Display current version of fabric peer server + diff --git a/hyperledger/1.0.3/scripts/setup_Docker.sh b/hyperledger/1.0.3/scripts/setup_Docker.sh new file mode 100644 index 00000000..7e5a534d --- /dev/null +++ b/hyperledger/1.0.3/scripts/setup_Docker.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash + +# Install docker on Ubuntu/Debian system + +# Detecting whether can import the header file to render colorful cli output +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +if [ xroot != x$(whoami) ] +then + echo_r "You must run as root (Hint: sudo su)" + exit +fi + +apt-get update && apt-get install curl -y + +echo_b "Install Docker..." + +wget -qO- https://get.docker.com/ | sh +sudo service docker stop +nohup sudo docker daemon --api-cors-header="*" -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock& + +echo_g "Docker Installation Done" + +echo_b "Install Docker-Compose..." + +curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose +chmod +x /usr/local/bin/docker-compose +docker-compose --version + + +echo_g "Docker-Compose Installation Done" + diff --git a/hyperledger/1.0.3/scripts/test_cc_all.sh b/hyperledger/1.0.3/scripts/test_cc_all.sh new file mode 100644 index 00000000..7d28ee59 --- /dev/null +++ b/hyperledger/1.0.3/scripts/test_cc_all.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo_b "Channel name : "$CHANNEL_NAME + +#Query on chaincode on Peer0/Org1 +echo_b "Querying chaincode on peer 3..." +chaincodeQuery 3 100 + +#Invoke on chaincode on Peer0/Org1 +echo_b "Sending invoke transaction (transfer 10) on org1/peer0..." +chaincodeInvoke 0 + +#Query on chaincode on Peer1/Org2, check if the result is 90 +echo_b "Querying chaincode on peer 1 and 3..." +chaincodeQuery 1 90 +chaincodeQuery 3 90 + +#Invoke on chaincode on Peer1/Org2 +echo_b "Sending invoke transaction on org2/peer3..." +chaincodeInvoke 3 + +#Query on chaincode on Peer1/Org2, check if the result is 80 +echo_b "Querying chaincode on all 4peers..." +chaincodeQuery 0 80 +chaincodeQuery 2 80 + +#Upgrade to new version +chaincodeInstall 0 1.1 +chaincodeInstall 1 1.1 +chaincodeInstall 2 1.1 +chaincodeInstall 3 1.1 + +chaincodeUpgrade 0 1.1 + +chaincodeQuery 0 100 +chaincodeQuery 3 100 + +echo +echo_g "===================== All GOOD, End-2-End execution completed ===================== " +echo + +exit 0 diff --git a/hyperledger/1.0.3/scripts/test_cc_peer0.sh b/hyperledger/1.0.3/scripts/test_cc_peer0.sh new file mode 100644 index 00000000..fa2a8038 --- /dev/null +++ b/hyperledger/1.0.3/scripts/test_cc_peer0.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo_b "Channel name : "$CHANNEL_NAME + +echo_b "====================Query the existing value of a====================================" +chaincodeQuery 0 100 + +sleep 1 + +echo_b "=====================Invoke a transaction to transfer 10 from a to b==================" +chaincodeInvoke 0 + +sleep 1 + +echo_b "=====================Check if the result of a is 90===================================" +chaincodeQuery 0 90 + +echo +echo_g "=====================All GOOD, MVE Test completed ===================== " +echo +exit 0 diff --git a/hyperledger/1.0.3/scripts/test_lscc.sh b/hyperledger/1.0.3/scripts/test_lscc.sh new file mode 100644 index 00000000..14b6b371 --- /dev/null +++ b/hyperledger/1.0.3/scripts/test_lscc.sh @@ -0,0 +1,59 @@ +#!/usr/bin/env bash + +# This script will run some qscc queries for testing. + +# Detecting whether can import the header file to render colorful cli output +# Need add choice option +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +CHANNEL_NAME="$1" +: ${CHANNEL_NAME:="businesschannel"} + +echo_b "LSCC testing" + +# invoke required following params + #-o orderer.example.com:7050 \ + #--tls "true" \ + #--cafile ${ORDERER_CA} \ + +echo_b "Get id" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getid","businesschannel", "mycc"]}' + +echo_b "Get cc ChaincodeDeploymentSpec" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getdepspec","businesschannel", "mycc"]}' + +echo_b "Get cc bytes" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getccdata","businesschannel", "mycc"]}' + +echo_b "Get all chaincodes installed on the channel" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getinstalledchaincodes"]}' + +echo_b "Get all chaincodes instantiated on the channel" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getchaincodes"]}' + +echo_g "LSCC testing done!" \ No newline at end of file diff --git a/hyperledger/1.0.3/scripts/test_qscc.sh b/hyperledger/1.0.3/scripts/test_qscc.sh new file mode 100644 index 00000000..41bddd72 --- /dev/null +++ b/hyperledger/1.0.3/scripts/test_qscc.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash + +# This script will run some qscc queries for testing. + +# Detecting whether can import the header file to render colorful cli output +# Need add choice option +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + + +#CHANNEL_NAME="$1" +#: ${CHANNEL_NAME:="businesschannel"} + +echo_b "Qscc GetChainInfo" +peer chaincode query -C "" -n qscc -c '{"Args":["GetChainInfo","businesschannel"]}' + +echo_b "Qscc GetBlockByNumber 2" +peer chaincode query -C "" -n qscc -c '{"Args":["GetBlockByNumber","businesschannel","2"]}' + +echo_g "Qscc testing done!" \ No newline at end of file diff --git a/hyperledger/1.0/docker-compose-1peer.yaml b/hyperledger/1.0/docker-compose-1peer.yaml index e9d9c114..a82f043f 100644 --- a/hyperledger/1.0/docker-compose-1peer.yaml +++ b/hyperledger/1.0/docker-compose-1peer.yaml @@ -10,22 +10,22 @@ version: '2.0' services: ca: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: ca cli: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: cli orderer.example.com: # There can be multiple orderers extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: orderer.example.com peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com #networks: diff --git a/hyperledger/1.0/docker-compose-2orgs-4peers-couchdb.yaml b/hyperledger/1.0/docker-compose-2orgs-4peers-couchdb.yaml index a59c4302..2a72db46 100644 --- a/hyperledger/1.0/docker-compose-2orgs-4peers-couchdb.yaml +++ b/hyperledger/1.0/docker-compose-2orgs-4peers-couchdb.yaml @@ -17,12 +17,12 @@ version: '2' services: orderer.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: orderer.example.com peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -32,7 +32,7 @@ services: peer1.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org1.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -42,7 +42,7 @@ services: peer0.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org2.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -52,7 +52,7 @@ services: peer1.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org2.example.com environment: - CORE_LEDGER_STATE_STATEDATABASE=CouchDB @@ -102,6 +102,6 @@ services: cli: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: cli diff --git a/hyperledger/1.0/docker-compose-2orgs-4peers-event.yaml b/hyperledger/1.0/docker-compose-2orgs-4peers-event.yaml index d74cfeca..35b41456 100644 --- a/hyperledger/1.0/docker-compose-2orgs-4peers-event.yaml +++ b/hyperledger/1.0/docker-compose-2orgs-4peers-event.yaml @@ -19,27 +19,27 @@ services: orderer.example.com: # There can be multiple orderers extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: orderer.example.com peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org2.example.com cli: diff --git a/hyperledger/1.0/docker-compose-2orgs-4peers.yaml b/hyperledger/1.0/docker-compose-2orgs-4peers.yaml index 6bad00aa..6d6cf84c 100644 --- a/hyperledger/1.0/docker-compose-2orgs-4peers.yaml +++ b/hyperledger/1.0/docker-compose-2orgs-4peers.yaml @@ -10,43 +10,43 @@ version: '2.0' services: ca.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: ca.org1.example.com ca.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: ca.org2.example.com cli: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: cli orderer.example.com: # There can be multiple orderers extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: orderer.example.com peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org2.example.com #networks: diff --git a/hyperledger/1.0/docker-compose-dev.yaml b/hyperledger/1.0/docker-compose-dev.yaml index 101d574f..b98f65a5 100644 --- a/hyperledger/1.0/docker-compose-dev.yaml +++ b/hyperledger/1.0/docker-compose-dev.yaml @@ -35,7 +35,7 @@ services: cli: #extends: - # file: peer-base-dev.yaml + # file: peer-docker-compose-base-dev.yaml # service: peer-base #image: yeasy/hyperledger-fabric:1.0.1 extends: diff --git a/hyperledger/1.0/e2e_cli/docker-compose-cli.yaml b/hyperledger/1.0/e2e_cli/docker-compose-cli.yaml index 8df8fae3..3353f27b 100644 --- a/hyperledger/1.0/e2e_cli/docker-compose-cli.yaml +++ b/hyperledger/1.0/e2e_cli/docker-compose-cli.yaml @@ -9,7 +9,7 @@ services: zookeeper0: container_name: zookeeper0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=1 @@ -18,7 +18,7 @@ services: zookeeper1: container_name: zookeeper1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=2 @@ -27,7 +27,7 @@ services: zookeeper2: container_name: zookeeper2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=3 @@ -36,7 +36,7 @@ services: kafka0: container_name: kafka0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=0 @@ -51,7 +51,7 @@ services: kafka1: container_name: kafka1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=1 @@ -66,7 +66,7 @@ services: kafka2: container_name: kafka2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=2 @@ -81,7 +81,7 @@ services: kafka3: container_name: kafka3 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=3 @@ -95,7 +95,7 @@ services: orderer.example.com: extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: orderer.example.com container_name: orderer.example.com depends_on: @@ -110,25 +110,25 @@ services: peer0.org1.example.com: container_name: peer0.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: container_name: peer1.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: container_name: peer0.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: container_name: peer1.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org2.example.com cli: diff --git a/hyperledger/1.0/e2e_cli/docker-compose-e2e-template.yaml b/hyperledger/1.0/e2e_cli/docker-compose-e2e-template.yaml index c5f160da..7db21047 100644 --- a/hyperledger/1.0/e2e_cli/docker-compose-e2e-template.yaml +++ b/hyperledger/1.0/e2e_cli/docker-compose-e2e-template.yaml @@ -39,7 +39,7 @@ services: zookeeper0: container_name: zookeeper0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=1 @@ -48,7 +48,7 @@ services: zookeeper1: container_name: zookeeper1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=2 @@ -57,7 +57,7 @@ services: zookeeper2: container_name: zookeeper2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=3 @@ -66,7 +66,7 @@ services: kafka0: container_name: kafka0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=0 @@ -81,7 +81,7 @@ services: kafka1: container_name: kafka1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=1 @@ -96,7 +96,7 @@ services: kafka2: container_name: kafka2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=2 @@ -111,7 +111,7 @@ services: kafka3: container_name: kafka3 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=3 @@ -125,7 +125,7 @@ services: orderer.example.com: extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: orderer.example.com container_name: orderer.example.com depends_on: @@ -137,23 +137,23 @@ services: peer0.org1.example.com: container_name: peer0.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: container_name: peer1.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: container_name: peer0.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: container_name: peer1.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org2.example.com diff --git a/hyperledger/1.0/e2e_cli/docker-compose-e2e.yaml b/hyperledger/1.0/e2e_cli/docker-compose-e2e.yaml index d5b57833..ba077420 100644 --- a/hyperledger/1.0/e2e_cli/docker-compose-e2e.yaml +++ b/hyperledger/1.0/e2e_cli/docker-compose-e2e.yaml @@ -39,7 +39,7 @@ services: zookeeper0: container_name: zookeeper0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=1 @@ -48,7 +48,7 @@ services: zookeeper1: container_name: zookeeper1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=2 @@ -57,7 +57,7 @@ services: zookeeper2: container_name: zookeeper2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: zookeeper environment: - ZOO_MY_ID=3 @@ -66,7 +66,7 @@ services: kafka0: container_name: kafka0 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=0 @@ -81,7 +81,7 @@ services: kafka1: container_name: kafka1 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=1 @@ -96,7 +96,7 @@ services: kafka2: container_name: kafka2 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=2 @@ -111,7 +111,7 @@ services: kafka3: container_name: kafka3 extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: kafka environment: - KAFKA_BROKER_ID=3 @@ -125,7 +125,7 @@ services: orderer.example.com: extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: orderer.example.com container_name: orderer.example.com depends_on: @@ -137,23 +137,23 @@ services: peer0.org1.example.com: container_name: peer0.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org1.example.com peer1.org1.example.com: container_name: peer1.org1.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org1.example.com peer0.org2.example.com: container_name: peer0.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer0.org2.example.com peer1.org2.example.com: container_name: peer1.org2.example.com extends: - file: base/docker-compose-base.yaml + file: base/docker-compose-base-e2e.yaml service: peer1.org2.example.com diff --git a/hyperledger/1.0/kafka/orderer-kafka.yaml b/hyperledger/1.0/kafka/orderer-kafka.yaml index bbe011a2..b2a96b7b 100644 --- a/hyperledger/1.0/kafka/orderer-kafka.yaml +++ b/hyperledger/1.0/kafka/orderer-kafka.yaml @@ -145,28 +145,28 @@ services: peer0.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org1.example.com depends_on: - orderer.example.com peer1.org1.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org1.example.com depends_on: - orderer.example.com peer0.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer0.org2.example.com depends_on: - orderer.example.com peer1.org2.example.com: extends: - file: docker-compose-base.yaml + file: docker-compose-base-e2e.yaml service: peer1.org2.example.com depends_on: - orderer.example.com diff --git a/hyperledger/dev/Makefile b/hyperledger/dev/Makefile new file mode 100644 index 00000000..e45404cf --- /dev/null +++ b/hyperledger/dev/Makefile @@ -0,0 +1,133 @@ +KAFKA_ENABLED ?= false +COUCHDB_ENABLED ?= false +DEV_ENABLED ?= true + +COMPOSE_FILE ?= "docker-compose-2orgs-4peers.yaml" + +ifeq ($(KAFKA_ENABLED),true) +COMPOSE_FILE="docker-compose-2orgs-4peers-kafka.yaml" +endif + +ifeq ($(COUCHDB_ENABLED),true) +COMPOSE_FILE="docker-compose-2orgs-4peers-couchdb.yaml" +endif + +ifeq ($(DEV_ENABLED),true) +COMPOSE_FILE="docker-compose-1orgs-1peers-dev.yaml" +endif + +all: + @echo "Run test with ${COMPOSE_FILE}" + @echo "Please make sure u have setup Docker and pulled images by 'make setup'." + sleep 2 + + make ready + make lscc qscc + + make stop clean + +ready: restart + @echo "Restart, init network and then do cc testing..." + if [ "$(DEV_ENABLED)" = "true" ]; then \ + echo "In DEV mode, wait for rebuilding ..." && sleep 35; \ + make init_peer0; \ + sleep 2; \ + make test_peer0; \ + else \ + echo "In Normal mode ..." && sleep 3; \ + make init; \ + sleep 2; \ + make test_cc; \ + fi + + @echo "Now the fabric network is ready to play" + @echo "run 'make cli' to enter into the fabric-cli container." + @echo "run 'make stop' when done." + +start: # bootup the fabric network + @echo "Start a fabric network with 2-org-4-peer" + make clean + docker-compose -f ${COMPOSE_FILE} up -d # Start a fabric network + +init: # initialize the fabric network + @echo "Install and instantiate cc example02 on the fabric network" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/initialize_all.sh" + +init_peer0: # initialize the fabric network + @echo "Install and instantiate cc example02 on the fabric dev network" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/initialize_peer0.sh" + +stop: # stop the fabric network + @echo "Stop the fabric network" + docker-compose -f ${COMPOSE_FILE} down # Stop a fabric network + +restart: stop start + + +################## Chaincode testing operations ################ +test_cc: # test user chaincode on all peers + @echo "Invoke and query cc example02 on all peers" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_cc_all.sh" + +test_peer0: # test single peer + @echo "Invoke and query cc example02 on single peer0" + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_cc_peer0.sh" + +qscc: # test qscc queries + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_qscc.sh" + +lscc: # test lscc quries + docker exec -it fabric-cli bash -c "cd /tmp; bash scripts/test_lscc.sh" + +################## Env setup related, no need to see usually ################ + +setup: # setup the environment + bash scripts/setup_Docker.sh # Install Docker, Docker-Compose + bash scripts/download_images.sh # Pull required Docker images + +clean: # clean up containers + @echo "Clean all containers and fabric cc images" + @-docker rm -f `docker ps -qa` + @-docker rmi $$(docker images | awk '$$1 ~ /dev-peer/ { print $$3}') + +clean_env: # clean up environment + @echo "Clean all images and containers" + bash scripts/clean_env.sh + +cli: # enter the cli container + docker exec -it fabric-cli bash + +peer: # enter the peer container + docker exec -it peer0.org1.example.com bash + +dev_compile: # rebuild the peer + docker exec -it peer0.org1.example.com bash /tmp/peer_build.sh + +ps: # show existing docker images + docker ps -a + +logs: # show logs + docker-compose -f ${COMPOSE_FILE} logs -f --tail 200 + +logs_check: logs_save logs_view + +logs_save: # save logs + docker logs peer0.org1.example.com >& /tmp/dev_peer.log + docker logs orderer.example.com >& /tmp/dev_orderer.log + +logs_view: # view logs + less /tmp/dev_peer.log + +gen_e2e: # generate e2e_cli artifacts + cd e2e_cli && bash gen_artifacts.sh + +gen_kafka: # generate kafka artifacts + cd kafka && bash gen_artifacts.sh + +download: # download required images + @echo "Download Docker images" + docker pull yeasy/hyperledger-fabric:latest + docker pull yeasy/hyperledger-fabric-kafka:latest # official repo does not provide the latest image currently + docker pull hyperledger/fabric-baseos:x86_64-0.4.2 + docker tag yeasy/hyperledger-fabric:latest hyperledger/fabric-ccenv:x86_64-1.1.0 + diff --git a/hyperledger/dev/README.md b/hyperledger/dev/README.md new file mode 100644 index 00000000..059dca52 --- /dev/null +++ b/hyperledger/dev/README.md @@ -0,0 +1,144 @@ +# Hyperledger fabric 1.0.3 + +Here we show steps on how to setup a fabric 1.0.3 network on Linux (e.g., Ubuntu/Debian), and then use it to run chaincode tests. + +If you're not familiar with Docker and Blockchain technology yet, feel free to have a look at 2 books (in CN): + +* [Docker Practice](https://github.com/yeasy/docker_practice) +* [Blockchain Guide](https://github.com/yeasy/blockchain_guide) + + +## Pass-through + +The following command will run the entire process (start a fabric network, create channel, test chaincode and stop it.) pass-through. + +```sh +$ make setup # install docker/compose, and pull required images +$ make all +``` + +tldr :) + +`make all` actually call following command sequentially. + +* `make start` +* `make init` +* `make test_cc` +* `make stop` + +Otherwise, if u wanna know more or run the command manually, then go on reading the following part. + +## Environment Setup + +The following scripts will setup the environment by installing Docker, Docker-Compose and download required docker images. + +```sh +$ make setup # setup environment +``` + +If you want to setup the environment manually, then have a look at [manually setup](docs/setup.md). + +## Bootup Fabric Network + +Start a 4 peer (belonging to 2 organizations) fabric network. + +```sh +$ make start # Start a fabric network +``` +The script actually uses docker-compose to boot up the fabric network with several containers. + +There will be 7 running containers, include 4 peers, 1 cli, 1 ca and 1 orderer. + +```bash +$ make ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +1dc3f2557bdc hyperledger/fabric-tools "bash -c 'while tr..." 25 minutes ago Up 25 minutes fabric-cli +5e5f37a0ed3c hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:8051->7051/tcp, 0.0.0.0:8052->7052/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com +6cce94da6392 hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:9051->7051/tcp, 0.0.0.0:9052->7052/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com +e36c5e8d56c5 hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:7051-7053->7051-7053/tcp peer0.org1.example.com +1fdd3d2b6527 hyperledger/fabric-orderer "orderer start" 25 minutes ago Up 25 minutes 0.0.0.0:7050->7050/tcp orderer.example.com +8af323340651 hyperledger/fabric-ca "fabric-ca-server ..." 25 minutes ago Up 25 minutes 0.0.0.0:7054->7054/tcp fabric-ca +e41d8bca7fe5 hyperledger/fabric-peer "peer node start" 25 minutes ago Up 25 minutes 7050/tcp, 7054-7059/tcp, 0.0.0.0:10051->7051/tcp, 0.0.0.0:10052->7052/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com +``` + +### Initialize Fabric network + +```bash +$ make init # Start a fabric network +``` + +The command actually calls the `./scripts/initialize.sh` script in the `fabric-cli` container to: + +* create a new application channel `businesschannel` +* join all peers into the channel +* install and instantiate chaincode `example02` for testing + +This script only needs to be executed once. + +You should see result like the following if the initialization is successful. + +```bash +============================================== +==========initialize businesschannel========== +============================================== + +Channel name : businesschannel +Creating channel... + +... + +===================== All GOOD, initialization completed ===================== +``` + +And there will be new chaincode container generated in the system, looks like + +```bash +$ make ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +9971c9fd1971 dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 54 seconds ago Up 53 seconds dev-peer1.org2.example.com-mycc-1.0 +e3092961b81b dev-peer1.org1.example.com-mycc-1.0 "chaincode -peer.a..." About a minute ago Up About a minute dev-peer1.org1.example.com-mycc-1.0 +57d3555f56e5 dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." About a minute ago Up About a minute dev-peer0.org2.example.com-mycc-1.0 +c9974dbc21d9 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 23 minutes ago Up 23 minutes dev-peer0.org1.example.com-mycc-1.0 +``` + + +## Test Chaincode + +```bash +$ make test_cc # test invoke and query with chaincode +``` + +More details, see [chaincode test](docs/chaincode_test.md). + + +## Stop the network + +```bash +$ make stop # stop the fabric network +``` + +## Clean environment + +Clean all related containers and images. + +```bash +$ make clean # clean the environment +``` + +## More to learn + +Topics | Description +-- | -- +[Detailed Explanation](./docs/detailed_steps.md) | Explain in detail how a 1-peer network start and test. +[Fetch blocks](docs/peer_cmds.md) | Fetch blocks using `peer channel fetch` cmd. +[Use Events](./docs/events.md) | Get events with block-listener +[Artifacts Generation](docs/artifacts_generation.md) | Will explain the usage of `cryptogen` and `configtxgen` to prepare the artifacts for booting the fabric network. +[couchDB](docs/couchdb_usage.md) | Use couchDB as the state DB. +[kafka](./kafka/README.md) | Use kafka as the ordering backend +[configtxlator](docs/configtxlator.md) | Use configtxlator to convert the configurations +[WIP] [Some verification tests](docs/verification_test.md) | + + +## Acknowledgement +* [Hyperledger Fabric](https://github.com/hyperledger/fabric/) project. +* [Hyperledger Fabric Getting Started](http://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html). diff --git a/hyperledger/dev/base.yaml b/hyperledger/dev/base.yaml new file mode 100644 index 00000000..1161e9ff --- /dev/null +++ b/hyperledger/dev/base.yaml @@ -0,0 +1,126 @@ +# This is the default base file to config env and command +# Notice that chaincode is executed inside docker in default net mode +# https://github.com/yeasy/docker-compose-files + +# Depends on the hyperledger/fabric-peer image. + +version: '2' + +services: + ca-base: + #image: yeasy/hyperledger-fabric-ca:1.0.3 + image: hyperledger/fabric-ca:x86_64-1.0.3 + restart: always + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_TLS_ENABLED=true + + orderer-base: + #image: yeasy/hyperledger-fabric-orderer:1.0.3 + image: hyperledger/fabric-orderer:x86_64-1.0.3 + restart: always + environment: + - ORDERER_GENERAL_LOGLEVEL=DEBUG + - ORDERER_GENERAL_LOGFORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} + - ORDERER_GENERAL_LISTENADDRESS=0.0.0.0 + - ORDERER_GENERAL_GENESISMETHOD=file + - ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.genesis.block + - ORDERER_GENERAL_LOCALMSPID=OrdererMSP + - ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/orderer/msp + - ORDERER_GENERAL_LEDGERTYPE=file + - ORDERER_GENERAL_BATCHTIMEOUT=2s + - ORDERER_GENERAL_MAXMESSAGECOUNT=10 + - ORDERER_GENERAL_MAXWINDOWSIZE=1000 + - ORDERER_GENERAL_LISTENPORT=7050 + #- ORDERER_RAMLEDGER_HISTORY_SIZE=100 #only useful when use ram ledger + # enabled TLS + - ORDERER_GENERAL_TLS_ENABLED=true + - ORDERER_GENERAL_TLS_PRIVATEKEY=/var/hyperledger/orderer/tls/server.key + - ORDERER_GENERAL_TLS_CERTIFICATE=/var/hyperledger/orderer/tls/server.crt + - ORDERER_GENERAL_TLS_ROOTCAS=[/var/hyperledger/orderer/tls/ca.crt] + expose: + - "7050" # + command: orderer start + + peer-base: + image: yeasy/hyperledger-fabric-peer:1.0.3 + #image: hyperledger/fabric-peer:x86_64-1.0.3 + restart: always + environment: + - CORE_PEER_ADDRESSAUTODETECT=false + - CORE_LOGGING_LEVEL=DEBUG + - CORE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} + - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=dev_default # uncomment this to use specific network + - CORE_PEER_GOSSIP_USELEADERELECTION=true + - CORE_PEER_GOSSIP_ORGLEADER=false # this node is the group leader, default to false + - CORE_PEER_PROFILE_ENABLED=false + - CORE_PEER_TLS_ENABLED=true + - CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt + - CORE_CHIANCODE_LOGGING_LEVEL=DEBUG + - CORE_CHIANCODE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} + expose: + - "7050" # Rest + - "7051" # Grpc + - "7052" # Peer CLI + - "7053" # Peer Event + - "7054" # eCAP + - "7055" # eCAA + - "7056" # tCAP + - "7057" # eCAA + - "7058" # tlsCAP + - "7059" # tlsCAA + volumes: # docker.sock is mapped as the default CORE_VM_ENDPOINT + - /var/run/docker.sock:/var/run/docker.sock + #volumes: + # - /var/run/:/host/var/run/ + command: peer node start + + cli-base: + #image: yeasy/hyperledger-fabric:1.0.3 + image: hyperledger/fabric-tools:x86_64-1.0.3 + restart: always + tty: true + environment: + #- GOPATH=/opt/gopath + - CORE_LOGGING_LEVEL=DEBUG + - CORE_LOGGING_FORMAT=%{color}[%{id:03x} %{time:01-02 15:04:05.00 MST}] [%{longpkg}] %{callpath} -> %{level:.4s}%{color:reset} %{message} + - CORE_PEER_TLS_ENABLED=true # to enable TLS, change to true + - ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + - CHANNEL_NAME:="businesschannel" + working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer + command: bash -c 'cd /tmp; bash scripts/func.sh; while true; do sleep 20170504; done' + + couchdb-base: + #container_name: couchdb0 + image: hyperledger/fabric-couchdb:x86_64-1.0.3 + restart: always + tty: true + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + + zookeeper-base: + # TODO: provide a validated image + image: hyperledger/fabric-zookeeper:x86_64-1.0.3 + restart: always + tty: true + expose: + - '2181' + - '2888' + - '3888' + + kafka-base: + # official repo doesn't have latest tag, however, kafka changes version recently + image: yeasy/hyperledger-fabric-kafka:0.10.2.0 + #image: hyperledger/fabric-kafka:x86_64-1.1.0-snapshot-8c934cd4 + #image: hyperledger/fabric-kafka:x86_64-1.0.3 + restart: always + tty: true + environment: + - KAFKA_MESSAGE_MAX_BYTES=1048576 # 1 * 1024 * 1024 B + - KAFKA_REPLICA_FETCH_MAX_BYTES=1048576 # 1 * 1024 * 1024 B + - KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false + - KAFKA_LOG_RETENTION_MS=-1 + expose: + - '9092' diff --git a/hyperledger/dev/config_update/add-org.sh b/hyperledger/dev/config_update/add-org.sh new file mode 100644 index 00000000..4ff49904 --- /dev/null +++ b/hyperledger/dev/config_update/add-org.sh @@ -0,0 +1,27 @@ +#! /bin/bash + +echo "replace configtx.yaml and crypto-config.yaml" +cp ./peer/example2/configtx.yaml ./peer +cp ./peer/example2/crypto-config.yaml ./peer + +echo "replace auto-test script " +cp ./peer/example2/new-channel-auto-test-5-peers.sh ./peer/scripts + +echo "replace configtx.yaml" +cp ./peer/configtx.yaml /etc/hyperledger/fabric + +echo "Generate new certificates" + +cryptogen generate --config=./peer/crypto-config.yaml --output ./peer/crypto + +echo "Generate new certificates" +configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./peer/channel-artifacts/orderer_genesis.block + +echo "Create the configuration tx" +CHANNEL_NAME=newchannel +configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./peer/channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} + +echo "Define the anchor peer for Org1 on the channel" +configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./peer/channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP +configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./peer/channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP +configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./peer/channel-artifacts/Org3MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org3MSP \ No newline at end of file diff --git a/hyperledger/dev/config_update/configtxlator_run.sh b/hyperledger/dev/config_update/configtxlator_run.sh new file mode 100644 index 00000000..68c692e4 --- /dev/null +++ b/hyperledger/dev/config_update/configtxlator_run.sh @@ -0,0 +1,13 @@ +#!/bin/bash + + +echo "Start configtxlator service and listen on port 7059" +docker run \ + --rm -it \ + --name configtxlator \ + -p 7059:7059 \ + yeasy/hyperledger-fabric \ + configtxlator start + + +docker rm -f configtxlator diff --git a/hyperledger/dev/docker-compose-1orgs-1peers-dev.yaml b/hyperledger/dev/docker-compose-1orgs-1peers-dev.yaml new file mode 100644 index 00000000..06284975 --- /dev/null +++ b/hyperledger/dev/docker-compose-1orgs-1peers-dev.yaml @@ -0,0 +1,92 @@ +# https://github.com/yeasy/docker-compose-files/tree/master/hyperledger +# This compose file will start a Hyperledger Fabric 1.0 MVE, including +# * 1 ca +# * 1 orderer +# * 1 peer +# * cli for testing + +version: '2.0' + +services: + orderer.example.com: # There can be multiple orderers + extends: + file: docker-compose-base-dev.yaml + service: orderer.example.com + depends_on: + - kafka0 + - kafka1 + - kafka2 + - kafka3 + + peer0.org1.example.com: + extends: + file: docker-compose-base-dev.yaml + service: peer0.org1.example.com + depends_on: + - orderer.example.com + + cli: + extends: + file: docker-compose-base-dev.yaml + service: cli + depends_on: + - peer0.org1.example.com + - orderer.example.com + +# ZooKeeper services, at least 3 nodes + zookeeper0: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper0 + + zookeeper1: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper1 + + zookeeper2: + extends: + file: docker-compose-base-kafka.yaml + service: zookeeper2 + +# Kafka services, at least 4 node to tolerant work with 1 node failure + kafka0: + extends: + file: docker-compose-base-kafka.yaml + service: kafka0 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + extends: + file: docker-compose-base-kafka.yaml + service: kafka1 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + extends: + file: docker-compose-base-kafka.yaml + service: kafka2 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + extends: + file: docker-compose-base-kafka.yaml + service: kafka3 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + +#networks: +# default: +# external: +# name: hyperledger_fabric diff --git a/hyperledger/dev/docker-compose-base-dev.yaml b/hyperledger/dev/docker-compose-base-dev.yaml new file mode 100644 index 00000000..9d21d55e --- /dev/null +++ b/hyperledger/dev/docker-compose-base-dev.yaml @@ -0,0 +1,96 @@ +# This is the development compose file to config env and command +# Notice that chaincode is executed inside docker in default net mode +# https://github.com/yeasy/docker-compose-files + +# Depends on the yeasy/hyperledger-fabric image. + +version: '2' + +services: + orderer.example.com: # There can be multiple orderers + extends: + file: base.yaml + service: orderer-base + image: yeasy/hyperledger-fabric:latest # TODO: latest orderer code cannot work + container_name: orderer.example.com + hostname: orderer.example.com + ports: + - "7050:7050" + environment: + # Kafka related configurations + - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s + - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s + - ORDERER_KAFKA_VERBOSE=true + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric + # for e2e_cli case + #- ./e2e_cli/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + #- ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + #- ./e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + # for kafka case + - ./kafka/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + command: bash -c 'bash /tmp/orderer_build.sh; orderer start' # use this if to debug orderer + #command: bash -c 'sleep 3; orderer start' # use this if to debug orderer + + peer0.org1.example.com: + extends: + file: base.yaml + service: peer-base + image: yeasy/hyperledger-fabric:latest + container_name: peer0.org1.example.com + hostname: peer0.org1.example.com + environment: + - CORE_PEER_ID=peer0.org1.example.com + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org1.example.com:7052 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/go/src/github.com/hyperledger/fabric + # e2e mode configuration + #- ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + #- ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + # kafka mode configuration + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 7051:7051 + - 7052:7052 + - 7053:7053 + #command: bash -c 'bash /tmp/peer_build.sh; peer node start' + command: bash -c 'peer node start' + + cli: + extends: + file: base.yaml + service: cli-base + image: yeasy/hyperledger-fabric:latest + container_name: fabric-cli + hostname: fabric-cli + tty: true + environment: + - CORE_PEER_ID=fabric-cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + volumes: + - $GOPATH/src/github.com/hyperledger/fabric:/opt/gopath/src/github.com/hyperledger/fabric + - /tmp/:/tmp/ + - ./scripts:/tmp/scripts + # e2e mode configuration + #- ./e2e_cli/channel-artifacts:/tmp/channel-artifacts + #- ./e2e_cli/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + #- ./e2e_cli/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + #- ./e2e_cli/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + #- ./e2e_cli/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples + # kafka mode configuration + - ./kafka/channel-artifacts:/tmp/channel-artifacts + - ./kafka/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + - ./kafka/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + - ./kafka/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + - ./kafka/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples diff --git a/hyperledger/dev/docker-compose-base-kafka.yaml b/hyperledger/dev/docker-compose-base-kafka.yaml new file mode 100644 index 00000000..22d8cec8 --- /dev/null +++ b/hyperledger/dev/docker-compose-base-kafka.yaml @@ -0,0 +1,259 @@ +# Kafka enabled fabric network with: + +# ca.org1.example.com +# ca.org2.example.com +# orderer.example.com +# peer0.org1.example.com +# peer1.org1.example.com +# peer0.org2.example.com +# peer1.org2.example.com +# 3 zookeeper nodes +# 4 kafka nodes +# cli + +version: '2' # v3 does not support 'extends' yet + +services: + ca.org1.example.com: + #image: yeasy/hyperledger-fabric-ca:1.0.3 + #image: hyperledger/fabric-ca:x86_64-1.0.3 + extends: + file: base.yaml + service: ca-base + container_name: ca.org1.example.com + hostname: ca.org1.example.com + environment: + - FABRIC_CA_SERVER_CA_NAME=ca-org1 + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk + ports: + - "7054:7054" + volumes: + - ./kafka/crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk -b admin:adminpw -d' + + ca.org2.example.com: + #image: yeasy/hyperledger-fabric-ca:1.0.3 + #image: hyperledger/fabric-ca:x86_64-1.0.3 + extends: + file: base.yaml + service: ca-base + container_name: ca.org2.example.com + hostname: ca.org2.example.com + environment: + - FABRIC_CA_SERVER_CA_NAME=ca-org2 + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk + ports: + - "8054:7054" + volumes: + - ./kafka/crypto-config/peerOrganizations/org2.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk -b admin:adminpw -d' + + orderer.example.com: # There can be multiple orderers + extends: + file: base.yaml + service: orderer-base + container_name: orderer.example.com + hostname: orderer.example.com + ports: + - "7050:7050" + environment: + # Kafka related configurations + - ORDERER_KAFKA_RETRY_SHORTINTERVAL=1s + - ORDERER_KAFKA_RETRY_SHORTTOTAL=30s + - ORDERER_KAFKA_VERBOSE=true + volumes: + - ./kafka/channel-artifacts/orderer.genesis.block:/var/hyperledger/orderer/orderer.genesis.block + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp + - ./kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/:/var/hyperledger/orderer/tls + command: orderer start + + cli: + extends: + file: base.yaml + service: cli-base + container_name: fabric-cli + hostname: fabric-cli + tty: true + environment: + - CORE_PEER_ID=fabric-cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 # default to operate on peer0.org1 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + volumes: + - ./scripts:/tmp/scripts + - ./kafka/channel-artifacts:/tmp/channel-artifacts + - ./kafka/configtx.yaml:/etc/hyperledger/fabric/configtx.yaml + - ./kafka/crypto-config.yaml:/etc/hyperledger/fabric/crypto-config.yaml + - ./kafka/crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto + - ./kafka/examples:/opt/gopath/src/github.com/hyperledger/fabric/examples + +## following are peer nodes ## + + peer0.org1.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer0.org1.example.com + hostname: peer0.org1.example.com + environment: + - CORE_PEER_ID=peer0.org1.example.com + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org1.example.com:7052 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 7051:7051 + - 7052:7052 + - 7053:7053 + + peer1.org1.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer1.org1.example.com + hostname: peer1.org1.example.com + environment: + - CORE_PEER_ID=peer1.org1.example.com + - CORE_PEER_ADDRESS=peer1.org1.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org1.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer1.org1.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 8051:7051 + - 8052:7052 + - 8053:7053 + + peer0.org2.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer0.org2.example.com + hostname: peer0.org2.example.com + environment: + - CORE_PEER_ID=peer0.org2.example.com + - CORE_PEER_ADDRESS=peer0.org2.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.org2.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer0.org2.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.org2.example.com:7051 + - CORE_PEER_LOCALMSPID=Org2MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 9051:7051 + - 9052:7052 + - 9053:7053 + + peer1.org2.example.com: + extends: + file: base.yaml + service: peer-base + container_name: peer1.org2.example.com + hostname: peer1.org2.example.com + environment: + - CORE_PEER_ID=peer1.org2.example.com + - CORE_PEER_ADDRESS=peer1.org2.example.com:7051 + - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.org2.example.com:7051 + - CORE_PEER_CHAINCODELISTENADDRESS=peer1.org2.example.com:7052 + - CORE_PEER_GOSSIP_BOOTSTRAP=peer1.org2.example.com:7051 + - CORE_PEER_LOCALMSPID=Org2MSP + volumes: + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp:/etc/hyperledger/fabric/msp + - ./kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls:/etc/hyperledger/fabric/tls + ports: + - 10051:7051 + - 10052:7052 + - 10053:7053 + + +# ZooKeeper services, at least 3 nodes + zookeeper0: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper0 + hostname: zookeeper0 + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper1 + hostname: zookeeper1 + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + extends: + file: base.yaml + service: zookeeper-base + container_name: zookeeper2 + hostname: zookeeper2 + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + +# Kafka services, at least 4 node to tolerant work with 1 node failure + kafka0: + extends: + file: base.yaml + service: kafka-base + container_name: kafka0 + hostname: kafka0 + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka1: + extends: + file: base.yaml + service: kafka-base + container_name: kafka1 + hostname: kafka1 + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka2: + extends: + file: base.yaml + service: kafka-base + container_name: kafka2 + hostname: kafka2 + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + + kafka3: + extends: + file: base.yaml + service: kafka-base + container_name: kafka3 + hostname: kafka3 + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 diff --git a/hyperledger/dev/docs/artifacts_generation.md b/hyperledger/dev/docs/artifacts_generation.md new file mode 100644 index 00000000..59345df4 --- /dev/null +++ b/hyperledger/dev/docs/artifacts_generation.md @@ -0,0 +1,276 @@ +## Usage of cryptogen and configtxgen + +To bootup a fabric network, we need: + +* crypto_config: crypto keys/certs for all organizations, see `e2e_cli/crypto-config` +* orderer_genesis.block: genesis block to bootup orderer, see `e2e_cli/channel-artifacts` +* channel.tx: transaction to create an application channel, see `e2e_cli/channel-artifacts` +* Org1MSPanchors.tx, Org2MSPanchors.tx: Transaction to update anchor config in Org1 and Org2, see `e2e_cli/channel-artifacts` + +### Generate crypto-config using cryptogen + +```bash +$ cryptogen generate --config=/etc/hyperledger/fabric/crypto-config.yaml --output ./crypto-config +``` +cryptogen will read configuration from `crypto-config.yaml`, by default it was put under `/etc/hyperledger/fabric/`. + +Then put the generated `crypto-config` under `/etc/hyperledger/fabric/`. + + +### Generate blocks/txs using [configtxgen](http://hyperledger-fabric.readthedocs.io/en/latest/configtxgen.html?highlight=crypto#) + +By default, configtxgen will read configuration from `/etc/hyperledger/fabric/configtx.yaml`, Please customize the configtx.yaml file before running. + +#### Create orderer genesis block + +```bash +$ configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/orderer.genesis.block +``` + +#### Create channel transaction artifact + +```bash +$ CHANNEL_NAME=businesschannel +$ configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} +``` + +`channel.tx` is used for creating a new application channel `businesschannel` + +#### Update anchor peer for Organizations on the channel + +Choose peer peer0.org1.example.com as org1's anchor peer, and peer0.org2.example.com as org2's anchor peer. + +```bash +$ configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP +``` + +```bash +$ configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP +``` + +> more details refer to Example2 + +### Examples + +#### Example1: how to add and re-join a new channel + +This example will explain how to add a new channel without change basic topology that desigend in configtx.yaml and crypto-config.yaml. +start a fabric network with `docker-compose-1peer.yaml`, and into container fabric-cli + +* 1 Regenerate `channel.tx` using with new channel name + +Create channel configuration for the to-be-created `testchannel`. + +```bash +$ root@cli: CHANNEL_NAME=testchannel +$ root@cli: configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} +``` + +* 2 regenerate anchor peer configuratoin for Organizations + +```bash +$ root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP + +$ root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP +``` + +* (optional)execute auto-test script + + You can skip this step, this will quickly check whether the network works, and also you can verify manually. +```bash +$ root@cli: bash ./peer/scripts/test_1peer.sh testchannel +``` + +* 3 Create new channel + +```bash +$ root@cli: peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/channel.tx +``` + +check whether genrated new block `testchannel.block` + +```bash +root@cli: ls testchannel.block +testchannel.block +``` + +* 4 Join new channel + + Join peer0.org1.example.com to the new channel + +```bash +$ root@cli: peer channel join -b ${CHANNEL_NAME}.block -o orderer.example.com:7050 + +Peer joined the channel! +``` + +check whether success + +```bash +$ root@cli: peer channel list + +Channels peers has joined to: + testchannel +``` + +* 5 Update anchor peer + +```bash +$ root@cli: peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/Org1MSPanchors.tx +``` + +* 6 Install + +```bash +peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 +``` + +* 7 Instantiate + +```bash +root@cli: peer chaincode instantiate -o orderer.example.com:7050 -C ${CHANNEL_NAME} -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member')" +``` + +* 8 Query + +```bash +root@cli: peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +The output should be: + +```bash +Query Result: 100 +UTC [main] main -> INFO 008 Exiting..... +``` + + + +#### Example2: how to add an organization or peer + +This example will explain how to add a new org or peer with changed the basic topology that desigend in configtx.yaml and crypto-config.yaml. + +##### all-in-one + +We privide some instance in current directory, in this case we add a new organization `Org3` and new peer `peer0.org3.example.com`. + +* 1 Generate necessary config and certs + +```bash +$ sudo docker-compose -f docker-compose-2orgs-4peers-event.yaml up +$ docker exec -it fabric-cli bash +$ root@cli: ./scripts/add-org.sh +``` + +> ** notice: For docker-compose-file clean, we did not mount these in the container, you need to mount yourself. + +* 2 Re-setup network + +```bash +echo "clean containers...." +docker rm -f `docker ps -aq` + +echo "clean images ..." +docker rmi -f `docker images|grep mycc-1.0|awk '{print $3}'` +``` + +```bash +$ sudo docker-compose -f docker-compose-2orgs-4peers-event.yaml up +``` + +* 3 execute auto-test + + Throuth this script to test whether the network works. +```bash +$ root@cli: bash ./scripts/test-5-peers.sh newchannel +``` + +The final output may look like following + +```bash +===================== Query on PEER4 on channel 'newchannel' is successful ===================== + +===================== All GOOD, End-2-End execution completed ===================== + +``` + + +##### manually + +* 1 Modify config + + modify configtx.yaml, crypto-cnfig.yaml and docker-compose files to adapt new change. and replace old file. + +* 2 Bootstrap network with `docker-compose-2orgs-4peers-event.yaml` + +```bash +$ docker-compose -f docker-compose-2orgs-4peers-event.yaml up +``` + +> notes:You may encounter some errors at startup and some peers can't start up, It's innocuous, ignore it, +because we will restart later, and now we just use tools in cli container. + + +* 3 Generate new certificates + +```bash +$ cryptogen generate --config=/etc/hyperledger/fabric/crypto-config.yaml --output ./crypto +``` + +* 4 Create the genesis block + +```bash +root@cli: configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/orderer_genesis.block +``` + +* 5 Create the configuration tx + +```bash +root@cli: CHANNEL_NAME=newchannel +root@cli: configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID ${CHANNEL_NAME} +``` +`channel.tx` is used for generating new channel `newchannel` + +* 6 Define the anchor peer for Orgs on the channel + +```bash +root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP + +root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP + +root@cli: configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org3MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org3MSP +``` + +* 7 Restart network + + As we have changed the configtx.yaml and regenerate `orderer_genesis.block`, + we'd better restart orderering service or all the service. + now we clean all the old service and boot a new network. + +```bash +echo "clean containers...." +docker rm -f `docker ps -aq` + +echo "clean images ..." +docker rmi -f `docker images|grep mycc-1.0|awk '{print $3}'` +``` + +```bash +$ sudo docker-compose -f docker-compose-2orgs.yml up +``` + +* 8 Execute auto-test script + + Until this step, we complete the network re-setup, and then we will test whether it works. + +```bash +$ root@cli: bash ./scripts/test-5-peers.sh +``` + +If the network works well. the output may looklike: + +```bash + +===================== All GOOD, End-2-End execution completed ===================== + +``` diff --git a/hyperledger/dev/docs/chaincode_test.md b/hyperledger/dev/docs/chaincode_test.md new file mode 100644 index 00000000..985d6fd6 --- /dev/null +++ b/hyperledger/dev/docs/chaincode_test.md @@ -0,0 +1,35 @@ +## Chaincode Tests + +All the test command needs to be executed inside the `fabric-cli` container. + +Use the following command to login into the container fabric-cli + +```bash +$ docker exec -it fabric-cli bash +``` + +After finish the chaincode tests, you can log-out by `exit`. + + +### Chaincode Operations + +You can execute some chaincode operations, such as `query` or `invoke`, +and you can modify the parameters and execute this script repeatedly. + +```bash +$ bash ./scripts/test_4peers.sh #execute in container fabric-cli +``` + +You should see the following output: + +```bash +UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP +UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity +UTC [msp/identity] Sign -> DEBU 006 Sign: plaintext: 0AB7070A6D08031A0C08C3EAE9C90510...6D7963631A0A0A0571756572790A0161 +UTC [msp/identity] Sign -> DEBU 007 Sign: digest: FA308EF50C4812BADB60D58CE15C1CF41089EFB93B27D46885D92C92F55E98A0 +Query Result: 80 +UTC [main] main -> INFO 008 Exiting..... +===================== Query on PEER3 on channel 'businesschannel' is successful ===================== + +===================== All GOOD, End-2-End execution completed ===================== +``` diff --git a/hyperledger/dev/docs/configtxlator.md b/hyperledger/dev/docs/configtxlator.md new file mode 100644 index 00000000..c9617b01 --- /dev/null +++ b/hyperledger/dev/docs/configtxlator.md @@ -0,0 +1,195 @@ +## Start the configtxlator + +First start a fabric network with docker-compose-2orgs-4peers.yaml, and make sure the network can work, +then we will use `configtxlator` to start an http server listening on the designated port and process request. + +```bash +$ docker exec -it fab-cli bash +$ configtxlator start +UTC [configtxlator] startServer -> INFO 001 Serving HTTP requests on 0.0.0.0:7059 + +``` +This logs appears, indicating startup successful. + +## Function + +### translation + +#### /protolator/decode/{msgName} + +Any of the configuration related protos, including `common.Block`, `common.Envelope`, `common.ConfigEnvelope`, +`common.ConfigUpdateEnvelope`, `common.Configuration`, and `common.ConfigUpdate` are valid targets for these URLs. +this will produces human readable version of config, such as translate to json + +Execute following command in new terminal, +```bash +$ docker exec -it fabric-cli bash +$ cd channel-artifacts +$ curl -X POST --data-binary @businesschannel_0.block http://127.0.0.1:7059/protolator/decode/common.Block > businesschannel_0.json +``` + +for channel.tx, use following msgType. + +```bash +curl -X POST --data-binary @channel.tx http://127.0.0.1:7059/protolator/decode/common.Envelope > channel.json +``` + +#### /protolator/encode/{msgName} + +And we can transform json to proto. +```bash +$ curl -X POST --data-binary @businesschannel_0.json http://127.0.0.1:7059/protolator/encode/common.Block > businesschannel_0.block +``` + +### Re-Configuration example + +1. here we will introduce how to re-configuration config.block, first fetch the block and translate it to json. + +```bash +$ ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +$ peer channel fetch config -o orderer.example.com:7050 -c businesschannel --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA|xargs mv true config_block.pb + +$ peer channel fetch config config_block.pb -o orderer.example.com:7050 -c businesschannel # with no-tls + +$ curl -X POST --data-binary @config_block.pb http://127.0.0.1:7059/protolator/decode/common.Block > config_block.json +``` + +2. Extract the config section from the block: + +```bash +$ apt-get install jq +$ jq .data.data[0].payload.data.config config_block.json > config.json +``` + +3. edit the config.json, set the batch size to 11, and saving it as update_config.json + +```bash +4. $ jq ".channel_group.groups.Orderer.values.BatchSize.value.max_message_count = 11" config.json > updated_config.json +``` + +5. Re-encode both the original config, and the updated config into proto: + +```bash +$ curl -X POST --data-binary @config.json http://127.0.0.1:7059/protolator/encode/common.Config > config.pb +$ curl -X POST --data-binary @updated_config.json http://127.0.0.1:7059/protolator/encode/common.Config > updated_config.pb +``` + +6. send them to the configtxlator service to compute the config update which transitions between the two. + +```bash +$ curl -X POST -F original=@config.pb -F updated=@updated_config.pb http://127.0.0.1:7059/configtxlator/compute/update-from-configs -F channel=businesschannel > config_update.pb +``` + +7. we decode the ConfigUpdate so that we may work with it as text: +```bash +$ curl -X POST --data-binary @config_update.pb http://127.0.0.1:7059/protolator/decode/common.ConfigUpdate > config_update.json +``` + +8. Then, we wrap it in an envelope message: + +```bash +$ echo '{"payload":{"header":{"channel_header":{"channel_id":"businesschannel", "type":2}},"data":{"config_update":'$(cat config_update.json)'}}}' > config_update_as_envelope.json +``` + +9. Next, convert it back into the proto form of a full fledged config transaction: + +```bash +$ curl -X POST --data-binary @config_update_as_envelope.json http://127.0.0.1:7059/protolator/encode/common.Envelope > config_update_as_envelope.pb +```` + +10. Finally, submit the config update transaction to ordering to perform a config update. + +```bash +$ CORE_PEER_LOCALMSPID=OrdererMSP +$ CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/users/Admin@example.com/msp + +$ peer channel update -o orderer.example.com:7050 -c businesschannel -f config_update_as_envelope.pb --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA +$ peer channel update -f config_update_as_envelope.pb -o orderer.example.com:7050 -c businesschannel # with no-tls +``` + +### [WIP]Add an organization + +1. Execute `configtxgen` to generate `channel.tx` + +```bash +$ ORDERER_GENERAL_GENESISPROFILE=SampleDevModSolo #Change this env before start ordering service. +``` + +```bash +$ docker exec -it fabric-cli bash +$ configtxgen -profile SampleDevModSolo -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID businesschannel +``` + +2. create channel use channel.tx, then we will get block businesschannel.block + +```bash +$ peer channel create -o orderer.example.com:7050 -c businesschannel -f ./channel-artifacts/channel.tx +``` + +3. Start configtxlator + +```bash +$ docker exec -it fabric-cli bash +$ configtxlator start +``` + +4. In a new window, decoding current genesis block + +```bash +$ curl -X POST --data-binary @businesschannel.block http://127.0.0.1:7059/protolator/decode/common.Block > businesschannel.json +``` + +5. Extract current config + +```bash +jq .data.data[0].payload.data.config businesschannel.json > config.json +``` + +6. generating new config + +```bash +jq '. * {"channel_group":{"groups":{"Application":{"groups":{"ExampleOrg": .channel_group.groups.Application.groups.SampleOrg}}}}}' config.json | +jq '.channel_group.groups.Application.groups.ExampleOrg.values.MSP.value.config.name = "ExampleOrg"' > update_config.json +``` + +7. Translate config.json and update_config.json to proto + +```bash +curl -X POST --data-binary @config.json http://127.0.0.1:7059/protolator/encode/common.Config > config.pb +curl -X POST --data-binary @update_config.json http://127.0.0.1:7059/protolator/encode/common.Config > update_config.pb +``` + +8. Computing config update + +```bash +curl -X POST -F original=@config.pb -F updated=@update_config.pb http://127.0.0.1:7059/configtxlator/compute/update-from-configs -F channel=businesschannel > config_update.pb +``` + +9. Decoding config update + +```bash +curl -X POST --data-binary @config_update.pb http://127.0.0.1:7059/protolator/decode/common.ConfigUpdate > config_update.json +``` + +10. Generating config update envelope + +```bash +echo '{"payload":{"header":{"channel_header":{"channel_id":"businesschannel", "type":2}},"data":{"config_update":'$(cat config_update.json)'}}}' > config_update_in_envelope.json +``` + +11. Next, convert it back into the proto form of a full fledged config transaction: + +```bash +curl -X POST --data-binary @config_update_in_envelope.json http://127.0.0.1:7059/protolator/encode/common.Envelope > config_update_in_envelope.pb +``` + +12. Sending config update to channel + +```bash +$ CORE_PEER_LOCALMSPID=OrdererMSP +$ CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/users/Admin@example.com/msp + +$ peer channel update -o orderer.example.com:7050 -c businesschannel -f config_update_in_envelope.pb --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA +$ (optional)peer channel update -f config_update_as_envelope.pb -o orderer.example.com:7050 -c businesschannel # with no-tls +``` \ No newline at end of file diff --git a/hyperledger/dev/docs/couchdb_usage.md b/hyperledger/dev/docs/couchdb_usage.md new file mode 100644 index 00000000..8708d9f9 --- /dev/null +++ b/hyperledger/dev/docs/couchdb_usage.md @@ -0,0 +1,32 @@ + +### Start network with CouchDB + +```bash +docker-compose -f docker-compose-2orgs-4peers.yaml -f docker-compose-2orgs-4peers-couchdb.yaml up +``` + +To use CouchDB instead of the default database leveldb, The same chaincode functions are available with CouchDB, however, there is the +added ability to perform rich and complex queries against the state database +data content contingent upon the chaincode data being modeled as JSON + +### Test chaincode_example02 + +```bash +docker exec -it fabric-cli bash + +bash ./scripts/initialize.sh + +bash ./scripts/test_4peers.sh +``` + +You can use chaincode_example02 chaincode against the CouchDB state database +using the steps outlined above, however in order to exercise the CouchDB query +capabilities you will need to use a chaincode that has data modeled as JSON. +(e.g. marbles02) + +### [WIP] [Test example marbles02](https://github.com/hyperledger/fabric/blob/master/examples/chaincode/go/marbles02/marbles_chaincode.go) + +### Interact with CouchDb by WEB-UI + +The browser is `http://localhost:5984/_utils`, then you will find a database named `businesschannel` + \ No newline at end of file diff --git a/hyperledger/dev/docs/detailed_steps.md b/hyperledger/dev/docs/detailed_steps.md new file mode 100644 index 00000000..1448f355 --- /dev/null +++ b/hyperledger/dev/docs/detailed_steps.md @@ -0,0 +1,122 @@ +## Use default channel + +By default, all the peer will join the default chain of `testchainid`. + +```bash +$ docker exec -it fabric-cli bash +$ peer channel list +Channels peers has joined to: + testchainid +UTC [main] main -> INFO 001 Exiting..... +``` + +After the cluster is synced successfully, you can validate by install/instantiate, invoking or querying chaincode from the container or from the host. + +### install&instantiate +Use `docker exec -it fabric-cli bash` to open a bash inside container `fabric-cli`, which will accept our chaincode testing commands of `install&instantiate`, `invoke` and `query`. + +Inside the container, run the following command to install a new chaincode of the example02. The chaincode will initialize two accounts: `a` and `b`, with value of `100` and `200`. + +```bash +$ peer chaincode install -v 1.0 -n test_cc -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 +``` +This will take a while, and the result may look like following. + +```bash +[golang-platform] writeGopathSrc -> INFO 001 rootDirectory = /go/src +container] WriteFolderToTarPackage -> INFO 002 rootDirectory = /go/src +[main] main -> INFO 003 Exiting..... +``` + +Then instantiate the chaincode test_cc on defaule channel testchainid. +```bash +$ peer chaincode instantiate -v 1.0 -n test_cc -c '{"Args":["init","a","100","b","200"]}' -o orderer0:7050 +``` + +This will take a while, and the result may look like following: + +```bash +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 001 Using default escc +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default vscc +UTC [main] main -> INFO 003 Exiting..... +``` + +There should be no error in the return log, and in the peer nodes's output. +Wait several seconds till the deploy is finished. + +If the `peer chaincode install` and `peer chaincode instantiate` commands are executed successfully, there will generate a new chaincode container, besides the 4 existing one, name like `dev-peer0-test_cc-1.0`. +```bash +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +cf7bf529f214 dev-peer0-test_cc-1.0 "chaincode -peer.a..." 58 seconds ago Up 58 seconds dev-peer0-test_cc-1.0 +44b6870b0802 hyperledger/fabric-peer "bash -c 'while tr..." 14 minutes ago Up 14 minutes 7050-7059/tcp fabric-cli +ed2c4927c0ed hyperledger/fabric-peer "peer node start -..." 14 minutes ago Up 14 minutes 7050/tcp, 7052-7059/tcp, 0.0.0.0:7051->7051/tcp fabric-peer0 +af5ba8f213bb hyperledger/fabric-orderer "orderer" 14 minutes ago Up 14 minutes 0.0.0.0:7050->7050/tcp fabric-orderer0 +bbe31b98445f hyperledger/fabric-ca "fabric-ca-server ..." 14 minutes ago Up 14 minutes 7054/tcp, 0.0.0.0:7054->7054/tcp fabric-ca + +``` + +And will also generate a new chaincode image, name like `dev-peer0-test_cc-1.0`. +```bash +$ docker images +REPOSITORY TAG IMAGE ID CREATED SIZE +dev-peer0-test_cc-1.0 latest 84e5422eead5 About a minute ago 176 MB +... +``` + +### Query +Inside the container, query the existing value of `a` and `b`. + +*Notice that the query method can be called by invoke a transaction.* + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","a"]}' +``` + +The final output may look like the following, with a payload value of `100`. + +```bash +Query Result: 100 +[main] main -> INFO 001 Exiting..... +``` + +Query the value of `b` + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","b"]}' -o orderer0:7050 +``` + +The final output may look like the following, with a payload value of `200`. + +```bash +Query Result: 200 +[main] main -> INFO 001 Exiting..... +``` + + +### Invoke +Inside the container, invoke a transaction to transfer `10` from `a` to `b`. + +```bash +$ peer chaincode invoke -n test_cc -c '{"Args":["invoke","a","b","10"]}' -o orderer0:7050 +``` + +The final result may look like the following, the response should be `OK`. + +```bash +[chaincodeCmd] chaincodeInvokeOrQuery -> INFO 001 Invoke result: version:1 response: payload:"\n \215\263\337\322u\323?\242t$s\035l\270Ta\270\270+l6\322X\346\365k\020\215Phy\260\022C\n<\002\004lccc\001\007test_cc\004\001\001\001\001\000\000\007test_cc\002\001a\004\001\001\001\001\001b\004\001\001\001\001\002\001a\000\00290\001b\000\003210\000\032\003\010\310\001" endorsement: +[main] main -> INFO 002 Exiting..... +``` + +### Query +Query again the existing value of `a` and `b`. + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","a"]}' +``` +The new value of `a` should be 90. + +```bash +$ peer chaincode query -n test_cc -c '{"Args":["query","b"]}' +``` +The new value of `b` should be 210. \ No newline at end of file diff --git a/hyperledger/dev/docs/docker-compose-1peer-usage.md b/hyperledger/dev/docs/docker-compose-1peer-usage.md new file mode 100644 index 00000000..c73b58ac --- /dev/null +++ b/hyperledger/dev/docs/docker-compose-1peer-usage.md @@ -0,0 +1,221 @@ +### Explain 1-peer usage step by step + +This section will show you how to operate the chaincode in detail. +first start fabric network with `docker-compose-1peer.yaml`, and we will obtain the basic environmet that can be operated. + +```bash +$ docker-compose -f docker-compose-1peer.yaml up +``` + +There will be 4 containers running successfully. + +```bash +$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +6688f290a9b9 hyperledger/fabric-peer "bash -c 'while tr..." About a minute ago Up About a minute 7050-7059/tcp fabric-cli +6ddbbd972ac3 hyperledger/fabric-peer "peer node start -..." About a minute ago Up About a minute 7050/tcp, 0.0.0.0:7051->7051/tcp, 7052/tcp, 7054-7059/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com +4afc759e0dc9 hyperledger/fabric-orderer "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com +bea1154c7162 hyperledger/fabric-ca "fabric-ca-server ..." About a minute ago Up About a minute 7054/tcp, 0.0.0.0:7054->7054/tcp fabric-ca +``` + + +#### Create artifacts + +**This step can be safely skipped.**. + +As we already put the needed artifacts `orderer.genesis.block` and `channel.tx` under `e2e_cli/channel-artifacts/`. + +Detailed steps in [GenerateArtifacts](artifacts_generation.md) explains the creation of `orderer.genesis.block` (needed by orderering service) and `channel.tx` (needed by cli to create new channel) and crypto related configuration files. + +#### Create new channel + +Create a new channel named `mychannel` with the existing `channel.tx` file. + +```bash +$ docker exec -it fabric-cli bash +``` +Into the container and execute following commands: + +```bash +$ CHANNEL_NAME="businesschannel" +$ peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/channel.tx +``` +The cmd will return lots of info, which is the content of the configuration block. + +And a block with the same name of the channel will be created locally. + +```bash +$ ls businesschannel.block +businesschannel.block +``` + +Check the log output of `orderer.example.com`, should find some message like + +```bash +orderer.example.com | UTC [orderer/multichain] newChain -> INFO 004 Created and starting new chain newchannel +``` + +#### Join the channel + +Use the following command to join `peer0.org1.example.com` the channel + +```bash +$ peer channel join -b ${CHANNEL_NAME}.block + +Peer joined the channel! +``` + +Will receive the `Peer joined the channel!` response if succeed. + +Then use the following command, we will find the channels that peers joined. + +```bash +$ peer channel list +Channels peers has joined to: + mychannel +2017-04-11 03:44:40.313 UTC [main] main -> INFO 001 Exiting..... +``` + +#### Update anchor peers + +The `configtx.yaml` file contains the definitions for our sample network and presents the topology of the network components - three members (OrdererOrg, Org1 & Org2), But in this MVE, we just use OrdererOrg and Org1, org1 has only peer(pee0.org1), and chose it as anchor peers for Org1. + +```bash +$ peer channel create -o orderer.example.com:7050 -c ${CHANNEL_NAME} -f ./channel-artifacts/Org1MSPanchors.tx +``` + +#### Install&Instantiate + +First `install` a chaincode named `mycc` to `peer0`. + +```bash +$ peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 +``` + +This will take a while, and the result may look like following. + +```bash +UTC [golang-platform] writeGopathSrc -> INFO 004 rootDirectory = /go/src +UTC [container] WriteFolderToTarPackage -> INFO 005 rootDirectory = /go/src +UTC [main] main -> INFO 006 Exiting..... +``` + +Then `instantiate` the chaincode mycc on channel `mychannel`, with initial args and the endorsement policy. + +```bash +$ peer chaincode instantiate -o orderer.example.com:7050 -C ${CHANNEL_NAME} -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member')" +``` + +This will take a while, and the result may look like following: + +```bash +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 004 Using default escc +UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 005 Using default vscc +UTC [main] main -> INFO 006 Exiting..... +``` + +Now in the system, there will be a new `dev-peer0.org1.example.com-mycc-1.0` image and a `dev-peer0.org1.example.com-mycc-1.0` chaincode container. + +```bash +crluser@baas-test2:~$ docker ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +7aa088c76597 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 10 seconds ago Up 9 seconds dev-peer0.org1.example.com-mycc-1.0 +eb1d9c73b26b hyperledger/fabric-peer "bash -c 'while tr..." About a minute ago Up About a minute 7050-7059/tcp fabric-cli +2d6fd4f61e2b hyperledger/fabric-peer "peer node start -..." About a minute ago Up About a minute 7050/tcp, 0.0.0.0:7051->7051/tcp, 7052/tcp, 7054-7059/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com +832dcc64cc1b hyperledger/fabric-orderer "orderer" About a minute ago Up About a minute 0.0.0.0:7050->7050/tcp orderer.example.com +c87095528f76 hyperledger/fabric-ca "fabric-ca-server ..." About a minute ago Up About a minute 7054/tcp, 0.0.0.0:7054->7054/tcp fabric-ca +``` + +#### Query + +Query the existing value of `a` and `b`. + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +The result may look like following, with a payload value of `100`. +```bash +Query Result: 100 +[main] main -> INFO 001 Exiting..... +``` + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +The result may look like following, with a payload value of `200`. + +```bash +Query Result: 200 +[main] main -> INFO 001 Exiting..... +``` + + +#### Invoke + +Inside the container, invoke a transaction to transfer `10` from `a` to `b`. + +```bash +$ peer chaincode invoke -o orderer.example.com:7050 -C ${CHANNEL_NAME} -n mycc -c '{"Args":["invoke","a","b","10"]}' +``` + +The result may look like following: + +```bash +UTC [chaincodeCmd] chaincodeInvokeOrQuery -> INFO 001 Invoke result: version:1 response: payload:"\n qm\251\207\312\277\256\261b\317:\300\000\014\203`\005\304\254\304,$a\360\327\010\342\342/y]\323\022X\nQ\022\031\n\004lccc\022\021\n\017\n\007test_cc\022\004\010\001\020\001\0224\n\007test_cc\022)\n\t\n\001a\022\004\010\001\020\001\n\t\n\001b\022\004\010\001\020\001\032\007\n\001a\032\00290\032\010\n\001b\032\003210\032\003\010\310\001" endorsement:\277\251j\021$\250\237H\353\377\331:\230\362n\216\224~\033\240\006\367%\002 \014\240|h\346\250\356\372\353\301;#\372\027\276!\252F\334/\221\210\254\215\363\235\341v\217\236\274<" > +2017-04-06 09:47:15.993 UTC [main] main -> INFO 002 Exiting..... +``` + +#### Query + +And then query the value of `a` and `b`. + + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","a"]}' +``` + +```bash +Query Result: 90 +[main] main -> INFO 001 Exiting..... +``` +The value of `a` should be `90`. + + +```bash +$ peer chaincode query -C ${CHANNEL_NAME} -n mycc -c '{"Args":["query","b"]}' +``` + +The value of `b` should be `210` + +```bash +Query Result: 210 +[main] main -> INFO 001 Exiting..... +``` + +Finally, the output of the chaincode containers may look like following. + +```bash +$ docker logs -f dev-peer0.org1.example.com-mycc-1.0 +ex02 Init +Aval = 100, Bval = 200 +ex02 Invoke +Query Response:{"Name":"a","Amount":"100"} +ex02 Invoke +Aval = 90, Bval = 210 +ex02 Invoke +Query Response:{"Name":"b","Amount":"210"} +ex02 Invoke +Query Response:{"Name":"a","Amount":"90"} + +``` + +#### (optional) All-in-one testing operation + +Run this script will check whether the MVE bootstrap success. + +```bash +$ docker exec -it fabric-cli bash +$ bash ./scripts/test_1peer.sh +``` \ No newline at end of file diff --git a/hyperledger/dev/docs/events.md b/hyperledger/dev/docs/events.md new file mode 100644 index 00000000..a0e02dab --- /dev/null +++ b/hyperledger/dev/docs/events.md @@ -0,0 +1,33 @@ +## Events +Events didn't support TLS, so make sure TLS has been disabled by setting *_TLS_ENABLED=false in peer-base.yaml and orderer-base.yaml +Next, start the network with following command: +```bash +$ bash scripts/start_fabric.sh docker-compose-2orgs-4peers-event.yaml +``` + +when the network starts successfully, we started a block-listener in container `fabric-event-listener`. +so observe the output of the service fabric-event-listener. + +Listening logs at a new terminal, + +```bash +$ docker logs -f fabric-event-listener +``` + +So when we do chaincode operations in container `fabric-cli`, + +```bash +$ docker exec -it fabric-cli bash +$ bash ./scripts/initialize.sh +``` + +then we will get some events at listening terminal looks like following: + +```bash +Received block +-------------- +Received transaction from channel businesschannel: + [header:_?EoLG{X zpC{zT!6;77UZPrCFkb~bel`Tj3>`kFxLS9n=MXi literal 0 HcmV?d00001 diff --git a/hyperledger/dev/e2e_cli/channel-artifacts/Org2MSPanchors.tx b/hyperledger/dev/e2e_cli/channel-artifacts/Org2MSPanchors.tx new file mode 100644 index 0000000000000000000000000000000000000000..fa63a85a3d4ba7accddb75a23514b2fcdedd460c GIT binary patch literal 296 zcmd;D%ETqgCCtI3#Gh1JoSBzeT%4Sdn3tEDBh<~r)xpGtAsj9g%Ej$iP>_?EoLG{X zpC{zT!6;77UZPrCFkb~bel`Tj7N4AR)?TC7v?G$4FH^)PHg}H literal 0 HcmV?d00001 diff --git a/hyperledger/dev/e2e_cli/channel-artifacts/channel.tx b/hyperledger/dev/e2e_cli/channel-artifacts/channel.tx new file mode 100644 index 0000000000000000000000000000000000000000..a0b869a636b56138cce06304dfabe87f3fbefd69 GIT binary patch literal 406 zcmd;@%*++f70baS#m2Gw|B|z;O8iNs#hH1j#l^`PiFtXcIa&^>#z_XrCMHIf7HP?b z$%ZDDiD^k`Cdn3-mS$;5mPRH<=835$hN&iICYDK-#wN*$CYGj_mWD~@7N$l?7N({` z>zTOLFma(9EaWew$;IthP>_?EoLG{XpC=?G#LdO-UzBd>8yq0S0Oc5gIZ{eoT+aD< z#rZ`gnWecxB0@r30>O#71v#k*QK{pMLJJsCjhw*9!HC;bB_%F4$CTX6yka2PHv9? literal 0 HcmV?d00001 diff --git a/hyperledger/dev/e2e_cli/channel-artifacts/orderer.genesis.block b/hyperledger/dev/e2e_cli/channel-artifacts/orderer.genesis.block new file mode 100644 index 0000000000000000000000000000000000000000..072fafb522e2599b7173a48a550f2725a5140dcd GIT binary patch literal 9068 zcmds-?ThQ!eaEw#&E3h_-J6Rh%kECobUURFtdrQ5CD|?na`Y_Qk}X-XEENi}o@Gn2 zE!(mMh1ZM@QE8_x+sT8E|>=uKOR~`TF$zAN|X3UVh`7Kh&M`AAJ8Gf8pQ1_rc`X z=|^hv8-Ir(f6am)vf$5Iumit#_R^!5E*_ly$xpufx1YIuZRKVwJFvnebl&?~t&L+i z(ZCu+6T|E1#3sC2tB$oMgzMtg#P)~@j=8pDO>oz3wHq}Y#n8Iz);w(Dw5$nofxO+A z{_dZCt9+1uV4><`&$9|`^aB1;LjN3`wa4XZ-H0)OUGThOXRoSLVo;t z0IuHlmp=0T=P$l{4n8do2go0sBi}klzIlG#zi<4(gD>yDNQM)ncPU0u1y-P-${bpO zCBV&lq zT#jAY+;-NBr45*Z+_ z7mW+j0V2fqH^ZTGhOFi?vws%m5ghE7#1G4llZG7WEBn__gsnp?bBtw0D3Snrt-QNm zqf+aWl)wlStD)_UM)%#Z*JZx15~U`SSp8J-cesRL2Z zfNGmCrzl36C}vDx1=Y%m|5u_JMIX0lxCk0Y(TF0WvD1k@Tg%*2;$f#blN)?DHH9Lo zQBXF7{cBLZp`mQkvJaWKs1#i@T4H0d!?v+zA73pd3x{@QjkX5YyH+0)r6d#VF-LHA zBM{q75(Ma?Wpb6ALbp88>!$X!UyQM$>6!ySU(!QW<+OiztOro$t0XLQpYN6$ z$T_eV%#{cz5yHHi9|9wil5-&~Q|U;Zplw;iac4@*M{Nepq;VImW}35WvDG0cik?K% zJw0yNIprVMRW56u!)62{!G}9}y&oLE$)JzOcsrbd2 zIL$eDaIDe|*xH1b4%ryoOve)yx@=zCN(ICZrlG=Iq9vjVJmDiv++_o@KX1(`HaKkKfU4<&?+gElikWZ{zB*|Q& zAe80AVQn=60y@z@+=WN2pEUb{Cbj-pa=+>>rFnZjq%gFo%?G899B_$E>7`ob(N*^okjz zuS`Zcng~OxWmBm%kvcpR4(-b!S?1aWtP(q0cY2{dp~pMVSMo&lLwsn8k`rJw+wl{i zO)6~uG^+TL0BMqiAp@stJl^4pEJp27tMt67J8Rp^OzY4cnV$xI(593S7sjc*!Ake( z=v*~-ngbGQxMOHxWwlB~r9+J@F&fSbu15*>!m2N_%^hO8cmSO^OtQ-ccvWA9D|eY8 zzk+=6?4^?a&X5P?@0ZU$b@32+{U)|u55mCJaO6GY-7@wIH^w|d9^M?Y$J8fNDXvu_ z<9}nS_pSzC{2Vx^0xL<}nNq^;GPGA=nq91e>Ja~gDTihgDXXs;IpJvg7PpdT;xsUwKMSO@#Dw!w;w-#_d4c_;Ppd{8pdwAULg;WSHR0?cIv;p zyk7d-$iuTwBjEJ@(aYB{?}5*evodp!tXb$-`wKb_@Y?=9q{~&fjx*$g3i1~f@Mvho^O^gk1Noy0@`rEk5#C4l zK>j;#UVLx`?Eid@{OBC{hw~?$fAhjbEAJDn8=n%bOzq?}42QD@&tYt>H#f~-x_w## z5m|ifv|bXceaJ*qAj%~tCt~W|@r2;>oI56E8Zg^~X*@gdIka*URsa(jOjoN6 z*TX91^)%Y5mT4%K)1(_DmDSqJ*rD1QMH5n8^()==rd_u^PwiK0Svy?Oh6x%ytR^Q} zldH=($$W8=cIppk4tvxoo4DCC-F_sFABpn7M0b*m~ODuPMfy?s$9I@H^GQA`7UVi(9YT^zUU%6J(KoGUH63v2UeW+K43DJ~^ZgdOd|L>{k+4urP zHv72M)XMp*y)I3fq{-Filj(C*Rf+{Xi|uc!C2=WhI5s&F;`6P_4)|hRA8uPSeHhlo z>Y@!2ZpATUyvoUQl8>aW*>$QYk&5ncnQ&UQS(CXP)!ZgKXMwjX9c8hqRXFPj+Jh29 zZn6D~(Eg?^z0bZu3uWJ{g}sM#JC30swMt`B64m6t@brVDO|Q6<{Edw+Y2@BjXVLK*Ib z;$81|6)1U%yxc~HB-(jT6H;`$kQUn02_SdMP2V4i8~nTF z3+NnUM3qgHto(@f6{BYc=X_vGqH5=Tbw@aZyhsYlqz?Q(mBcg8pYa>GKOopiJ(^N)k7Xm99~5&rD^elS7#eEqBrJ zr4`m=*$OpgRMZff-oh2I%+2IX5A~r-aDWjieA^}%W6?4^b66o((x|!9b;91prnfs( zlI|)bf%{aFZWoevJq@i@>s>Jg!_}@CvTdqwL@{h+I+m>yOyt)+=nNvo5B8O$XBLv! zas%xzM3k6{{$f2DiPr)Fq+CTG#}ecKl9t zo|AN_fR(JbhE)T1`JUg48cy|YrJbPhvi1Z%e-Zha66D{y0rIcyarKH1Z;m*j=sic& zPk@a4GV-(K6z|-a;tk}r>nWaW6s}qJkB@*_-vjEm-@N#@D?t6%bL5}Sksluc_0akL z3p0gWd>Bxn2iv^c+|HrKB;(1TwW-$X|1*~QRNeLYfO;$Ne;J@|?+d861MdTB8llR_Z@##a}OGE4Ay-aDl;OM)z0`KL!d)oziL{2`c@9u3EoDQ3A`0l|| zOUf&2t+_7i%F5Dlc(Bx4+9yr$!o!(C6fqp?4AZ9CoOJ{--Zl+~!YyJeT{VB2)?XxZADXnocz z7u}mtsVw;YV3co*wu7_ya1#&%!!f(9MYRCAH{$Etu(hPpTC~9=*TwESg!w3tx);h# zNFCT7Ut}HF?^WIYJeqCdO5m6K$Pd@re=3lA>-oP6Qf~#{ODsP{NWCQz<_<``6?`8^ z?XylxAgmmB5^;uZDb3w!t*V5oDbW$*#k9rvA=3%lo1{TS2}4h+ys=nzfLx5CnyzeO zDv)KK8{oD^2uo|s*^(D8`=1b`iX#Wst3thE@jw%k1d_qXG zHQIi@(rA8|R-0hgY)C!I+pREO8}W@*F>R4{7oVWK(sDbpvxp$ODwWp3Q{Ak|wX|k5 z3_b3~Og9gQ1PT;lqb`#{qHU8_+nnPkFFPz3A z2y#}U^DD^9$fr)1{M=y|Uk2|S%Fnd5vUn>C!o(l0mTP;pULLCAXFn;wK6m;%7Xo;6 zbwSW^mTp$=t`Ho#0B@(qfA9E;yFC<-zhbBHuQqFV?YS$t_$Bb@YC<^k)ACp$i1(Kc hu1@SuQa>%0BDg7&=%?e{32Uw=+#;8Vx%{{ne!-S_|i literal 0 HcmV?d00001 diff --git a/hyperledger/dev/e2e_cli/configtx.yaml b/hyperledger/dev/e2e_cli/configtx.yaml new file mode 100644 index 00000000..1ef7f325 --- /dev/null +++ b/hyperledger/dev/e2e_cli/configtx.yaml @@ -0,0 +1,153 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +################################################################################ +# +# Profile +# +# - Different configuration profiles may be encoded here to be specified +# as parameters to the configtxgen tool +# +################################################################################ +Profiles: + + TwoOrgsOrdererGenesis: + Orderer: + <<: *OrdererDefaults + Organizations: + - *OrdererOrg + Consortiums: + SampleConsortium: + Organizations: + - *Org1 + - *Org2 + TwoOrgsChannel: + Consortium: SampleConsortium + Application: + <<: *ApplicationDefaults + Organizations: + - *Org1 + - *Org2 + +################################################################################ +# +# Section: Organizations +# +# - This section defines the different organizational identities which will +# be referenced later in the configuration. +# +################################################################################ +Organizations: + + # SampleOrg defines an MSP using the sampleconfig. It should never be used + # in production but may be used as a template for other definitions + - &OrdererOrg + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: OrdererOrg + + # ID to load the MSP definition as + ID: OrdererMSP + + # MSPDir is the filesystem path which contains the MSP configuration + MSPDir: crypto-config/ordererOrganizations/example.com/msp + + - &Org1 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org1MSP + + # ID to load the MSP definition as + ID: Org1MSP + + MSPDir: crypto-config/peerOrganizations/org1.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org1.example.com + Port: 7051 + + - &Org2 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org2MSP + + # ID to load the MSP definition as + ID: Org2MSP + + MSPDir: crypto-config/peerOrganizations/org2.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org2.example.com + Port: 7051 + +################################################################################ +# +# SECTION: Orderer +# +# - This section defines the values to encode into a config transaction or +# genesis block for orderer related parameters +# +################################################################################ +Orderer: &OrdererDefaults + + # Orderer Type: The orderer implementation to start + # Available types are "solo" and "kafka" + OrdererType: solo + + Addresses: + - orderer.example.com:7050 + + # Batch Timeout: The amount of time to wait before creating a batch + BatchTimeout: 2s + + # Batch Size: Controls the number of messages batched into a block + BatchSize: + + # Max Message Count: The maximum number of messages to permit in a batch + MaxMessageCount: 10 + + # Absolute Max Bytes: The absolute maximum number of bytes allowed for + # the serialized messages in a batch. + AbsoluteMaxBytes: 98 MB + + # Preferred Max Bytes: The preferred maximum number of bytes allowed for + # the serialized messages in a batch. A message larger than the preferred + # max bytes will result in a batch larger than preferred max bytes. + PreferredMaxBytes: 512 KB + + Kafka: + # Brokers: A list of Kafka brokers to which the orderer connects. Edit + # this list to identify the brokers of the ordering service. + # NOTE: Use IP:port notation. + Brokers: + - kafka0:9092 + - kafka1:9092 + - kafka2:9092 + - kafka3:9092 + + # Organizations is the list of orgs which are defined as participants on + # the orderer side of the network + Organizations: + +################################################################################ +# +# SECTION: Application +# +# - This section defines the values to encode into a config transaction or +# genesis block for application related parameters +# +################################################################################ +Application: &ApplicationDefaults + + # Organizations is the list of orgs which are defined as participants on + # the application side of the network + Organizations: diff --git a/hyperledger/dev/e2e_cli/crypto-config.yaml b/hyperledger/dev/e2e_cli/crypto-config.yaml new file mode 100644 index 00000000..74e01beb --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config.yaml @@ -0,0 +1,93 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +# --------------------------------------------------------------------------- +# "OrdererOrgs" - Definition of organizations managing orderer nodes +# --------------------------------------------------------------------------- +OrdererOrgs: + # --------------------------------------------------------------------------- + # Orderer + # --------------------------------------------------------------------------- + - Name: Orderer + Domain: example.com + CA: + Country: US + Province: California + Locality: San Francisco + # --------------------------------------------------------------------------- + # "Specs" - See PeerOrgs below for complete description + # --------------------------------------------------------------------------- + Specs: + - Hostname: orderer +# --------------------------------------------------------------------------- +# "PeerOrgs" - Definition of organizations managing peer nodes +# --------------------------------------------------------------------------- +PeerOrgs: + # --------------------------------------------------------------------------- + # Org1 + # --------------------------------------------------------------------------- + - Name: Org1 + Domain: org1.example.com + CA: + Country: US + Province: California + Locality: San Francisco + # --------------------------------------------------------------------------- + # "Specs" + # --------------------------------------------------------------------------- + # Uncomment this section to enable the explicit definition of hosts in your + # configuration. Most users will want to use Template, below + # + # Specs is an array of Spec entries. Each Spec entry consists of two fields: + # - Hostname: (Required) The desired hostname, sans the domain. + # - CommonName: (Optional) Specifies the template or explicit override for + # the CN. By default, this is the template: + # + # "{{.Hostname}}.{{.Domain}}" + # + # which obtains its values from the Spec.Hostname and + # Org.Domain, respectively. + # --------------------------------------------------------------------------- + # Specs: + # - Hostname: foo # implicitly "foo.org1.example.com" + # CommonName: foo27.org5.example.com # overrides Hostname-based FQDN set above + # - Hostname: bar + # - Hostname: baz + # --------------------------------------------------------------------------- + # "Template" + # --------------------------------------------------------------------------- + # Allows for the definition of 1 or more hosts that are created sequentially + # from a template. By default, this looks like "peer%d" from 0 to Count-1. + # You may override the number of nodes (Count), the starting index (Start) + # or the template used to construct the name (Hostname). + # + # Note: Template and Specs are not mutually exclusive. You may define both + # sections and the aggregate nodes will be created for you. Take care with + # name collisions + # --------------------------------------------------------------------------- + Template: + Count: 2 + # Start: 5 + # Hostname: {{.Prefix}}{{.Index}} # default + # --------------------------------------------------------------------------- + # "Users" + # --------------------------------------------------------------------------- + # Count: The number of user accounts _in addition_ to Admin + # --------------------------------------------------------------------------- + Users: + Count: 1 + # --------------------------------------------------------------------------- + # Org2: See "Org1" for full specification + # --------------------------------------------------------------------------- + - Name: Org2 + Domain: org2.example.com + CA: + Country: US + Province: California + Locality: San Francisco + Template: + Count: 2 + Users: + Count: 1 diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk new file mode 100644 index 00000000..5a47ea39 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/2154dbdbd40ce79764ea957d136b0d5cadbfb14772f05fd2cf32cd0c32d69b77_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgES9plinnjVaL0+bc +U4in/asws4O6EN5zGnAbjnW9z8qhRANCAAREJja+a8AzruQ+7ASDdgIK7hXvqJxL +ugcF5rtoCCG/0/BjFnKYLVmz1MvvrL7+Kg2vESvlkuWZR54OpKnWd0/R +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk new file mode 100644 index 00000000..7d897f37 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/387d53008fabbc444d59d777bee7303daa9c62125dc5e7086338cedd47ae498f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgTCSshHNuDC5JmNIN +cfSbZyZ/hgxaA1rrTCcSrC9yLqqhRANCAASgt3LoRZsO/f6qK1WOUqB7zUKeO8Jp +G0Hp2c1Gu4zpV9pjBGCVFYDyjMg2xy2FGt3ZJgfEljsHFnxL6eYoUtv0 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem new file mode 100644 index 00000000..0f0189b1 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICDTCCAbOgAwIBAgIRAOGKAb18r9BTgR+TQclAIIowCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMFgxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYI +KoZIzj0DAQcDQgAEoLdy6EWbDv3+qitVjlKge81CnjvCaRtB6dnNRruM6VfaYwRg +lRWA8ozINscthRrd2SYHxJY7BxZ8S+nmKFLb9KNNMEswDgYDVR0PAQH/BAQDAgeA +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy +8F/SzzLNDDLWm3cwCgYIKoZIzj0EAwIDSAAwRQIhAJcrEuSf3fR90PyXOpftXrgR +rhRIVG8spex7iLg4tkB/AiAzGamwDDqcRz9ryt80OHF2d618oS3UaZF/wPWo7oB9 +FA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt new file mode 100644 index 00000000..fe3ccc40 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICWjCCAgCgAwIBAgIRANqVGJ4RHohswpqlxF6pQHMwCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMFgxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0C +AQYIKoZIzj0DAQcDQgAEPzCwqaaQkxgt0ndGYPnVNZT4aC165Wo0QzDNS7N1srca +znZLqDZWnda1GQyJXUmQgpxDiqSPuFVXlKBdyLd+96OBljCBkzAOBgNVHQ8BAf8E +BAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQC +MAAwKwYDVR0jBCQwIoAggKgP+snFnS4lmw18n4EcJ04IuUmTDXYeAxSYJ1G/hcEw +JwYDVR0RBCAwHoITb3JkZXJlci5leGFtcGxlLmNvbYIHb3JkZXJlcjAKBggqhkjO +PQQDAgNIADBFAiEAiMaq4QYFv3S13HQeLzumDcErpw3sRRYq8aDCxDmoOkICIB7C +08FvQKkJEpyDN/mjVMufNU4rfpjsFRs5IUHXBdhR +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key new file mode 100644 index 00000000..c07f93bb --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgGNicEQgtNBNtuBwF +/eA9w4neMwEbTLdidHYL91KgiN2hRANCAAQ/MLCpppCTGC3Sd0Zg+dU1lPhoLXrl +ajRDMM1Ls3WytxrOdkuoNlad1rUZDIldSZCCnEOKpI+4VVeUoF3It373 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk new file mode 100644 index 00000000..deb81705 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/80a80ffac9c59d2e259b0d7c9f811c274e08b949930d761e0314982751bf85c1_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg5owVFluDVt7bnMmG +wCVx+bu+9oZwsSAbAZCjHSHkIfmhRANCAAQQndFc2nHdXQbYUnW1QprgXeTYPdaa +E+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7eKq+ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..532110c0 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLjCCAdWgAwIBAgIQP8SdmHBhNYvNc1eReZwOyTAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owaTELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABEQmNr5rwDOu5D7sBIN2AgruFe+o +nEu6BwXmu2gIIb/T8GMWcpgtWbPUy++svv4qDa8RK+WS5ZlHng6kqdZ3T9GjXzBd +MA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMB +Af8wKQYDVR0OBCIEICFU29vUDOeXZOqVfRNrDVytv7FHcvBf0s8yzQwy1pt3MAoG +CCqGSM49BAMCA0cAMEQCIARAcRYf+nmD76kx3wgxRKL/nVQ/pXva3IemmaIgcSjA +AiB/6l5s6DTUFyO1V9f7vfVMQcmYCqS2DIRlKQD9I3+Gig== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk new file mode 100644 index 00000000..bf22e198 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/a54bc31e91249b68eb23dc374296a4eda4fe8f0e229dcfb63770c7e45b96745f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg63wCP24vDJSChlDm +hzl0HaT6fxjJu5VjCDE3/Amrgr+hRANCAASbP7MpmOvhcwkX3js7m2pup0N2Xf1Q +C7Lw7gw2ewhxcboZzeEz3sGHarxkb7ALbEfosqhyQ7NfjPt5k+DCsNIe +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..774c0bbf --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCTCCAbCgAwIBAgIQCh2UviwCCENbRZm64zC8szAKBggqhkjOPQQDAjBpMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xFzAVBgNVBAMTDmNhLmV4YW1w +bGUuY29tMB4XDTE3MDkwMTExMDA0M1oXDTI3MDgzMDExMDA0M1owVjELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lz +Y28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZI +zj0DAQcDQgAEmz+zKZjr4XMJF947O5tqbqdDdl39UAuy8O4MNnsIcXG6Gc3hM97B +h2q8ZG+wC2xH6LKockOzX4z7eZPgwrDSHqNNMEswDgYDVR0PAQH/BAQDAgeAMAwG +A1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgIVTb29QM55dk6pV9E2sNXK2/sUdy8F/S +zzLNDDLWm3cwCgYIKoZIzj0EAwIDRwAwRAIgQ6FfeJP3bC2EIDlicfKXrXt9Wv6H +BBCPADL64+9oPFACIFCgSYOul3GmTi2OpMQpS4u/0f6oKV/MoJgg0gLv4bdF +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt new file mode 100644 index 00000000..ed2fc037 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNjCCAdygAwIBAgIRALM6kpfGvUTxMkd/kRBesfswCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMGwxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEaMBgGA1UEAxMRdGxzY2EuZXhh +bXBsZS5jb20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQQndFc2nHdXQbYUnW1 +QprgXeTYPdaaE+Wfq99u7eiWt8qBsVYz/ETfFJ/hTYxKH5hdTfUeJCXPZDOgf6T7 +eKq+o18wXTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMB +Af8EBTADAQH/MCkGA1UdDgQiBCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgn +Ub+FwTAKBggqhkjOPQQDAgNIADBFAiEAku5my5qsm2cV8MA4kel9crsUJDJQHkhO +9CRi5IXocv4CIAJWG/wd7PBAU5dYUi+ttnMRJCVaMjSpzGLCIcqa1qsv +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt new file mode 100644 index 00000000..69b37cfd --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICLTCCAdOgAwIBAgIRAPLZMPocwV7bQv/aBksbj3swCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNaMFYxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEG +CCqGSM49AwEHA0IABINLFP3/CgcWppkAoSZeCNor0fcv5q97saAbwNBcFbnA+zV9 +akibIF/HkdBNBUXZ14n9F3fkk6Aax6C2JrVBYhujbDBqMA4GA1UdDwEB/wQEAwIF +oDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDAYDVR0TAQH/BAIwADAr +BgNVHSMEJDAigCCAqA/6ycWdLiWbDXyfgRwnTgi5SZMNdh4DFJgnUb+FwTAKBggq +hkjOPQQDAgNIADBFAiEA7IGo+be4dRtBTsQ+M8epPzAONWG95ZvaMSJIcqv4gmQC +IB/9kNMil48sAj9DPeiZ8PHR9J3/e7rmHVwA4vrXXDFE +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key new file mode 100644 index 00000000..517f25d8 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgDaoqTS4AwLaselrb +EKOFBN5VJAD21LRMXrCwFMiJzjGhRANCAASDSxT9/woHFqaZAKEmXgjaK9H3L+av +e7GgG8DQXBW5wPs1fWpImyBfx5HQTQVF2deJ/Rd35JOgGsegtia1QWIb +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk new file mode 100644 index 00000000..db451a8e --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgYcrrkdnV1DlyF7U+ +p8OoOScIlCTWfxiNuHznRxhluhihRANCAAQdj4hNSYWuoK1ZEnR2UvbrN1jziqS2 +oKBtw/HX6CxDnYVS16x4P7bs0QXbx9ng+WWlcjq1XXq5iIrYWKsOQUzP +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..9323b560 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICFjCCAb2gAwIBAgIURa/X2XP3tM4wDlZ+LUq9VBmvcwswCgYIKoZIzj0EAwIw +aDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK +EwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt +Y2Etc2VydmVyMB4XDTE3MDkwMTExMDcwMFoXDTMyMDgyODExMDcwMFowaDELMAkG +A1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl +cmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy +dmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9iwm3wJWrnw8XX1kswyouzxa +RyBBhHEevB2eeNTfzmuo1ni7AvpTEVRnm6jP78gRYCotLNi1b+oUz+cTc6LYOaNF +MEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE +FBH7wDBnpFH363B5k52fUPtFx0z/MAoGCCqGSM49BAMCA0cAMEQCIBbgfmyJg/r/ +jJnhmw8bl62sH+nrX9C6U8tfv2Gnq1vUAiBzYjBOaZGC0Nz34cDwtgcRyI22CMTo +XvHdC/Ae4zxkUQ== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk new file mode 100644 index 00000000..16c8e757 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/99bd297aa7c0a5139386ce35b89c2524b5bc23fa9e6e0968c93cbcf27b2d10e4_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg7j9pou9IDBIzB9xQ +tqS7Qqz4vZ93ohCoDz7XX3BzHUqhRANCAATN4lpnJD3lnUoqt4uaOwKaKqSSYqKq +niDMG0ZOSAl1SaodiVMLyCfNObngAbZiaTgWgBIZkUc8NM7hUlndajv0 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem new file mode 100644 index 00000000..8daaa7f0 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQQxKXDrkcdGeP9KyddyIJRDAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzeJaZyQ95Z1KKreLmjsCmiqkkmKiqp4g +zBtGTkgJdUmqHYlTC8gnzTm54AG2Ymk4FoASGZFHPDTO4VJZ3Wo79KNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgyEPT8CERiWPO +XTQOlShuiGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDRwAwRAIgVCmgIF4T +s7QlHWzUdJYTxruGSlRPuwlekM4Au3kgilYCICmzzTR3z+zoBO2X9M4kyI/ebCxF +u2RbCYuMuMUowLDq +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt new file mode 100644 index 00000000..a758912f --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQfC/PBWN7YUi6LyfRsT71wTAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAw +NDJaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExlGcF+toks0eW58iyTd2GBFWDMlE +Fi6yLGIbTBu+hSDYw62/NSbbuYhO2zpCBYPCcRWDHzZTtsMgCpL1kFmQGaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgxV0DX8jX5odQyecAGFV4bBLjVhcA +kKLT5M1Ed3BbQNwwKAYDVR0RBCEwH4IWcGVlcjAub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjAwCgYIKoZIzj0EAwIDSAAwRQIhAO8SOW+CwnLdTE48RF0Gnv2FrkfryYok +1b7ixywliCinAiANq2PWBP0/kA0ieHEZs1/giCX9E+WLgrPfwm+8fISImg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key new file mode 100644 index 00000000..dceb37d9 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggARn3NoeQy+bhzuS +d/O4U9Q9JqWxqbdzF2zKkj617JuhRANCAATGUZwX62iSzR5bnyLJN3YYEVYMyUQW +LrIsYhtMG76FINjDrb81Jtu5iE7bOkIFg8JxFYMfNlO2wyAKkvWQWZAZ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk new file mode 100644 index 00000000..ca564d08 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/a5b3e0ca079850544f7a1381629dada8e62bf2b5f180ac6e49c79a70c40858e2_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgputMFhOeoXcCA4Ji +qp3Vwg/Aod0fwNtu/WCkwZvJOmmhRANCAARV39373sdyjrofATkrr/VgcAxS9irS +T0VNySdbuAIpfM90BJH5dpL4hPuY7Ml759Z08ZXIVUtDcwUX5XNzG24H +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem new file mode 100644 index 00000000..430112e6 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAN2DNjWSlgyPNMDEi/eX7V0wCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABFXf3fvex3KOuh8BOSuv9WBwDFL2KtJP +RU3JJ1u4Ail8z3QEkfl2kviE+5jsyXvn1nTxlchVS0NzBRflc3MbbgejTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQDwrDA8 +R4RoMxF9XvogVbE8WyWmjL614IQ4P6XfGzdxfwIgWV9nIQRCvnXKrCNCHlHr4sxO +xP5K34HRgj1Jr40ODrM= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt new file mode 100644 index 00000000..f386ac6d --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQREyFYdgealeFMbnWi/U3TjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAw +NDJaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEihFJm/6OPYljjccM0F4Kf5NOt3kd +s4xUXNh9mv1L7NjM6W69EHOT1uKiTpMlpMWezLqmdOs1eJ/gsNk54ySQBaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgxV0DX8jX5odQyecAGFV4bBLjVhcA +kKLT5M1Ed3BbQNwwKAYDVR0RBCEwH4IWcGVlcjEub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjEwCgYIKoZIzj0EAwIDSAAwRQIhAI2ZpaUW94I8N14ssLvvW194pKpNl7Bp +1kqcSpfCkpCvAiARSeo9lxDiOV1CAyOm1nbn/OFdz4Wh4m8iBz6RLZ6V5Q== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key new file mode 100644 index 00000000..1dded069 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg1H2Yv70N9yTJ3wRa +rorj5uf6eD2YgVue7roLupwNuh+hRANCAASKEUmb/o49iWONxwzQXgp/k063eR2z +jFRc2H2a/Uvs2Mzpbr0Qc5PW4qJOkyWkxZ7MuqZ06zV4n+Cw2TnjJJAF +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk new file mode 100644 index 00000000..db529097 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/c55d035fc8d7e68750c9e7001855786c12e356170090a2d3e4cd4477705b40dc_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgNZgTFjntL+pcg3lX +UjVY+fT9vvCWsEJA5Oq/Hmc3pJahRANCAAThXfCOmsOXZzJdsQlHslPPzdk6OiTJ +qpPBIIhCYvb59wo5xA2/x2KqyUM1Y9Fkb5goUEBxj+XFOiK2lxnDX5qz +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk new file mode 100644 index 00000000..8e88a54d --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/d404db0397d50cf0b1a5d028561e78a2b47935e318ec1800de5fc5c164dae9ae_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgg6uVXC5L+7kullxR +CYr44nbYJ0Lnb7DLKBqeyMKKOuKhRANCAAT44xBtnUqO0+5SSDJse2OarWXzd5ed +wwriIDKjisz45PBTsbqCJMB+qk2HtYKw1WXXwiQ2XZ0b6gayposlQVZ9 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..084a3c94 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAPGRVw8QcfBpee3Ja3cvffkwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABPjjEG2dSo7T7lJIMmx7Y5qtZfN3l53D +CuIgMqOKzPjk8FOxuoIkwH6qTYe1grDVZdfCJDZdnRvqBrKmiyVBVn2jTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMhD0/AhEYlj +zl00DpUobohpu3vQUUVM1BZqooh6KtRRMAoGCCqGSM49BAMCA0gAMEUCIQC5cqF2 +q0XWF5TtueZexFr9hx7d5jr8xZ21lLlJILlCoQIgOhVwxz9d5F5Svh6PYdZK8q/z +wfVH1xi8rCo0jv4Nee4= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt new file mode 100644 index 00000000..2c1ea60d --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRAIMSt9AP4hmYeHt8U1LCEOYwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBOOEkumNriBX3DEqLJEE3Y0XdgX +jYdFIryqjdzWO5qzcpAxQedlL0GTzQvo9SuC/bUWUg0LVkRerrou1l2QNgqjbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCDFXQNfyNfmh1DJ5wAYVXhsEuNWFwCQ +otPkzUR3cFtA3DAKBggqhkjOPQQDAgNHADBEAiBPR9N7JQJdskOnln/VBW2JTlSG +WpaOhsLbpmnhJkCS5gIgRPhhKcJ1a4v0hFeViajyt2TXyMPKbTsWhvJKKl+JM2M= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key new file mode 100644 index 00000000..9ef27525 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgdFo0hnDG1JcuPPro +0G5Qcn+DkAtgS3FfHG+6B10xsrShRANCAAQTjhJLpja4gV9wxKiyRBN2NF3YF42H +RSK8qo3c1juas3KQMUHnZS9Bk80L6PUrgv21FlINC1ZEXq66LtZdkDYK +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..df375717 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQXztS0I3Ktycdzqu1lDxfCjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7TZtpjohiXFwEeG6gbskdsEMtFcQxOQP +1MO1JCxgVTxg+9IYvKuqUMqmhQA0jlueI2Me5kW40blbhAtIKQ4+7KNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgyEPT8CERiWPO +XTQOlShuiGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDRwAwRAIgI7fCElam +9GuzoHW9nFi4jcbuGTMJ3gBHFZdyM37XB0MCIH3CoJDVZ401CnJGJNwrnL6cQJ2j +MgRs18HgngzZpPpo +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..ce84ce73 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQzCCAemgAwIBAgIQAfA9He7xpAUEnXbP8v/01jAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +HY+ITUmFrqCtWRJ0dlL26zdY84qktqCgbcPx1+gsQ52FUteseD+27NEF28fZ4Pll +pXI6tV16uYiK2FirDkFMz6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgyEPT8CERiWPOXTQOlShu +iGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDSAAwRQIhAOhn/ntHd7sxk6Ds +TuZXwmeXoGDBCzQ+Dqyun7LC94BNAiAeRZa/ZKQCmjSogcaBhJHgjKG63IdMHCu2 +kAsF956AbA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk new file mode 100644 index 00000000..69931061 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/6200c95bc5314763ddca31ad86ce6f18989d35301fbdf10582e31a872da8200e_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgmeOkDC6jW5YSAOZE +WnIYm30JTzWv8BHG72DJZOtwX1mhRANCAATtNm2mOiGJcXAR4bqBuyR2wQy0VxDE +5A/Uw7UkLGBVPGD70hi8q6pQyqaFADSOW54jYx7mRbjRuVuEC0gpDj7s +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..df375717 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQXztS0I3Ktycdzqu1lDxfCjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7TZtpjohiXFwEeG6gbskdsEMtFcQxOQP +1MO1JCxgVTxg+9IYvKuqUMqmhQA0jlueI2Me5kW40blbhAtIKQ4+7KNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgyEPT8CERiWPO +XTQOlShuiGm7e9BRRUzUFmqiiHoq1FEwCgYIKoZIzj0EAwIDRwAwRAIgI7fCElam +9GuzoHW9nFi4jcbuGTMJ3gBHFZdyM37XB0MCIH3CoJDVZ401CnJGJNwrnL6cQJ2j +MgRs18HgngzZpPpo +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..f9f1e67c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIRAPcfHzsJAOL/eOpjlvm+hgwwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABOFd8I6aw5dnMl2xCUeyU8/N2To6JMmqk8EgiEJi9vn3CjnEDb/HYqrJ +QzVj0WRvmChQQHGP5cU6IraXGcNfmrOjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMVdA1/I1+aH +UMnnABhVeGwS41YXAJCi0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDHSo/7 +y73NLCfyt4HUVH3tzk8BcK5b2HR8eJQdqjAFtQIgJ5oWZ0Q0o0Y3YWmKmEKwiS62 +R6vTrnPnUxn89Zp5IzU= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt new file mode 100644 index 00000000..8ce96d29 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeGgAwIBAgIQaDKtYPBdqA6HCkJRnYE5QzAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAw +NDJaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXLHheXZQcGdaAUigHgFNPeAaLRgp +lsdSMYsiuBb9rkqcSgptyvGeGsjTDuee5L3suBekZrD+gnVTkiA3wjt646NsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIMVdA1/I1+aHUMnnABhVeGwS41YXAJCi +0+TNRHdwW0DcMAoGCCqGSM49BAMCA0gAMEUCIQDnQSd6SFqnLylHqBdnMQQrU09d +DgIXCiMqzZqo21alOgIgBdl8Mz85fL12VeYVZh92cG9d3OU4D43IofjysAzhNhE= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key new file mode 100644 index 00000000..7d36a43d --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg4Axz04NiqnAKLmBk +1dzVbOrTOZm2Oqlbn2rVJZ6vZIGhRANCAARcseF5dlBwZ1oBSKAeAU094BotGCmW +x1IxiyK4Fv2uSpxKCm3K8Z4ayNMO557kvey4F6RmsP6CdVOSIDfCO3rj +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk new file mode 100644 index 00000000..3ff056cc --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/1ee551a8753171c0377366e96a1d7ec01afddb868c9483cc501b6f8ac7ae752f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWMWVOsOqHMxvIR2H +9MRWWAUOzvMLydKhbZQ21ih27lShRANCAAQSNgQpT5K5L8J8tQNr96X2ZCicqGf6 +25mwVJPxWNsFO074q6/3Vx99M7/Sz2K0NhncvjRCeyOfJH6EZ+/nJsIY +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..80898236 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICFzCCAb2gAwIBAgIUGdYQPMsBSzrjEMQ1mzYWCKJvlfkwCgYIKoZIzj0EAwIw +aDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK +EwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt +Y2Etc2VydmVyMB4XDTE3MDkwMTExMDcwMFoXDTMyMDgyODExMDcwMFowaDELMAkG +A1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl +cmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy +dmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEF/LEuIBfqBVhG3KiVJPnWPzA +m6g00Z28jyHWAv8ciNxRpe6Gk81XeTYSUQAnJeWkKjk1J4GNmMIT5QJD/zfJWKNF +MEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE +FI1TmoFkXMUG9WsyR/UWPJUJ5fNsMAoGCCqGSM49BAMCA0gAMEUCIQDxjxJvZS0k +U7ELxF8wuk7KmgPvCCA5zRY5GUJFBRsflAIgev7lr2JhO8HqGN7QVcjXT9ifq/wt +xnDx7AQLyuDkEGw= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk new file mode 100644 index 00000000..babd0c76 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/55f89f6171583cc40724941aa0954c8d339a2a293c5643a3217a55c6b14668cc_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgkkT62Nb44Fsdyhvb +hSve2YU5+ogPDP52M7jYMhozsfqhRANCAAQ6n6iJprQGbdLVMYk+a8M+izvLRnKB +3E56hUVDsfHG/W8g3TMiQ5uvAfStU9s/wx3E2xnrlnngPE3QCfRLe6kA +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem new file mode 100644 index 00000000..e9f58790 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAJ0AFGGhkKzObCWXnBQ6nJYwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEwMDQy +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjAub3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABDqfqImmtAZt0tUxiT5rwz6LO8tGcoHc +TnqFRUOx8cb9byDdMyJDm68B9K1T2z/DHcTbGeuWeeA8TdAJ9Et7qQCjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIB7lUah1MXHA +N3Nm6WodfsAa/duGjJSDzFAbb4rHrnUvMAoGCCqGSM49BAMCA0gAMEUCIQDtt8py +pdFLxQ6y1t2wA69SeFsHVSvy97hktoiP0zFO5gIgd2E4eXL/pUSxlUGs3RzlEk1J +AAthjt2Bxkc8zNGwoCE= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt new file mode 100644 index 00000000..9fb7eed8 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICaDCCAg6gAwIBAgIRAKXEWX6cU9xZ4zUEc/qEXqEwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjAub3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABFmL7xzltDeI2IuyoXfcxg8OvTNw +ezwlqzaia0GanQsnvsbzoem08sP1MoE141URx7D6hrstHPcKcjzJo+0rqjKjgZcw +gZQwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcD +AjAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAICyLU20/1KMoSty7iF9COYjmA3sW +4sun4MHuLAdPjRghMCgGA1UdEQQhMB+CFnBlZXIwLm9yZzIuZXhhbXBsZS5jb22C +BXBlZXIwMAoGCCqGSM49BAMCA0gAMEUCIQCbs+ypDbf0LkUltfL98DDd0NBuJ2Lc +opudMBqYgQd2MgIgebBbWQm0qTeRvAy0yMWGsbPWmXnrPo8qCJ5uN58lTW4= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key new file mode 100644 index 00000000..e34a532b --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgrEVSHddCzgt/bebN +WK6Mn/Nmw4bul+oLPqNvcKEBOQqhRANCAARZi+8c5bQ3iNiLsqF33MYPDr0zcHs8 +Jas2omtBmp0LJ77G86HptPLD9TKBNeNVEcew+oa7LRz3CnI8yaPtK6oy +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk new file mode 100644 index 00000000..da6d5d20 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/ec648ac689f099ccf1b79d56e17acad0701f44e9b6c08f99af1b7fb0220808e7_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgSB2awBKFfwQXSKYq +O1b9QwlKdVzg8FAf5MBQ6s/0T7+hRANCAAR9bXAk4NDrb91L5/wSfkv7RrnNkKcV +fcngncUN7iw/ThzruSv2qAbskWUPDbaoFQA7iVP799K7eKsADUIEBUbJ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem new file mode 100644 index 00000000..2504ee9a --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQLER8KhhC6lVOth63tWLBDDAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfW1wJODQ62/dS+f8En5L+0a5zZCnFX3J +4J3FDe4sP04c67kr9qgG7JFlDw22qBUAO4lT+/fSu3irAA1CBAVGyaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgf4N7xS7J +r2E3AE23A5j1jZGOJhbd4/jBLG5jhQmQ1JMCIHQZTsZcEI/E1gTGrex4WAocOk7N +9nwZjIQ5JMbC0Zo5 +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt new file mode 100644 index 00000000..b8143bd4 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICaDCCAg6gAwIBAgIRAOIAEsDplhG/9cgY3vCfxhcwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABLMduSDc7AQoWW8WLqOPA7mlSxnB +vJeapRX9Gjm/YRILCgqYLmAOYb58JlA4l3t2/oO6VMeLMN36vUuJ6OCUcbyjgZcw +gZQwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcD +AjAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAICyLU20/1KMoSty7iF9COYjmA3sW +4sun4MHuLAdPjRghMCgGA1UdEQQhMB+CFnBlZXIxLm9yZzIuZXhhbXBsZS5jb22C +BXBlZXIxMAoGCCqGSM49BAMCA0gAMEUCIQDaWW80GyurwJoXuqT87tJSc4WZWGdA +ZB64hoMZQzWCbgIgU5ptcg+ZTZR3x67HX0vtwA3mYsTzfdS/YHho67zoYKs= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key new file mode 100644 index 00000000..7c618377 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQguECyN4MYLvcdMajS +wBPSIN7K1NJqftoQdYsyIDrIGjmhRANCAASzHbkg3OwEKFlvFi6jjwO5pUsZwbyX +mqUV/Ro5v2ESCwoKmC5gDmG+fCZQOJd7dv6DulTHizDd+r1LiejglHG8 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk new file mode 100644 index 00000000..1e3c65e1 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/2c8b536d3fd4a3284adcbb885f423988e6037b16e2cba7e0c1ee2c074f8d1821_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg57hbOELvgqPt1UXK +lf0dQNLkn8rAqe5UNdUwsMqh/AShRANCAARpJkSmNfZWUZVgUkBYmnqiYDbeCxRf +glxE9mCO36niOLHrELFolknuhhCPh/XOhGKvGH2UvurTVe8llunMZmX8 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk new file mode 100644 index 00000000..634393a7 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/ed4e11d28881807d16d07609be517005a9905816bc2fc2ab3aece92e0daff4c8_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgRAnHbo7t4+SOH0l7 +tnQUb9SftRzUgms0l7MhSrEV2+GhRANCAASd4JpJdkYEDmnFMU8fNfVLHyVZKLUz ++r2ca0YRfn8ZCkEeM0pkp3/bqgx5KucZT/vRAbILvGfJ2rn34lGq3T4Z +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..6ffacd78 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQPIMUuRjlh71SW+Sn67Q6KjAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAwNDNa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEneCaSXZGBA5pxTFPHzX1Sx8lWSi1M/q9 +nGtGEX5/GQpBHjNKZKd/26oMeSrnGU/70QGyC7xnydq59+JRqt0+GaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgHuVRqHUxccA3 +c2bpah1+wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDSAAwRQIhANpYTaXh +MzUpbL9RfAWR4u1im5Y7YfTdfKWJ5WymzifIAiAH/5kua//B8Qlh2Z9SznF/Q5GO +Q4FQr670WIeJETNDZg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt new file mode 100644 index 00000000..3f1812ab --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeGgAwIBAgIQSjoJ34cTmiyj8n+/c3HahDAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDNaFw0yNzA4MzAxMTAw +NDNaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0MIGokHp4Ww9L8oK3N6zrVDW/LeC +xoGter3KRKZlp8dA/GCXbEcX53dhh9gRz0ZpzKxTHzuVb7oKkc8I5aVLnqNsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAICyLU20/1KMoSty7iF9COYjmA3sW4sun +4MHuLAdPjRghMAoGCCqGSM49BAMCA0gAMEUCIQD63nQFwhVhPJ0vp50LVQweqLN9 +C0TcTW/uMdAwkMbLVAIgTA+anZV4fqB/cvh07xbzdALG4N/cUR3q0FJeflFQpuc= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key new file mode 100644 index 00000000..b7f9ee17 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgb2hIVDMesM7EZACV +vY3P68ssiSn6SFDixGexbcDOuGWhRANCAATQwgaiQenhbD0vygrc3rOtUNb8t4LG +ga16vcpEpmWnx0D8YJdsRxfnd2GH2BHPRmnMrFMfO5VvugqRzwjlpUue +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..acce9ad0 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAInIZR/3hXJWaRWzunW9jWIwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQzWhcNMjcwODMwMTEwMDQz +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABG/aL7wTIUhKZHEG2x/ADZtlDPDFe4A8 +C5M/cwFTUm7Y1hfZgJioXMMiojbZbtEB3P7OhlEfhS7W5osrlAiXT3OjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIB7lUah1MXHA +N3Nm6WodfsAa/duGjJSDzFAbb4rHrnUvMAoGCCqGSM49BAMCA0gAMEUCIQCFpT7x +2YsjX/w+V6l3LBT/VEs2t6cKxiwKV/BnXJrY0AIgAg+rlKojdiNEYWKu9DdOB109 +cTeAUGWnOiqS0LXS3rQ= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..a15bace6 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQCyQoiiSl3HG4F0LpZZhkxTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MDExMTAwNDJaFw0yNzA4MzAxMTAwNDJa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +EjYEKU+SuS/CfLUDa/el9mQonKhn+tuZsFST8VjbBTtO+Kuv91cffTO/0s9itDYZ +3L40QnsjnyR+hGfv5ybCGKNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgHuVRqHUxccA3c2bpah1+ +wBr924aMlIPMUBtviseudS8wCgYIKoZIzj0EAwIDRwAwRAIgZkyHcr3gJnjRtHcy +dpqX7pZtyro/aeJKGrfjYGU5YFICIAHfMz8vKeCse5wweAUHM8TwwCYWzMyHAf0F +YdVb6zro +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk new file mode 100644 index 00000000..42a8052c --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/37d54f666be5b439c52b5503cd8efaed2db1095645a9ec5a6ff6276ed6e24893_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgrf4DcQ4ilC70itT+ +7ahh1pbMlOd6W2q8Gf2mMsxqIL6hRANCAARv2i+8EyFISmRxBtsfwA2bZQzwxXuA +PAuTP3MBU1Ju2NYX2YCYqFzDIqI22W7RAdz+zoZRH4Uu1uaLK5QIl09z +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..acce9ad0 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGjCCAcCgAwIBAgIRAInIZR/3hXJWaRWzunW9jWIwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQzWhcNMjcwODMwMTEwMDQz +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABG/aL7wTIUhKZHEG2x/ADZtlDPDFe4A8 +C5M/cwFTUm7Y1hfZgJioXMMiojbZbtEB3P7OhlEfhS7W5osrlAiXT3OjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIB7lUah1MXHA +N3Nm6WodfsAa/duGjJSDzFAbb4rHrnUvMAoGCCqGSM49BAMCA0gAMEUCIQCFpT7x +2YsjX/w+V6l3LBT/VEs2t6cKxiwKV/BnXJrY0AIgAg+rlKojdiNEYWKu9DdOB109 +cTeAUGWnOiqS0LXS3rQ= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..fecd05c5 --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRANfRQrxjYNMcwLUIo2xqNqUwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQyWhcNMjcwODMwMTEw +MDQyWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMi5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABGkmRKY19lZRlWBSQFiaeqJgNt4LFF+CXET2YI7fqeI4sesQsWiWSe6G +EI+H9c6EYq8YfZS+6tNV7yWW6cxmZfyjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEICyLU20/1KMo +Sty7iF9COYjmA3sW4sun4MHuLAdPjRghMAoGCCqGSM49BAMCA0cAMEQCIFP3bgrV +ncqWr+yzoKBkENzQl0m4vsZclIB0u4op2+azAiAAxLpNKBAaFa4b4kJgJ/pwBDiR +tQW8S/Y5eHLgLj3d/g== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt new file mode 100644 index 00000000..514fa15d --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRAMObKli4UM2rqWKfrpYyuWowCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTAxMTEwMDQzWhcNMjcwODMwMTEw +MDQzWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGy05kOY0lZ+8+HilYWga6psAb3Z +wNhTAz5+Vlow/UAJfDeIIUJ4ujQ3wuCtnJoJq7CyCnNhNrPCKnkcMGIQg6ejbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCAsi1NtP9SjKErcu4hfQjmI5gN7FuLL +p+DB7iwHT40YITAKBggqhkjOPQQDAgNHADBEAiAkO04TT5EVuG+hOuQrCQnOLDya +njdbFsAfusJnz4r9DgIgXzIhYBhtU5NIxoWvojfY1OoOmVszGkeYwhXqlLGW8pY= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key new file mode 100644 index 00000000..4aafbb6b --- /dev/null +++ b/hyperledger/dev/e2e_cli/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgeuhUcD3Koj+7GkCM +D06OuKNUIqH5OBNe8uuXMivpv0ShRANCAARstOZDmNJWfvPh4pWFoGuqbAG92cDY +UwM+flZaMP1ACXw3iCFCeLo0N8LgrZyaCauwsgpzYTazwip5HDBiEIOn +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/e2e_cli/docker-compose-cli.yaml b/hyperledger/dev/e2e_cli/docker-compose-cli.yaml new file mode 100644 index 00000000..3353f27b --- /dev/null +++ b/hyperledger/dev/e2e_cli/docker-compose-cli.yaml @@ -0,0 +1,163 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + zookeeper0: + container_name: zookeeper0 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + container_name: zookeeper1 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + container_name: zookeeper2 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + kafka0: + container_name: kafka0 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + container_name: kafka1 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + container_name: kafka2 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + container_name: kafka3 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + orderer.example.com: + extends: + file: base/docker-compose-base-e2e.yaml + service: orderer.example.com + container_name: orderer.example.com + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + - kafka0 + - kafka1 + - kafka2 + - kafka3 + + peer0.org1.example.com: + container_name: peer0.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + container_name: peer1.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + container_name: peer0.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + container_name: peer1.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org2.example.com + + cli: + container_name: cli + image: hyperledger/fabric-tools + tty: true + environment: + - GOPATH=/opt/gopath + - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock + - CORE_LOGGING_LEVEL=DEBUG + - CORE_PEER_ID=cli + - CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + - CORE_PEER_LOCALMSPID=Org1MSP + - CORE_PEER_TLS_ENABLED=true + - CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt + - CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key + - CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + - CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer + command: /bin/bash -c './scripts/script.sh ${CHANNEL_NAME}; sleep $TIMEOUT' + volumes: + - /var/run/:/host/var/run/ + - ../chaincode/go/:/opt/gopath/src/github.com/hyperledger/fabric/examples/chaincode/go + - ./crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ + - ./scripts:/opt/gopath/src/github.com/hyperledger/fabric/peer/scripts/ + - ./channel-artifacts:/opt/gopath/src/github.com/hyperledger/fabric/peer/channel-artifacts + depends_on: + - orderer.example.com + - peer0.org1.example.com + - peer1.org1.example.com + - peer0.org2.example.com + - peer1.org2.example.com diff --git a/hyperledger/dev/e2e_cli/docker-compose-couch.yaml b/hyperledger/dev/e2e_cli/docker-compose-couch.yaml new file mode 100644 index 00000000..d2049b7f --- /dev/null +++ b/hyperledger/dev/e2e_cli/docker-compose-couch.yaml @@ -0,0 +1,67 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + couchdb0: + container_name: couchdb0 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "5984:5984" + + peer0.org1.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb0:5984 + depends_on: + - couchdb0 + + couchdb1: + container_name: couchdb1 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "6984:5984" + + peer1.org1.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb1:5984 + depends_on: + - couchdb1 + + couchdb2: + container_name: couchdb2 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "7984:5984" + + peer0.org2.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb2:5984 + depends_on: + - couchdb2 + + couchdb3: + container_name: couchdb3 + image: hyperledger/fabric-couchdb + # Comment/Uncomment the port mapping if you want to hide/expose the CouchDB service, + # for example map it to utilize Fauxton User Interface in dev environments. + ports: + - "8984:5984" + + peer1.org2.example.com: + environment: + - CORE_LEDGER_STATE_STATEDATABASE=CouchDB + - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb3:5984 + depends_on: + - couchdb3 diff --git a/hyperledger/dev/e2e_cli/docker-compose-e2e-template.yaml b/hyperledger/dev/e2e_cli/docker-compose-e2e-template.yaml new file mode 100644 index 00000000..7db21047 --- /dev/null +++ b/hyperledger/dev/e2e_cli/docker-compose-e2e-template.yaml @@ -0,0 +1,159 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + ca0: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org1 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY + ports: + - "7054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/CA1_PRIVATE_KEY -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg1 + + ca1: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org2 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/CA2_PRIVATE_KEY + ports: + - "8054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/CA2_PRIVATE_KEY -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org2.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg2 + + zookeeper0: + container_name: zookeeper0 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + container_name: zookeeper1 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + container_name: zookeeper2 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + kafka0: + container_name: kafka0 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + container_name: kafka1 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + container_name: kafka2 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + container_name: kafka3 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + orderer.example.com: + extends: + file: base/docker-compose-base-e2e.yaml + service: orderer.example.com + container_name: orderer.example.com + depends_on: + - kafka0 + - kafka1 + - kafka2 + - kafka3 + + peer0.org1.example.com: + container_name: peer0.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + container_name: peer1.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + container_name: peer0.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + container_name: peer1.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org2.example.com diff --git a/hyperledger/dev/e2e_cli/docker-compose-e2e.yaml b/hyperledger/dev/e2e_cli/docker-compose-e2e.yaml new file mode 100644 index 00000000..ba077420 --- /dev/null +++ b/hyperledger/dev/e2e_cli/docker-compose-e2e.yaml @@ -0,0 +1,159 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +version: '2' + +services: + ca0: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org1 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/2628c774d6def25e2bf6147c30f25fe76469d63d257965ac867544acd090148c_sk + ports: + - "7054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/2628c774d6def25e2bf6147c30f25fe76469d63d257965ac867544acd090148c_sk -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg1 + + ca1: + image: hyperledger/fabric-ca + environment: + - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server + - FABRIC_CA_SERVER_CA_NAME=ca-org2 + - FABRIC_CA_SERVER_TLS_ENABLED=true + - FABRIC_CA_SERVER_TLS_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem + - FABRIC_CA_SERVER_TLS_KEYFILE=/etc/hyperledger/fabric-ca-server-config/3f39c678fc9b1f79cddb94f1e896cc3c487aa25c2ebf8b7f3e0205c2d21a37ec_sk + ports: + - "8054:7054" + command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org2.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/3f39c678fc9b1f79cddb94f1e896cc3c487aa25c2ebf8b7f3e0205c2d21a37ec_sk -b admin:adminpw -d' + volumes: + - ./crypto-config/peerOrganizations/org2.example.com/ca/:/etc/hyperledger/fabric-ca-server-config + container_name: ca_peerOrg2 + + zookeeper0: + container_name: zookeeper0 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=1 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper1: + container_name: zookeeper1 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=2 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + zookeeper2: + container_name: zookeeper2 + extends: + file: base/docker-compose-base-e2e.yaml + service: zookeeper + environment: + - ZOO_MY_ID=3 + - ZOO_SERVERS=server.1=zookeeper0:2888:3888 server.2=zookeeper1:2888:3888 server.3=zookeeper2:2888:3888 + + kafka0: + container_name: kafka0 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=0 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka1: + container_name: kafka1 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=1 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka2: + container_name: kafka2 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=2 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + kafka3: + container_name: kafka3 + extends: + file: base/docker-compose-base-e2e.yaml + service: kafka + environment: + - KAFKA_BROKER_ID=3 + - KAFKA_MIN_INSYNC_REPLICAS=2 + - KAFKA_DEFAULT_REPLICATION_FACTOR=3 + - KAFKA_ZOOKEEPER_CONNECT=zookeeper0:2181,zookeeper1:2181,zookeeper2:2181 + depends_on: + - zookeeper0 + - zookeeper1 + - zookeeper2 + + orderer.example.com: + extends: + file: base/docker-compose-base-e2e.yaml + service: orderer.example.com + container_name: orderer.example.com + depends_on: + - kafka0 + - kafka1 + - kafka2 + - kafka3 + + peer0.org1.example.com: + container_name: peer0.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org1.example.com + + peer1.org1.example.com: + container_name: peer1.org1.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org1.example.com + + peer0.org2.example.com: + container_name: peer0.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer0.org2.example.com + + peer1.org2.example.com: + container_name: peer1.org2.example.com + extends: + file: base/docker-compose-base-e2e.yaml + service: peer1.org2.example.com diff --git a/hyperledger/dev/e2e_cli/download-dockerimages.sh b/hyperledger/dev/e2e_cli/download-dockerimages.sh new file mode 100644 index 00000000..cbe966b8 --- /dev/null +++ b/hyperledger/dev/e2e_cli/download-dockerimages.sh @@ -0,0 +1,81 @@ +#!/bin/bash -eu +# +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + + +################################################## +# This script pulls docker images from hyperledger +# docker hub repository and Tag it as +# hyperledger/fabric- latest tag +################################################## + +#Set ARCH variable i.e ppc64le,s390x,x86_64,i386 +ARCH=`uname -m` + +dockerFabricPull() { + local FABRIC_TAG=$1 + for IMAGES in peer orderer couchdb ccenv javaenv kafka tools zookeeper; do + echo "==> FABRIC IMAGE: $IMAGES" + echo + docker pull hyperledger/fabric-$IMAGES:$FABRIC_TAG + docker tag hyperledger/fabric-$IMAGES:$FABRIC_TAG hyperledger/fabric-$IMAGES + done +} + +dockerCaPull() { + local CA_TAG=$1 + echo "==> FABRIC CA IMAGE" + echo + docker pull hyperledger/fabric-ca:$CA_TAG + docker tag hyperledger/fabric-ca:$CA_TAG hyperledger/fabric-ca +} +usage() { + echo "Description " + echo + echo "Pulls docker images from hyperledger dockerhub repository" + echo "tag as hyperledger/fabric-:latest" + echo + echo "USAGE: " + echo + echo "./download-dockerimages.sh [-c ] [-f ]" + echo " -c fabric-ca docker image tag" + echo " -f fabric docker image tag" + echo + echo + echo "EXAMPLE:" + echo "./download-dockerimages.sh -c x86_64-1.0.0-beta -f x86_64-1.0.0-beta" + echo + echo "By default, pulls fabric-ca and fabric 1.0.0-beta docker images" + echo "from hyperledger dockerhub" + exit 0 +} + +while getopts "\?hc:f:" opt; do + case "$opt" in + c) CA_TAG="$OPTARG" + echo "Pull CA IMAGES" + ;; + + f) FABRIC_TAG="$OPTARG" + echo "Pull FABRIC TAG" + ;; + \?|h) usage + echo "Print Usage" + ;; + esac +done + +: ${CA_TAG:="$ARCH-1.0.0-beta"} +: ${FABRIC_TAG:="$ARCH-1.0.0-beta"} + +echo "===> Pulling fabric Images" +dockerFabricPull ${FABRIC_TAG} + +echo "===> Pulling fabric ca Image" +dockerCaPull ${CA_TAG} +echo +echo "===> List out hyperledger docker images" +docker images | grep hyperledger* diff --git a/hyperledger/dev/e2e_cli/end-to-end.rst b/hyperledger/dev/e2e_cli/end-to-end.rst new file mode 100644 index 00000000..9f187339 --- /dev/null +++ b/hyperledger/dev/e2e_cli/end-to-end.rst @@ -0,0 +1,912 @@ +End-to-End Flow +=============== + +The end-to-end verification provisions a sample Fabric network consisting of +two organizations, each maintaining two peers, and a Kafka-based ordering service. + +This verification makes use of two fundamental tools, which are necessary to +create a functioning transactional network with digital signature validation +and access control: + +* cryptogen - generates the x509 certificates used to identify and authenticate the various components in the network. +* configtxgen - generates the requisite configuration artifacts for orderer bootstrap and channel creation. + +Each tool consumes a configuration yaml file, within which we specify the topology +of our network (cryptogen) and the location of our certificates for various +configuration operations (configtxgen). Once the tools have been successfully run, +we are able to launch our network. More detail on the tools and the structure of +the network will be provided later in this document. For now, let's get going... + +Prerequisites +------------- + +- `Git client `__ +- `Docker `__ - v1.12 or higher +- `Docker Compose `__ - v1.8 or higher +- `Homebrew `__ - OSX only +- `Xcode `__ - OSX only (this can take upwards of an hour) +- `Docker Toolbox `__ - Windows users only +- `Go `__ - 1.7 or higher + +On Windows machines you will also need the following which provides a better alternative to the Windows command prompt: + +- `Git Bash `__ + +.. note:: On older versions of Windows, such as Windows 7, you + typically get this as part of installing Docker + Toolbox. However experience has shown this to be a poor + development environment with limited functionality. It is + suitable to run docker based scenarios, such as + :doc:`getting_started`, but you may not be able to find a + suitable ``make`` command to successfuly go through the + scenario described here. + +Setting the $GOPATH +^^^^^^^^^^^^^^^^^^^ +Make sure you have properly setup your Host's `GOPATH environment +variable `__. This is necessary for the +code to compile properly. + +Now create the following directory structure and ``cd`` into it: + +.. code:: bash + + mkdir -p $GOPATH/src/github.com/hyperledger + cd $GOPATH/src/github.com/hyperledger + +- Clone the Fabric code base into this path. + +.. code:: bash + + git clone http://gerrit.hyperledger.org/r/fabric + +or though a mirrored repository in github: + +.. code:: bash + + git clone https://github.com/hyperledger/fabric.git + +- If you are running OSX, perform the following: + +.. code:: bash + + brew install gnu-tar --with-default-names + brew install libtool + +Build the binaries +^^^^^^^^^^^^^^^^^^ + +- Now make the platform-specific binaries for ``cryptogen`` and ``configtxgen``. + +.. code:: bash + + cd $GOPATH/src/github.com/hyperledger/fabric + # ensure sure you are in the /fabric directory where the Makefile resides + make release + +This will output platform-specific binaries into the ``fabric/release`` folder. + +- Next, make the Fabric images. This typically takes between five to ten minutes, so + be patient: + +.. code:: bash + + # make sure you are in the /fabric directory + make docker + +Execute a ``docker images`` command in your terminal. If the images compiled +successfully, you should see an output similar to the following: + +.. code:: bash + + REPOSITORY TAG IMAGE ID CREATED SIZE + hyperledger/fabric-couchdb latest e2df4dd39ca9 38 minutes ago 1.51 GB + hyperledger/fabric-couchdb x86_64-1.0.0-beta e2df4dd39ca9 38 minutes ago 1.51 GB + hyperledger/fabric-kafka latest 08af4d797266 40 minutes ago 1.3 GB + hyperledger/fabric-kafka x86_64-1.0.0-beta 08af4d797266 40 minutes ago 1.3 GB + hyperledger/fabric-zookeeper latest 444e9e695367 40 minutes ago 1.31 GB + hyperledger/fabric-zookeeper x86_64-1.0.0-beta 444e9e695367 40 minutes ago 1.31 GB + hyperledger/fabric-testenv latest 8678d3101930 41 minutes ago 1.41 GB + hyperledger/fabric-testenv x86_64-1.0.0-beta 8678d3101930 41 minutes ago 1.41 GB + hyperledger/fabric-buildenv latest 60911392c82e 41 minutes ago 1.33 GB + hyperledger/fabric-buildenv x86_64-1.0.0-beta 60911392c82e 41 minutes ago 1.33 GB + hyperledger/fabric-orderer latest 2afab937b9cc 41 minutes ago 182 MB + hyperledger/fabric-orderer x86_64-1.0.0-beta 2afab937b9cc 41 minutes ago 182 MB + hyperledger/fabric-peer latest 9560e58e8089 41 minutes ago 185 MB + hyperledger/fabric-peer x86_64-1.0.0-beta 9560e58e8089 41 minutes ago 185 MB + hyperledger/fabric-javaenv latest 881ca5219fad 42 minutes ago 1.43 GB + hyperledger/fabric-javaenv x86_64-1.0.0-beta 881ca5219fad 42 minutes ago 1.43 GB + hyperledger/fabric-ccenv latest 28af77ffe9e9 43 minutes ago 1.29 GB + hyperledger/fabric-ccenv x86_64-1.0.0-beta 28af77ffe9e9 43 minutes ago 1.29 GB + hyperledger/fabric-baseimage x86_64-0.3.0 f4751a503f02 3 months ago 1.27 GB + hyperledger/fabric-baseos x86_64-0.3.0 c3a4cf3b3350 3 months ago 161 MB + +If you failed to compile the ``fabric-testenv`` image, then you can +perform a ``make clean`` followed by another ``make docker``. + +Cryptogen Tool +-------------- +We will use the cryptogen tool to generate the cryptographic material (x509 certs) +for our various network entities. The certificates are based on a standard PKI +implementation where validation is achieved by reaching a common trust anchor. + +How does it work? +^^^^^^^^^^^^^^^^^ + +Cryptogen consumes a file - ``crypto-config.yaml`` - that contains the network +topology and allows us to generate a library of certificates for both the +Organizations and the components that belong to those Organizations. Each +Organization is provisioned a unique root certificate (``ca-cert``), that binds +specific components (peers and orderers) to that Org. Transactions and communications +within Fabric are signed by an entity's private key (``keystore``), and then verified +by means of a public key (``signcerts``). You will notice a "count" variable within +this file. We use this to specify the number of peers per Organization; in our +case it's two peers per Org. The rest of this template is extremely +self-explanatory. + +After we run the tool, the certs will be parked in a folder titled ``crypto-config``. + +Configuration Transaction Generator +----------------------------------- + +The `configtxgen +tool `__ +is used to create four artifacts: orderer **bootstrap block**, fabric +**channel configuration transaction**, and two **anchor peer transactions** - one +for each Peer Org. + +The orderer block is the genesis block for the ordering service, and the +channel transaction file is broadcast to the orderer at channel creation +time. The anchor peer transactions, as the name might suggest, specify each +Org's anchor peer on this channel. + +How does it work? +^^^^^^^^^^^^^^^^^ + +Configtxgen consumes a file - ``configtx.yaml`` - that contains the definitions +for the sample network. There are three members - one Orderer Org (``OrdererOrg``) +and two Peer Orgs (``Org1`` & ``Org2``) each managing and maintaining two peer nodes. +This file also specifies a consortium - ``SampleConsortium`` - consisting of our +two Peer Orgs. Pay specific attention to the "Profiles" section at the top of +this file. You will notice that we have two unique headers. One for the orderer genesis +block - ``TwoOrgsOrdererGenesis`` - and one for our channel - ``TwoOrgsChannel``. +These headers are important, as we will pass them in as arguments when we create +our artifacts. This file also contains two additional specifications that are worth +noting. Firstly, we specify the anchor peers for each Peer Org +(``peer0.org1.example.com`` & ``peer0.org2.example.com``). Secondly, we point to +the location of the MSP directory for each member, in turn allowing us to store the +root certificates for each Org in the orderer genesis block. This is a critical +concept. Now any network entity communicating with the ordering service can have +its digital signature verified. + +For ease of use, a script - ``generateArtifacts.sh`` - is provided. The +script will generate the crypto material and our four configuration artifacts, and +subsequently output these files into the ``channel-artifacts`` folder. + +Run the shell script +^^^^^^^^^^^^^^^^^^^^ + +Make sure you are in the ``examples/e2e_cli`` directory where the script resides. +Decide upon a unique name for your channel and replace the parm +with a name of your choice. The script will fail if you do not supply a name. + +.. code:: bash + + cd examples/e2e_cli + ./generateArtifacts.sh + +The output of the script is somewhat verbose, as it generates the crypto +libraries and multiple artifacts. However, you will notice five distinct +and self-explanatory messages in your terminal. They are as follows: + +.. code:: bash + + ########################################################## + ##### Generate certificates using cryptogen tool ######### + ########################################################## + + ########################################################## + ######### Generating Orderer Genesis block ############## + ########################################################## + + ################################################################# + ### Generating channel configuration transaction 'channel.tx' ### + ################################################################# + + ################################################################# + ####### Generating anchor peer update for Org0MSP ########## + ################################################################# + + ################################################################# + ####### Generating anchor peer update for Org1MSP ########## + ################################################################# + + +These configuration transactions will bundle the crypto material for the +participating members and their network components and output an orderer +genesis block and three channel transaction artifacts. These artifacts are +required to successfully bootstrap a Fabric network and create a channel to +transact upon. + +Manually generate the artifacts (optional) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +You can refer to the ``generateArtifacts.sh`` script for the commands, however +for the sake of convenience we will also provide them here. + +First, let's set the environment variable for our platform architecture. +This command will detect your OS and use the appropriate binaries for the subsequent steps: + +.. code:: bash + + # for power or z + os_arch=$(echo "$(uname -s)-$(uname -m)" | awk '{print tolower($0)}') + + # for linux, osx or windows + os_arch=$(echo "$(uname -s)-amd64" | awk '{print tolower($0)}') + +Check to make sure it is set properly: + +.. code:: bash + + echo $os_arch + +Now let's run the tool. Our platform specific binary is in the ``release`` +directory, so we need to provide the relative path to where the tool resides. +Make sure you are in ``examples/e2e_cli``: + +.. code:: bash + + ./../../release/$os_arch/bin/cryptogen generate --config=./crypto-config.yaml + +You will likely see the following warning. It's innocuous, ignore it: + +.. code:: bash + + [bccsp] GetDefault -> WARN 001 Before using BCCSP, please call InitFactories(). Falling back to bootBCCSP. + +Next, we need to tell the ``configtxgen`` tool where to look for the +``configtx.yaml`` file that it needs to ingest. We will tell it look in our +present working directory: + +.. code:: bash + + FABRIC_CFG_PATH=$PWD + +Create the orderer genesis block: + +.. code:: bash + + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsOrdererGenesis -outputBlock ./channel-artifacts/genesis.block + +You can ignore the logs regarding intermediate certs, we are not using them in +this crypto implementation. + +Create the channel transaction artifact: + +.. code:: bash + + # make sure to set the parm + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID + +Define the anchor peer for Org1 on the channel: + +.. code:: bash + + # make sure to set the parm + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org1MSPanchors.tx -channelID -asOrg Org1MSP + +Define the anchor peer for Org2 on the channel: + +.. code:: bash + + # make sure to set the parm + ./../../release/$os_arch/bin/configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate ./channel-artifacts/Org2MSPanchors.tx -channelID -asOrg Org2MSP + +Run the end-to-end test with Docker +----------------------------------- + +Make sure you are in the ``/e2e_cli`` directory. Then use docker-compose +to spawn the network entities and drive the tests. Notice that you can set a +``TIMEOUT`` variable (specified in seconds) so that your cli container does not +exit after the script completes. You can choose any value: + +.. code:: bash + + # the TIMEOUT variable is optional + CHANNEL_NAME= TIMEOUT= docker-compose -f docker-compose-cli.yaml up -d + +If you created a unique channel name, be sure to pass in that parameter. +For example, + +.. code:: bash + + CHANNEL_NAME=abc TIMEOUT=1000 docker-compose -f docker-compose-cli.yaml up -d + +Wait, 60 seconds or so. Behind the scenes, there are transactions being sent +to the peers. Execute a ``docker ps`` to view your active containers. +You should see an output identical to the following: + +.. code:: bash + + CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES + b568de3fe931 dev-peer1.org2.example.com-mycc-1.0 "chaincode -peer.a..." 4 minutes ago Up 4 minutes dev-peer1.org2.example.com-mycc-1.0 + 17c1c82087e7 dev-peer0.org1.example.com-mycc-1.0 "chaincode -peer.a..." 4 minutes ago Up 4 minutes dev-peer0.org1.example.com-mycc-1.0 + 0e1c5034c47b dev-peer0.org2.example.com-mycc-1.0 "chaincode -peer.a..." 4 minutes ago Up 4 minutes dev-peer0.org2.example.com-mycc-1.0 + 71339e7e1d38 hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp peer1.org1.example.com + add6113ffdcf hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp peer1.org2.example.com + 689396c0e520 hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer0.org1.example.com + 65424407a653 hyperledger/fabric-orderer "orderer" 5 minutes ago Up 5 minutes 0.0.0.0:7050->7050/tcp orderer.example.com + ce14853db660 hyperledger/fabric-peer "peer node start -..." 5 minutes ago Up 5 minutes 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp peer0.org2.example.com + +If you set a moderately high ``TIMEOUT`` value, then you will see your cli +container as well. + +What's happening behind the scenes? +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +- A script - ``script.sh`` - is baked inside the CLI container. The + script drives the ``createChannel`` command against the supplied channel name + and uses the channel.tx file for channel configuration. + +- The output of ``createChannel`` is a genesis block - + ``.block`` - which gets stored on the peers' file systems and contains + the channel configuration specified from channel.tx. + +- The ``joinChannel`` command is exercised for all four peers, which takes as + input the previously generated genesis block. This command instructs the + peers to join ```` and create a chain starting with ``.block``. + +- Now we have a channel consisting of four peers, and two + organizations. This is our ``TwoOrgsChannel`` profile. + +- ``peer0.org1.example.com`` and ``peer1.org1.example.com`` belong to Org1; + ``peer0.org2.example.com`` and ``peer1.org2.example.com`` belong to Org2 + +- These relationships are defined through the ``crypto-config.yaml`` and + the MSP path is specified in our docker compose. + +- The anchor peers for Org1MSP (``peer0.org1.example.com``) and + Org2MSP (``peer0.org2.example.com``) are then updated. We do this by passing + the ``Org1MSPanchors.tx`` and ``Org2MSPanchors.tx`` artifacts to the ordering + service along with the name of our channel. + +- A chaincode - **chaincode_example02** - is installed on ``peer0.org1.example.com`` and + ``peer0.org2.example.com`` + +- The chaincode is then "instantiated" on ``peer0.org2.example.com``. Instantiation + adds the chaincode to the channel, starts the container for the target peer, + and initializes the key value pairs associated with the chaincode. The initial + values for this example are ["a","100" "b","200"]. This "instantiation" results + in a container by the name of ``dev-peer0.org2.example.com-mycc-1.0`` starting. + +- The instantiation also passes in an argument for the endorsement + policy. The policy is defined as + ``-P "OR ('Org1MSP.member','Org2MSP.member')"``, meaning that any + transaction must be endorsed by a peer tied to Org1 or Org2. + +- A query against the value of "a" is issued to ``peer0.org1.example.com``. The + chaincode was previously installed on ``peer0.org1.example.com``, so this will start + a container for Org1 peer0 by the name of ``dev-peer0.org1.example.com-mycc-1.0``. The result + of the query is also returned. No write operations have occurred, so + a query against "a" will still return a value of "100". + +- An invoke is sent to ``peer0.org1.example.com`` to move "10" from "a" to "b" + +- The chaincode is then installed on ``peer1.org2.example.com`` + +- A query is sent to ``peer1.org2.example.com`` for the value of "a". This starts a + third chaincode container by the name of ``dev-peer1.org2.example.com-mycc-1.0``. A + value of 90 is returned, correctly reflecting the previous + transaction during which the value for key "a" was modified by 10. + +What does this demonstrate? +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Chaincode **MUST** be installed on a peer in order for it to +successfully perform read/write operations against the ledger. +Furthermore, a chaincode container is not started for a peer until an ``init`` or +traditional transaction - read/write - is performed against that chaincode (e.g. query for +the value of "a"). The transaction causes the container to start. Also, +all peers in a channel maintain an exact copy of the ledger which +comprises the blockchain to store the immutable, sequenced record in +blocks, as well as a state database to maintain current fabric state. +This includes those peers that do not have chaincode installed on them +(like ``peer1.org1.example.com`` in the above example) . Finally, the chaincode is accessible +after it is installed (like ``peer1.org2.example.com`` in the above example) because it +has already been instantiated. + +How do I see these transactions? +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Check the logs for the CLI docker container. + +.. code:: bash + + docker logs -f cli + +You should see the following output: + +.. code:: bash + + 2017-05-16 17:08:01.366 UTC [msp] GetLocalMSP -> DEBU 004 Returning existing local MSP + 2017-05-16 17:08:01.366 UTC [msp] GetDefaultSigningIdentity -> DEBU 005 Obtaining default signing identity + 2017-05-16 17:08:01.366 UTC [msp/identity] Sign -> DEBU 006 Sign: plaintext: 0AB1070A6708031A0C08F1E3ECC80510...6D7963631A0A0A0571756572790A0161 + 2017-05-16 17:08:01.367 UTC [msp/identity] Sign -> DEBU 007 Sign: digest: E61DB37F4E8B0D32C9FE10E3936BA9B8CD278FAA1F3320B08712164248285C54 + Query Result: 90 + 2017-05-16 17:08:15.158 UTC [main] main -> INFO 008 Exiting..... + ===================== Query on PEER3 on channel 'mychannel' is successful ===================== + + ===================== All GOOD, End-2-End execution completed ===================== + + + _____ _ _ ____ _____ ____ _____ + | ____| | \ | | | _ \ | ____| |___ \ | ____| + | _| | \| | | | | | _____ | _| __) | | _| + | |___ | |\ | | |_| | |_____| | |___ / __/ | |___ + |_____| |_| \_| |____/ |_____| |_____| |_____| + +How can I see the chaincode logs? +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Inspect the individual chaincode containers to see the separate +transactions executed against each container. Here is the combined +output from each container: + +.. code:: bash + + $ docker logs dev-peer0.org2.example.com-mycc-1.0 + 04:30:45.947 [BCCSP_FACTORY] DEBU : Initialize BCCSP [SW] + ex02 Init + Aval = 100, Bval = 200 + + $ docker logs dev-peer0.org1.example.com-mycc-1.0 + 04:31:10.569 [BCCSP_FACTORY] DEBU : Initialize BCCSP [SW] + ex02 Invoke + Query Response:{"Name":"a","Amount":"100"} + ex02 Invoke + Aval = 90, Bval = 210 + + $ docker logs dev-peer1.org2.example.com-mycc-1.0 + 04:31:30.420 [BCCSP_FACTORY] DEBU : Initialize BCCSP [SW] + ex02 Invoke + Query Response:{"Name":"a","Amount":"90"} + +All in one +^^^^^^^^^^ + +You can also generate the artifacts and crypto, and drive the tests using a single +shell script. The ``cryptogen``, ``configtxgen`` and ``docker-compose`` commands are +embedded in the script. If you choose not to supply a channel ID, then the +script will use a default name of ``mychannel``. The cli timeout parameter +is an optional value; if you choose not to set it, then your cli container +will exit upon conclusion of the script. + +.. code:: bash + + ./network_setup.sh up + +OR + +.. code:: bash + + ./network_setup.sh up + +Understanding the docker-compose topology +----------------------------------------- + +The ``e2e_cli`` folder offers us two flavors of docker-compose files, both of which +are extended from the ``docker-compose-base.yaml``. Our first flavor, +``docker-compose-cli.yaml``, provides us with a CLI container, along with an orderer, +four peers, and the optional couchDB containers. We use this docker-compose for +the entirety of the instructions on this page. + +The second flavor, ``docker-compose-e2e.yaml``, is constructed to run end-to-end tests +using the Node.js SDK. Aside from functioning with the SDK, its primary differentiation +is that there are containers for the fabric-ca servers. As a result, we are able +to send REST calls to the organizational CAs for user registration and enrollment. + +If you want to use the ``docker-compose-e2e.yaml`` without first running the +**All in one** script, then we will need to make four slight modifications. +We need to point to the private keys for our Organization's CA's. You can locate +these values in your crypto-config folder. For example, to locate the private +key for Org1 we would follow this path - ``crypto-config/peerOrganizations/org1.example.com/ca/``. +The private key is a long hash value followed by ``_sk``. The path for Org2 +would be - ``crypto-config/peerOrganizations/org2.example.com/ca/``. + +In the ``docker-compose-e2e.yaml`` update the FABRIC_CA_SERVER_TLS_KEYFILE variable +for ca0 and ca1. You also need to edit the path that is provided in the command +to start the ca server. You are providing the same private key twice for each +CA container. + +Manually exercise the commands +------------------------------ + +Exit the currently-running containers: + +.. code:: bash + + docker rm -f $(docker ps -aq) + +Execute a ``docker images`` command in your terminal to view the +chaincode images. They will look similar to the following: + +.. code:: bash + + REPOSITORY TAG IMAGE ID CREATED SIZE + dev-peer1.org2.example.com-mycc-1.0 latest 4bc5e9b5dd97 5 seconds ago 176 MB + dev-peer0.org1.example.com-mycc-1.0 latest 6f2aeb032076 22 seconds ago 176 MB + dev-peer0.org2.example.com-mycc-1.0 latest 509b8e393cc6 39 seconds ago 176 MB + +Remove these images: + +.. code:: bash + + docker rmi + +For example: + +.. code:: bash + + docker rmi -f 4bc 6f2 509 + +Ensure you have the configuration artifacts. If you deleted them, run +the shell script again: + +.. code:: bash + + # remember to supply a channel ID + ./generateArtifacts.sh + +Modify the docker-compose file +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Open the ``docker-compose-cli.yaml`` file and comment out the command to run +``script.sh``. Navigate down to the cli container and place a ``#`` to the +left of the command. For example: + +.. code:: bash + + working_dir: /opt/gopath/src/github.com/hyperledger/fabric/peer + # command: /bin/bash -c './scripts/script.sh ${CHANNEL_NAME}; sleep $TIMEOUT' + +Save the file and return to the ``/e2e_cli`` directory. + +Now restart your network: + +.. code:: bash + + # make sure you are in the /e2e_cli directory where your docker-compose script resides + CHANNEL_NAME= TIMEOUT= docker-compose -f docker-compose-cli.yaml up -d + +If you want to see the realtime logs for your network, then do not supply the ``-d`` flag. +If you let the logs stream, then you will need to open a second terminal to execute the CLI calls. + +Command syntax +^^^^^^^^^^^^^^ + +Refer to the create and join commands in the ``script.sh`` for the exact syntax. + +For the following CLI commands against `peer0.org1.example.com` to work, we need +to preface our commands with the four environment variables given below. These +variables for ``peer0.org1.example.com`` are baked into the CLI container, +therefore we can operate without passing them. **HOWEVER**, if you want to send +calls to other peers or the orderer, then you will need to provide these +values accordingly. Inspect the ``docker-compose-base.yaml`` for the specific +paths: + +.. code:: bash + + # Environment variables for PEER0 + + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + CORE_PEER_LOCALMSPID="Org1MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + +Create channel +^^^^^^^^^^^^^^ + +Exec into the cli container: + +.. code:: bash + + docker exec -it cli bash + +If successful you should see the following: + +.. code:: bash + + root@0d78bb69300d:/opt/gopath/src/github.com/hyperledger/fabric/peer# + +Specify your channel name with the ``-c`` flag. Specify your channel +configuration transaction with the ``-f`` flag. In this case it is +``channel.tx``, however you can mount your own configuration transaction +with a different name. + +.. code:: bash + + # the channel.tx file is mounted in the channel-artifacts directory within your cli container + # as a result, we pass the full path for the file + # we also pass the path for the orderer ca-cert in order to verify the TLS handshake + # be sure to replace the $CHANNEL_NAME variable appropriately + + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem + + +.. note:: You will remain in the CLI container for the remainder of + these manual commands. You must also remember to preface all commands + with the corresponding environment variables when targeting a peer other than + ``peer0.org1.example.com``. + +Join channel +^^^^^^^^^^^^ + +Join specific peers to the channel + +.. code:: bash + + # By default, this joins ``peer0.org1.example.com`` only + # the channel.block was returned by the previous command + + peer channel join -b + +You can make other peers join the channel as necessary by making appropriate +changes in the four environment variables. + +Install chaincode onto a remote peer +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Install the sample go code onto one of the four peer nodes + +.. code:: bash + + peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 + +Instantiate chaincode and define the endorsement policy +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Instantiate the chaincode on a peer. This will launch a chaincode +container for the targeted peer and set the endorsement policy for the +chaincode. In this snippet, we define the policy as requiring an +endorsement from one peer node that is a part of either ``Org1`` or ``Org2``. +The command is: + +.. code:: bash + + # be sure to replace the $CHANNEL_NAME environment variable + # if you did not install your chaincode with a name of mycc, then modify that argument as well + + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 -c '{"Args":["init","a", "100", "b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" + +See the `endorsement +policies `__ +documentation for more details on policy implementation. + +Invoke chaincode +^^^^^^^^^^^^^^^^ + +.. code:: bash + + # be sure to set the -C and -n flags appropriately + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n mycc -c '{"Args":["invoke","a","b","10"]}' + +Make sure to wait a few seconds for the operation to complete. + +Query chaincode +^^^^^^^^^^^^^^^ + +.. code:: bash + + # be sure to set the -C and -n flags appropriately + peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}' + +The result of the above command should be the following: + +.. code:: bash + + Query Result: 90 + +Feel free to start over and manipulate the key value pairs and subsequent +invocations. + +Using CouchDB +------------- + +The state database can be switched from the default (goleveldb) to CouchDB. +The same chaincode functions are available with CouchDB, however, there is the +added ability to perform rich and complex queries against the state database +data content contingent upon the chaincode data being modeled as JSON. + +To use CouchDB instead of the default database (goleveldb), follow the same +procedure in the **Manually exercise the commands** section, except when starting +the network pass the couchdb docker-compose as well: + +.. code:: bash + + # make sure you are in the /e2e_cli directory where your docker-compose script resides + CHANNEL_NAME= TIMEOUT= docker-compose -f docker-compose-cli.yaml -f docker-compose-couch.yaml up -d + +**chaincode_example02** should now work using CouchDB underneath. + +.. note:: If you choose to implement mapping of the fabric-couchdb container + port to a host port, please make sure you are aware of the security + implications. Mapping of the port in a development environment makes the + CouchDB REST API available, and allows the + visualization of the database via the CouchDB web interface (Fauxton). + Production environments would likely refrain from implementing port mapping in + order to restrict outside access to the CouchDB containers. + +You can use **chaincode_example02** chaincode against the CouchDB state database +using the steps outlined above, however in order to exercise the CouchDB query +capabilities you will need to use a chaincode that has data modeled as JSON, +(e.g. **marbles02**). You can locate the **marbles02** chaincode in the +``fabric/examples/chaincode/go`` directory. + +We will follow the same process to create and join the channel as outlined in the +**Manually exercise the commands** section above. Once you have joined your +peer(s) to the channel, use the following steps to interact with the **marbles02** +chaincode: + +- Install and instantiate the chaincode on ``peer0.org1.example.com``: + +.. code:: bash + + # be sure to modify the $CHANNEL_NAME variable accordingly for the instantiate command + + peer chaincode install -o orderer.example.com:7050 -n marbles -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/marbles02 + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/marbles02 -c '{"Args":["init"]}' -P "OR ('Org0MSP.member','Org1MSP.member')" + +- Create some marbles and move them around: + +.. code:: bash + + # be sure to modify the $CHANNEL_NAME variable accordingly + + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["initMarble","marble1","blue","35","tom"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["initMarble","marble2","red","50","tom"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["initMarble","marble3","blue","70","tom"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["transferMarble","marble2","jerry"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["transferMarblesBasedOnColor","blue","jerry"]}' + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem -C $CHANNEL_NAME -n marbles -c '{"Args":["delete","marble1"]}' + + +- If you chose to map the CouchDB ports in docker-compose, you can now view + the state database through the CouchDB web interface (Fauxton) by opening + a browser and navigating to the following URL: + + ``http://localhost:5984/_utils`` + +You should see a database named ``mychannel`` (or your unique channel name) and +the documents inside it. + +.. note:: For the below commands, be sure to update the $CHANNEL_NAME variable appropriately. + +You can run regular queries from the CLI (e.g. reading ``marble2``): + +.. code:: bash + + peer chaincode query -C $CHANNEL_NAME -n marbles -c '{"Args":["readMarble","marble2"]}' + +The output should display the details of ``marble2``: + +.. code:: bash + + Query Result: {"color":"red","docType":"marble","name":"marble2","owner":"jerry","size":50} + +You can retrieve the history of a specific marble - e.g. ``marble1``: + +.. code:: bash + + peer chaincode query -C $CHANNEL_NAME -n marbles -c '{"Args":["getHistoryForMarble","marble1"]}' + +The output should display the transactions on ``marble1``: + +.. code:: bash + + Query Result: [{"TxId":"1c3d3caf124c89f91a4c0f353723ac736c58155325f02890adebaa15e16e6464", "Value":{"docType":"marble","name":"marble1","color":"blue","size":35,"owner":"tom"}},{"TxId":"755d55c281889eaeebf405586f9e25d71d36eb3d35420af833a20a2f53a3eefd", "Value":{"docType":"marble","name":"marble1","color":"blue","size":35,"owner":"jerry"}},{"TxId":"819451032d813dde6247f85e56a89262555e04f14788ee33e28b232eef36d98f", "Value":}] + +You can also perform rich queries on the data content, such as querying marble fields by owner ``jerry``: + +.. code:: bash + + peer chaincode query -C $CHANNEL_NAME -n marbles -c '{"Args":["queryMarblesByOwner","jerry"]}' + +The output should display the two marbles owned by ``jerry``: + +.. code:: bash + + Query Result: [{"Key":"marble2", "Record":{"color":"red","docType":"marble","name":"marble2","owner":"jerry","size":50}},{"Key":"marble3", "Record":{"color":"blue","docType":"marble","name":"marble3","owner":"jerry","size":70}}] + +A Note on Data Persistence +-------------------------- + +If data persistence is desired on the peer container or the CouchDB container, +one option is to mount a directory in the docker-host into a relevant directory +in the container. For example, you may add the following two lines in +the peer container specification in the ``docker-compose-base.yaml`` file: + +.. code:: bash + + volumes: + - /var/hyperledger/peer0:/var/hyperledger/production + + +For the CouchDB container, you may add the following two lines in the CouchDB +container specification: + +.. code:: bash + + volumes: + - /var/hyperledger/couchdb0:/opt/couchdb/data + +Troubleshooting +--------------- + +- It's recommended to start your network fresh. Use the following command + to remove artifacts, crypto, containers and chaincode images: + +.. code:: bash + + ./network_setup.sh down + +- If you see docker errors, first check your version (should be 1.12 or above), + and then try restarting your docker process. Problems with Docker are + oftentimes not immediately recognizable. For example, you may see errors + resulting from an inability to access crypto material mounted within a + container. + +- If they persist remove your images and start from scratch: + +.. code:: bash + + make clean + make docker + +- If you see the below error: + +.. code:: bash + + Error: Error endorsing chaincode: rpc error: code = 2 desc = Error installing chaincode code mycc:1.0(chaincode /var/hyperledger/production/chaincodes/mycc.1.0 exits) + +You likely have chaincode images (e.g. ``dev-peer1.org2.example.com-mycc-1.0`` or +``dev-peer0.org1.example.com-mycc-1.0``) from prior runs. Remove them and try +again. + +.. code:: bash + + docker rmi -f $(docker images | grep peer[0-9]-peer[0-9] | awk '{print $3}') + +- If you see something similar to the following: + +.. code:: bash + + Error connecting: rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure + Error: rpc error: code = 14 desc = grpc: RPC failed fast due to transport failure + +Make sure you pointed to the correct binaries in the release folder when +generating the artifacts, and that your backend is running against "beta" images +or compiled images from the current master branch. + +If you see the below error: + +.. code:: bash + + [configtx/tool/localconfig] Load -> CRIT 002 Error reading configuration: Unsupported Config Type "" + panic: Error reading configuration: Unsupported Config Type "" + +Then you did not set the ``FABRIC_CFG_PATH`` environment variable properly. The +configtxgen tool needs this variable in order to locate the configtx.yaml. Go +back and recreate your channel artifacts. + +- To cleanup the network, use the ``down`` option: + +.. code:: bash + + ./network_setup.sh down + +- If you continue to see errors, share your logs on the **# fabric-questions** + channel on `Hyperledger Rocket Chat `__. + +.. Licensed under Creative Commons Attribution 4.0 International License + https://creativecommons.org/licenses/by/4.0/ diff --git a/hyperledger/dev/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go b/hyperledger/dev/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go new file mode 100644 index 00000000..53438066 --- /dev/null +++ b/hyperledger/dev/e2e_cli/examples/chaincode/go/chaincode_example02/chaincode_example02.go @@ -0,0 +1,199 @@ +/* +Copyright IBM Corp. 2016 All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package main + +//WARNING - this chaincode's ID is hard-coded in chaincode_example04 to illustrate one way of +//calling chaincode from a chaincode. If this example is modified, chaincode_example04.go has +//to be modified as well with the new ID of chaincode_example02. +//chaincode_example05 show's how chaincode ID can be passed in as a parameter instead of +//hard-coding. + +import ( + "fmt" + "strconv" + + "github.com/hyperledger/fabric/core/chaincode/shim" + pb "github.com/hyperledger/fabric/protos/peer" +) + +// SimpleChaincode example simple Chaincode implementation +type SimpleChaincode struct { +} + +func (t *SimpleChaincode) Init(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Init") + _, args := stub.GetFunctionAndParameters() + var A, B string // Entities + var Aval, Bval int // Asset holdings + var err error + + if len(args) != 4 { + return shim.Error("Incorrect number of arguments. Expecting 4") + } + + // Initialize the chaincode + A = args[0] + Aval, err = strconv.Atoi(args[1]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + B = args[2] + Bval, err = strconv.Atoi(args[3]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +func (t *SimpleChaincode) Invoke(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Invoke") + function, args := stub.GetFunctionAndParameters() + if function == "invoke" { + // Make payment of X units from A to B + return t.invoke(stub, args) + } else if function == "delete" { + // Deletes an entity from its state + return t.delete(stub, args) + } else if function == "query" { + // the old "Query" is now implemtned in invoke + return t.query(stub, args) + } + + return shim.Error("Invalid invoke function name. Expecting \"invoke\" \"delete\" \"query\"") +} + +// Transaction makes payment of X units from A to B +func (t *SimpleChaincode) invoke(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A, B string // Entities + var Aval, Bval int // Asset holdings + var X int // Transaction value + var err error + + if len(args) != 3 { + return shim.Error("Incorrect number of arguments. Expecting 3") + } + + A = args[0] + B = args[1] + + // Get the state from the ledger + // TODO: will be nice to have a GetAllState call to ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + return shim.Error("Failed to get state") + } + if Avalbytes == nil { + return shim.Error("Entity not found") + } + Aval, _ = strconv.Atoi(string(Avalbytes)) + + Bvalbytes, err := stub.GetState(B) + if err != nil { + return shim.Error("Failed to get state") + } + if Bvalbytes == nil { + return shim.Error("Entity not found") + } + Bval, _ = strconv.Atoi(string(Bvalbytes)) + + // Perform the execution + X, err = strconv.Atoi(args[2]) + if err != nil { + return shim.Error("Invalid transaction amount, expecting a integer value") + } + Aval = Aval - X + Bval = Bval + X + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state back to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +// Deletes an entity from state +func (t *SimpleChaincode) delete(stub shim.ChaincodeStubInterface, args []string) pb.Response { + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting 1") + } + + A := args[0] + + // Delete the key from the state in ledger + err := stub.DelState(A) + if err != nil { + return shim.Error("Failed to delete state") + } + + return shim.Success(nil) +} + +// query callback representing the query of a chaincode +func (t *SimpleChaincode) query(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A string // Entities + var err error + + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting name of the person to query") + } + + A = args[0] + + // Get the state from the ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + jsonResp := "{\"Error\":\"Failed to get state for " + A + "\"}" + return shim.Error(jsonResp) + } + + if Avalbytes == nil { + jsonResp := "{\"Error\":\"Nil amount for " + A + "\"}" + return shim.Error(jsonResp) + } + + jsonResp := "{\"Name\":\"" + A + "\",\"Amount\":\"" + string(Avalbytes) + "\"}" + fmt.Printf("Query Response:%s\n", jsonResp) + return shim.Success(Avalbytes) +} + +func main() { + err := shim.Start(new(SimpleChaincode)) + if err != nil { + fmt.Printf("Error starting Simple chaincode: %s", err) + } +} diff --git a/hyperledger/dev/e2e_cli/network_setup.sh b/hyperledger/dev/e2e_cli/network_setup.sh new file mode 100644 index 00000000..85fbd924 --- /dev/null +++ b/hyperledger/dev/e2e_cli/network_setup.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + + +UP_DOWN="$1" +CH_NAME="$2" +CLI_TIMEOUT="$3" +IF_COUCHDB="$4" + +: ${CLI_TIMEOUT:="10000"} + +COMPOSE_FILE=docker-compose-cli.yaml +COMPOSE_FILE_COUCH=docker-compose-couch.yaml +#COMPOSE_FILE=docker-compose-e2e.yaml + +function printHelp () { + echo "Usage: ./network_setup <\$channel-name> <\$cli_timeout> .\nThe arguments must be in order." +} + +function validateArgs () { + if [ -z "${UP_DOWN}" ]; then + echo "Option up / down / restart not mentioned" + printHelp + exit 1 + fi + if [ -z "${CH_NAME}" ]; then + echo "setting to default channel 'mychannel'" + CH_NAME=mychannel + fi +} + +function clearContainers () { + CONTAINER_IDS=$(docker ps -aq) + if [ -z "$CONTAINER_IDS" -o "$CONTAINER_IDS" = " " ]; then + echo "---- No containers available for deletion ----" + else + docker rm -f $CONTAINER_IDS + fi +} + +function removeUnwantedImages() { + DOCKER_IMAGE_IDS=$(docker images | grep "dev\|none\|test-vp\|peer[0-9]-" | awk '{print $3}') + if [ -z "$DOCKER_IMAGE_IDS" -o "$DOCKER_IMAGE_IDS" = " " ]; then + echo "---- No images available for deletion ----" + else + docker rmi -f $DOCKER_IMAGE_IDS + fi +} + +function networkUp () { + if [ -f "./crypto-config" ]; then + echo "crypto-config directory already exists." + else + #Generate all the artifacts that includes org certs, orderer genesis block, + # channel configuration transaction + source generateArtifacts.sh $CH_NAME + fi + + if [ "${IF_COUCHDB}" == "couchdb" ]; then + CHANNEL_NAME=$CH_NAME TIMEOUT=$CLI_TIMEOUT docker-compose -f $COMPOSE_FILE -f $COMPOSE_FILE_COUCH up -d 2>&1 + else + CHANNEL_NAME=$CH_NAME TIMEOUT=$CLI_TIMEOUT docker-compose -f $COMPOSE_FILE up -d 2>&1 + fi + if [ $? -ne 0 ]; then + echo "ERROR !!!! Unable to pull the images " + exit 1 + fi + docker logs -f cli +} + +function networkDown () { + docker-compose -f $COMPOSE_FILE down + + #Cleanup the chaincode containers + clearContainers + + #Cleanup images + removeUnwantedImages + + # remove orderer block and other channel configuration transactions and certs + rm -rf channel-artifacts/*.block channel-artifacts/*.tx crypto-config +} + +validateArgs + +#Create the network using docker compose +if [ "${UP_DOWN}" == "up" ]; then + networkUp +elif [ "${UP_DOWN}" == "down" ]; then ## Clear the network + networkDown +elif [ "${UP_DOWN}" == "restart" ]; then ## Restart the network + networkDown + networkUp +else + printHelp + exit 1 +fi diff --git a/hyperledger/dev/e2e_cli/scripts/script.sh b/hyperledger/dev/e2e_cli/scripts/script.sh new file mode 100644 index 00000000..46d92067 --- /dev/null +++ b/hyperledger/dev/e2e_cli/scripts/script.sh @@ -0,0 +1,273 @@ +#!/bin/bash +# Copyright London Stock Exchange Group All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# +echo +echo " ____ _____ _ ____ _____ _____ ____ _____ " +echo "/ ___| |_ _| / \ | _ \ |_ _| | ____| |___ \ | ____|" +echo "\___ \ | | / _ \ | |_) | | | _____ | _| __) | | _| " +echo " ___) | | | / ___ \ | _ < | | |_____| | |___ / __/ | |___ " +echo "|____/ |_| /_/ \_\ |_| \_\ |_| |_____| |_____| |_____|" +echo + +CHANNEL_NAME="$1" +: ${CHANNEL_NAME:="mychannel"} +: ${TIMEOUT:="60"} +COUNTER=1 +MAX_RETRY=5 +ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +echo "Channel name : "$CHANNEL_NAME + +verifyResult () { + if [ $1 -ne 0 ] ; then + echo "!!!!!!!!!!!!!!! "$2" !!!!!!!!!!!!!!!!" + echo "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +setGlobals () { + + if [ $1 -eq 0 -o $1 -eq 1 ] ; then + CORE_PEER_LOCALMSPID="Org1MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + if [ $1 -eq 0 ]; then + CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org1.example.com:7051 + fi + else + CORE_PEER_LOCALMSPID="Org2MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp + if [ $1 -eq 2 ]; then + CORE_PEER_ADDRESS=peer0.org2.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org2.example.com:7051 + fi + fi + + env |grep CORE +} + +checkOSNAvailability() { + #Use orderer's MSP for fetching system channel config block + CORE_PEER_LOCALMSPID="OrdererMSP" + CORE_PEER_TLS_ROOTCERT_FILE=$ORDERER_CA + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp + + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo "Attempting to fetch system channel 'testchainid' ...$(($(date +%s)-starttime)) secs" + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" >&log.txt + else + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Received block/ {print $NF}') + test "$VALUE" = "0" && let rc=0 + done + cat log.txt + verifyResult $rc "Ordering Service is not available, Please try again ..." + echo "===================== Ordering Service is up and running ===================== " + echo +} + +createChannel() { + setGlobals 0 + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx >&log.txt + else + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Channel creation failed" + echo "===================== Channel \"$CHANNEL_NAME\" is created successfully ===================== " + echo +} + +updateAnchorPeers() { + PEER=$1 + setGlobals $PEER + + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx >&log.txt + else + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Anchor peer update failed" + echo "===================== Anchor peers for org \"$CORE_PEER_LOCALMSPID\" on \"$CHANNEL_NAME\" is updated successfully ===================== " + sleep 5 + echo +} + +## Sometimes Join takes time hence RETRY atleast for 5 times +joinWithRetry () { + peer channel join -b $CHANNEL_NAME.block >&log.txt + res=$? + cat log.txt + if [ $res -ne 0 -a $COUNTER -lt $MAX_RETRY ]; then + COUNTER=` expr $COUNTER + 1` + echo "PEER$1 failed to join the channel, Retry after 2 seconds" + sleep 2 + joinWithRetry $1 + else + COUNTER=1 + fi + verifyResult $res "After $MAX_RETRY attempts, PEER$ch has failed to Join the Channel" +} + +joinChannel () { + for ch in 0 1 2 3; do + setGlobals $ch + joinWithRetry $ch + echo "===================== PEER$ch joined on the channel \"$CHANNEL_NAME\" ===================== " + sleep 2 + echo + done +} + +installChaincode () { + PEER=$1 + setGlobals $PEER + peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 >&log.txt + res=$? + cat log.txt + verifyResult $res "Chaincode installation on remote peer PEER$PEER has Failed" + echo "===================== Chaincode is installed on remote peer PEER$PEER ===================== " + echo +} + +instantiateChaincode () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode instantiate -o orderer.example.com:7050 -C $CHANNEL_NAME -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + else + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Chaincode instantiation on PEER$PEER on channel '$CHANNEL_NAME' failed" + echo "===================== Chaincode Instantiation on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +chaincodeQuery () { + PEER=$1 + echo "===================== Querying on PEER$PEER on channel '$CHANNEL_NAME'... ===================== " + setGlobals $PEER + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo "Attempting to Query PEER$PEER ...$(($(date +%s)-starttime)) secs" + peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}' >&log.txt + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Query Result/ {print $NF}') + test "$VALUE" = "$2" && let rc=0 + done + echo + cat log.txt + if test $rc -eq 0 ; then + echo "===================== Query on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + else + echo "!!!!!!!!!!!!!!! Query result on PEER$PEER is INVALID !!!!!!!!!!!!!!!!" + echo "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +chaincodeInvoke () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode invoke -o orderer.example.com:7050 -C $CHANNEL_NAME -n mycc -c '{"Args":["invoke","a","b","10"]}' >&log.txt + else + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -c '{"Args":["invoke","a","b","10"]}' >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Invoke execution on PEER$PEER failed " + echo "===================== Invoke transaction on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +## Check for orderering service availablility +echo "Check orderering service availability..." +checkOSNAvailability + +## Create channel +echo "Creating channel..." +createChannel + +## Join all the peers to the channel +echo "Having all peers join the channel..." +joinChannel + +## Set the anchor peers for each org in the channel +echo "Updating anchor peers for org1..." +updateAnchorPeers 0 +echo "Updating anchor peers for org2..." +updateAnchorPeers 2 + +## Install chaincode on Peer0/Org1 and Peer2/Org2 +echo "Installing chaincode on org1/peer0..." +installChaincode 0 +echo "Install chaincode on org2/peer2..." +installChaincode 2 + +#Instantiate chaincode on Peer2/Org2 +echo "Instantiating chaincode on org2/peer2..." +instantiateChaincode 2 + +#Query on chaincode on Peer0/Org1 +echo "Querying chaincode on org1/peer0..." +chaincodeQuery 0 100 + +#Invoke on chaincode on Peer0/Org1 +echo "Sending invoke transaction on org1/peer0..." +chaincodeInvoke 0 + +## Install chaincode on Peer3/Org2 +echo "Installing chaincode on org2/peer3..." +installChaincode 3 + +#Query on chaincode on Peer3/Org2, check if the result is 90 +echo "Querying chaincode on org2/peer3..." +chaincodeQuery 3 90 + +echo +echo "===================== All GOOD, End-2-End execution completed ===================== " +echo + +echo +echo " _____ _ _ ____ _____ ____ _____ " +echo "| ____| | \ | | | _ \ | ____| |___ \ | ____|" +echo "| _| | \| | | | | | _____ | _| __) | | _| " +echo "| |___ | |\ | | |_| | |_____| | |___ / __/ | |___ " +echo "|_____| |_| \_| |____/ |_____| |_____| |_____|" +echo + +exit 0 diff --git a/hyperledger/dev/kafka/README.md b/hyperledger/dev/kafka/README.md new file mode 100644 index 00000000..97bbc6ae --- /dev/null +++ b/hyperledger/dev/kafka/README.md @@ -0,0 +1,13 @@ +## Start a network base on kafka + +### Quick testing with kafka +```bash +$ KAFKA_ENABLED=true make +``` +When the fabric-network fully started, it takes about 30~60s to finish all the test. + +## Generate crypto-config and channel-artifacts + +```bash +$ make gen_kafka +``` diff --git a/hyperledger/dev/kafka/channel-artifacts/Org1MSPanchors.tx b/hyperledger/dev/kafka/channel-artifacts/Org1MSPanchors.tx new file mode 100644 index 0000000000000000000000000000000000000000..599d18989e2c758f980552a590b149206ed3fc88 GIT binary patch literal 296 zcmd;D%ETqgCCtI3#Gh1JoSBzeT%4Sdn3tEDBh<~r)xpGtAsj9g%Ej$iP>_?EoLG{X zpC{zT!6;77UZPrCFkb~bel`TjEB1l$!^>(gt-bv0|1n1PHF%E literal 0 HcmV?d00001 diff --git a/hyperledger/dev/kafka/channel-artifacts/Org2MSPanchors.tx b/hyperledger/dev/kafka/channel-artifacts/Org2MSPanchors.tx new file mode 100644 index 0000000000000000000000000000000000000000..78b2f394fcd4e955f7ba22bd19178fef173aa8c9 GIT binary patch literal 296 zcmd;D%ETqgCCtI3#Gh1JoSBzeT%4Sdn3tEDBh<~r)xpGtAsj9g%Ej$iP>_?EoLG{X zpC{zT!6;Op1*C%Xs|(3;Npp!6067MF`9L@5 brB)>77UZPrCFkb~bel`Tj3>`kFxLS9k5*1? literal 0 HcmV?d00001 diff --git a/hyperledger/dev/kafka/channel-artifacts/channel.tx b/hyperledger/dev/kafka/channel-artifacts/channel.tx new file mode 100644 index 0000000000000000000000000000000000000000..b3b8ada26d712f2f82c532df8721aa0f7688533a GIT binary patch literal 406 zcma)&!AiqG6h%#nZG1&74?)Q?JG*kGlQy%nxR#1txDuI}PIMrdgiQJyBKQM-fa1z; zaOXD}G*v4IF7JJZ1NXsw2d>~U@WXEKa{KhQ8SToYGgdpNZiKZu8y@SCJW`BNo}`K> z!njCf%2dMnIF+0-IuV)?&BlyNK4MBR9&=9QB#Eg^;uxQOc=X}77-x70{b^ZdMv2-K z7DMbqZ&qEC)A<>0w1IwvFakI!tShS8EOXpLguz_oWv0K|@YTZyZ(Vuk1>WD*D1z>E xksIsq0C$28!YU7%hkRZdrgu@9T2~JDal3)GzKWmBxfY8xrY%;?u=V|C$vaT!ZXy5x literal 0 HcmV?d00001 diff --git a/hyperledger/dev/kafka/channel-artifacts/orderer.genesis.block b/hyperledger/dev/kafka/channel-artifacts/orderer.genesis.block new file mode 100644 index 0000000000000000000000000000000000000000..0870b97b3f2d2986a723dd32a203663df1984dc4 GIT binary patch literal 9162 zcmds7TdeEYS?)~da=OmU^x)IcOgGRD8x_!`(>PAzIF*XJe2wGSi7$zhjCk-Zwi7!} z;v~L24H6*rWsnASq#{%y^#NW035l0JAs%=DsS;EwDpD&zJfI3BctF4t*vU@LKC{nt zI2EXSOMAy_{p(^cf9w0ce+67#ytVw7pZng|e&?_M{Xg>0qrd*$|NNsL{oS{I@E7y% zHB}yd67lF!GRAs@LL?nz`M7eyYt+|OSk^y{Xh85if7ktuKmWBKe&LJA*IDoZi~J^w{OAqva(`nx8)t+3 z@D1c2J_EqjWq;!$-~G(R@81QV6x9LpyLXYV-$g#Sd#*1F|M;bM${&*9c`~!NJ;)Aw7{Ajl`76p+dUSsOU+f7LsRjL1@;yJ40tub`FQfI!mKRMV(J_zzW&j z1Pk&BMx-na)nh=UQP`+4(QApx4U78rR#dEnl_&H_mT4ww&L?U!a5#1gEG`Xtp|m$O z=&%WzN;zzbb1RYNVqKz1qbSRcWy5os$SqPThuv~8K*EUzgOMgGV!|9p;F)AaPxN#( z4cnO+2A-%)5*8jt?=VSCo9GQ!S#~`$lvcpPq`j!f3F96D1SZ)Yrgm>;%vdCchvx)S zu|L6>-E{1E=9rA9YI6=u3{7+mYNTtey~Vsgka?1H-K)ZzS(>DknwGQ*#gLL`LoG>GMw6}*@pjg# zHlVcT1v;t`2^edzUp|bEOptI!FeDTyXiO41DQ-zYgJL-o(w#8nXGp`rAyyHOu^OZS zlsi?CI=l-u?aDq$L2fkl<-H#?b$Q^JhBAOHxk{);)DP#Y0JgBy?JPSKR?%`OfP42V z)6kW8NRuq|8Hi7ogW^+OpK-D<9^j$FOrvPxb*Cx{Qx328eN_qc6=D(-J(H(3Uv)#vwun9Qb;lk=E4Lf<}potRhh$^~RZgR@iR_22I2zbb;NQxYptvOX}w4uvz z6t(8S;UZx=5al7s@;w6ciC%)$xkWJO*KN;k4WngZPVwK-pw_Q?1`{ZLf57fhO8!Xx%YKk8j8g$ zTL9(?1aJ-u$i#<0K9Lt9B|sidM`4$$2;*Q1+s*BYA?Ph#O}lFsH~Qfa(0h}Ej%D@C z=0Jqe;l9e-I-n1Ap~ws=UZ$gMK-Y%BN|*$)uCEAGN9ldnOQ%34>}c85QkP_^dEMeC{f4bpc~`-h8Vl!nP~xL)MtF5*NF-*9%9DqJwK}LpH{=#?(c6QIZEH<`yclQBlSp%d~S@ zV$w|Ujx0Fvzv01>2Emi@;62O~l!}@i=|NohV9?x$8EDRXjR89;_V%7RUG;ox2%37} zjWxo9)N)SbJ!ZPp#kQbiPM8VSBIbK)FiSn&3{xxLZCAd9k2}3(3r@AvYh)q{I(Rl8 z=cN4r(2%S76>+G=veJ+vU1ii!hfsvX0XIwmFi;?j72$zd5}|x26tquLJi~W;3cg5s z=)m8uWvhd`NyMnse#AjmU(`2Cb~_VmgbFI?rtxqvQ35Md3G6Hfg91%iy3EIRR&O^k zi=g8!jw>SA^!;ihkqJrW-Hsvb1+_+SxjS0xLWYu+thKRd7<)pz-BM->ySp%(&iO}z z>Eb15hyF6Ytb>>JjlXp^G4e~u=Wab$D8O6DOU3`^Z++t8HRP4+((T-+0j`=OZzFFN zu|IRI%^l>m>upM@dT%JjF$&rE6hpmz)%fCb;1$v+gs$d?PPE%1uOTmh=dt+I`NikK zUCJ|-OD9kYLA>#;tsgC8&Wd};LdyRy;pnlz4zWa z#azA(K1~LZwHO(JZyV*TkvEW6Z+#N^)Olsjv6tZG(-S<$Toqi8IW6cp=BnUY%xV4J zL|!X~0;l!7^ZY61^x%=NeG%L)Z#3F${aqL%|5ZW$umbL=Mz{)`dlkqxD#&lYUit#J zR;v8>U%&Y0D;MyOcaiVkMZS0UUgcjtcITGo#m?=7=bd}7*Bi!?C1-n%vw$Wzu zn>%;@%y;gB>aEkxEf>CFDPGC^Yg*b8$>zrg6SSGbnY!aU z3JNH*RZTW~W3*Po5n3BfXGS+Oq?yQ~30+Q8K?kMECt)ejx$v}WcV(Fu;e-PuJG8qp zJb4D~7(7g1she`RI{J$S!@II;I+KxVYWqc_7di^j-otheEa$N`L_6DLUgayTdW`PW zq#^Mi)zGw3bg4kz<@s5cWK*jFDSTyBQ4ksaC}7trmSHw3?by{!aROndFEg>Q1|;St zU1BpF?WNvc6Ze)LV3|cSt2hvs;n45qpg$hcPk1O;z~j&|>#o;)U#tb*tgr2x zb*4f}nq<3%>?t0O_rRL&5|i#sQ3b`3LHrE!*T0^FIx+lql$snoJ*dl?ktrd17AB~!< zCi6g=@$J<>+4zym!mPD?1SoEpg}-?$NYv6S%%~Gcima2xY@7f$={2?32C+V(=gdm} zDEJe5{;ac3oCe27Ll9{U*UqN-{pp#~G<0%kpG*V0RN^w{Q@Dl)1}7cQl0?l)`UkTx z$)#LQ^s=nTN)=@_k)Gt>P&g;Cl0rX@_W{?<&o%G!Bn&zeN%Uw}3JTS2E-kWe%-x-TPBakjRYv%!$Y0KLyd%>uD1SAb9{^fL~ZZX z6R*<98vDsQC8fQWr4EO;$nM%xarCB2Hj>C;-!LK~Z zmY)RUC3@DY$QO{GE?mJI*IdEvQqEp!!*h$;Np>Q?i2Q8P;Ir2nyo%gDH@M~@ia|~a z_{j!2>)3A|#VJ;b(+^(1_}43O`cHR}AKXR$_9#vdl}|5DC44NNyh`M}RGmY4vlPXh!I;?j&Nb#?9~_lQ{L)(5sR) z-rl>bB4NE-tQ%t>Yz0(N^Q_Y`tSu+@Hep>tM>kGI&f=7|eQoJUwOUjspfFf~`Fc6P zi5-K_gjJo5^8gd9&Kg#`5>ad?#mxz}fU0oq1zEV?Xm~R*MAmE5?k$<4Is>_%w{F* z*leS2nPE(LDYon>a|&;6bDLEjN}HW^JsU4Hkc*Z;wX%A>t1wKrYc85-Y;Cp^pVg^| zCLKfWD+O&Dg46Eg6)*jY@06mA))>0EQPYitLTsqH?JHb1UFb?&)1 zRkP5_)=$L_W@9}<$}H7jIOr;;L8Qx~Lu#>~BA;;_{tSTjb}FTZPbm z0eK$z#MAe4@eANi$A~?D>B7K`iem#WM38c3#}m2JbGvv4eD;vjrj4y})j-{DcGh;c zagaO3@xp%>Kc7B_^We_aoj}{(IC1R6NE5jLZ$`&2nS9Af5837~SyA}q7TQD~I`zvU cL;ftX-(^21pK;EjeUbtJ}6UX2G0XeM(G5`Po literal 0 HcmV?d00001 diff --git a/hyperledger/dev/kafka/configtx.yaml b/hyperledger/dev/kafka/configtx.yaml new file mode 100644 index 00000000..92ca5448 --- /dev/null +++ b/hyperledger/dev/kafka/configtx.yaml @@ -0,0 +1,153 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +--- +################################################################################ +# +# Profile +# +# - Different configuration profiles may be encoded here to be specified +# as parameters to the configtxgen tool +# +################################################################################ +Profiles: + + TwoOrgsOrdererGenesis: + Orderer: + <<: *OrdererDefaults + Organizations: + - *OrdererOrg + Consortiums: + SampleConsortium: + Organizations: + - *Org1 + - *Org2 + TwoOrgsChannel: + Consortium: SampleConsortium + Application: + <<: *ApplicationDefaults + Organizations: + - *Org1 + - *Org2 + +################################################################################ +# +# Section: Organizations +# +# - This section defines the different organizational identities which will +# be referenced later in the configuration. +# +################################################################################ +Organizations: + + # SampleOrg defines an MSP using the sampleconfig. It should never be used + # in production but may be used as a template for other definitions + - &OrdererOrg + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: OrdererOrg + + # ID to load the MSP definition as + ID: OrdererMSP + + # MSPDir is the filesystem path which contains the MSP configuration + MSPDir: crypto-config/ordererOrganizations/example.com/msp + + - &Org1 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org1MSP + + # ID to load the MSP definition as + ID: Org1MSP + + MSPDir: crypto-config/peerOrganizations/org1.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org1.example.com + Port: 7051 + + - &Org2 + # DefaultOrg defines the organization which is used in the sampleconfig + # of the fabric.git development environment + Name: Org2MSP + + # ID to load the MSP definition as + ID: Org2MSP + + MSPDir: crypto-config/peerOrganizations/org2.example.com/msp + + AnchorPeers: + # AnchorPeers defines the location of peers which can be used + # for cross org gossip communication. Note, this value is only + # encoded in the genesis block in the Application section context + - Host: peer0.org2.example.com + Port: 7051 + +################################################################################ +# +# SECTION: Orderer +# +# - This section defines the values to encode into a config transaction or +# genesis block for orderer related parameters +# +################################################################################ +Orderer: &OrdererDefaults + + # Orderer Type: The orderer implementation to start + # Available types are "solo" and "kafka" + OrdererType: kafka + + Addresses: + - orderer.example.com:7050 + + # Batch Timeout: The amount of time to wait before creating a batch + BatchTimeout: 2s + + # Batch Size: Controls the number of messages batched into a block + BatchSize: + + # Max Message Count: The maximum number of messages to permit in a batch + MaxMessageCount: 10 + + # Absolute Max Bytes: The absolute maximum number of bytes allowed for + # the serialized messages in a batch. + AbsoluteMaxBytes: 98 MB + + # Preferred Max Bytes: The preferred maximum number of bytes allowed for + # the serialized messages in a batch. A message larger than the preferred + # max bytes will result in a batch larger than preferred max bytes. + PreferredMaxBytes: 512 KB + + Kafka: + # Brokers: A list of Kafka brokers to which the orderer connects. Edit + # this list to identify the brokers of the ordering service. + # NOTE: Use IP:port notation. + Brokers: + - kafka0:9092 + - kafka1:9092 + - kafka2:9092 + - kafka3:9092 + + # Organizations is the list of orgs which are defined as participants on + # the orderer side of the network + Organizations: + +################################################################################ +# +# SECTION: Application +# +# - This section defines the values to encode into a config transaction or +# genesis block for application related parameters +# +################################################################################ +Application: &ApplicationDefaults + + # Organizations is the list of orgs which are defined as participants on + # the application side of the network + Organizations: \ No newline at end of file diff --git a/hyperledger/dev/kafka/crypto-config.yaml b/hyperledger/dev/kafka/crypto-config.yaml new file mode 100644 index 00000000..06ad8185 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config.yaml @@ -0,0 +1,81 @@ +# Copyright IBM Corp. All Rights Reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +# --------------------------------------------------------------------------- +# "OrdererOrgs" - Definition of organizations managing orderer nodes +# --------------------------------------------------------------------------- +OrdererOrgs: + # --------------------------------------------------------------------------- + # Orderer + # --------------------------------------------------------------------------- + - Name: Orderer + Domain: example.com + # --------------------------------------------------------------------------- + # "Specs" - See PeerOrgs below for complete description + # --------------------------------------------------------------------------- + Specs: + - Hostname: orderer +# --------------------------------------------------------------------------- +# "PeerOrgs" - Definition of organizations managing peer nodes +# --------------------------------------------------------------------------- +PeerOrgs: + # --------------------------------------------------------------------------- + # Org1 + # --------------------------------------------------------------------------- + - Name: Org1 + Domain: org1.example.com + # --------------------------------------------------------------------------- + # "Specs" + # --------------------------------------------------------------------------- + # Uncomment this section to enable the explicit definition of hosts in your + # configuration. Most users will want to use Template, below + # + # Specs is an array of Spec entries. Each Spec entry consists of two fields: + # - Hostname: (Required) The desired hostname, sans the domain. + # - CommonName: (Optional) Specifies the template or explicit override for + # the CN. By default, this is the template: + # + # "{{.Hostname}}.{{.Domain}}" + # + # which obtains its values from the Spec.Hostname and + # Org.Domain, respectively. + # --------------------------------------------------------------------------- + # Specs: + # - Hostname: foo # implicitly "foo.org1.example.com" + # CommonName: foo27.org5.example.com # overrides Hostname-based FQDN set above + # - Hostname: bar + # - Hostname: baz + # --------------------------------------------------------------------------- + # "Template" + # --------------------------------------------------------------------------- + # Allows for the definition of 1 or more hosts that are created sequentially + # from a template. By default, this looks like "peer%d" from 0 to Count-1. + # You may override the number of nodes (Count), the starting index (Start) + # or the template used to construct the name (Hostname). + # + # Note: Template and Specs are not mutually exclusive. You may define both + # sections and the aggregate nodes will be created for you. Take care with + # name collisions + # --------------------------------------------------------------------------- + Template: + Count: 2 + # Start: 5 + # Hostname: {{.Prefix}}{{.Index}} # default + # --------------------------------------------------------------------------- + # "Users" + # --------------------------------------------------------------------------- + # Count: The number of user accounts _in addition_ to Admin + # --------------------------------------------------------------------------- + Users: + Count: 1 + # --------------------------------------------------------------------------- + # Org2: See "Org1" for full specification + # --------------------------------------------------------------------------- + - Name: Org2 + Domain: org2.example.com + Template: + Count: 2 + Users: + Count: 1 diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk new file mode 100644 index 00000000..4ffd6eb4 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/06559890be29795903de6da44f03b43ff126a83a68e9940ef6c601e71c2dbe4f_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgM4o2FiiE5OyPE+o1 +H1KqX6rU9b1dVK0dvZ2UaLD8UFahRANCAATM0PsnILzXKXZCIon7sJgXOF1zoyX4 +s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKD +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/ca/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk new file mode 100644 index 00000000..7da05dbd --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/keystore/6da08cad1ed16a24cba6e223f03d61d7f93088befb5c873493caf8d1883036f0_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgf6gVM7prpq2dVAF0 +XZsrMRl1ngQWHP3g8vQPHoUMCM+hRANCAASxVOz9WeuZQ/+bZRf4TgXIoMzlkwhi +sGGkbJzu3IFvp7RPBzlXak4PzLZhTbcXBHr6Uax570iZqYRMgwelvnZu +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem new file mode 100644 index 00000000..94c9d485 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/signcerts/orderer.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICDTCCAbOgAwIBAgIRALKzAgSMqygfH0YaCqLdBWkwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFgxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYI +KoZIzj0DAQcDQgAEsVTs/VnrmUP/m2UX+E4FyKDM5ZMIYrBhpGyc7tyBb6e0Twc5 +V2pOD8y2YU23FwR6+lGsee9ImamETIMHpb52bqNNMEswDgYDVR0PAQH/BAQDAgeA +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgBlWYkL4peVkD3m2kTwO0P/EmqDpo +6ZQO9sYB5xwtvk8wCgYIKoZIzj0EAwIDSAAwRQIhAKOsudnRbopdMBcOQf8vyeJh +AfyWjxqXzQoLCCpgUxaEAiBUR+ROeUkaiwUkT5Pkvkfo3dmoA4gqwnH4WfvkXDqP +jg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt new file mode 100644 index 00000000..1169850c --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICWjCCAgCgAwIBAgIRAK7kSOvolrl5Oqn1j6MXCDkwCgYIKoZIzj0EAwIwbDEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5l +eGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFgxCzAJ +BgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJh +bmNpc2NvMRwwGgYDVQQDExNvcmRlcmVyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0C +AQYIKoZIzj0DAQcDQgAEz3vOY8Dga6/uct3qkXiMyO3z6GoVaaWs//C+2bXDW6TA +eNxg5hTYJFhlPdbj7wPC2tzRy/l11ue/0Zqad8lfpaOBljCBkzAOBgNVHQ8BAf8E +BAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQC +MAAwKwYDVR0jBCQwIoAgktHqTAvQ+K2pBwfqDCgRIK9UYAVaTeucW18zXxL7Svgw +JwYDVR0RBCAwHoITb3JkZXJlci5leGFtcGxlLmNvbYIHb3JkZXJlcjAKBggqhkjO +PQQDAgNIADBFAiEAy+f0Vdu4sPrIZLhWCTKdJXXzm70vMAAcJGCqvo30KqkCICVX +DX6tq+Tw5AQKu9UoZeGHawSSPYw6eKElz8U3kN8b +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key new file mode 100644 index 00000000..5479f04b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgjBMgv0lVc5MiD6FQ +m69sJ8l7VBw/caLKQbLPxbXieiKhRANCAATPe85jwOBrr+5y3eqReIzI7fPoahVp +paz/8L7ZtcNbpMB43GDmFNgkWGU91uPvA8La3NHL+XXW57/Rmpp3yV+l +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk new file mode 100644 index 00000000..0f74ced9 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/92d1ea4c0bd0f8ada90707ea0c281120af5460055a4deb9c5b5f335f12fb4af8_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgs34D8BnRo1WJZL8J +wW3rYaZjCF9nipPRBYAnAtJKmLuhRANCAAQG4y+DxWAQIC22aS4nFOVpYV0/IQAp +4/MyxGZ1jPSkcnpsinJLCC0pX8YSG5sXM7raYnOlxy5+wGU8YeMjNB+s +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/tlsca/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/admincerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem new file mode 100644 index 00000000..30c56f1b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/cacerts/ca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICMDCCAdagAwIBAgIRAPbKwadSmJh3VAnoKWQtThEwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMGkxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRQwEgYDVQQKEwtleGFtcGxlLmNvbTEXMBUGA1UEAxMOY2EuZXhhbXBsZS5j +b20wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATM0PsnILzXKXZCIon7sJgXOF1z +oyX4s0QCeADzStW3oNZ0kmHnbBcxbcNpmMmCQfUTwwpa5D/8stf7/4ANqIKDo18w +XTAOBgNVHQ8BAf8EBAMCAaYwDwYDVR0lBAgwBgYEVR0lADAPBgNVHRMBAf8EBTAD +AQH/MCkGA1UdDgQiBCAGVZiQvil5WQPebaRPA7Q/8SaoOmjplA72xgHnHC2+TzAK +BggqhkjOPQQDAgNIADBFAiEA6YnPBFAz3fGQKXP6meEZooYhJZS0AxG6/OiSRlWp +5SsCIFK9Hx6fB7jSNWvtv6wpsOtQgwnlMcOIvKMwfZoezIvN +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk new file mode 100644 index 00000000..63bd61d9 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/keystore/ca4186698186a52956d51a235e8c9880300d1e53322729fa76768edba75e9c65_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQguvc2KI5t+mMd1pPH +bd1dBsWr25SYfpgdrlet+8EGPD6hRANCAARSC/NovC8NtxpJTzt3YXe1KJ8G2el2 +ENIV9ekyg6BIhe3ruznwBVpLFahlmZVK2pNhe5XwEkBeHZ/Fgwfn7yV7 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem new file mode 100644 index 00000000..e9ecfd22 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/signcerts/Admin@example.com-cert.pem @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIICCzCCAbGgAwIBAgIRANhWCxxLoAmvxs3mtkIfoEYwCgYIKoZIzj0EAwIwaTEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRcwFQYDVQQDEw5jYS5leGFt +cGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBaMFYxCzAJBgNV +BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp +c2NvMRowGAYDVQQDDBFBZG1pbkBleGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqG +SM49AwEHA0IABFIL82i8Lw23GklPO3dhd7UonwbZ6XYQ0hX16TKDoEiF7eu7OfAF +WksVqGWZlUrak2F7lfASQF4dn8WDB+fvJXujTTBLMA4GA1UdDwEB/wQEAwIHgDAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIAZVmJC+KXlZA95tpE8DtD/xJqg6aOmU +DvbGAeccLb5PMAoGCCqGSM49BAMCA0gAMEUCIQDotlD1UlpKYlQWWp80W0DvJhxZ +Q8QZm7vDTP9xDwgH/gIgWRivrcoL35yp8ACozfGVs4FVnJTxgBE/z3cIYO4dS/s= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/msp/tlscacerts/tlsca.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt new file mode 100644 index 00000000..b5dc05d5 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/ca.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICNTCCAdugAwIBAgIQD6M7kOzxEEewtNnTVjGu+TAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowbDELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xFDASBgNVBAoTC2V4YW1wbGUuY29tMRowGAYDVQQDExF0bHNjYS5leGFt +cGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAbjL4PFYBAgLbZpLicU +5WlhXT8hACnj8zLEZnWM9KRyemyKcksILSlfxhIbmxczutpic6XHLn7AZTxh4yM0 +H6yjXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNVHSUECDAGBgRVHSUAMA8GA1UdEwEB +/wQFMAMBAf8wKQYDVR0OBCIEIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S ++0r4MAoGCCqGSM49BAMCA0gAMEUCIQCKFQCwAHnPPYlQyxnzXdy3952c8DsJ66RM +rOi/4wQ8NQIgHaKvKS18GzgVqWKy0B+y7rcDAshKsttCbxAJumyZjIs= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt new file mode 100644 index 00000000..2d3eba11 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICKzCCAdKgAwIBAgIQDnBVSgj/w031TaF6zsUDkjAKBggqhkjOPQQDAjBsMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEUMBIGA1UEChMLZXhhbXBsZS5jb20xGjAYBgNVBAMTEXRsc2NhLmV4 +YW1wbGUuY29tMB4XDTE3MDkyNzA2Mzc0MFoXDTI3MDkyNTA2Mzc0MFowVjELMAkG +A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFu +Y2lzY28xGjAYBgNVBAMMEUFkbWluQGV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYI +KoZIzj0DAQcDQgAEuIgH+i6I78B5s35WLzf52pKq2lqPSxb1O2p0P5qxbPhouUHp +AuaGSUE+lA7rOEkhOgIS3Augfq973WRLSv8H16NsMGowDgYDVR0PAQH/BAQDAgWg +MB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAMBgNVHRMBAf8EAjAAMCsG +A1UdIwQkMCKAIJLR6kwL0PitqQcH6gwoESCvVGAFWk3rnFtfM18S+0r4MAoGCCqG +SM49BAMCA0cAMEQCIBlJHFWffEbo55UO9i1coa6o0940YOLzXMDb/hyRPyO/AiA8 +zm7S0giNChs+xYS6V0vfA/wh4HJVgDuGrvXHag4IMQ== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key new file mode 100644 index 00000000..de885c49 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/ordererOrganizations/example.com/users/Admin@example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgqeIIYAsjWCcMmRkp +C3C9hs0Q2opH7TbmrdrXoZJj/LGhRANCAAS4iAf6LojvwHmzflYvN/nakqraWo9L +FvU7anQ/mrFs+Gi5QekC5oZJQT6UDus4SSE6AhLcC6B+r3vdZEtK/wfX +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk new file mode 100644 index 00000000..0a76b1d6 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/6de61549b4ef9382e6791f3dbc0f4b9e3b1c5341edc23fc8fbbdecd2e4b0e0d2_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQghIfmhCzLHkJqLBrp +ZD16VLNqPxH9Dpdr7IRK/3I79wKhRANCAATF5TnbRZU9YBnAYy7zkYlWZpLx3eyL +r16b+nnFgwajBCQWkoyls5fDTnMB9K4gdHQJvv/Cu9pWpKZXTVVl9onJ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk new file mode 100644 index 00000000..fa645576 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/keystore/13f3b8e66cb171d3afc3382ff82e01aad20716730fe07728ebc111bb37b1ec69_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgqWPbCN4RHdB5tr8x +Ij4IT03vyzFZr0osDrvgJWQE+mShRANCAARBeheIf6n/DYsdMK/J0ON8PqOJSk98 +fwA51/eIg0joCJj9rLBTU0/iYeSemqwpQNWrhp3jH1C/LEBgfZCkMlwx +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem new file mode 100644 index 00000000..a6289469 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/signcerts/peer0.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQRv6BL/u3L+PhJ1aSrRZPnzAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQXoXiH+p/w2LHTCvydDjfD6jiUpPfH8A +Odf3iINI6AiY/aywU1NP4mHknpqsKUDVq4ad4x9QvyxAYH2QpDJcMaNNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgYahj3le0 +Jc8KI9AHz+jOn3NjIywfp9JdC6pnQzETZQACIHV/+u7hDb3ytzLgjkxnqHUpLBhv +RkzctwF1AVEl11AM +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt new file mode 100644 index 00000000..c887f2fd --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQfHsr/8TSwM4bk0kgS5u/0jAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/ZORGlh6kSbpdAn0LfZfvC/pJYaO +RCSrPvL1A6b1/Qnwe+BLO9d1EfiwyZhcEReTfr18Bnh2AeCLnL+uuVIy0KOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgpKm2JRN6LYLzW97fCH7jLi9irEE2 ++HLF4brsEmqFLrQwKAYDVR0RBCEwH4IWcGVlcjAub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjAwCgYIKoZIzj0EAwIDSAAwRQIhALqbj7LKlLTE6ER06UVEtVPjSPhKg7iu +KSc3eHMmtQGIAiAMMpP60aVgR3wZYTXqpbla8JZyK7x1oX/eUv0mW4WQZg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key new file mode 100644 index 00000000..b80c94f7 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgd0S7NjRobJcDsPoo +kwP/IUjrQqKmIZHY7q1qke/YOWChRANCAAT9k5EaWHqRJul0CfQt9l+8L+klho5E +JKs+8vUDpvX9CfB74Es713UR+LDJmFwRF5N+vXwGeHYB4Iucv665UjLQ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk new file mode 100644 index 00000000..0f9c7902 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/keystore/57c66a831d616547a44b6365c159d1110710dc3464646cfe49c3b07a57c47b05_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgKfBefTd8K711TEBx +fuJNRG1LHMD9FQBQgKaOSmm3GoChRANCAAS2B4Zl80zNmngDiFDFBrHVQAHc6RXO +MMj4hZOkgHyMvLDpRD7Lq+UkEsMlG4FzNKpnHy9XwPawHZB5cC2tWR3I +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem new file mode 100644 index 00000000..31af4ab1 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/signcerts/peer1.org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRANYetlHEfJZZtMDqu35quOowCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABLYHhmXzTM2aeAOIUMUGsdVAAdzpFc4w +yPiFk6SAfIy8sOlEPsur5SQSwyUbgXM0qmcfL1fA9rAdkHlwLa1ZHcijTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIG3mFUm075OC +5nkfPbwPS547HFNB7cI/yPu97NLksODSMAoGCCqGSM49BAMCA0cAMEQCIA9ewJLN +2dWDwOB2smtJqOH5bskm8/LqlDeBNBYk70I3AiAnKAJoS/gZ+deb59eeqbi8Kv/k +5+Cr1DM0EPJ0zUqt5A== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt new file mode 100644 index 00000000..02da6a84 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQcqeN5foMMTg0eO+c6c/gGzAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7/7EMgj817wspCOGdZQ+6QBMXqt7 +KHoCirhvQtzxnT74opAgsnYMRpImF82fipkJAbyEcJ4xWR8oJ2GrtNr/6KOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgpKm2JRN6LYLzW97fCH7jLi9irEE2 ++HLF4brsEmqFLrQwKAYDVR0RBCEwH4IWcGVlcjEub3JnMS5leGFtcGxlLmNvbYIF +cGVlcjEwCgYIKoZIzj0EAwIDSAAwRQIhAO8Yc3MNSQJl3708UIuwk7owSsPYJVYy +xOvuKXLKh67ZAiBIe+QihTNuvlDJvFTCdsJcfgBBHPkQd5L8iQsfivGgrQ== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key new file mode 100644 index 00000000..fd620d94 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/peers/peer1.org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgOe2zWsHZMTGT1BKl +zywbCiql0z4CYsjVlgzbrakPYi6hRANCAATv/sQyCPzXvCykI4Z1lD7pAExeq3so +egKKuG9C3PGdPviikCCydgxGkiYXzZ+KmQkBvIRwnjFZHygnYau02v/o +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk new file mode 100644 index 00000000..5dd137f0 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/a4a9b625137a2d82f35bdedf087ee32e2f62ac4136f872c5e1baec126a852eb4_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgnTd8izocVAEJLbac +tWICw67lbMboThXvjWbCOiGaJ9ehRANCAAQucl1GqxUYcyj+UBt8ZGPxlXtaqo6t +33uAupgBAmHU0q0GBodXsIEb3L/Ca2T99y/CKjYpdJXN5JqAiqms3m9d +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/tlsca/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/admincerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk new file mode 100644 index 00000000..7e8b1b54 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/0970335d872b916ad956deda7af33acd4916980d3761629968e08cec1ba4f560_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgzS8FrIAa3qOjX73P +FjHDJvZwle0ScdR62UlRVmA3p0OhRANCAAR8mqog4zWWF85O/ncT4E1M12BpCFGH +rouoMnxgl9FIpF5BCbpSmzxI31Lbyzs4TMO46wnRyqROKBVwX3CUXJHL +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem new file mode 100644 index 00000000..ac79277f --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQJ24cvAJMZ5y+HIv0lVxj/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfJqqIOM1lhfOTv53E+BNTNdgaQhRh66L +qDJ8YJfRSKReQQm6Ups8SN9S28s7OEzDuOsJ0cqkTigVcF9wlFyRy6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgbeYVSbTvk4Lm +eR89vA9LnjscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgWQ2KKXUS +ewr2H2H+RWliT/ASiZUUrs1y0LiyjTkn14QCIDLNQPYPw+1FRQwt1CIQzVV5FTQI +NfI9pPRriogFAy7n +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt new file mode 100644 index 00000000..6f348cd3 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOjCCAeGgAwIBAgIQbK6FbU31KwALmK2Z45TmrTAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcxLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEd4/ZO57UEMCL6ThW5R8bi6kMsd3p +kzvPJqEXiswtC0ROG7YT0Ky0lyJuo5BF/nv/AKBGsT5ZHOZxypYs4ZARWaNsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIKSptiUTei2C81ve3wh+4y4vYqxBNvhy +xeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIDUpGUSRRy0RcZf3z7h3oAdNuK32 +uSLdZ0FqMGdYGcIIAiBde2WvxP3CmqLZSQEw2mR6IpRcJYap1cozSmXCwEmnfQ== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key new file mode 100644 index 00000000..4e421ee8 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgZQ+RJAXOT6aQ2t6R +LrrVc7E8EUeso32PJFusiutCz6mhRANCAAR3j9k7ntQQwIvpOFblHxuLqQyx3emT +O88moReKzC0LRE4bthPQrLSXIm6jkEX+e/8AoEaxPlkc5nHKlizhkBFZ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..15d23464 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/admincerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAOwkDt1N4pGtDlkFHJuqDD4wCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABJyxgiK73CXyfUfyUyhckIojRm5rB5vv +fA4rNq3b8E7rVhMUK103WYPL96EwyQY7KbXNMC1dBIwPWohDmh6aTamjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIG3mFUm075OC +5nkfPbwPS547HFNB7cI/yPu97NLksODSMAoGCCqGSM49BAMCA0cAMEQCIGYABqah +FIRnanjFKgFf8c9qYZgc2Ta/4W1tHwogF8CBAiAL0jCWG4IgJCsjEx7QcHH9rJ6F +K86H6HK+pAx9RAq5zw== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem new file mode 100644 index 00000000..a54cda79 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/cacerts/ca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQPvW4anFBfPsU0XRUt49FzTAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMS5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcxLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcxLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +xeU520WVPWAZwGMu85GJVmaS8d3si69em/p5xYMGowQkFpKMpbOXw05zAfSuIHR0 +Cb7/wrvaVqSmV01VZfaJyaNfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgbeYVSbTvk4LmeR89vA9L +njscU0Htwj/I+73s0uSw4NIwCgYIKoZIzj0EAwIDRwAwRAIgIIfJBFxc4AC6pc/0 +oaiVlFqS2y2d0NuFpfRelKuWnyMCIFB2gwJ8rUVvNLvTMvcWl2ycBEpslMnmUiJz +OXUDBZiy +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk new file mode 100644 index 00000000..71a50a98 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/keystore/a9d57e8f88b80a2056efc8b11cad8f4abc4c3d7a3a6b1ffb6417a4bdf966eb8b_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg1BSYBh9z9Ezju00p +nmxVx945igBfYvmIrAjKqedeo8ahRANCAAScsYIiu9wl8n1H8lMoXJCKI0Zuaweb +73wOKzat2/BO61YTFCtdN1mDy/ehMMkGOym1zTAtXQSMD1qIQ5oemk2p +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem new file mode 100644 index 00000000..15d23464 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/signcerts/User1@org1.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAOwkDt1N4pGtDlkFHJuqDD4wCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMS5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABJyxgiK73CXyfUfyUyhckIojRm5rB5vv +fA4rNq3b8E7rVhMUK103WYPL96EwyQY7KbXNMC1dBIwPWohDmh6aTamjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIG3mFUm075OC +5nkfPbwPS547HFNB7cI/yPu97NLksODSMAoGCCqGSM49BAMCA0cAMEQCIGYABqah +FIRnanjFKgFf8c9qYZgc2Ta/4W1tHwogF8CBAiAL0jCWG4IgJCsjEx7QcHH9rJ6F +K86H6HK+pAx9RAq5zw== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/msp/tlscacerts/tlsca.org1.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt new file mode 100644 index 00000000..ae1c6f17 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAfCgAwIBAgIRAPcErel6bDqCktlsWVDjEpQwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjB2MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEZMBcGA1UEChMQb3JnMS5leGFtcGxlLmNvbTEfMB0G +A1UEAxMWdGxzY2Eub3JnMS5leGFtcGxlLmNvbTBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABC5yXUarFRhzKP5QG3xkY/GVe1qqjq3fe4C6mAECYdTSrQYGh1ewgRvc +v8JrZP33L8IqNil0lc3kmoCKqazeb12jXzBdMA4GA1UdDwEB/wQEAwIBpjAPBgNV +HSUECDAGBgRVHSUAMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIKSptiUTei2C +81ve3wh+4y4vYqxBNvhyxeG67BJqhS60MAoGCCqGSM49BAMCA0cAMEQCIG2A3h+V +qi6vHJZBdLsSbRXo2JTbmzPH9EAhC86T8pveAiB+bndoDOCdHLcc/TibB4cJa2Mn +PzaRI2RLnGexXmrhcA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt new file mode 100644 index 00000000..a093adc8 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRAK+m8QW4ZVe8E0GHWIe1Y6EwCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzEuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzEuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMS5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABK4/kv7B+amCXRQMkt2lPsaaVc7H +pLOPN24yPlv2pCZIRxQ5ekjDufRwZzwyhD8XKTsUGSZ0wq1sUp2TH7HDWeyjbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCCkqbYlE3otgvNb3t8IfuMuL2KsQTb4 +csXhuuwSaoUutDAKBggqhkjOPQQDAgNHADBEAiBcMqQWvQrFTqRlS2fAr9cs4Iw/ +bXxvqlfD4+yp4KK+hAIgM8Dm0UcxmN0Do/CUs7O2BXbdm83P7nBgHRSrsHqqIZk= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key new file mode 100644 index 00000000..450e6263 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org1.example.com/users/User1@org1.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgcJu0Pjoi6cIYvbUF +VNPCoCnvKPw0iYnIYU2n5aT5KaOhRANCAASuP5L+wfmpgl0UDJLdpT7GmlXOx6Sz +jzduMj5b9qQmSEcUOXpIw7n0cGc8MoQ/Fyk7FBkmdMKtbFKdkx+xw1ns +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk new file mode 100644 index 00000000..2eea69f5 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/8aa021fc1d4876f829ffc4ae92ae172ad2b4452cf21c769cb4630bae6dcdd151_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWP5Agcauhf6fy5xu +ZvAK5MtFgaMpzQgxxWCGX0wRwnyhRANCAASoCn9eQZC0jiDp0D0yS8EmeisW+4XB +FtLz92MzCQOjJ90xDuQJLU0mWI0gQ2A7QFUUE29w7N3zmjRTd7AwvUZ/ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/ca/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk new file mode 100644 index 00000000..dd2b56ba --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/keystore/66647904c8057b9c1bdf0ca6b8083a25b7c1c0951752dff8b765ea8e51638d99_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggkPxt/gVSQd3pbXm +6/8Cau/Ne6OENP5XoDJPK6a3IoihRANCAARh1uKnuDcGCCchPAAFZOQKfCK35Nbb +yos613b25s1eZuNbPP4dDioScEKhysYJ6aH1dVsghDBtI939I9EkhbYP +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem new file mode 100644 index 00000000..b8c795ce --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/signcerts/peer0.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAb+gAwIBAgIQNY7sACQPpsjgEWEueGFt/zAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYdbip7g3BggnITwABWTkCnwit+TW28qL +Otd29ubNXmbjWzz+HQ4qEnBCocrGCemh9XVbIIQwbSPd/SPRJIW2D6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgiqAh/B1Idvgp +/8Sukq4XKtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDSAAwRQIhALA333hl +SlkK2WOjOrLnYCVJ5jCwSE+fPw6Z14aR3HzDAiACWwyCNHAXQhSDTLUtrrNcjvBL +J0FtUXOA+WqW+QAkOA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt new file mode 100644 index 00000000..03cfd5aa --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZjCCAg2gAwIBAgIQWGnXQt0AoR4REuCVbs6zlDAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMC5vcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjcqsHOVhT8r6Yq2/tUg/ykzSKEwd +J1k3iR24ayG0fz5glYJeyifTln8pCvylgq7pB8mAz1+zwsEM8B/xehLQLaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgu7waLAmy87xr+IaE3RHNALNUi7ng +XcqW0ao7Ol+BnGQwKAYDVR0RBCEwH4IWcGVlcjAub3JnMi5leGFtcGxlLmNvbYIF +cGVlcjAwCgYIKoZIzj0EAwIDRwAwRAIhAMLX9t5BiN+n6uiEluFNt7Lt6JTx+rI4 +oyGqAGLoSh0dAh89MT/FybJ9xaH4p2wNHP0UEC3EGbVlrxbMPYnRva3n +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key new file mode 100644 index 00000000..0dee39d2 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgaaAw2M+Jjd0kqcEh +X64tUhB+fZ4H+N95OaThJAxJhqihRANCAASNyqwc5WFPyvpirb+1SD/KTNIoTB0n +WTeJHbhrIbR/PmCVgl7KJ9OWfykK/KWCrukHyYDPX7PCwQzwH/F6EtAt +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk new file mode 100644 index 00000000..03ce86f1 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/keystore/68b2ada88c475d69baba7f77f69eb24dbfb23eac2a9224d72edaa52bb18aa8e8_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgSJpf6xdRTXN8dxGE +JnP4wVbl5ZCsY2LSyTYvs/uusfqhRANCAATn000+n8NNnEgsHmPu7GxPgaqN841V +INBjGCYRdFyBV/Amk7DKNfUp+8wB8xORpNz0aE3FwyhJk79Ew6SEKvU5 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem new file mode 100644 index 00000000..c78d2bda --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/signcerts/peer1.org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRALIyFgGGfzpgc2/oWpTB1NgwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAxMWcGVlcjEub3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABOfTTT6fw02cSCweY+7sbE+Bqo3zjVUg +0GMYJhF0XIFX8CaTsMo19Sn7zAHzE5Gk3PRoTcXDKEmTv0TDpIQq9TmjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIH/wwAH+ +FWdLXi39ZxczcrG8Cf+ZbpeSDiJu19ffaim3AiAnsV8jqkuWBbSoOm8gWCL/IN8B +aUD9Aef9n6eby2yVFw== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt new file mode 100644 index 00000000..a42cf44d --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICZzCCAg2gAwIBAgIQeVi4SFq4m/ie4/Pi0iO+cjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDExZwZWVyMS5vcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZn17CfxaLDKbSym6YFrtwb9fYKLN +2dn+ICAB6lz25CaeEKmMZHIrx7o26gC/mToWGQXEMeGtleOGup7OIZrzvaOBlzCB +lDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC +MAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgu7waLAmy87xr+IaE3RHNALNUi7ng +XcqW0ao7Ol+BnGQwKAYDVR0RBCEwH4IWcGVlcjEub3JnMi5leGFtcGxlLmNvbYIF +cGVlcjEwCgYIKoZIzj0EAwIDSAAwRQIhALhGjX8OX5WTBW77e3Z/SRKcNjLJVEVX +EMB1Qyh1uuRZAiBPdXICXzbFkvmlugmBkZM7brvdsbD9OBSZp5h9mT+5VA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key new file mode 100644 index 00000000..48635bd7 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/peers/peer1.org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgxqC3XS5MsKplVfle +c0BeE3IwtyKvA9i9Iw59jLkr12ChRANCAARmfXsJ/FosMptLKbpgWu3Bv19gos3Z +2f4gIAHqXPbkJp4QqYxkcivHujbqAL+ZOhYZBcQx4a2V44a6ns4hmvO9 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk new file mode 100644 index 00000000..f3748758 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/bbbc1a2c09b2f3bc6bf88684dd11cd00b3548bb9e05dca96d1aa3b3a5f819c64_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgcDQcSAwAgH6IyC7F +9qhL7lOoG/X7P91IS5lsPNmO0MChRANCAAS0E6yIFyZHDdDuzsU1FbykIYWAii2h +WHD5JuOnt3UtFWGA5VVp6X4qlpevZBEt9GbVNME4rzjUuwOqOnBfT+i/ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/tlsca/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/admincerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk new file mode 100644 index 00000000..acb3a6e9 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/keystore/f76a39628a2b9e5bbbdd97ba43743fe43c419724f5f3d462b97e75e914a85fd0_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgq2verE4fZu7kZm4/ +wuQvX+JBMH1muuAzSqIOha4BpZahRANCAARKHXoU8Z5N1ausFupTfV+0M8ppA2DP +13HqV0ZU4qDaxNar/3D6LgfgbEJ6i/hQoKY9Dxgvtjv482CTQwNVC1F6 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem new file mode 100644 index 00000000..530b3227 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/signcerts/Admin@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGTCCAcCgAwIBAgIRAN/KUV2he5NK+/bsO2rTf7YwCgYIKoZIzj0EAwIwczEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHDAaBgNVBAMTE2Nh +Lm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYzNzQw +WjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMN +U2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWQWRtaW5Ab3JnMi5leGFtcGxlLmNvbTBZ +MBMGByqGSM49AgEGCCqGSM49AwEHA0IABEodehTxnk3Vq6wW6lN9X7QzymkDYM/X +cepXRlTioNrE1qv/cPouB+BsQnqL+FCgpj0PGC+2O/jzYJNDA1ULUXqjTTBLMA4G +A1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAIIqgIfwdSHb4 +Kf/ErpKuFyrStEUs8hx2nLRjC65tzdFRMAoGCCqGSM49BAMCA0cAMEQCIHq3yXkT +zMcKC7y33JREEJJbk50scrtYiFWCoDBeaQORAiBaKe9Hz+A3WSry8jDyvQeKXekZ +NmtEATWG5Vu4tPYZdg== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt new file mode 100644 index 00000000..d03d30f1 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOjCCAeGgAwIBAgIQDbX/9cHP/3v16UV4DGuliDAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZBZG1pbkBvcmcyLmV4YW1wbGUuY29t +MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEli72eW9spinfvIqW/DlMTrODFUnL +Dy9cVk4jNqLLQpVlKr8LEsOry++Q5oMGxJUqF/RcuqwvObhbO00iXZ7FXaNsMGow +DgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAM +BgNVHRMBAf8EAjAAMCsGA1UdIwQkMCKAILu8GiwJsvO8a/iGhN0RzQCzVIu54F3K +ltGqOzpfgZxkMAoGCCqGSM49BAMCA0cAMEQCIGz8cqx3zSJQ3s4J6KFZmbl4t/3t +TdhairGVxp7wkoFtAiAW8ZRGIhai5hLQP5WipTKhAvQ4pJgfKKv+x5qsFhd8LQ== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key new file mode 100644 index 00000000..aecfed0b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg4MzqB6RP8kfnxqd3 +UniPmiguvOOx49lZN0P/2Ci2WyChRANCAASWLvZ5b2ymKd+8ipb8OUxOs4MVScsP +L1xWTiM2ostClWUqvwsSw6vL75DmgwbElSoX9Fy6rC85uFs7TSJdnsVd +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..03390dbd --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/admincerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQPjxSaySzMl8OI6d/d9EQ8TAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAj0c26ysDXfaGNv0ULagAHaMbAPMwdFC +LW0zDfgkXQej6NwAHHiSW2bO24k5AnLGpE6KXp93B4Gp7+C9KfHc/6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgiqAh/B1Idvgp +/8Sukq4XKtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgXby74wXo +69S4SigYb3jsH46PloCz5Sz4rpSp8wXBGF4CIAUW9VFS8WlxNOfOMmTlGq9/YZRx +fooT82J32YC5JRF/ +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem new file mode 100644 index 00000000..f4bd2e74 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/cacerts/ca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICQjCCAemgAwIBAgIQN6qZ4KEZP2nsHBxZuPSbszAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MHMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMRwwGgYDVQQD +ExNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE +qAp/XkGQtI4g6dA9MkvBJnorFvuFwRbS8/djMwkDoyfdMQ7kCS1NJliNIENgO0BV +FBNvcOzd85o0U3ewML1Gf6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1UdJQQIMAYG +BFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgiqAh/B1Idvgp/8Sukq4X +KtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgDdiTnhN11o38AKPk +jqnP68uE6fKp3Fszl2KcHqA/JN8CIGcOzKdK0SAqhlymvrT65waMFb9lzYeDWqR6 +rUfJ9Qp8 +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk new file mode 100644 index 00000000..b3399c82 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/keystore/a6f8463bf425e69f8e515f272ee24ea432ad18bab787415babf4cd1bd37e2625_sk @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgJtQcYZnHkNkRyx1N +2mNogLIgN9tiYZanUzSwb7MIJXOhRANCAAQCPRzbrKwNd9oY2/RQtqAAdoxsA8zB +0UItbTMN+CRdB6Po3AAceJJbZs7biTkCcsakTopen3cHganv4L0p8dz/ +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem new file mode 100644 index 00000000..03390dbd --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/signcerts/User1@org2.example.com-cert.pem @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICGDCCAb+gAwIBAgIQPjxSaySzMl8OI6d/d9EQ8TAKBggqhkjOPQQDAjBzMQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEcMBoGA1UEAxMTY2Eu +b3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3NDBa +MFsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T +YW4gRnJhbmNpc2NvMR8wHQYDVQQDDBZVc2VyMUBvcmcyLmV4YW1wbGUuY29tMFkw +EwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAj0c26ysDXfaGNv0ULagAHaMbAPMwdFC +LW0zDfgkXQej6NwAHHiSW2bO24k5AnLGpE6KXp93B4Gp7+C9KfHc/6NNMEswDgYD +VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwKwYDVR0jBCQwIoAgiqAh/B1Idvgp +/8Sukq4XKtK0RSzyHHactGMLrm3N0VEwCgYIKoZIzj0EAwIDRwAwRAIgXby74wXo +69S4SigYb3jsH46PloCz5Sz4rpSp8wXBGF4CIAUW9VFS8WlxNOfOMmTlGq9/YZRx +fooT82J32YC5JRF/ +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/msp/tlscacerts/tlsca.org2.example.com-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt new file mode 100644 index 00000000..7b6aed3b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/ca.crt @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSTCCAe+gAwIBAgIQSTc0+tixMH2d2L8MI/6XzjAKBggqhkjOPQQDAjB2MQsw +CQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZy +YW5jaXNjbzEZMBcGA1UEChMQb3JnMi5leGFtcGxlLmNvbTEfMB0GA1UEAxMWdGxz +Y2Eub3JnMi5leGFtcGxlLmNvbTAeFw0xNzA5MjcwNjM3NDBaFw0yNzA5MjUwNjM3 +NDBaMHYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQH +Ew1TYW4gRnJhbmNpc2NvMRkwFwYDVQQKExBvcmcyLmV4YW1wbGUuY29tMR8wHQYD +VQQDExZ0bHNjYS5vcmcyLmV4YW1wbGUuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0D +AQcDQgAEtBOsiBcmRw3Q7s7FNRW8pCGFgIotoVhw+Sbjp7d1LRVhgOVVael+KpaX +r2QRLfRm1TTBOK841LsDqjpwX0/ov6NfMF0wDgYDVR0PAQH/BAQDAgGmMA8GA1Ud +JQQIMAYGBFUdJQAwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgu7waLAmy87xr ++IaE3RHNALNUi7ngXcqW0ao7Ol+BnGQwCgYIKoZIzj0EAwIDSAAwRQIhAJTEu1jJ +a3ceq0cZRwZys3/YXMiviUJ9gI9dCTL6hCrpAiBsA4AipBZlf6Uu4eO6C/0x+ghc +pCtryvR4THlZUGjmpA== +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt new file mode 100644 index 00000000..e4237493 --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICOzCCAeKgAwIBAgIRALwfZx1LADfmoosxXk+jB1swCgYIKoZIzj0EAwIwdjEL +MAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBG +cmFuY2lzY28xGTAXBgNVBAoTEG9yZzIuZXhhbXBsZS5jb20xHzAdBgNVBAMTFnRs +c2NhLm9yZzIuZXhhbXBsZS5jb20wHhcNMTcwOTI3MDYzNzQwWhcNMjcwOTI1MDYz +NzQwWjBbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UE +BxMNU2FuIEZyYW5jaXNjbzEfMB0GA1UEAwwWVXNlcjFAb3JnMi5leGFtcGxlLmNv +bTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGArlNZA6tXqh8KOD5npWi5JRcl5 +L0RYfQT7Kos1IRuMyAG6WLSiQJsLFJtB1Jt4E17MDA7tDguKj6DZf0ci4zyjbDBq +MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw +DAYDVR0TAQH/BAIwADArBgNVHSMEJDAigCC7vBosCbLzvGv4hoTdEc0As1SLueBd +ypbRqjs6X4GcZDAKBggqhkjOPQQDAgNHADBEAiBQN5uQaDykiyB0p519Txm6EFZf +vVeF4G+vhsApW75eAAIgAqjxjKkvD1dvcK7MEMQ2kZLDo7zyfjTJSUlGBryF57o= +-----END CERTIFICATE----- diff --git a/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key new file mode 100644 index 00000000..36185c7b --- /dev/null +++ b/hyperledger/dev/kafka/crypto-config/peerOrganizations/org2.example.com/users/User1@org2.example.com/tls/server.key @@ -0,0 +1,5 @@ +-----BEGIN PRIVATE KEY----- +MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgllOpasTquq5J45Af +rkxmJyBx5m1XIKuMUxc82SGZcT+hRANCAARgK5TWQOrV6ofCjg+Z6VouSUXJeS9E +WH0E+yqLNSEbjMgBuli0okCbCxSbQdSbeBNezAwO7Q4Lio+g2X9HIuM8 +-----END PRIVATE KEY----- diff --git a/hyperledger/dev/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go b/hyperledger/dev/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go new file mode 100644 index 00000000..53438066 --- /dev/null +++ b/hyperledger/dev/kafka/examples/chaincode/go/chaincode_example02/chaincode_example02.go @@ -0,0 +1,199 @@ +/* +Copyright IBM Corp. 2016 All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package main + +//WARNING - this chaincode's ID is hard-coded in chaincode_example04 to illustrate one way of +//calling chaincode from a chaincode. If this example is modified, chaincode_example04.go has +//to be modified as well with the new ID of chaincode_example02. +//chaincode_example05 show's how chaincode ID can be passed in as a parameter instead of +//hard-coding. + +import ( + "fmt" + "strconv" + + "github.com/hyperledger/fabric/core/chaincode/shim" + pb "github.com/hyperledger/fabric/protos/peer" +) + +// SimpleChaincode example simple Chaincode implementation +type SimpleChaincode struct { +} + +func (t *SimpleChaincode) Init(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Init") + _, args := stub.GetFunctionAndParameters() + var A, B string // Entities + var Aval, Bval int // Asset holdings + var err error + + if len(args) != 4 { + return shim.Error("Incorrect number of arguments. Expecting 4") + } + + // Initialize the chaincode + A = args[0] + Aval, err = strconv.Atoi(args[1]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + B = args[2] + Bval, err = strconv.Atoi(args[3]) + if err != nil { + return shim.Error("Expecting integer value for asset holding") + } + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +func (t *SimpleChaincode) Invoke(stub shim.ChaincodeStubInterface) pb.Response { + fmt.Println("ex02 Invoke") + function, args := stub.GetFunctionAndParameters() + if function == "invoke" { + // Make payment of X units from A to B + return t.invoke(stub, args) + } else if function == "delete" { + // Deletes an entity from its state + return t.delete(stub, args) + } else if function == "query" { + // the old "Query" is now implemtned in invoke + return t.query(stub, args) + } + + return shim.Error("Invalid invoke function name. Expecting \"invoke\" \"delete\" \"query\"") +} + +// Transaction makes payment of X units from A to B +func (t *SimpleChaincode) invoke(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A, B string // Entities + var Aval, Bval int // Asset holdings + var X int // Transaction value + var err error + + if len(args) != 3 { + return shim.Error("Incorrect number of arguments. Expecting 3") + } + + A = args[0] + B = args[1] + + // Get the state from the ledger + // TODO: will be nice to have a GetAllState call to ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + return shim.Error("Failed to get state") + } + if Avalbytes == nil { + return shim.Error("Entity not found") + } + Aval, _ = strconv.Atoi(string(Avalbytes)) + + Bvalbytes, err := stub.GetState(B) + if err != nil { + return shim.Error("Failed to get state") + } + if Bvalbytes == nil { + return shim.Error("Entity not found") + } + Bval, _ = strconv.Atoi(string(Bvalbytes)) + + // Perform the execution + X, err = strconv.Atoi(args[2]) + if err != nil { + return shim.Error("Invalid transaction amount, expecting a integer value") + } + Aval = Aval - X + Bval = Bval + X + fmt.Printf("Aval = %d, Bval = %d\n", Aval, Bval) + + // Write the state back to the ledger + err = stub.PutState(A, []byte(strconv.Itoa(Aval))) + if err != nil { + return shim.Error(err.Error()) + } + + err = stub.PutState(B, []byte(strconv.Itoa(Bval))) + if err != nil { + return shim.Error(err.Error()) + } + + return shim.Success(nil) +} + +// Deletes an entity from state +func (t *SimpleChaincode) delete(stub shim.ChaincodeStubInterface, args []string) pb.Response { + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting 1") + } + + A := args[0] + + // Delete the key from the state in ledger + err := stub.DelState(A) + if err != nil { + return shim.Error("Failed to delete state") + } + + return shim.Success(nil) +} + +// query callback representing the query of a chaincode +func (t *SimpleChaincode) query(stub shim.ChaincodeStubInterface, args []string) pb.Response { + var A string // Entities + var err error + + if len(args) != 1 { + return shim.Error("Incorrect number of arguments. Expecting name of the person to query") + } + + A = args[0] + + // Get the state from the ledger + Avalbytes, err := stub.GetState(A) + if err != nil { + jsonResp := "{\"Error\":\"Failed to get state for " + A + "\"}" + return shim.Error(jsonResp) + } + + if Avalbytes == nil { + jsonResp := "{\"Error\":\"Nil amount for " + A + "\"}" + return shim.Error(jsonResp) + } + + jsonResp := "{\"Name\":\"" + A + "\",\"Amount\":\"" + string(Avalbytes) + "\"}" + fmt.Printf("Query Response:%s\n", jsonResp) + return shim.Success(Avalbytes) +} + +func main() { + err := shim.Start(new(SimpleChaincode)) + if err != nil { + fmt.Printf("Error starting Simple chaincode: %s", err) + } +} diff --git a/hyperledger/dev/kafka/gen_artifacts.sh b/hyperledger/dev/kafka/gen_artifacts.sh new file mode 100644 index 00000000..bd203ee9 --- /dev/null +++ b/hyperledger/dev/kafka/gen_artifacts.sh @@ -0,0 +1,58 @@ +#! /bin/bash + +GEN_IMG=yeasy/hyperledger-fabric:1.0.3 +GEN_CONTAINER=generator +CFG_DIR=/etc/hyperledger/fabric +TMP_DIR=/tmp +ARTIFACTS_DIR=$TMP_DIR/channel-artifacts +CHANNEL_NAME=businesschannel + +echo "Clean potential existing container $GEN_CONTAINER" +[ "$(docker ps -a | grep $GEN_CONTAINER)" ] && docker rm -f $GEN_CONTAINER + +echo "Remove existing artifacts" +rm -rf crypto-config channel-artifacts + +echo "Starting container $GEN_CONTAINER in background" +docker run \ + -d -it \ + --name $GEN_CONTAINER \ + $GEN_IMG bash -c 'while true; do sleep 20171001; done' + +echo "Create the $ARTIFACTS_DIR path" +docker exec -it $GEN_CONTAINER \ + mkdir -p $ARTIFACTS_DIR + +echo "Copy crypto-config.yaml and configtx.yaml into $GEN_CONTAINER:/tmp" +docker cp ./crypto-config.yaml $GEN_CONTAINER:$CFG_DIR +docker cp ./configtx.yaml $GEN_CONTAINER:$CFG_DIR + +echo "Generating crypto-config and export" +docker exec -it $GEN_CONTAINER \ + cryptogen generate --config=$CFG_DIR/crypto-config.yaml --output $TMP_DIR/crypto-config +echo "Export crypto-config to local" +docker cp $GEN_CONTAINER:$TMP_DIR/crypto-config ./ + +echo "Copy crypto-config to the config path" +docker exec -it $GEN_CONTAINER \ + cp -r $TMP_DIR/crypto-config $CFG_DIR + +echo "Generating orderer genesis block file" +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsOrdererGenesis -outputBlock $ARTIFACTS_DIR/orderer.genesis.block + +echo "Create the new application channel tx" +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsChannel -outputCreateChannelTx $ARTIFACTS_DIR/channel.tx -channelID ${CHANNEL_NAME} + +echo "Creating the anchor peer configuration tx" +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate $ARTIFACTS_DIR/Org1MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org1MSP +docker exec -it $GEN_CONTAINER \ + configtxgen -profile TwoOrgsChannel -outputAnchorPeersUpdate $ARTIFACTS_DIR/Org2MSPanchors.tx -channelID ${CHANNEL_NAME} -asOrg Org2MSP + +echo "Export $ARTIFACTS_DIR to local" +docker cp $GEN_CONTAINER:$ARTIFACTS_DIR ./ + +echo "Remove the container $GEN_CONTAINER" +docker rm -f $GEN_CONTAINER \ No newline at end of file diff --git a/hyperledger/dev/scripts/clean_env.sh b/hyperledger/dev/scripts/clean_env.sh new file mode 100644 index 00000000..855c347a --- /dev/null +++ b/hyperledger/dev/scripts/clean_env.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash + +# This script will remove all containers and hyperledger related images + +# Detecting whether can import the header file to render colorful cli output +# Need add choice option +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +echo_b "Clean up all containers..." +docker rm -f `docker ps -qa` + +echo_b "Clean up all chaincode-images..." +docker rmi -f $(docker images |grep 'dev-peer*'|awk '{print $3}') + +echo_b "Clean up all hyperledger related images..." +docker rmi $(docker images |grep 'hyperledger') + +echo_g "Env cleanup done!" \ No newline at end of file diff --git a/hyperledger/dev/scripts/download_images.sh b/hyperledger/dev/scripts/download_images.sh new file mode 100644 index 00000000..cb4599b0 --- /dev/null +++ b/hyperledger/dev/scripts/download_images.sh @@ -0,0 +1,73 @@ +#!/usr/bin/env bash + +# Detecting whether can import the header file to render colorful cli output +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +ARCH=x86_64 +BASEIMAGE_RELEASE=0.3.2 +BASE_VERSION=1.1.0 +PROJECT_VERSION=1.0.3 + +# For testing 1.0.0 images +IMG_TAG=1.0.3 + +echo_b "Downloading images from DockerHub... need a while" + +# TODO: we may need some checking on pulling result? +docker pull yeasy/hyperledger-fabric-base:$IMG_TAG \ + && docker pull yeasy/hyperledger-fabric-peer:$IMG_TAG \ + && docker pull yeasy/hyperledger-fabric-orderer:$IMG_TAG \ + && docker pull yeasy/hyperledger-fabric-ca:$IMG_TAG \ + && docker pull hyperledger/fabric-couchdb:$ARCH-$IMG_TAG \ + && docker pull hyperledger/fabric-kafka:$ARCH-$IMG_TAG \ + && docker pull hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG + +# Only useful for debugging +# docker pull yeasy/hyperledger-fabric + +echo_b "===Pulling fabric images from official repo... with tag = ${IMG_TAG}" +docker pull hyperledger/fabric-peer:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-tools:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-orderer:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-ca:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-ccenv:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-baseimage:$ARCH-$BASEIMAGE_RELEASE +docker pull hyperledger/fabric-baseos:$ARCH-$BASEIMAGE_RELEASE +docker pull hyperledger/fabric-couchdb:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-kafka:$ARCH-$IMG_TAG +docker pull hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG + +echo_g "Done, now can startup the network using docker-compose..." + +exit 0 + + +# following part is not necessary now. +echo_b "===Re-tagging images to *latest* tag" +docker tag hyperledger/fabric-peer:$ARCH-$IMG_TAG hyperledger/fabric-peer +docker tag hyperledger/fabric-tools:$ARCH-$IMG_TAG hyperledger/fabric-tools +docker tag hyperledger/fabric-orderer:$ARCH-$IMG_TAG hyperledger/fabric-orderer +docker tag hyperledger/fabric-ca:$ARCH-$IMG_TAG hyperledger/fabric-ca +docker tag hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG hyperledger/fabric-zookeeper +docker tag hyperledger/fabric-kafka:$ARCH-$IMG_TAG hyperledger/fabric-kafka +docker tag hyperledger/fabric-couchdb:$ARCH-$IMG_TAG hyperledger/fabric-couchdb + +echo_b "Rename images with official tags..." +docker tag yeasy/hyperledger-fabric-peer:$IMG_TAG hyperledger/fabric-peer \ + && docker tag yeasy/hyperledger-fabric-peer:$IMG_TAG hyperledger/fabric-tools \ + && docker tag yeasy/hyperledger-fabric-orderer:$IMG_TAG hyperledger/fabric-orderer \ + && docker tag yeasy/hyperledger-fabric-ca:$IMG_TAG hyperledger/fabric-ca \ + && docker tag yeasy/hyperledger-fabric-base:$IMG_TAG hyperledger/fabric-ccenv:$ARCH-$PROJECT_VERSION \ + && docker tag yeasy/hyperledger-fabric-base:$IMG_TAG hyperledger/fabric-baseos:$ARCH-$BASEIMAGE_RELEASE \ + && docker tag yeasy/hyperledger-fabric-base:$IMG_TAG hyperledger/fabric-baseimage:$ARCH-$BASEIMAGE_RELEASE \ + && docker tag hyperledger/fabric-zookeeper:$ARCH-$IMG_TAG hyperledger/fabric-zookeeper \ + && docker tag hyperledger/fabric-kafka:$ARCH-$IMG_TAG hyperledger/fabric-kafka + diff --git a/hyperledger/dev/scripts/func.sh b/hyperledger/dev/scripts/func.sh new file mode 100644 index 00000000..9abdc536 --- /dev/null +++ b/hyperledger/dev/scripts/func.sh @@ -0,0 +1,256 @@ +#!/bin/bash + +# Some useful functions for cc testing + +# Detecting whether can import the header file to render colorful cli output +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +CHANNEL_NAME="$1" +: ${CHANNEL_NAME:="businesschannel"} + +CC_NAME=mycc + +: ${TIMEOUT:="60"} +COUNTER=1 +MAX_RETRY=5 + +ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +verifyResult () { + if [ $1 -ne 0 ] ; then + echo_b "!!!!!!!!!!!!!!! "$2" !!!!!!!!!!!!!!!!" + echo_r "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +setGlobals () { + + if [ $1 -eq 0 -o $1 -eq 1 ] ; then + CORE_PEER_LOCALMSPID="Org1MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp + if [ $1 -eq 0 ]; then + CORE_PEER_ADDRESS=peer0.org1.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org1.example.com:7051 + fi + else + CORE_PEER_LOCALMSPID="Org2MSP" + CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp + if [ $1 -eq 2 ]; then + CORE_PEER_ADDRESS=peer0.org2.example.com:7051 + else + CORE_PEER_ADDRESS=peer1.org2.example.com:7051 + fi + fi + + env |grep CORE +} + +checkOSNAvailability() { + #Use orderer's MSP for fetching system channel config block + CORE_PEER_LOCALMSPID="OrdererMSP" + CORE_PEER_TLS_ROOTCERT_FILE=$ORDERER_CA + CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp + + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo "Attempting to fetch system channel 'testchainid' ...$(($(date +%s)-starttime)) secs" + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" >&log.txt + else + peer channel fetch 0 -o orderer.example.com:7050 -c "testchainid" --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Received block/ {print $NF}') + test "$VALUE" = "0" && let rc=0 + done + cat log.txt + verifyResult $rc "Ordering Service is not available, Please try again ..." + echo "===================== Ordering Service is up and running ===================== " + echo +} + +# Use peer0/org1 to create a channel +channelCreate() { + setGlobals 0 + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --timeout $TIMEOUT >&log.txt + else + peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA --timeout $TIMEOUT >&log.txt + fi + res=$? + cat log.txt + if [ $res -ne 0 -a $COUNTER -lt $MAX_RETRY ]; then + COUNTER=` expr $COUNTER + 1` + echo_b "PEER$1 failed to create the channel, Retry after 3 seconds" + sleep 3 + channelCreate + else + COUNTER=1 + fi + verifyResult $res "Channel creation failed" + echo_g "===================== Channel \"$CHANNEL_NAME\" is created successfully ===================== " + echo +} + +updateAnchorPeers() { + PEER=$1 + setGlobals $PEER + + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx >&log.txt + else + peer channel update -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/${CORE_PEER_LOCALMSPID}anchors.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Anchor peer update failed" + echo "===================== Anchor peers for org \"$CORE_PEER_LOCALMSPID\" on \"$CHANNEL_NAME\" is updated successfully ===================== " + sleep 5 + echo +} + +## Sometimes Join takes time hence RETRY atleast for 5 times +joinWithRetry () { + peer channel join -b $CHANNEL_NAME.block >&log.txt + res=$? + cat log.txt + if [ $res -ne 0 -a $COUNTER -lt $MAX_RETRY ]; then + COUNTER=` expr $COUNTER + 1` + echo_b "PEER$1 failed to join the channel, Retry after 2 seconds" + sleep 2 + joinWithRetry $1 + else + COUNTER=1 + fi + verifyResult $res "After $MAX_RETRY attempts, PEER$ch has failed to Join the Channel" +} + +# Join given (by default all) peers into the channel +channelJoin () { + peer_to_join=$(seq 0 3) + if [ $# -gt 0 ]; then + peer_to_join=$@ + fi + for i in $peer_to_join; do + setGlobals $i + joinWithRetry $i + echo_g "===================== PEER$i joined on the channel \"$CHANNEL_NAME\" ===================== " + sleep 2 + echo + done +} + +# Instantiate chaincode on specifized peer node +chaincodeInstantiate () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode instantiate -o orderer.example.com:7050 -C $CHANNEL_NAME -n $CC_NAME -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + else + peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n $CC_NAME -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Chaincode instantiation on PEER$PEER on channel '$CHANNEL_NAME' failed" + echo_g "===================== Chaincode Instantiation on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +chaincodeQuery () { + PEER=$1 + echo_b "===================== Querying on PEER$PEER on channel '$CHANNEL_NAME'... ===================== " + setGlobals $PEER + local rc=1 + local starttime=$(date +%s) + + # continue to poll + # we either get a successful response, or reach TIMEOUT + while test "$(($(date +%s)-starttime))" -lt "$TIMEOUT" -a $rc -ne 0 + do + sleep 3 + echo_b "Attempting to Query PEER$PEER ...$(($(date +%s)-starttime)) secs" + peer chaincode query -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["query","a"]}' >&log.txt + test $? -eq 0 && VALUE=$(cat log.txt | awk '/Query Result/ {print $NF}') + test "$VALUE" = "$2" && let rc=0 + done + echo + cat log.txt + if test $rc -eq 0 ; then + echo_g "===================== Query on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + else + echo_r "!!!!!!!!!!!!!!! Query result on PEER$PEER is INVALID !!!!!!!!!!!!!!!!" + echo_r "================== ERROR !!! FAILED to execute End-2-End Scenario ==================" + echo + exit 1 + fi +} + +chaincodeInvoke () { + PEER=$1 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode invoke -o orderer.example.com:7050 -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["invoke","a","b","10"]}' >&log.txt + else + peer chaincode invoke -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["invoke","a","b","10"]}' >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Invoke execution on PEER$PEER failed " + echo_g "===================== Invoke transaction on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + +# Install chaincode on specifized peer node +chaincodeInstall () { + PEER=$1 + VERSION=$2 + setGlobals $PEER + peer chaincode install -n $CC_NAME -v $VERSION -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 >&log.txt + res=$? + cat log.txt + verifyResult $res "Chaincode installation on remote peer PEER$PEER has Failed" + echo_g "===================== Chaincode is installed on remote peer PEER$PEER ===================== " + echo +} + +# chaincodeUpgrade 0 1.1 +chaincodeUpgrade () { + PEER=$1 + VERSION=$2 + setGlobals $PEER + # while 'peer chaincode' command can get the orderer endpoint from the peer (if join was successful), + # lets supply it directly as we know it using the "-o" option + if [ -z "$CORE_PEER_TLS_ENABLED" -o "$CORE_PEER_TLS_ENABLED" = "false" ]; then + peer chaincode upgrade -o orderer.example.com:7050 -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["upgrade","a","100","b","200"]}' -v $VERSION >&log.txt + else + peer chaincode upgrade -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n $CC_NAME -c '{"Args":["upgrade","a","100","b","200"]}' -v $VERSION >&log.txt + fi + res=$? + cat log.txt + verifyResult $res "Upgrade execution on PEER$PEER failed " + echo_g "===================== Upgrade transaction on PEER$PEER on channel '$CHANNEL_NAME' is successful ===================== " + echo +} + diff --git a/hyperledger/dev/scripts/header.sh b/hyperledger/dev/scripts/header.sh new file mode 100644 index 00000000..7620a87e --- /dev/null +++ b/hyperledger/dev/scripts/header.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +## DO NOT MODIFY THE FOLLOWING PART, UNLESS YOU KNOW WHAT IT MEANS ## +echo_r () { + [ $# -ne 1 ] && return 0 + echo -e "\033[31m$1\033[0m" +} +echo_g () { + [ $# -ne 1 ] && return 0 + echo -e "\033[32m$1\033[0m" +} +echo_y () { + [ $# -ne 1 ] && return 0 + echo -e "\033[33m$1\033[0m" +} +echo_b () { + [ $# -ne 1 ] && return 0 + echo -e "\033[34m$1\033[0m" +} \ No newline at end of file diff --git a/hyperledger/dev/scripts/initialize_all.sh b/hyperledger/dev/scripts/initialize_all.sh new file mode 100644 index 00000000..31845b4b --- /dev/null +++ b/hyperledger/dev/scripts/initialize_all.sh @@ -0,0 +1,58 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo +echo " ============================================== " +echo " ==========initialize businesschannel========== " +echo " ============================================== " +echo + +echo_b "Channel name : "$CHANNEL_NAME + +## Create channel +echo_b "Creating channel..." +channelCreate + +## Join all the peers to the channel +echo_b "Having all peers join the channel..." +channelJoin + + +## Set the anchor peers for each org in the channel +echo_b "Updating anchor peers for org1..." +updateAnchorPeers 0 +echo_b "Updating anchor peers for org2..." +updateAnchorPeers 2 + +## Install chaincode on all peers +echo_b "Installing chaincode on all 4 peers..." +chaincodeInstall 0 1.0 +chaincodeInstall 1 1.0 +chaincodeInstall 2 1.0 +chaincodeInstall 3 1.0 + +# Instantiate chaincode on all peers +# Instantiate can only be executed once on any node +echo_b "Instantiating chaincode on all 2 channels (once for each channel)..." +chaincodeInstantiate 0 +chaincodeInstantiate 2 + +echo +echo_g "===================== All GOOD, initialization completed ===================== " +echo + +echo +echo " _____ _ _ ____ " +echo "| ____| | \ | | | _ \ " +echo "| _| | \| | | | | |" +echo "| |___ | |\ | | |_| |" +echo "|_____| |_| \_| |____/ " +echo + +exit 0 diff --git a/hyperledger/dev/scripts/initialize_peer0.sh b/hyperledger/dev/scripts/initialize_peer0.sh new file mode 100644 index 00000000..4d9a571c --- /dev/null +++ b/hyperledger/dev/scripts/initialize_peer0.sh @@ -0,0 +1,61 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo +echo " ============================================== " +echo " ==========initialize businesschannel========== " +echo " ============================================== " +echo + +echo_b "Channel name : "$CHANNEL_NAME + +## Create channel +echo_b "Creating channel..." +channelCreate + +sleep 1 + +## Join all the peers to the channel +echo_b "Having peer0 join the channel..." +channelJoin 0 + +sleep 1 + +## Set the anchor peers for each org in the channel +echo_b "Updating anchor peers for peer0/org1..." +updateAnchorPeers 0 + +sleep 1 + +## Install chaincode on all peers +echo_b "Installing chaincode on peer0..." +chaincodeInstall 0 1.0 + +sleep 1 + +# Instantiate chaincode on all peers +# Instantiate can only be executed once on any node +echo_b "Instantiating chaincode on the channel..." +chaincodeInstantiate 0 + +sleep 1 + +echo +echo_g "===================== All GOOD, initialization completed ===================== " +echo + +echo +echo " _____ _ _ ____ " +echo "| ____| | \ | | | _ \ " +echo "| _| | \| | | | | |" +echo "| |___ | |\ | | |_| |" +echo "|_____| |_| \_| |____/ " +echo + +exit 0 diff --git a/hyperledger/dev/scripts/log.txt b/hyperledger/dev/scripts/log.txt new file mode 100644 index 00000000..be06fc3b --- /dev/null +++ b/hyperledger/dev/scripts/log.txt @@ -0,0 +1,19 @@ +2017-09-15 06:32:05.922 UTC [msp] GetLocalMSP -> DEBU 001 Returning existing local MSP +2017-09-15 06:32:05.922 UTC [msp] GetDefaultSigningIdentity -> DEBU 002 Obtaining default signing identity +2017-09-15 06:32:05.928 UTC [channelCmd] InitCmdFactory -> INFO 003 Endorser and orderer connections initialized +Error: genesis block file not found open businesschannel.block: no such file or directory +Usage: + peer channel join [flags] + +Flags: + -b, --blockpath string Path to file containing genesis block + +Global Flags: + --cafile string Path to file containing PEM-encoded trusted certificate(s) for the ordering endpoint + --logging-level string Default logging level and overrides, see core.yaml for full syntax + -o, --orderer string Ordering service endpoint + --ordererTLSHostnameOverride string The hostname override to use when validating the TLS connection to the orderer. + --test.coverprofile string Done (default "coverage.cov") + --tls Use TLS when communicating with the orderer endpoint + -v, --version Display current version of fabric peer server + diff --git a/hyperledger/dev/scripts/setup_Docker.sh b/hyperledger/dev/scripts/setup_Docker.sh new file mode 100644 index 00000000..7e5a534d --- /dev/null +++ b/hyperledger/dev/scripts/setup_Docker.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash + +# Install docker on Ubuntu/Debian system + +# Detecting whether can import the header file to render colorful cli output +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +if [ xroot != x$(whoami) ] +then + echo_r "You must run as root (Hint: sudo su)" + exit +fi + +apt-get update && apt-get install curl -y + +echo_b "Install Docker..." + +wget -qO- https://get.docker.com/ | sh +sudo service docker stop +nohup sudo docker daemon --api-cors-header="*" -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock& + +echo_g "Docker Installation Done" + +echo_b "Install Docker-Compose..." + +curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose +chmod +x /usr/local/bin/docker-compose +docker-compose --version + + +echo_g "Docker-Compose Installation Done" + diff --git a/hyperledger/dev/scripts/test_cc_all.sh b/hyperledger/dev/scripts/test_cc_all.sh new file mode 100644 index 00000000..7d28ee59 --- /dev/null +++ b/hyperledger/dev/scripts/test_cc_all.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo_b "Channel name : "$CHANNEL_NAME + +#Query on chaincode on Peer0/Org1 +echo_b "Querying chaincode on peer 3..." +chaincodeQuery 3 100 + +#Invoke on chaincode on Peer0/Org1 +echo_b "Sending invoke transaction (transfer 10) on org1/peer0..." +chaincodeInvoke 0 + +#Query on chaincode on Peer1/Org2, check if the result is 90 +echo_b "Querying chaincode on peer 1 and 3..." +chaincodeQuery 1 90 +chaincodeQuery 3 90 + +#Invoke on chaincode on Peer1/Org2 +echo_b "Sending invoke transaction on org2/peer3..." +chaincodeInvoke 3 + +#Query on chaincode on Peer1/Org2, check if the result is 80 +echo_b "Querying chaincode on all 4peers..." +chaincodeQuery 0 80 +chaincodeQuery 2 80 + +#Upgrade to new version +chaincodeInstall 0 1.1 +chaincodeInstall 1 1.1 +chaincodeInstall 2 1.1 +chaincodeInstall 3 1.1 + +chaincodeUpgrade 0 1.1 + +chaincodeQuery 0 100 +chaincodeQuery 3 100 + +echo +echo_g "===================== All GOOD, End-2-End execution completed ===================== " +echo + +exit 0 diff --git a/hyperledger/dev/scripts/test_cc_peer0.sh b/hyperledger/dev/scripts/test_cc_peer0.sh new file mode 100644 index 00000000..fa2a8038 --- /dev/null +++ b/hyperledger/dev/scripts/test_cc_peer0.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +# Importing useful functions for cc testing +if [ -f ./func.sh ]; then + source ./func.sh +elif [ -f scripts/func.sh ]; then + source scripts/func.sh +fi + +echo_b "Channel name : "$CHANNEL_NAME + +echo_b "====================Query the existing value of a====================================" +chaincodeQuery 0 100 + +sleep 1 + +echo_b "=====================Invoke a transaction to transfer 10 from a to b==================" +chaincodeInvoke 0 + +sleep 1 + +echo_b "=====================Check if the result of a is 90===================================" +chaincodeQuery 0 90 + +echo +echo_g "=====================All GOOD, MVE Test completed ===================== " +echo +exit 0 diff --git a/hyperledger/dev/scripts/test_lscc.sh b/hyperledger/dev/scripts/test_lscc.sh new file mode 100644 index 00000000..14b6b371 --- /dev/null +++ b/hyperledger/dev/scripts/test_lscc.sh @@ -0,0 +1,59 @@ +#!/usr/bin/env bash + +# This script will run some qscc queries for testing. + +# Detecting whether can import the header file to render colorful cli output +# Need add choice option +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + +ORDERER_CA=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem + +CHANNEL_NAME="$1" +: ${CHANNEL_NAME:="businesschannel"} + +echo_b "LSCC testing" + +# invoke required following params + #-o orderer.example.com:7050 \ + #--tls "true" \ + #--cafile ${ORDERER_CA} \ + +echo_b "Get id" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getid","businesschannel", "mycc"]}' + +echo_b "Get cc ChaincodeDeploymentSpec" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getdepspec","businesschannel", "mycc"]}' + +echo_b "Get cc bytes" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getccdata","businesschannel", "mycc"]}' + +echo_b "Get all chaincodes installed on the channel" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getinstalledchaincodes"]}' + +echo_b "Get all chaincodes instantiated on the channel" +peer chaincode query \ + -C "${CHANNEL_NAME}" \ + -n lscc \ + -c '{"Args":["getchaincodes"]}' + +echo_g "LSCC testing done!" \ No newline at end of file diff --git a/hyperledger/dev/scripts/test_qscc.sh b/hyperledger/dev/scripts/test_qscc.sh new file mode 100644 index 00000000..41bddd72 --- /dev/null +++ b/hyperledger/dev/scripts/test_qscc.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash + +# This script will run some qscc queries for testing. + +# Detecting whether can import the header file to render colorful cli output +# Need add choice option +if [ -f ./header.sh ]; then + source ./header.sh +elif [ -f scripts/header.sh ]; then + source scripts/header.sh +else + alias echo_r="echo" + alias echo_g="echo" + alias echo_b="echo" +fi + + +#CHANNEL_NAME="$1" +#: ${CHANNEL_NAME:="businesschannel"} + +echo_b "Qscc GetChainInfo" +peer chaincode query -C "" -n qscc -c '{"Args":["GetChainInfo","businesschannel"]}' + +echo_b "Qscc GetBlockByNumber 2" +peer chaincode query -C "" -n qscc -c '{"Args":["GetBlockByNumber","businesschannel","2"]}' + +echo_g "Qscc testing done!" \ No newline at end of file