一、技术大图

二、概念

1. BloomFilter

  1. bloom filter的特性是什么?

    1. bloom filter可以判断一个元素是否存储在某个位置中,以一定程度的错误率为代价,换来存储空间的极大节省。
  2. bloom filter的原理是什么?

    1. 对要存储的数据取k个hash,对应到k个位置,进行判断时同样进行k个hash,并判断k个位置是否一致,如果完全一致则代表数据存在。

    2. 上述原理决定在某些情况下会出现错误的数据被判断为存在的情况(概率很低)

2. Ommers

  1. 以太坊的Ommers是什么,有什么作用?

    1. 由于以太坊的出块速度较快,会形成一定的孤儿块(orphaned blocks)

    2. 孤儿块不会对主链高度有贡献,但对整个区块链的安全性有贡献,因此也需要一定的奖励

    3. Ommers区块指的是这类区块,对这类区块的奖励小些,但依然鼓励矿工生成这类区块

  2. Ommers在以太坊区块头是如何组织的?

    1. 见技术大图

    2. Hash+列表

3. 账户状态

  1. 以太坊的记账方式与比特币有什么不同?

    1. 采用的是传统的记账方式,比如支付宝的账户余额方式

    2. 通过账户的状态流转来记录交易

  2. 以太坊为什么要有外部账户和合约账户的区别?

    1. 外部账户类似于传统的比特币账户,只有转账功能

    2. 合约账户除了余额之外,还有合约代码,可以运行合约

    3. 合约的运行过程待添加

  3. 以太坊的状态树是怎么组织的?

三、智能合约实战