下载此文档

以太坊源码分析实施报告.doc


文档分类:通信/电子 | 页数:约47页 举报非法文档有奖
1/47
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/47 下载此文档
文档列表 文档介绍
. .
. v 过该值那么交易失败;
Receipient: 交易的接收地址;
Amount: 从发送地址向接收地址转移的以太币数量;
Payload: 可选,在创立合约时表示合约代码,或者调用合约时调用参数;
V|R|S: secp256k1签名数据;
Hash: ,在转换为Json格式时用到;
. .
. v .
区块
一个区块包含了一系列的交易,矿工节点收集本地发起的及网络中其它节点播送的新交易,验证交易的有效性,然后将它们打包到一个原始区块中,最后通过挖矿得到一个数学机制的“工作量证明〞写到该区块,从而得到一个新的合法区块,播送到网络中,在其它矿工验证区块有效后添加到主链上。
区块的定义在core/types/ 中:
header: Block的核心,由后面给出其定义;
uncles: 叔块,以太坊对孤块〔发现晚但是合法的新块〕的处理和比特币的抛弃式处理不同,因为以太坊十几秒的出块间隔会导致大量的孤块,因此以太坊鼓励矿工引用孤块成为叔块并支付报酬,减少昂贵本钱的浪费,使得主链更重提升平安性,也缓解矿池中心化问题;
transactions: 区块打包的一批交易;
td: Total Difficulty,总难度值,主链是td值最大的链;
ReceivedAt: 记录块的接收时间;
ReceivedFrom: 记录块的发送peer;
Header的定义也在core/types/:
ParentHash: 父区块的哈希值,除了创世块以外每个区块都有且只有一个父区块;
UncleHash: ;
Coinbase: 挖出该区块的矿工地址,矿工的挖矿收益都是发给这个地址;
Root: “state trie〞的根节点的RLP哈希值。所有账户对象逐个插入一个Merkle-Patrica Trie〔MPT〕构造里形成一棵 “state trie〞;
TxHash: “tx trie〞的根节点的RLP哈希值。,形成一棵 〞tx trie〞;
ReceiptHash: “receipt trie〞的根节点的RLP哈希值。Block的每一笔交易执行完后会生成一个Receipt数组,这个数组中的所有Recipt被逐个插入一个MPT构造里,形成一棵 “receipt trie〞;
Bloom: Bloom过滤器,由Block中的所有交易收据中的log生成关于地址和topic的索引,用于快速判断指定的条件〔指定地址或指定的事件〕是否存在于一组的Log集合;
Difficulty: Block的难度值。由父块的难度值和时间戳计算得到;
Number: Block的序号,等于其父块Number+1;
GasLimit: Block的所有gas消耗的上限;
GasUsed: Block所有交易执行后实际消耗的gas总和;
Time: Block的创立时间;
Extra: 和该Block相关的任意字节数组;
MixDigest: 256位的哈希值,和Nonce一起用来证明该块持有有效的工作量证明;
Nonce: 64位的哈希值,和MixDigest一起用来证明该块持有有效的工作量证明;
区块链
,把所有区块按照这种有关系连接起来,便形成了一条从创世块到当前块的反向链表,即区块链。该区块链包含了所有的历史交易信息,且只有在共识机制下被矿工成认的合法区块才能被添加到链中,称为主链。如果有多个合法区块同时产生,但是因为网络延时问题被不同的矿工节点接收到添加到链上,便会出现分叉。以太坊使用
. .
. v .
“GHOST(Greedy Heaviest Ob

以太坊源码分析实施报告 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数47
  • 收藏数0 收藏
  • 顶次数0
  • 上传人tswng35
  • 文件大小227 KB
  • 时间2022-01-17