如何在corda中仅存储节点特定的账外自定义数据?

2024-03-20

我使用 QueryableState 在 corda 中创建了自定义表。例如IOU 状态表。 我可以看到存储在这种表中的自定义信息。 但我观察到,如果甲方和乙方正在进行交易,那么这 自定义信息存储在这两个地方,例如欠条状态 表在节点 A 的分类账以及节点 B 的分类账中创建。 自定义信息存储在甲方和乙方的账本中。

我的问题是:-

如果某个交易正在从 PartyA 的节点处理,那么 我想存储部分交易数据,即自定义数据仅在 partyA 的 Ledger 中。*等级 。即仅限 A 部分的账外。

不应与当事人共享。

在简单的情况下,如何存储仅节点特定的账本自定义数据?

等待一些答复...

Thanks.


有多种方法可以实现这一目标:

  1. 根本不要使用 Corda!如果数据确实不在账本内,那么为什么还要使用 Corda?相反,请将其存储在单独的数据库中。当然,如果需要,您可以将其与账本数据“JOIN”,因为账本数据存储在 SQL 数据库中。
  2. 与第一点类似,除了您可以使用jdbcSession()的功能ServiceHub在节点的数据库中创建自定义表。可以从您的流程中轻松访问该表。
  3. 创建一个ContractState只有一个参与者的对象:想要存储数据的节点。我称其为“单边”状态,即只有一方存储的状态。

最重要的是,如果您不想与对方共享某些数据,那么永远不应该在另一方可能看到的 corda 状态对象或附件中披露这些数据。反而:

  • 在流程内部,您可以使用共享状态对象(例如 IOU)中封装的数据来派生私有数据
  • 或者,如果在流程开始时提供数据,则使用上述方法之一在本地存储私有数据
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在corda中仅存储节点特定的账外自定义数据? 的相关文章

  • 使用 CORDA 流创建原子事务的最佳方法

    我有一个用例 我需要将数据发送给多个交易对手 但各方需要彼此保持匿名 从交易对手处收回背书后 我需要提交整个交易 整个事务的原子性需要保持 使用 Flows 实现这一目标的最佳方法是什么 为此 您需要使用机密身份 机密身份在状态中由Anon
  • 公证人将交易从验证公证人更改为非验证公证人

    在进行从验证公证人到一组新的非验证公证人的公证变更交易时 新的一组非验证公证人如何了解以前的交易 他们只获得之前交易的哈希值还是整个交易依赖图 新的公证人根本不了解过去的交易 相反 我们有以下流程 带有哈希值的交易2772BE和公证人Not
  • 法律散文使用 Corda

    这是之前回答的后续问题法律散文乔尔提出的问题 根据要求创建了单独的问题 LegalProseReference uri foo bar com my legal doc html public class MyContract implem
  • Corda 中的法律散文

    有人能解释一下 Corda 中的法律散文是什么吗 我明白这是一个文档 用于解决冲突 但我没有找到任何信息它是什么样的 又是如何与智能合约联系起来的呢 A Contract类可以注释为 LegalProseReference注解 该注释将合同
  • 如何使用 VaultCustomQuery 查询父状态的嵌套集合中的字段

    我有一个一对多的关系 我试图在我的状态中添加对象 类的列表 IE 我的合同状态包含附件列表List
  • 向现有 Corda 网络添加新节点

    我正在尝试在 corda 网络中添加新节点和现有节点 我是作为文档做的 但无法实现 正如文档中所述 这足以创建一个包含 node conf 的文件夹吗 如果那么它在运行引导程序时不会更新文件夹中的数据和信息 但我可以通过添加 corda 和
  • 演示无法在 Windows 10 上运行

    我一直在尝试在装有 Windows 10 的本地计算机上运行 R3 Corda 提供的所有示例和演示 https docs corda net releases release V1 0 running the demos html htt
  • 运行服务器时 Corda ActiveMQConnectionTimedOutException

    我正在尝试在修改给定模板后运行 Corda 应用程序 运行节点后 我尝试运行模板服务器 以下是详细信息 Corda版本 4 0 ActiveMQ 在端口 8161 上运行 task runTemplateServer type JavaEx
  • 公证节点查询数据和普通节点查询交易

    我有一个关于查询数据的问题 Corda中有没有办法查询公证节点存储的所有数据以及如何查询其他节点中的交易 在 Corda 中 每个节点都有自己的数据库支持 该数据库仅存储节点知道的交易 出于隐私原因 节点无法查询其他节点的数据库 相反 您必
  • Corda:错误=org.hibernate.InstantiationException:没有实体的默认构造函数

    我遇到了一个问题 请帮忙 基于 M13 的 Corda 代码 我的架构代码主要用于定义架构来引用您的示例 object LegalContractSchemaV1 MappedSchema schemaFamily LegalContrac
  • 尝试部署节点时出错:“java.lang.IllegalArgumentException:无法识别的算法:1.2.840.10040.4.1”

    我开发了一个 Cordapp 并尝试将其作为节点部署到我的工作站 我按照指示操 作https docs corda net deploying a node html windows installing and running corda
  • runnodes 时发生非法反射访问操作

    我正在尝试运行我的 corda 节点 但我遇到了一个奇怪的问题 节点正在正确启动 正如您在日志中看到的那样 C Repositorio cordapp template kotlin build nodes gt runnodes log
  • 如何使用 Corda Vault Extension 创建自定义架构

    从 Corda 文档来看 我们可以在 Vault Extension 中拥有自定义架构 然而 Vault Extension 并没有太多明确性 它应该能够创建 管理与节点Vault数据库相关的自定义数据库模式 我们是否会在 Corda 的功
  • Corda:在一个流程中创建和使用相同的状态?

    是否可以在一个流中创建和使用相同的 corda 状态 或者在不同的子流中创建和使用它 我收到以下错误 Caused by net corda core flows NotaryException Unable to notarise tra
  • Corda 企业节点上的 PostgreSQL 引发关系错误

    在 docker 容器中使用 PostgreSQL 运行 corda enterprise 我已按照文档中的说明进行操作并设置了数据库架构 在数据库启动时 我看到以下错误 任何人都可以帮助那里发生了什么事吗 2018 10 11 06 57
  • 使用 H2 Web 界面浏览 Corda 数据库表显示同义词错误

    我按照以下说明进行操作this https docs corda net node database html node database浏览 corda 数据库的链接 但是 当我查询表时 出现以下错误 Error Table SYNONY
  • 在 Corda 中,节点的内置网络服务器上没有安装自定义 CorDapps。

    我定义了一个包含 API 的 CorDapp 但是 当我部署 CorDapp 并运行节点时 我在 Web 服务器 URL 上看到以下消息 No installed custom CorDapps 如何让节点的内置网络服务器加载我的 API
  • Corda 流的任一侧可以存在于单独的 Cordapp 中吗?

    如果一个节点想要在流的一侧执行自己的特定业务逻辑 如何实现 例如 如果一家公司想要调用内部公司 api 来验证传入的交易数据 它可以在流程中执行此操作吗 如果是这样 是否需要通用地编写流程 以便所有使用相同 Cordapp 和流程 的公司调
  • 在 Corda 中,哪些数据会发送到非验证公证服务?

    这个问题经常出现在对话中 当 Corda 交易被发送到非验证公证服务进行最终确定时 公证服务可以看到并推断出关于世界的什么 在将交易发送给非验证公证人之前 会按如下方式进行过滤 stx buildFilteredTransaction Pr
  • TX 未发送至公证服务的情况有哪些?

    交易未提交公证服务的情况有哪些 尽管进度跟踪器显示公证步骤 但我们注意到在某些情况下交易并未真正发送到公证服务 例如 没有时间窗口的状态创建 从 Corda 3 3 开始 如果 Tx 没有输入且没有时间窗口 则不会将其发送给公证人进行签名

随机推荐