[m / 0] - [m / 0 / 0] / \ / [m / 0 / 1] [m] - [m / 1] \ ... [m / i] 另一方面,对于单独的一对密钥对,相比直接存储私钥,存储成 keystore 格式加上密码验证加密更加安全,存储也更加方便,可以参考以太坊提案 EIP2335 给出了相关建议。 名词解释哈希方法 HashTreeRoot HashTreeRoot 提供了将一个对象按一定格式构建默克尔树、并求得树的默克尔根值的方法。HashTreeRoot 可以将一个对象(bit、bytes、vector、list、containers 等等)的各个部分按序排列然后构建默克尔树,获得根值。具体规范参考:https://github.com/ethereum/eth2.0-specs/blob/dev/ssz/simple-serialize.md 具体来讲,在对 pubkey、withdrawal_credentials、amount、signature 求取 HashTreeRoot 时,会经历以下过程:
可以看到,Pack 会把值按照一定长度切割,如不够就用零字节补充,这样会得到一个个按序排列的 32 字节的数据块,也为接下来的 Merkleize 提供初始数据。
可以看到,Merkleize 是上一个步骤产生的数据块按照二叉树的方式从底部两两哈希求值再拼接,一层一层向上计算得到根值,所以 HashTreeRoot 本质上讲是数据按照一定长度排列,然后一层一层默克尔求值,直到获得最上层的根值。 探秘信标链(Beacon Chain)共识信标链是整个以太坊 2.0 的核心,它是一条与当前以太坊 PoW 链并行的一条独立链。它负责存储和维护验证者注册表,处理分片链和信标链之间的交联(Crosslink),以及完成信标链共识。想要了解信标链的共识过程,就需要了解最重要的几个概念:间隙(Slot)、时段(Epoch)、验证人(Validator)、⻅证消息(attestation)、验证人委员会 (Committee)、检查点(Checkpoint)、合理化(justified)、敲定的(Finalized)、Casper FFG (Casper, the Friendly Finality Gadget)、LMD GHOST 分叉规则。 (责任编辑:admin) |