比特币交易数据中,交易数量、输入数量、输出数量等长度为1-9字节的变长,实际上分为:1、3、5、9四种长度等级,具体规则如下:
(1)交易数据长度第1个字节<0xFD(< 253),则使用这第1个字节表示交易长度,即该字节直接表示接下来交易的数据长度,它后面紧跟交易数据(交易长度使用了1个字节表示,该字节直接表示交易的长度);
(2)交易数据长度第1个字节=0xFD,则接下来的两个字节为交易数据的长度,然后是交易数据(交易长度使用了3个字节表示:第1个为标识0xFD,后2个为实际数据长度);
(3)交易数据长度第1个字节=0xFE,则接下来的四个字节表示交易数据的长度,然后是交易数据(交易长度使用了5个字节表示:第1个为标识0xFE,后4个为实际数据长度);
(4)交易数据长度第1个字节=0xFF,则接下来的八个字节为交易数据的长度,然后是交易数据(交易长度使用了9个字节表示:第1个为标识0xFF,后8个为实际数据长度)。
网友评论