12/02/26 14:59:39.87
>>27
たとえば128bitのAES暗号を使う場合、暗号鍵(=パスワードから生成される鍵)は過不足なく128bit長である必要がある。
人間が入力するパスワードは固定長じゃないからそのままでは鍵として使えず、長さを128bitジャストになるよう加工する必要がある。
ではパスワードを128bitにするにはどうやったらいいかというと、パスワードのMD5ハッシュを求めるのが一番妥当だろう。
逆算不可能性と分散性を考えると自前でパスワード長を128bitに加工するよりはるかにいい鍵ができる。
だから一般的には、ハッシュをハードコーディングするのは暗号ライブラリに渡す本物の鍵をハードコーディングするのと大差ない。
それを回避するにはやっぱり暗号データを試しに解読して成否を見極める手法が理想的と思うけどね。