この拡張モジュールは、様々なハッシュアルゴリズムを使って任意の長さのメッセージを直接、または徐々に処理する関数を提供します。可能な処理には、たとえば HMAC 値の生成や、HKDF や PBKDF2 を含む、鍵の導出処理があります。
ハッシュアルゴリズムには、大きく分けて3つのカテゴリがあります。完全な一覧は hash_algos() を参照ください。
"crc32b"
, "adler32"
):
通信エラーを検出するときなどに役立つチェックサムを計算するのに使えます。これらは大抵、とても高速です。また、衝突したり、容易に"推測可能な" 値を生成できたりするので、暗号には完全に不向きです。
"md4"
"md5"
, "sha1"
のような
初期の暗号化アルゴリズムの中には、既に衝突しやすいことが証明されているものがあります。こうしたアルゴリズムを使うことは、暗号を用いるアプリケーションでは既に推奨されません。
パスワードを処理する際にハッシュ関数を使うためのベストプラクティスに関する情報は、パスワードのハッシュに関するFAQ も参照ください。