MD5、SHA-1、SHA-256などのアルゴリズムを使用してテキストからハッシュ値を生成します。
暗号化ハッシュ関数は、任意のサイズの入力データを固定サイズの出力(ハッシュ値またはダイジェスト)に変換する数学的アルゴリズムです。主な特性には、決定論的(同じ入力は常に同じ出力を生成)、計算が高速、逆算が不可能、入力のわずかな変更で出力が大幅に変化(雪崩効果)などがあります。
ハッシュ関数は、複雑な数学的演算を通じて入力データを処理します。入力はブロックに分割され、各ブロックは複数回の変換処理を経ます。最終結果は元のデータを一意に表す固定長の文字列です。入力の1ビットの変更でも、まったく異なるハッシュが生成されます。
MD5は既知の衝突脆弱性があるため、セキュリティ目的での使用は推奨されません。ただし、ファイル整合性検証のチェックサムなど、セキュリティに関係しない用途では依然として使用可能です。
いいえ、暗号化ハッシュ関数は一方向関数として設計されています。ハッシュから元の入力を導出することはできません。ただし、弱いパスワードはレインボーテーブルやブルートフォース攻撃で解読される可能性があります。