以太坊之三状态树
正在学习区块链,如果我哪里有错误希望大家指出,如果有任何想法也欢迎留言。这些笔记本身是在typora上写的,如果有显示不正确的敬请谅解。笔记本身也是给我自己写的,所以如果有侵权的请通知我,我立即删除。 3. 状态树 这个数据结构的目的很明显,为了保存每种账户的当前状态,这就和银行的账户很像了,比比特币的UTXO友好很多。 patricia trie 字典树有一点浪费空间,比如下面这个例子。 但是路径patricia trie进行路径压缩后。 因此, 当键值分布比较稀疏的时候路径压缩效果比较好 ,不是说那些公共的前缀多就好,而是说地址之间没有什么共同点,随机性很大。这正好符合以太坊的特点。其实不光是以太坊,比特币也是这样的,为了保证地址之间没有冲突,地址长度大是唯一的办法,而地址一长自然就稀疏了。 merkel patricia trie 这个的改变非常明显,就是用哈希指针代替普通指针。普通指针内存放的是数据的地址,哈希指针内存的是哈希值,具体的地址要由哈希值再次查询。 modify merkel patricia trie 实际中使用的MPT树是修改过的,具体的修改内容看下图 ![avatar][pic3-3] 一共有四个账户,就是右上角a7开头的那四个账户,其中第一个有45.0以太币,第二个有1.00WEI,以此类推。整棵树分为extension nod、branch