Security
為什麼任何 SHA-256 漏洞對挖礦都不重要?
維基百科列出了 SHA-256 中的幾個漏洞。據推測,它們中的任何一個都不能用於更快地探勘,或者已經完成了。為什麼這些漏洞不會導致挖礦出現問題?
這些攻擊針對的是“窮人”版本的 SHA-256,其中執行的輪數比真正的 SHA-256 少。它們對於破壞 SHA-256 本身毫無用處,對於比特幣挖礦中使用的雙 SHA-256 更是如此。
此外,對探勘最有用的是原像攻擊,這比碰撞攻擊要困難得多。您可以在 Wikipedia 上的表格中看到,提議的原像攻擊雖然比純暴力破解更快,但仍然非常複雜。
- Sha256 目前還沒有已知的漏洞。正如 Meni Rosenfeld 所說,上述攻擊只涉及 Sha256 的部分回合,為了獲得真正有效的攻擊,您必須完全打破所有回合(在 Sha256 的情況下為 64)。
- 即使 Sha256 被破壞,它仍然不會直接影響挖礦,因為比特幣使用雙重 Sha256雜湊:
Sha256d(x) = Sha256(Sha256(x))- 即使發現了對 Sha256 的完整原像攻擊,它仍然很可能不會影響比特幣,因為在探勘過程中幾乎沒有偽造輸入數據的自由。你可以在一些 txs 中隨機播放,改變隨機數,但其他的不多。原像攻擊用於構造輸入數據(以匹配所需的雜湊值)的任何方式都極不可能與比特幣塊的建構方式兼容。
這給了我們足夠的時間來遷移到另一個散列算法,如果正常的 Sha256 曾經被破壞的話。