文章目录
简介
GoQuorum基于geth,在其基础上增加了一些联盟链需要的组件,主要包括以下几点:
- 使用Raft或者Istanbul BFT共识算法,而不是PoW。
- 加入了准入机制,而不是任何节点都可以加入网络。
- 修改了区块产生逻辑:使用
global public state root
替换了global state root
。(TODO) - 修改了区块验证逻辑:
State Patricia trie
分成了两个:public state trie
和private state trie
- 修改了区块验证逻辑以支持private transactions。
- 修改了创建transactions的逻辑,支持private transactions。
- 移除了gas的费用(但保留了gas)。
账户/密钥管理
用户提供公私钥。
账户地址是公钥keccak256
哈希的后20个byte。
隐私管理器使用公钥作为目标节点的标识(privateFor
字段)。
隐私
在GoQuorum中,隐私指对于private transactions,只对相关的参与者可见