corda - 机密身份映射到众所周知的身份
问题描述
在corda中,为了隐藏交易中corda节点的身份,使用了机密身份。根据corda文档,由知名身份证书颁发的机密身份。
以下是与corda机密身份相关的几个问题:
如果交易包含机密密钥,公证人(服务身份)如何检查签名?
corda 如何将知名身份与机密身份联系起来?将机密身份与知名身份关联起来需要哪些额外信息?
如果使用 SwapIdentityFlow 在 PartyA 和 PartyB 之间执行具有机密身份的交易,现在在 PartyB 和 PartyC 之间执行相同的交易,PartyC 将解决所有依赖关系,包括来自 PartyB 的机密身份。根据交易提议者解决的步行交易链依赖关系,所以没有任何 IdentitySyncFlow 会起作用吗?
节点如何验证 SignedTransaction 上的签名?它仅基于公钥吗?
先感谢您。
解决方案
交易中所需的签名者被列为公钥,而不是
Party
对象。如果您想使用机密身份签署交易,您只需将该机密身份的公钥列为交易的必需签名者,而不是您的知名身份的公钥。那么验证签名不需要知道对应的身份。每个机密身份都使用证书链链接到相应的知名身份。但是,该证书链仅在需要知道的基础上分发,因此只有特定的节点才能将机密身份链接到众所周知的身份。
走链不需要将机密身份解析为众所周知的身份。因此,B 方和 C 方可以在 C 方不知道 A 方在链中较早参与的情况下进行交易。
是的。参见 1 的答案。
推荐阅读
- sql - SQL 查询返回根据 Where 语句过滤的不需要的数据
- postgresql - 有没有一种简单的方法可以用默认值替换 null ?
- angular - 如何创建依赖于另一个服务中的 HttpService 的类的实例?
- python - 使用 openpyxl (Python) 格式化列的最快方法
- java - Android Vitals 和异常处理
- c# - winForms 计时器 - 何时初始化和处置
- javascript - 在 IE/Edge 中将应用程序 css 应用于 React Portal(打开新窗口)
- ios - 用表格视图单元格 SWIFT 中的图像制作列表的正确方法
- asp.net-web-api2 - Web api 2 成功完成但返回服务器错误 500
- c - gcc 6.3 包含太多调试符号,尤其是 extern 全局声明