Blockchain
查詢區塊鏈:參考“txin”中的先前交易
我目前正在使用我在此處下載的 postgresql 數據庫,該數據庫具有以下架構,並且可能已使用 Bitcoin-ABE 進行了解析(我添加了一些索引和冗餘列):
現在我被困在嘗試在交易輸入和之前的輸出之間建立聯繫。根據屬於 sql 轉儲的API ,欄位prev_out引用“此輸入花費的輸出”。我的問題是,我在tx.hash中找不到任何txin.prev_out值。這種構想是正確的,還是我連接了錯誤的欄位?
僅供參考:如您所見,這兩個欄位都是bytea類型。我能夠使用函式encode(hash, ‘hex’)來獲取實際的交易雜湊並在 blockchain.info 中找到它。然而,對於欄位txin.prev_out ,在 blockchain.info中找不到雜湊。
txin.prev_out
包含內部字節順序的 txid。這是相反的tx.hash
您需要反轉字節。這是一個簡短的python程序,可以做到這一點:
import binascii hash = '32d7724fb0d244f50281a500f505818bb655bc029158fd59d477f4445a6ed64a' def reverse_hash(hash): hash = binascii.unhexlify(hash) hash = hash[::-1] return binascii.hexlify(hash) print reverse_hash(hash)