假设我有以下事务:
- 涉及四方
- 每一方都希望使用机密身份
- 各方的机密身份应与其他三方共享
Corda的IdentitySyncFlow
只允许一方将其机密身份发送给其他方。它不允许一方将其他方的机密身份发送到节点。
如何在所有四方之间交换机密身份?
您是正确的,IdentitySyncFlow
只允许节点分发自己的机密身份。
目前,没有支持您描述的模式的库流。我为此提出了一个 JIRA:https://r3-cev.atlassian.net/browse/CORDA-954。
同时,您必须实现自己的流,该流在IdentitySyncFlow
(https://github.com/corda/corda/blob/release-V2/confidential-identities/src/main/kotlin/net/corda/confidential/IdentitySyncFlow.kt#L37(的第37行发出检查:
val identityCertificates: Map<AbstractParty, PartyAndCertificate?> = extractOurConfidentialIdentities()
此行可防止流将其他参与者的机密身份分发到事务。