【发布时间】:2019-05-14 00:54:58
【问题描述】:
在同一交易的交易对手之间部分隐藏/屏蔽数据的最佳方法是什么?例如。爱丽丝想给鲍勃 5 美元,给查理 3 美元。这必须是一个单一的原子交易,但她不希望 Bob 和 Charlie 知道 谁 对方是谁,也不希望 承诺什么。
我的理解是,我会以公共数据作为附件形成交易,然后将交易的各个部分作为相应交易对手的单独输出,然后......?
从阅读文档看来,FilteredTransaction 似乎是这样做的方法,但我看不出如何将签名整理回要提交给 FinalityFlow 的事务中。
【问题讨论】:
-
使用过滤交易的问题是任何一方都不想签署它,因为他们不知道隐藏了什么。例如,您可以过滤掉显示所有现金都转移给您的状态。所以他们不能盲人签到。如果 tx 元数据可以以某种方式提供保证(例如,过滤掉的状态不属于您),这可能有效,但尚未实现。
-
@joel 感谢您的回答!我了解这种方法的信任问题,所以我的问题更多是在技术实施层面上。从您对stackoverflow.com/questions/48529134/… 的回答中使用 AnonymousParty 有帮助吗?
-
AnonymousParty 会隐藏参与者的身份,但不会隐藏交易的内容(例如,两笔现金被转移的事实)。
-
那么 AnonymousParty 隐私保护与 FilteredTransaction 保护隐私相结合?
-
但正如我上面提到的,我认为过滤交易不起作用,因为你怎么知道你部分签署的交易不涉及从你那里转移 100,000 美元给交易对手?跨度>
标签: corda