duan00529 2017-09-23 19:58 采纳率: 100%
浏览 116

识别Hyperledger Fabric V1.0链码中的调用同级/组织

Is there any way to know the invoking peer and organisation inside golang chaincode for Hyperledger Fabric V1.0?

  • 写回答

4条回答 默认 最新

  • dongyao5186 2017-09-24 11:00

    Currently all API's available for chaincode is described in interface.go file. At the moment there is no API which will allow you to identify invoking peer and organization inside the chaincode. I think the main reason for that is that chaincode has to be agnostic to that type of information, since all ACL's managed by the peer and chaincode should stay agnostic to it, preserve deterministic behavior regardless of whoever invoking it and be stateless.

    If need you probably could try to leverage the identity of the client who created transaction proposal request, by using GetCreator API:

        // GetCreator returns `SignatureHeader.Creator` (e.g. an identity)
        // of the `SignedProposal`. This is the identity of the agent (or user)
        // submitting the transaction.
        GetCreator() ([]byte, error)

    And then to parse client certificate to learn about the client, also you can also consider to use transient fields to make client to put there relevant information which could be read by chaincode later:

    // GetTransient returns the `ChaincodeProposalPayload.Transient` field.
    // It is a map that contains data (e.g. cryptographic material)
    // that might be used to implement some form of application-level
    // confidentiality. The contents of this field, as prescribed by
    // `ChaincodeProposalPayload`, are supposed to always
    // be omitted from the transaction and excluded from the ledger.
    GetTransient() (map[string][]byte, error)
    本回答被题主选为最佳回答 , 对您是否有帮助呢?



  • ¥15 BDSBAS-B1C和B1C信号有什么不同
  • ¥15 在半圆平面内随机生成点坐标
  • ¥15 系统容量变化的几种多址方式TDMA, CDMA,FDMA,OFDMA 对比,应该给的是一个曲线 图,随着系统容量的增加,几种多址方式性能的对比 图,MATLAB程序仿真折线图
  • ¥15 用visual Studio 写c ++只运行上一个旧代码的运行结果是怎么回事
  • ¥15 系统容量变化的几种多址方式(TDMA,FDMA,OFDMA,CDMA)对比(相关搜索:曲线图)
  • ¥15 worldclim 历史及未来气候数据矫正
  • ¥15 ajax服务器不能下载
  • ¥15 运用c++和opencv实现二维码的识别和三维坐标的建立
  • ¥100 理想汽车的ADB为什么到了国外换了SIM就可以打开?
  • ¥15 k210烧入flash报错error:2005