corda - 使用英特尔 SGX 的交易解决方案

标签 corda sgx

根据 Mike Hearn 的这篇文章:

https://www.corda.net/2017/06/corda-sgx-privacy-update/

在交易决议过程中,我理解在提议者A和乙方之间的交易中:

  1. 提议者A将交易发送给乙方
  2. 乙方需要交易链来验证交易,所以向甲方索取(交易历史)
  3. 在enclave和安全通道建立后,A方的enclave将加密后的交易历史发送给B方的enclave
  4. 乙方的 Enclave 解密并验证交易

从现在开始,假设乙方是与丙方进行新交易的提议者,使用来自先前交易的 UTXO。 由于丙方需要所有交易历史,它是如何运作的?在之前的交易中,一旦通过验证,交易链是否加密存储在乙方(用于后续交易)?

如果不清楚,请让我知道,以便更好地解释场景。

谢谢

最佳答案

是的——解析后的交易链以加密形式存储在乙方节点上。这是出于两个原因: 1. 乙方可能需要它用于 future 的交易解决方案——否则它将不得不再次下载大量的东西 2. 乙方稍后可能需要按照您的建议将链呈现给丙方

这是否意味着每个节点都必须运行 SGX?在我们最初的设计中,是的。但在未来,我们可能会研究 enclave 如何让非 SGX 节点相信交易链是合法的。

关于corda - 使用英特尔 SGX 的交易解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45337934/

相关文章:

docker - Corda Dockerform Gradle任务无法按预期工作

Corda 节点与 spring boot 客户端一起关闭

c++ - sgx_ecc256_create_key_pair 失败

azure - 'make' KDIR=/lib/modules/5.15.0-1023-azure/build....(错误退出状态 : 2)

Corda:如何检查已消耗或未消耗

testing - cordapp-template FlowTest progressTracker 中的失败/错误尚未启动

java - Corda jar 启动 : Address already in use: bind error

c++ - 如何在英特尔 SGX 中注册自定义异常?

c++ - 无法在硬件模式下创建 SGX 飞地 - "invalid launch token",即使文档将无效的启动 token 指定为第一个

c++ - 英特尔 SGX 的本地认证