CyberGlossary

暗号

BLAKE2

別称: BLAKE2b, BLAKE2s, RFC 7693

定義

RFC 7693 で規定された高速かつ現代的な暗号学的ハッシュ関数で、SHA-3 に匹敵する安全性とソフトウェア上での圧倒的な高速性を提供する。

BLAKE2 は、SHA-3 ファイナリストであった BLAKE を改良するかたちで 2012 年に Aumasson、Neves、Wilcox-O'Hearn、Winnerlein により設計されたハッシュ関数ファミリーです。主な変種は BLAKE2b(最大 64 バイト出力、64 ビット環境向け)と BLAKE2s(最大 32 バイト出力、32 ビット環境向け)で、並列版 BLAKE2bp/BLAKE2sp も存在します。HAIFA 構造に ChaCha 風の置換を組み合わせ、鍵付きハッシュ、ソルト、パーソナライズ、ツリーハッシュをネイティブにサポートするため、別途 HMAC でラップする必要はありません。実用的な攻撃は知られておらず、ソフトウェアでは SHA-2/SHA-3 より高速で、Argon2、libsodium、WireGuard のハンドシェイクハッシュ、Zcash などで採用されています。

  • Argon2 は内部で BLAKE2b を圧縮プリミティブとして利用する。
  • WireGuard はハンドシェイクのトランスクリプトを BLAKE2s でハッシュする。

関連用語