首页 > 解决方案 > Corda - 避免发出重复的状态

问题描述

我对 Corda 很陌生,所以我可能错过了一些东西。
避免一方(或不同方)发布重复状态的最佳方法是什么?
例如,我想阻止发行包含
先前发行的卖方、买方、日期和价值的借据。

标签: javacorda

解决方案


  • 在 Corda 中,状态分布在需要知道的基础上;这意味着如果一方participant处于该状态,它将将该状态存储在其保险库中。
  • 考虑到这一点,您只能确保某个状态不会在“发行人”级别上重复。
  • 所以让我们说在你的借条中总是lender发行新的借条;因此,您的流程(由 发起lender)应首先查询 Vaultlender以查看是否有匹配的 IOU,如果有则抛出异常,否则发出新的 IOU。
  • 因此,如果您有一个带有lender = PartyAand的借据borrower = PartyB;PartyC 无法知道所提到的 IOU 存在(因为它不是participant那个状态)。
  • 这不是问题,因为您应该以流程的发起者成为lenderIOU 的方式编写流程;这样你就可以锁定事情了。
  • 每个人都会lender在为类似的借据签发借据之前检查他们的保险库。

推荐阅读