ハッシュ化と暗号化の違い
可逆性と不可逆性
ハッシュ化を行う関数をハッシュ関数,ハッシュ化した後のデータをハッシュ値という.
ハッシュ化は特定のアルゴリズムを用いて元のデータ列を不規則な値に置換し,ハッシュ値から元のデータ列を特定しにくくするものである.
秘匿性が必要なデータを一方的に送る場合によく用いられる.
暗号化は可逆性があり暗号化したデータ列から元のデータを復元することができる.
秘匿性が必要な通信でよく用いられる.
ハッシュ化への攻撃
SHA1ハッシュに対してはレインボーテーブルなどを用いて効率的に解読することが可能である.
どのようなアルゴリズムを用いたハッシュ化・暗号化であっても,仕様字種が限られている場合やデータ列が短い場合などはブルートフォース(総当たり攻撃)を用いて解読されることがある.
参考文献