暗号 と ハッシュ を混同して話しをする人がいて大変気になるので調査結果含めてまとめてみたいと思います。 まぁ、結局のところ暗号化とハッシュ化の違いは複合できるか復号できないかの違いなんですが…。
- 暗号化:決まった規則に従ってデータを可逆変換する
- ハッシュ化:決まった規則に従って一定長のデータに不可逆変換する
目次
暗号化 とは
特徴
暗号化とは、データを決まった規則に従って組み換えること。 暗号化されたデータは復号できることが特徴になります。
用途
通信途中で第三者に盗み見られたり改竄されたくないデータ通信に用いられます。
実装例
共通鍵、公開鍵がWEBでよく見かける実装例になると思います。 具体的には以下のようなアルゴリズムが該当します。
公開鍵暗号- RSA暗号
- ECDH暗号
- AES
- RC2
- DES
ハッシュ化 とは
特徴
ハッシュ関数を利用して不可逆な一定長の値を求めること。 不可逆なので元の値を取り出すことはできません。 データを一定長の値に変換するため、場合によっては異なるデータから同じ一定長の値が算出される場合があります(=衝突、コリジョン)。
用途
パスワードの保存等、復元の必要がない用途での利用を行います。
実装例
- MD5
- SHA-1
最後に… このブログに興味を持っていただけた方は、 ぜひ 「Facebookページ に いいね!」または 「Twitter の フォロー」 お願いします!!