(NIST)によるSHA-3の公募に提出された暗号学的ハッシュ関数である。ダニエル・バーンスタインによって設計されたストリーム暗号であるChaChaをベースとしたものであり、ChaChaのラウンドの前にラウンド定数との排他的論理和を取った入力ブロックの置換コピーが加えられている。BLAKEはSHA-3公募において5つの最終候補のうちの1つに残った。BLAKE-512SHA-2と同様に、BLAKEには4つのバリエーションが存在する。32ビットのワード長を持ち256ビットのハッシュを出力するBLAKE-256およびそれを切り詰め224ビットの出力としたBLAKE-224、64ビットのワード長を持ち512ビットのハッシュを出力するBLAKE-512およびそれを切り詰め384ビットの出力としたBLAKE-384の4つである。外部リンクアルゴリズム編集ChaChaでは4×4アレイのワードを操作し、BLAKEでは16のメッセージワードと8ワードのハッシュ値を連結することで、ChaChaの出力を切り詰めて次のハッシュ値の計算に用いる。中核となる変換では入力の16ワードと16の変数を組み合わせるが、ブロック間では8ワード(256あるいは512ビット)しか保持されない。BLAKEでは、16の固定ワード(πのフラクタル部の先頭の512あるいは1024ビット)と、16要素間での置換テーブル10個を用いる。BLAKE-256では、固定ワードnに下記の定数を用いる。BLAKE-512では、固定ワードnに下記の定数を用いる。1ラウンドごとに8回この操作が行われる。-224のものである。繰り返し回数(0から7)である。ChaChaの1/4ラウンドの関数とは以下の違いがある。メッセージワードの和が追加された。ローテートの方向が逆となった。11に変更され、ラウンド数が14から16に増やされている。編集NISTによる公募の期間中、発見された問題への対処として応募者がアルゴリズムを修正することが許されていた。-384では14から16に増やされた。速度を維持したままセキュリティマージンを大きくするためである。122012年12月21日、BLAKEの改良版としてBLAKE2が発表された。Winnerleinにより設計されたものであり、実際に破られた、あるいは理論的に破られたハッシュ関数であるMD5、SHA-1の置き換えを目指したものである[1]。512ビットのハッシュを出力する64ビットバージョンであるBLAKE2b、256ビットのハッシュを出力する32ビットバージョンであるBLAKE2sの2つのバリエーションが存在する。BLAKE2bでは1から64バイト(512ビット)、BLAKE2sでは1から32バイト(256ビット)の間で任意の長さのハッシュを出力可能である。呼ばれるバージョンも存在する。BLAKE2では、BLAKEから以下の修正がなされている。BLAKEのラウンド関数にあった固定ワードのメッセージワードへの追加が除去された。2つのローテート量が変更された。パディングが簡素化された。初期化ベクトルとの排他的論理和を取ったパラメータブロックが追加された。(BLAKE2b)に削減された。A8ADD4BDDDFD93E4877D2746E62817B116364A1FA7BC148D95090BC7333B3673F82401CF7AA2E4CB1ECD90296E3F14CB5413F8ED77BE73045B13914CDCD6A918BLAKE3編集2021年7月25日、BLAKE3が発表された[2]。MD5、SHA-1、SHA-2、SHA-3、そしてBLAKE2よりも高速である。MD5及びSHA-1よりも堅牢で、さらに長さ拡張攻撃に対してSHA-2よりも堅牢である。マークル木を利用しているため、並列化やストリーミングデータ・差分更新されるデータのハッシュ計算が可能である。Function)を利用可能である。変種のない一種類のアルゴリズムを提供しており、x86-64や他のマイクロアーキテクチャにおいて高速である。実装ライブラリ編集BLAKEをサポートしているライブラリは以下の通り。2022年4月28日閲覧。(日時は個人設定で未設定ならばUTC)。4.0のもとで利用可能です。利用規約デスクトップ。