【问题标题】:How to apply custom business logic to the Endorsement policies on Hyperledger?如何将自定义业务逻辑应用于 Hyperledger 上的背书策略?
【发布时间】:2021-02-10 19:41:33
【问题描述】:

我刚开始学习 Hyperledger Fabric,我想知道有没有办法将业务逻辑应用于背书和交易承诺流程?

例如,如果背书策略设置为AND('Org1.member', 'Org2.member'),我能否以某种方式定义Org1.member 执行什么逻辑来将交易签署为有效? 该逻辑是否可以基于某些 State 对象值? (如object.NumberProp > 5

我遇到了Endorsement and Validation plugins article,但我不完全了解它是否会为此目的服务。

对于我对这项技术的任何误解,我们深表歉意。

【问题讨论】:

    标签: hyperledger-fabric blockchain hyperledger


    【解决方案1】:

    理论上可以从链码事务中提取调用者mspId,然后根据确定的mspId执行条件动作。这是 getCreator API 的一部分。

    听起来您要问的是链码级别的访问控制,在这里回答:Hyperledger Fabric: implementing chaincode level access control

    【讨论】:

      【解决方案2】:

      在 HLF 2.x 中,链码部署模型与 1.4.x 版本相比发生了显着变化。 可以让每个组织在其链代码中运行不同的业务逻辑,以便在背书时执行特定的验证。在 HLF 1.4.x 中,要求每个组织都运行完全相同的链代码。 所以回到你的问题: 对于特定的组织,您实际上并不需要基于提交时间的逻辑。您可以在您的组织的链代码中实现该特定逻辑,并在提交阶段之前使交易背书失败。 这样,您的组织就可以运行特定的业务验证,而不会将其内部结构暴露给网络上的其他组织。

      关于背书政策: 我不建议重写背书策略插件来实现自定义逻辑,除非有非常强烈的业务需求。我宁愿使用现有 HLF 链码背书流程的功能来实现所需的功能。 https://hyperledger-fabric.readthedocs.io/en/latest/endorsement-policies.html

      问候, 茨维坦

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-09-17
        • 1970-01-01
        • 1970-01-01
        • 2011-02-19
        • 2019-06-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多