對中本聰圖中的雜湊感到困惑
在中本聰的圖中:
考慮上面第一個事務塊中的雜湊塊:
該雜湊值是如何計算的?我看到來自所有者公鑰的箭頭和另一個箭頭,所以很混亂。來自所有者的公鑰的箭頭是否表示雜湊是用所有者的公鑰加密的?如果是,那麼另一個箭頭是什麼?在使用公鑰加密期間是否涉及?換句話說,在用公鑰加密之前,前一個交易的散列是否以某種方式與新的散列結合在一起?這裡到底發生了什麼?
謝謝你。
首先,交易不是區塊,區塊也不是交易。它們是兩種不同的資料結構,您似乎認為它們是同一回事。
那是怎麼計算的?
通過對事務執行 SHA256 加倍。
我看到一個箭頭從左邊傳來(我稍後會談到)——它似乎描繪了前一個交易塊的雜湊值。但是來自所有者 1 的公鑰的箭頭也讓我感到困惑。這張圖是說所有者 1 的公鑰與前一個塊的雜湊值一起被散列了嗎?這是比特幣實際發生的情況,還是有更多細節?
是的,公鑰是在交易中散列的數據的一部分。
‘希望在所描述的雜湊鏈中查看原始塊,因為該原始塊沒有前一個塊雜湊可供參考。那麼這是否意味著第一個塊的散列只是所有者公鑰的散列?
交易不僅僅是一個公鑰和一個輸出。但是該交易鏈中的第一筆交易沒有任何輸入,因此它沒有任何它引用的先前交易。此交易稱為 coinbase 交易或代幣生成交易。它是由礦工創造的,本質上是從虛無中產生比特幣。
是否有任何好的資源可以詳細介紹交易雜湊鏈中的第一個塊以及這些雜湊是如何計算的?
Bitcoin.org 的開發者指南解釋了比特幣的大部分細節。
來自所有者的公鑰的箭頭是否表示雜湊是用所有者的公鑰加密的?
不,這是說公鑰用於驗證所有者 1 的簽名。這個公鑰是在之前的交易中指定的。為了知道之前的交易是什麼,我們將它的散列放在目前交易(Owner 2 的交易)中。這樣我們就可以快速查找 Owner 1 的交易來檢索 Owner 1 的公鑰。
比特幣協議中沒有發生加密。沒有任何東西是加密的。
換句話說,在用公鑰加密之前,前一個交易的散列是否以某種方式與新的散列結合在一起?
是的,前一個交易的雜湊與目前交易中的其他數據相結合,產生目前交易的雜湊。
與其試圖了解中本聰在白皮書中提出的技術細節和圖表,不如嘗試根據可用的程式碼和其他文件來了解比特幣今天的實際運作方式。白皮書沒有描述比特幣的實際運作方式;它是在第一個版本發布前幾個月編寫的,並且在白皮書中的概念與這些概念的實際實現之間發生了許多細節變化。