Sha-3

Keccak/SHA-3 比 BLAKE2 有什麼優勢?

  • March 6, 2017

Keccak/SHA-3 是加密散列函式的新 NIST 標準。但是,它在軟體實現上比 BLAKE2 慢得多。Keccak 有補償優勢嗎?

(披露:我是 BLAKE2 的作者之一,但不是 BLAKE。)

以下是我在 Applied Cryptography and Network Security 2013 上關於此問題的展示文稿中的幻燈片。(注意:這些幻燈片中的性能數據已經過時了——現在 BLAKE2 比以前更快了。)

幻燈片包括 NIST 關於 SHA-3 競賽的第三輪報告的引述,其中顯示了 NIST 認為 BLAKE(不是 BLAKE2)與 Keccak 相比的一些優點和缺點。

這是我為幻燈片而寫的部落格文章。

NIST 給出的主要原因是 BLAKE 與 SHA-2 比 Keccak 更相似。在設計 SHA-3 競賽時,它的全部目的是提供一個新的雜湊函式,以防 SHA-2 被破壞,因此要求獲勝者與 SHA-2 不同是有意義的。然而現在,隨著近十年的研究和 SHA-2 看起來並不弱,類似於 SHA-2 的雜湊函式似乎並不壞,甚至可能是好的。

NIST 給出的另一個原因是我在幻燈片中省略了,那就是 Keccak 在 ASIC 實現中更有效。

如果您是一個大型組織,例如美國軍方或美國政府,他們將為您的項目建構特殊硬體,那麼這個原因可能更重要,但更靈活/通用的性能對我來說更重要。(請參閱 Adam Langley關於此主題的部落格文章。)

此外,硬體方面的一切都很快!請參閱此安全散列函式的硬體實現目錄。BLAKE 的 ASIC 實現可以處理大約 12.5 GB/s,而 Keccak 可以處理大約 44 GB/s。BLAKE2 的 ASIC 實現可能比 BLAKE 的類似實現快 40%,即大約 17.5 GB/s。

但即使是 12.5 GB/s,對於大多數安全散列函式的使用來說似乎也綽綽有餘。

引用自:https://crypto.stackexchange.com/questions/31674