我正在尝试理解由超额同伴支持的交易的想法。
虽然Next-Consensus-Architecture-Proposal.md文档中描述的关于所需代言人集的描述非常简单,但我想知道在Invoke对链代码的调用期间,代言逻辑是否可以执行以下示例:
"if a value A is even and a value B is odd then return transaction_is_not_valid otherwise return transaction_is_valid "
?
(参考chaincode_example0x
)
我不确定我是否正确地解释了整个想法。
答案 0 :(得分:1)
来自Next-Consensus-Architecture-Proposal.md:
每个对等方都应在本地评估认可,以便对等方不需要与其他对等方进行交互,但所有正确的对等方都以相同的方式评估认可政策。
...
前一个示例条件中的桩号分配可以是静态的(在链码的元数据中固定)或动态的(例如,取决于链码的状态并在执行期间被修改)
=>禁止调用事务,但可以查询世界状态值。因此,上述逻辑可以表示为认可政策。但是,我认为认可策略不应该保持状态一致性逻辑,并且有效规则在链代码本身内部更好地实现(并且应该通过将事务标记为无效来防止违反它的方法调用)。