アルゴリズムとバリエーション | 出力長 (bits) | 内部状態長 (bits) | ブロック長 (bits) | 最大メッセージ長 (bits) | ラウンド数 | ビット演算 | セキュリティ強度 (bits) | パフォーマンスの例[2] (MiB/s) | |
---|---|---|---|---|---|---|---|---|---|
MD5 | 128 | 128 (4 × 32) | 512 | 264 − 1 | 64 | And, Xor, Rot, Add (mod 232), Or | <64(強衝突) | 335 | |
SHA-0 | 160 | 160 (5 × 32) | 512 | 264 − 1 | 80 | And, Xor, Rot, Add (mod 232), Or | <80(強衝突) | - | |
SHA-1 | 160 | 160 (5 × 32) | 512 | 264 − 1 | 80 | <63 (衝突発見[3]) | 192 | ||
SHA-2 | SHA-224 SHA-256 | 224 256 | 256 (8 × 32) | 512 | 264 − 1 | 64 | And, Xor, Rot, Add (mod 232), Or, Shr | 112 128 | 139 |
SHA-384 SHA-512 SHA-512/224 SHA-512/256 | 384 512 224 256 | 512 (8 × 64) | 1024 | 2128 − 1 | 80 | And, Xor, Rot, Add (mod 264), Or, Shr | 192 256 112 128 | 154 | |
SHA-3 | SHA3-224 SHA3-256 SHA3-384 SHA3-512 | 224 256 384 512 | 1600 (5 × 5 × 64) | 1152 1088 832 576 | 制限なし[4] | 24[5] | And, Xor, Rot, Not | 112 128 192 256 | - |
SHAKE128 SHAKE256 | d(可変長) d(可変長) | 1344 1088 | d/2と128のいずれか小さい方 d/2と256のいずれか小さい方 | - |