KeccakはSHA3コンテストの勝者です。 Keccakは高度にカスタマイズ可能であるため(おそらくセキュリティ/メモリ/時間/速度のトレードオフのため)、KeccakがSHA2と比較する方法について 論争 があるようです。 SHAKEは、SHA2のドロップイン交換での摩擦を減らすためのパラメーターのセットのようです
Keccak/SHAKEは、次の点でSHA2とどのように比較されますか。
これは非常に複雑なトピックであり、Keccakには多くの順列があるため、SHAKEの単純化により、特定のシナリオから柔軟性、セキュリティ、およびパフォーマンスがいくらか削除された可能性があると思います...
そうは言っても、SHAKE標準から逸脱して直接Keccakを使用する価値のあるシナリオは何ですか(より良いアナロジーがないため)。
NISTには、SHA-3を作成した理由と、SHA-2の欠点の詳細を説明した優れたドキュメントがあり、多くの質問に対処しているようです。具体的には、このドキュメントでは、設計の課題と、Keccakがこれらに対処する方法の両方について説明します。
http://csrc.nist.gov/groups/ST/hash/sha-3/documents/burr_dimacs2013_presentation.pdf
「スポンジ機能」を使用する主な利点の1つは、それらの継続的な入力です。スポンジ関数では、入力をビットのブロックとしてフィードするのではなく、1つずつフィードします。これにより、SHA3はSHA2とはまったく異なるものになり、比較はかなり時代遅れになります。
また、各ビットの後、Keccakはスポンジ関数内である種の置換を実行します。ただし、設計により、非常に多くの順列を実行する必要があります。スポンジ関数は、ビットを1つずつ浸し、いくつかのポイントの後、それらを1つずつ放出する必要があります。