比特幣交易的結構定義
阿新 • • 發佈:2018-11-10
比特幣交易的結構體相關定義:
交易 、交易輸入、交易輸出
交易彙總包含交易ID,TxInPut 、TxOutPut
type Transaction struct { TId []byte TxInPut []byte TxOutPut []byte } type TxInPut struct { Hash []byte index int Script []byte } type TxOutPut struct { value int Script []byte }
在上面的結構中包含TxInput 中包含交易ID的雜湊值,角標和解鎖指令碼,ID的雜湊值是標識哪一筆交易,角標標識交易的output所在的索引,解鎖指令碼用於定位output。
TxOutPut 中包含交易的值和解鎖指令碼
交易首先用普通字串進行表示,在後期補充成完成的交易結構。 在交易的過程中引入挖礦獎勵,實現賬戶間的轉賬。
檢視指定地址的餘額,首先找到這個地址的UTXO所在的交易集合(即交易集合),根據交易集合找到地址所支配的UTXO,根據UTXO找到餘額。
coinbase沒有輸入的交易即為挖礦交易,這個挖礦交易只有一個輸入,一個輸出,並且輸入id為-1,索引為-1,解鎖指令碼任意。
轉賬:每一筆能夠支配的錢來源於上一個交易的輸出即為普通交易,每一筆交易的輸出都要一次性花完,如果有剩餘,轉給自己。