如何确定 corda 中的状态类型

how to decide state type in corda

我正在 Corda 中开发一个系统,在这个系统中,一个人可以将他的保险单详细信息放在 Corda 网络中,然后可以将其卖给另一个人。意味着保单一次属于一个人。我无法弄清楚应该使用哪种类型的州保险单?我应该如何在 Corda 中表示政策?

我面临两个问题:

1.) 使用哪种状态类型来创建策略,因为,如果将 Corda 制作成一个简单的 ContractState 那么我将如何将其仅添加到卖家的保险库中,因为首先卖家希望它仅在自己的保险库中可见,所以根据我的猜测,交易中应该只有一方是卖方本身。

2.) 如何将它发送给另一个人,因为现在交易涉及两方。

1- 您可以使用 linearState 作为 linearID 可用于引用状态(任何版本都可以从保险库中获取)并且您可以跟踪状态的演变直到您拥有它的版本你的金库。 从某种意义上说,它比使用合同状态更好,因为它只能被 stateRef 引用,并且您将能够只获取特定版本的状态。

2- 您必须使用 ownerOfPolicy 字段并可以设置分配给它的一方。此外,在参与者列表中,您可以 return 状态所有者。并使用(定义它)一个命令,比如 transfer 并在其中定义只有所有者才能进行此传输的规则。这样,一旦完成转移,它就会出现在(现在)所有者的保险库中,仅用于相同状态的后续进化步骤。