Raw-Transaction

nSequence 應該是多少字節?

  • November 10, 2019

當我查看以下原始交易時:https ://blockstream.info/tx/a175425ee2f3c01acc97ef32ab1082db14eaa94e5af4c54f02f3b01dec72558e?expand

020000000001018e5572ec1db0f3024fc5f45a4ea9ea14db8210ab32ef97cc1ac0f3e25e4275a100000000**00cf050000**01d2ddbc0000000000160014b82d832b2e5c0d80c771b06ce0da50fbccf12f3e0347304402204a54d94068512c22847cc07fa85f2b93feaf758411920a9b20ce9b85831e8aa5022005924cb82c331c5173e21477a4d8298eb25c0d967ace065b883455f2537c3d0a01004d632103f96d73ffe138690f032e97408af933a71782ad27a28df66a750b48c56b2d7fa96702cf05b275210304f332f50363cd01b679d9fb50fb8691fb0fb638737867bd02f06850c6191a2268ac00000000

當我手動解析它時,特別是在本節:a100000000**00cf050000**01...

a1是輸入 tx 的最後一個字節(小端),

00000000是輸出索引(4 字節),

最後01是 tx_out_count。

但這會使序列號**00cf050000**長於 4 個字節?我在這裡想念什麼?

序列號始終為 4 個字節,它是一個固定大小、小端序、32 位整數,使其始終為 4 個字節。

你缺少的是scriptSig. 總是以腳本的scriptSig大小開始(作為緊湊大小的無符號整數)。如果scriptSig是空的,那麼大小必須仍然存在才能說它是一個長度為 0 的字節。所以你的“序列”的第一個字節實際上是長度字節,scriptSig它表示它的長度為 0。

引用自:https://bitcoin.stackexchange.com/questions/91603