1. 程式人生 > >比特幣交易的結構定義

比特幣交易的結構定義

比特幣交易的結構體相關定義:

交易 、交易輸入、交易輸出
交易彙總包含交易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,解鎖指令碼任意。

轉賬:每一筆能夠支配的錢來源於上一個交易的輸出即為普通交易,每一筆交易的輸出都要一次性花完,如果有剩餘,轉給自己。