Skip to content

Commit

Permalink
Update [中文]-以太坊白皮书.md
Browse files Browse the repository at this point in the history
修正格式,缺少序号和换行。
Fixed format, missing serial number and line feed.
  • Loading branch information
Leo-Mu authored Jul 18, 2017
1 parent a04aaae commit bbc5561
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion [中文]-以太坊白皮书.md
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,7 @@ EVM代码的正式执行模型令人惊讶地简单。当以太坊虚拟机运
5.`S[0]`赋值为上一个区块的`STATE_ROOT`
6.`TX`赋值为区块的交易列表,一共有`n`笔交易。对于属于`0……n-1``i`,进行状态转换`S[i+1] = APPLY(S[i],TX[i])`。如果任何一个转换发生错误,或者程序执行到此处所花费的瓦斯(gas)超过了`GASLIMIT`,返回错误。
7.`S[n]``S_FINAL`赋值, 向矿工支付区块奖励。
8 检查`S-FINAL`是否与`STATE_ROOT`相同。如果相同,区块是有效的。否则,区块是无效的。
8. 检查`S-FINAL`是否与`STATE_ROOT`相同。如果相同,区块是有效的。否则,区块是无效的。

这一确认方法乍看起来似乎效率很低,因为它需要存储每个区块的所有状态,但是事实上以太坊的确认效率可以与比特币相提并论。原因是状态存储在树结构中(tree structure),每增加一个区块只需要改变树结构的一小部分。因此,一般而言,两个相邻的区块的树结构的大部分应该是相同的,因此存储一次数据,可以利用指针(即子树哈希)引用两次。一种被称为“帕特里夏树”(“Patricia Tree”)的树结构可以实现这一点,其中包括了对默克尔树概念的修改,不仅允许改变节点,而且还可以插入和删除节点。另外,因为所有的状态信息是最后一个区块的一部分,所以没有必要存储全部的区块历史-这一方法如果能够可以应用到比特币系统中,经计算可以对存储空间有10-20倍的节省。

Expand Down

0 comments on commit bbc5561

Please sign in to comment.