CyberGlossary

暗号

SHA-3

別称: Keccak, FIPS 202

定義

Keccak のスポンジ構造に基づくハッシュ関数ファミリーで、SHA-2 とは構造的に異なる代替として NIST が標準化した。

SHA-3 は NIST が 2015 年に FIPS 202 として発行したハッシュ標準で、2007〜2012 年の公開コンペで選定された Keccak アルゴリズムに基づきます。SHA-2 と異なり、1600 ビットの置換を用いるスポンジ構造を採用しており、メッセージを吸収してからダイジェストを絞り出すため、長さ拡張攻撃に本質的に耐性があります。ファミリーには SHA3-224、SHA3-256、SHA3-384、SHA3-512 と可変長出力関数 SHAKE128/SHAKE256 が含まれます。既知の実用的弱点はなく、SHA-2 とのドメイン分離を要する場合や、KMAC、耐量子署名方式など可変長出力が必要な場面で推奨されます。

  • Ethereum はアドレスと Merkle ツリーに Keccak-256(SHA-3 の変種)を使用。
  • SHAKE128 は CRYSTALS-Dilithium で可変長出力関数として使用される。

関連用語