0.官网文档阅读

Quorum - Enterprise Ethereum Client

1.Quorum是什么?

  • 支持交易与合约隐私、基于以太坊的分布式账本协议;
  • Quorum主要特征:交易与合约隐私、多重基于投票的共识机制、网络和节点许可管理、更高的性能。

2.Quorum组件有哪些?

  • 逻辑架构图:Quorum入门1.0:Quorum-企业以太坊
  • Quorum节点:对于geth的轻量级分叉;
    Quorum节点相比于geth的改动:
    (1)共识为Raft或Istanbul BFT,而不是POW;
    (2)P2P层仅允许许可节点进行连接;
    (3)区块生成逻辑和区块头部的验证逻辑“全局公共状态根”取代了“全局状态根”;
    (4)其他。
  • 隐私管理器:交易管理器+Enclave;
    (1)交易管理器负责交易隐私:负责存储和访问加密的交易数据,与其他参与者交易管理器交换加密的payloads(有效载荷)-它通过Enclave使用密码学功能;
    (2)Enclave:大多数密码学工作,包括对称**生成、数据的加密和解密都由Enclave负责。
3.详细设计什么样?
  • 公共状态和私有状态:
    Quorum支持双重状态:
    (1)公共状态:网络中所有节点均可访问;
    (2)私有状态:仅由获得正确许可的节点可访问。
    二者的差距通过带有加密(私有)和非加密(公共)payload的交易进行实现;
    节点可以通过签名中的v值判断交易是否私有:私有交易的v值为37或38,公共交易的v值为27和28。
    交易模式:
    (1)允许的交易模式:
  1. S -> A -> B
  2. S -> (A) -> (B)
  3. S -> (A) -> [B -> C]

(2)不被允许的交易模式:

  1. (S) -> A
  2. (S) -> (A)

其中:S表示sender发送者;(X)表示私有;X表示公共;->表示方向;[]表示只读模式。

  • 状态验证:
    (1)区块链中包含公共状态根哈希;
    (2)私有状态中无法获取全局共识;
    (3)RPC方法eth_storageRoot(address[, blockNumber]) -> hash可以获取特定区块数(高度)给定地址存储根;
    (4)上述方法如果不给定区块高度就返回最新的区块,The storage root hash can be on or off chain compared by the parties involved.这句没懂。 猜测是说:存储的根哈希可以由参与各方进行链上和链下的比对。

相关文章: