我有一个关于在同级上安装smart contact的问题。有一个Hyperledger fabric网络具有一个组织Org1和四个对等体。
peer0.org1.example.com
peer2.org1.example.com
peer3.org1.example.com
peer4.org1.example.com
在创建网络时,我们必须在每个对等点上或仅在一个对等点上安装智能合约。如果它安装在一个对等体上,那么其他对等体是否会在后台自动获取智能合约。在下面的代码中,我可以看到协定只安装在一个对等体上。
echo "Installing smart contract on peer0.org1.example.com"
docker exec \
-e CORE_PEER_LOCALMSPID=Org1MSP \
-e CORE_PEER_ADDRESS=peer0.org1.example.com:7051 \
-e CORE_PEER_MSPCONFIGPATH=${ORG1_MSPCONFIGPATH} \
-e CORE_PEER_TLS_ROOTCERT_FILE=${ORG1_TLS_ROOTCERT_FILE} \
cli \
peer chaincode install \
-n autokab \
-v 1.0 \
-p "$CC_SRC_PATH" \
-l "$CC_RUNTIME_LANGUAGE"发布于 2020-07-07 21:13:21
在更高的层面上-
链码应该只安装在拥有链码的成员的背书对等节点上,以保护链码逻辑的机密性不受网络上其他成员的影响。那些没有链码的成员不能成为链码事务的背书人;也就是说,他们不能执行链码。但是,他们仍然可以验证事务并将其提交到分类帐。
在您的示例中,只有peer0.org1.example.com将成为背书同级,并具有以下功能-
如果安装了智能合约,则每个具有智能合约的对等节点都可以成为背书对等节点。但是,要真正成为背书对等体,客户端应用程序必须使用对等体上的智能合约来生成数字签名的事务响应。
您可以查看Transaction Flow示例
要获得更多documentation
发布于 2020-07-08 10:37:31
如果您要调用或查询由同级托管的分类帐中的数据,则必须安装智能合约。
由于底层系统的原因,您的同行可以验证事务并将其提交到分类帐中,但对于从分类帐调用或查询数据,您需要安装智能合约。
https://stackoverflow.com/questions/62774447
复制相似问题