Address

如果 SHA256 和/或 RIPEMD-160 被破壞,所有比特幣地址都會被洩露嗎?

  • November 18, 2014

如果沒有,還需要什麼來竊取所有人的所有資金並徹底破壞比特幣?

我敢打賭,有些人會說 ECSDA 為比特幣提供了額外的保護層。我反駁說 ECSDA 依賴於諸如 SHA256 之類的散列函式。所以我也會問這個問題:比特幣使用什麼樣的 ECSDA,如果 SHA256 被破壞,它是否仍然受到保護?

是的,我知道我在說明一個不太可能發生的情況,但我仍然相信我們應該知道會發生什麼。

如果您想提及與 SHA256 相關的其他雜湊函式,您可以。隨意解釋 RIPEMD-160 如何在 SHA256 漏洞利用時保護比特幣安全。

比特幣使用 SHA256,然後是 RIPEMD-160,我統稱為 HASH160。

好的雜湊有 4 個屬性:

  1. 很容易計算任何給定消息的雜湊值
  2. 生成具有給定雜湊的消息是不可行的
  3. 在不更改雜湊的情況下修改消息是不可行的
  4. 找到具有相同雜湊的兩條不同消息是不可行的

資料來源:維基百科

我們關心屬性 1、2 和 3。我們知道屬性 1 對於 HASH160 是正確的——我們可以對其進行基準測試。如果屬性 2 或 3 是錯誤的,那麼你可以竊取比特幣。不好。

腳本語言非常靈活,這是一件好事,可以讓人們切換到不同的地址類型,而不會強迫每個人升級。

這是目前的比特幣交易腳本:

OP_DUP OP_HASH160 09432ab39083b5098b6f09432ab39083b5098b6f OP_EQUALVERIFY OP_CHECKSIG

如果 HASH160 被破壞,情況可能會發生以下變化:

OP_DUP OP_HASH256 09432ab39083b5098b6f09432ab39083b5098b6f09432ab39083b5098b6f826496 OP_EQUALVERIFY OP_CHECKSIG

請注意,我們已將 HASH160 替換為 HASH256。或者,假設兩者都壞了:

<pubKey> OP_CHECKSIG

現在我們完全放棄散列函式並明確地放入 ECDSA 密鑰。然而,這將使比特幣地址大約有一百個字元長。

引用自:https://bitcoin.stackexchange.com/questions/8702