Consensus
Coinbase 交易是否總是需要成為區塊中的第一筆交易?
另一個話題 中提到的使用者節奏:
“至少在早期的協議版本中,有可能將 coinbase 交易放在輸出的頂部。”
我以前從未聽說過這件事。早期 Coinbase 交易的放置是否更靈活,還是總是需要將其作為區塊中的第一筆交易?
這不是真的。v0.1.5(git 中最舊的標記版本)中的程式碼和程式碼註釋強制始終存在 coinbase 交易並且它必須始終是第一個。區塊中的其他地方不能有 coinbase 交易。Coinbase 交易被定義為具有一個輸入的交易,其先前的交易雜湊全為 0,其先前的輸出索引為 -1(因為它是一個無符號整數,因此變為 0xffffffff)。
您還可以找到一份原始 0.1.0 原始碼的副本,並在 main.cpp 中的相同位置找到相同的程式碼和註釋。