タニイ
もう一度パスワード突破をやってもらいましょうか。お嬢、これは解読できますか?
ハッシュ化したパスワード:911b0a07a8cacfebc5f1f45596d67017136c950499fa5b4ff6faffa031f3cec7f197853d1660712c154e1f59c60f682e34ea9b5cbd2d8d5adb0c834f963f30de
ITお嬢様
無理ですわ!!!!!!!
しかも今回はヒントなしです。
なおのこと無理ですわ!!!!!!!
ですよね。これがハッシュ化した状態です。ハッシュ化も「与えられた文字列をぐちゃぐちゃな文字列に変換する」という意味では暗号化と似てますね。これをあらかじめデータベースに保存しておきます。ログインのときにはユーザーが入力したパスワードをハッシュ化して、データベースと突き合わせて確認します。
……? 待ってくださいまし。ぐちゃぐちゃにしてしまったら、元に戻せないのではなくて?
戻せません。暗号化は元に戻せるようになっていますが、ハッシュ化は元に戻せないようになっています。
戻せない? そのハッシュ化も何かのルールで変換しているのでしたら、暗号と同じように元に戻せるんじゃないですの?
戻せません。例えば、昔話で「桃太郎」ってありますよね。それをパスワードとして使ったとします。かなり長い文字列ですけどね。
それを変換したら、偶然こんな文字列になったとしましょう。この文字列から、元の桃太郎の物語を一言一句たがわず復元できると思いますか?
元のお話を覚えてなければできませんわ。
めちゃめちゃ圧縮されているので、ヒントがあろうとなかろうとかなり難しいですよね。ハッシュ化も出力結果から入力文字列を割り出すのは現実的に不可能なんです。だからパスワードがばれない。
本当にどんな方法をとっても絶対に復元できないっていえるんですの? どうしても抜け道がありそうな気がしますわ。
絶対に不可能とはいえません。でも、例えば1000万円相当の情報を盗み出したいときに、パスワード突破で1億円かかるとか、10年かかるとかであれば、たとえできたとしてやらないですよね。
なるほど。一応力業があるにはあるけど、結果に見合わない手間にできる……というわけですね。
だからハッシュ化は強いんです。それが今回のケースでは平文だったかもしれないと。
平文保存のヤバさ、分かったかな?
よく分かりましたわ。人数が多ければそれだけのパスワードがバラまかれるってことですし、肝が冷えますわ……。
まぁ、今回具体例として示したハッシュ値くらいなら、IT知識がなくてもすぐにパスワードを復元できちゃうんですけどね。
……え?
簡単なパスワードはハッシュ化した結果(ハッシュ値)も割れているので、ハッシュ値を検索すれば元のパスワードがヒットしちゃう。簡単なパスワードは避けた方がいいですね。サービス提供者側で対策する方法もありますけどね。
Copyright © ITmedia, Inc. All Rights Reserved.
続きを読むには、コメントの利用規約に同意し「アイティメディアID」および「ITmedia NEWS アンカーデスクマガジン」の登録が必要です
Special
ITmediaはアイティメディア株式会社の登録商標です。
メディア一覧 | 公式SNS | 広告案内 | お問い合わせ | プライバシーポリシー | RSS | 運営会社 | 採用情報 | 推奨環境