1 Star 3 Fork 2

杨武兵 / go-ethereum-code-analysis

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
a黄皮书里面出现的所有的符号索引.md 6.14 KB
一键复制 编辑 原始数据 按行查看 历史
PineArt 提交于 2018-06-11 20:44 . 格式与部分内容修改。

image

image是t+1时刻的状态(account trie)。

image是状态转换函数,也可以理解为执行引擎。

image 是transaction,一次交易。

image

image 是区块级别的状态转换函数。

image 是区块,由很多交易组成。

image 0号位置的交易。

image 是块终结状态转换函数(一个奖励挖矿者的函数)。

image Ether的标识。

image Ethereum中所用到的各种单位与Wei的换算关系(例如:一个Finney对应10^15个Wei)。

image machine-state

一些基本的规则

  • 对于大多数的函数来说,都用大写字母来标识。
  • 元组一般用大写字母来标识
  • 标量或者固定大小的字节数组都用小写字母标识。 比如 n 代表交易的nonce, 有一些可能有例外,比如δ代表 一个给定指令需要的堆栈数据的多少。
  • 变长的字节数组一般用加粗的小写字母。 比如 o 代表一个message call的输出数据。对于某些重要的也可能使用加粗的大写字母

image 字节序列 image 正整数 image 32字节长度的字节序列 image 小于 2^256 的正整数 [ ] 用于索引数组里面的对应元素 image 代表机器堆栈(machine's stack)的第一个对象 image 代表了机器内存(machine's memory)里面的前32个元素 image 一个占位符号,可以是任意字符代表任意对象

image 代表这个对象被修改后的值 image 中间状态 image 中间状态2 image image 如果前面的f代表了一个函数, 那么后面的f*代表了一个相似的函数,不过是对内部的元素依次执行f的一个函数。

image 代表了列表里面的最后一个元素 image 代表了列表里面的最后一个元素 image 求x的长度

image a代表某个地址,代表某个账号的nonce image banlance 余额 image storage trie 的 root hash image Code的hash。 如果code是b 那么KEC(b)===这个hash

image

image world state collapse function image

image 任意的 any image 并集 or image 交集 and

image Homestead

交易

image 交易的nonce image gasPrice image gasLimit image to image value

imageimageimage通过者三个值可以得到sender的地址

image 合约的初始化代码 image 方法调用的入参 image

区块头

imageParentHash imageOmmersHash imagebeneficiary矿工地址 imagestateRoot imagetransactionRoot imagereceiptRoot imagelogsBloom image难度 imagenumber高度 imagegasLimit imagegasUsed imagetimestamp imageextraData imagemixHash imagenonce

回执

image 第i个交易的receipt

image image 交易执行后的world-state image交易执行后区块总的gas使用量 image本交易执行产生的所有log的布隆过滤数据 image交易产生的日志集合

image Log entry Oa日志产生的地址, Ot topic Od 时间

交易执行

image substate image suicide set image log series image refund balance

image 交易过程中使用的总gas数量。 image 交易产生的日志。

image 执行代码的拥有者 image 交易的发起者 image gasPrice image inputdata image 引起代码执行的地址,如果是交易那么是交易的发起人 image value image 需要执行的代码 image 当前的区块头 image 当前的调用深度

image 执行模型 s suicide set; l 日志集合 o 输出 ; r refund

image 执行函数

image 当前可用的gas image 程序计数器 image 内存内容 image 内存中有效的word数量 image 堆栈内容

image w代表当前需要执行的指令

image 指令需要移除的堆栈对象个数 image 指令需要增加的堆栈对象个数

1
https://gitee.com/ywbrj042/go-ethereum-code-analysis.git
git@gitee.com:ywbrj042/go-ethereum-code-analysis.git
ywbrj042
go-ethereum-code-analysis
go-ethereum-code-analysis
master

搜索帮助