从文档中,我了解到有一种方法可以允许在对等体和Oracle之间进行并行签名,但是在Corda文档的给定流程中没有看到它如何在功能上运行:
- 依赖于利率的交易的创建者要求当前的费率。如果他们愿意,他们可以在这一点上中止。
- 他们插入一个具有该速率的命令以及获取到事务中的时间。
- 然后,他们可能会将其与其他所有人一起发送到oracle进行签名。 oracle检查命令是否具有断言时间的正确数据,如果是,则进行签名。
Oracle首先没有提供该命令,因此在第一步中签署了该事务吗?我知道这里的目的是避免Oracle的第一个签名,但上述流程如何促进这一点呢?如果不通过Oracle,如何获得费率,甲骨文是否不必签署第一项规定?这是Oracle证明两次的情况吗?一旦向请求者提供事实,并且当请求者重新插入事实作为要由Oracle和其余对等体验证的命令时两次?
从Corda 3开始,无法并行请求签名。此功能可能会在将来的版本中添加。目前,您必须按特定顺序请求签名。
oracle不签署它提供的命令。代替:
此方法可防止签名的oracle数据跨事务重用。由于每个事务都有一个唯一的哈希值,因此需要为每个单独使用oracle数据请求签名,从而允许oracle按使用量收费并拥有可行的业务模型。