×
科目A|セキュリティ
入力: "hello"   --> [ハッシュ関数(SHA-256)] --> 2cf24dba5fb0a30e26e83b2ac5b9e29e...
入力: "hello!"  --> [ハッシュ関数(SHA-256)] --> 4a2b16027170a498f3b0ac08a5482329...
(1文字「!」が増えるだけで、出力値は全く異なる値に変わる)

もう少し詳しく

ハッシュ関数には主に3つの重要な性質があります。1つ目は「一方向性」で、ハッシュ値から元の入力データを逆算することは事実上不可能です。2つ目は「衝突困難性」で、異なる2つの入力データから同じハッシュ値が生成されることは極めて起こりにくいという性質です。3つ目は「固定長出力」で、入力データがどれだけ長くても短くても、出力されるハッシュ値の長さは常に一定です。現在広く使われている代表的なアルゴリズムにSHA-256があり、以前主流だったMD5やSHA-1は衝突を発生させる攻撃手法が発見されたため、現在はセキュリティ用途では推奨されていません。

試験でのポイント