レインボーテーブル

レインボーテーブルとは

レインボーテーブルとは、暗号化の衝突リストを利用して、不正ログインを効率的に行うことです。

ログインするとき、サービス提供している側にユーザIDとパスワードを認証してもらいます。

パスワードは漏洩したら大変ですから、サービス提供者はパスワードを暗号化して保管しています。

あなたがログインボタンを押したら、あなたから送られたパスワードを暗号化し、保管してある暗号化したパスワードと比べています。暗号同士を比べているわけですね。

暗号文は被ることがある

ただ、暗号化とはいうなれば他の文字列に変える行為です。暗号された結果同じ文字列になるケースもあります。

つまり、あなたが覚えているパスワード以外のパスワードでもログインが可能な場合があるのです。

この暗号化の現象を衝突といいます。

衝突する分は攻撃対象から省ける

不正ログインを企む人は、無数にある文字列から相手のパスワードを探してきますから、効率的なほうが良いわけです。

あるパスワードでは入れなければ、同じ暗号になるパスワードでも入れませんからそのログインは省くことができます。

このような、同じ暗号文になる文字列を省いて、一覧化したものをレインボーテーブルといいます。

まあ、もちろん衝突しないような暗号化をするんですけどね。