雜湊演算法將任意長度的資料計算成固定長度摘要,常被稱為數位指紋。它用於檢查資料是否變化,但不能像加密那樣用金鑰還原原文。
區塊鏈大量使用雜湊函數來識別交易、連接區塊和彙整資料。雜湊只是基礎工具之一,帳本安全還依賴數位簽章、節點驗證與共識機制。

安全雜湊函數通常關注以下性質:
碰撞在數學上必然存在,因為無限多種輸入被映射到有限長度輸出。密碼學要求的是,在現實運算能力下難以找到可利用的碰撞,而非宣稱碰撞絕不會出現。
加密的目標是保密。資料經金鑰轉換後,授權方可以解密並恢復原文。雜湊的目標是產生摘要,正常情況下沒有解雜湊過程。
因此,把公開交易做雜湊不會讓交易內容自動變成祕密。攻擊者若能猜到原始輸入,仍可對猜測值重複計算並比較摘要。密碼儲存需要鹽值和專門的慢雜湊方案,不能簡單套用區塊鏈中的交易雜湊做法。
許多網路對序列化後的交易或區塊頭計算雜湊,產生交易雜湊或區塊雜湊。瀏覽器可用它定位紀錄,但它只是識別碼,不是資產憑證,也不能用來撤回交易。
新區塊通常儲存父區塊或前序區塊的雜湊。舊區塊內容變化後,其雜湊也會變化,後續區塊儲存的引用便不再相符。

這種結構讓改動容易被發現,但改寫困難還來自後續區塊、共識資源和其他節點儲存的副本。只在一台電腦上把檔案串成雜湊鏈,並不會自動獲得公有鏈的安全性。
默克爾樹會逐層合併交易雜湊,最終得到一個默克爾根。節點可以用一條較短的證明路徑驗證某筆交易是否被承諾在區塊中,而不必為這次證明傳輸全部交易。進一步可查看區塊結構深度解析。
在部分工作量證明網路中,礦工會反覆調整區塊頭欄位並計算雜湊,尋找低於目標值的結果。這裡的難度來自大量試算,與解密雜湊無關。
不是。比特幣的多個環節使用 SHA-256,以太坊常使用 Keccak-256,其他網路還可能採用不同演算法或組合。名稱相近也不代表實作完全相同,例如標準化 SHA3-256 與以太坊使用的 Keccak-256 不應混為一談。
演算法選擇還會隨用途變化。交易識別碼、地址產生、簽章訊息摘要和共識可能使用不同雜湊函數。閱讀協定時,應確認具體欄位、編碼方式與計算次數,而不是只記住一個演算法名稱。
核對檔案時,需要用相同演算法對本機檔案計算摘要,再與可信管道發布的值逐字元比較。任何空格、換行、編碼或檔案內容變化都會影響結果。
核對鏈上交易時,應選擇正確網路,把完整交易雜湊貼到對應的區塊鏈瀏覽器。不要只比較開頭和結尾幾個字元,也不要把地址、區塊雜湊與交易雜湊混用。
雜湊與簽章經常協作,但職責不同。數位簽章怎樣證明授權,可繼續閱讀公私鑰密碼學。若要把這些元件放回完整系統中理解,可參閱區塊鏈核心概念全解。
不能。相同摘要可有力說明檔案內容一致,卻不能證明發布者身分。若要驗證來源,還需要可信管道、數位簽章或憑證等身分機制。
正常實作下不會。交易雜湊來自交易資料,私鑰用於產生簽章,不會直接寫入雜湊。但私鑰產生或簽章演算法若實作錯誤,仍可能洩漏金鑰資訊。
不一定。輸出長度影響暴力搜尋與碰撞難度,但演算法設計、實作、使用方式和威脅模型同樣重要。已經出現實際弱點的舊演算法不應僅因輸出看起來很長就繼續使用。
一個頁面可能同時顯示交易雜湊、區塊雜湊、父區塊雜湊、合約事件主題或內部資料摘要。它們對不同物件計算,必須結合欄位名稱判斷用途。


