区块链技术

coinbase rawtx 解析

2018-01-08  本文已影响62人  wolf4j

上一篇文章分享了普通 rawtx 的解析过程,接下来,我们一起看看coinbase 的 rawtx 该如何解析:

coinBase rawtx 解析

coinbase是没有输入的,但是这个字段还是没有,只是矿工在挖出来这个块的时候,添加了20-100个字节的块数据,如果不是coinbase,那么这个字段就是对上一个脚本输出的一个验证。

01000000               //4 byte version

00                     //1 byte marker
01                     //1 byte flag

01                     //1 byte tx_in count
0000000000000000000000000000000000000000000000000000000000000000      //32 byte hash
ffffffff               //4 byte index
50                     //1 byte script length(80 byte)

03
d3aa07      
174d696e656420627920416e74506f6f6c6851205a4dba3efabe6d6d4d3b08032c85f61efdd1681cbe49e72e3faae7fcd20d679e8cd1b392b47829e704000000000000004c42000091780300         //80 byte script

ffffffff              //4 byte sequence


02                    // 2 tx out

//first tx out
353d6a5e00000000      //15.84020789 btc
19                    //pk_script length(25字节)

//25 byte P2PKH 输出脚本
>>>>>>>>>>>>>>>>>>
76
a9
14
8349212dc27ce3ab4c5b29b85c4dec643d764b17
88
ac         
>>>>>>>>>>>>>>>>>>>

//second tx out
0000000000000000     //0 btc (SegWit commitment output)

26                   //pk_script length(38字节) 至少 38 byte
6a24aa21a9ed         //6 byte 固定
a02fb7425dc44e19e02bfa5a87cb02b4b092adc35f9f3d248894d957a4958742     //32 commit hash

01                  //只有一个iterm。   coinbase(是一种共识)
20                 //iterm的长度32 字节
0000000000000000000000000000000000000000000000000000000000000000     //32 byte witness

00000000  //4 byte lock_time

Commitment structure

   1-byte - OP_RETURN (0x6a)
   1-byte - Push the following 36 bytes (0x24)
   4-byte - Commitment header (0xaa21a9ed)
   32-byte - Commitment hash: Double-SHA256(witness root hash|witness reserved value)
  
   39th byte onwards: Optional data with no consensus meaning
  

继续解析 coinbase 80 字节的 pubKey 输入脚本

03                      //1 byte 表示有3个字节代表块高度
d3aa07                  //当前块的高度 (little endian)

//76 bytes             //剩下的没有实际含义,只有矿工自己知道,只要在100字节内就属于合法的范围。
174d696e656420627920416e74506f6f6c6851205a4dba3efabe6d6d4d3b08032c85f61efdd1681cbe49e72e3faae7fcd20d679e8cd1b392b47829e704000000000000004c42000091780300

本文由Copernicus 团队 冉小龙 总结,转载无需授权。

上一篇 下一篇

猜你喜欢

热点阅读