【问题标题】:Transaction hash generation in Hyperledger ComposerHyperledger Composer 中的交易哈希生成
【发布时间】:2019-02-09 04:23:15
【问题描述】:

Hyperledger Composer 调用 Fabric runtime 时,是全网提交后才产生的事务哈希。如果是这样,我们是否应该同步等待并跟踪来自传统系统的数据。就像在以太坊中一样,我们不能立即获得事务哈希并稍后跟踪提交状态。在 Hyperledger Fabric 中处理此问题的最佳方法是什么。

【问题讨论】:

    标签: hyperledger-fabric hyperledger hyperledger-composer


    【解决方案1】:

    是的,就像在以太坊中一样,我们也可以在 HL 结构中的智能合约/链码中获取交易哈希,无论后续交易是否提交都无关紧要。

    对于每个调用请求,都会生成一个事务ID,可以通过方法访问

    getTxId()

    (在 java 链码中,类似地可以在 go/node cc 中找到)返回该请求的字符串事务 id。

    参考Java chaincode getTxId

    【讨论】:

    • 感谢 Harshit,composer 正在合并提案并仅在提交事务时才响应。这必须来自 fabric sdk。
    • 好吧,我没有与 composer 合作过,但我可以告诉你,即使事务已提交或未处于世界状态,也会生成事务哈希