はてなブックマークの人気エントリーに「優れたパスワードの選定と記憶法」というエントリーを発見したので、読んでみました。感想は…本当にそれでいいの?
配偶者のイニシャル+記念日を使う。「TFB0602」などだ。
配偶者のイニシャルと誕生日という、比較的推察されやすい情報を使っている上に、この短さ…。相当危険なパスワードだと思います。
100個のパスワードをいちいち記憶しなくても、100個のパスワードを生み出す1個のルールを設定すればいい。ユニークなパスワードを生成する方法の1つに、ベースとなるパスワードを選び、対象となるサービスの一部を使って変形させていく方法がある。例えば、* 「ベースパスワード+サービス名の最初の子音2つ+サービス名の最初の母音2つ」
というルールでやってみよう。ベースパスワードが仮に「asdf」だとする(キー入力が簡単なので便宜的に)。ここから上記のルールでパスワードを作ると、Yahooなら「ASDFYHAO」、eBayなら「ASDFBYEA」だ。
この方法も、ひとつのパスワードが漏れた時点で他のパスワードの解析が非常に容易になるという点で、あまり良いやり方ではないと思います。もちろん、すべてのアプリケーションに同じパスワードを使うよりは格段にましですが。
とは言え、十分に長くてクラックされにくくて、かつ覚えやすいパスワードを考えるのは確かに難しいことです。僕のやり方は、ずばり「キャッチフレーズを日本語で」というもの。
例えば、ダイエット中の人なら"ato3kiroherasu(=あと3キロ減らす)"とか、"bi-ruha2haimade(=ビールは2杯まで)"とか。このように、日本語の文章をローマ字表記でパスワードにするのです。
普通に日本語をアルファベット化するだけでなく、88oki(早起き)とか8ga0(笑顔)みたいに、上手く数字を組み合わせると、より推測されにくくなります。"beer"ではなくて"bi-ru"というのも、辞書ベースの解析に対する耐性を高めていると思います。あと、キレイな日本語よりは、カジュアルで砕けた日本語や方言を使った方がより推測されにくいかも知れません。
またパスワード一般に言えることですが、大文字と小文字を混在させたり、記号を取り入れることも有効です。
そして、アプリケーションごとに異なったパスワードを設定する場合は(もちろんそれは望ましいことです)、そのアプリケーションに関連した文章をパスワードにしてもいいかもしれません。メール関連のパスワードなら、"4darasugu2hensin(=読んだらすぐに返信)"とか。
この方法には、以下のようなメリットがあります。
・覚えやすい
・十分長いパスワードを作りやすい(総当り解析されにくい)
・英単語辞書に無い文字列を使える(辞書ベースのクラックツールで解析されにくい)
・(おまけ)キャッチフレーズを毎日意識できる
もちろん、定期的に変更することが大切なことは、言うまでもありません。
僕に関しては、今のところこの方法でうまくいっています。とは言え、今日まで問題が無くても明日には何が起こるかわからないのがセキュリティですから、気を抜かないようにしなければと思います。
昔々の話ですが、仕事上のサーバ・パスワードは、設定した日+その月にまつわる何か4文字、をもとに毎月変えてました。
わりといい感じ。
12月1日にパスワード変更
⇒ iwym01dec (iwym=アイ・ウィッシュ・ユア・メリークリスマス)
3月18日にパスワード変更
⇒ ohin18mar (ohin=おひな祭り)
お、それ賢い。
しかも仕事に季節感があふれて、職場の雰囲気が風流になったりするかもしれんなー。
パスワードにも季語を取り入れたりとか。