2015年1月7日

ITセキュリティにまつわる誤解:パスワード

脅威

ITセキュリティにまつわる誤解について考えるシリーズの第2弾として、今回はパスワード管理に関する課題をいくつか取り上げたいと思います。強力なパスワードの設定が極めて重要なのはご存じのとおりです。ではどのようなパスワードが強力なのでしょうか。 

password-1024x767

これまでさまざまな人にパスワードに関する質問をしたところ、強力なパスワードは非常に重要だが、すべてのパスワードを覚えておくのは大変、という答えがほとんどです。良い解決策を探すのは諦め、貧弱なパスワードポリシーを使い続けるための言い訳として、この言葉を使っているようです。

問題の1つは、そもそも強力なパスワードがどんなものかわからない点です。多くの人は、強力なパスワードとはランダムに選ばれた文字、数字、特殊記号を組み合わせた複雑な文字列だと考えています。しかし、暗号化の観点というよりも、セキュリティの観点からすると、強力なパスワードは徹底的にランダム化した文字列にする必要もなければ、覚えにくいものにする必要もないのです。

こんなことを書けば、パスワードマニアの人から非難を浴びそうですが、このブログ記事は、最も複雑で安全なパスワードのアルゴリズムを解説するためのものではありません。むしろ、認証が必要なすべてのWebサイトで、ぜい弱なパスワードを使わない、あるいは同じパスワードを使い回さないためのヒントやテクニックを紹介したいと思います。

もちろん、パスワードマネージャーのようなパスワード管理ツールを使うこともできますが、この記事ではツールを使わずにパスワードを管理する方法をご紹介します。

では早速、強力なパスワードの作成方法について見ていきましょう。まず、強力なパスワードを作成するときの最も重要なポイントは、個人的な内容にすることです。コンピューターが生成したパスワードはランダムな文字、数字、特殊記号が使われているため覚えるのが大変です。しかし、個人に関するフレーズであれば、はるかに覚えやすくなります。

パスワードを作成する方法は無数にありますが、その中の1つを紹介したいと思います。おそらく他でも紹介されている方法だと思いますが、ここでは「ストーリー型アルゴリズム」と呼ぶことにします。この手法にはいくつかバリエーションがあるので、ぜひ自分に最も合うものを考えてみてください。

  1. 慣用句、歌詞、映画の台詞、子供の頃に聞かされた子守唄などを思い浮かべます。
  2. 思い浮かべたフレーズの最初の5つの単語から1文字目を取り出します。
  3. それぞれの文字の間に特殊記号を挿入します。

この段階で固定文字列が作成されたことになります。この文字列をベースとして、それぞれ固有のパスワードを作成していきます。この固定文字列は、パスワードを必要とするサイトごとに異なるわけではないため、さらに連想力を動員する必要があります。

Facebook、Twitter、eBay、出会い系サイト、オンラインゲームサイトなど、パスワードが必要なWebサイトを思い浮かべ、そのサイトから連想される単語をそれぞれ書き出します。たとえば、Facebookの場合であれば、青いロゴマークが連想されるので、「blue」という単語を(または大文字でもいいでしょう)固定文字列の後ろに付け加えます。 

ComStar-1024x342

たとえば、「Twinkle Twinkle Little Star How I Wonder What You Are」という歌詞を思い浮かべたとしましょう。特殊記号は「#」を使います。この場合、Facebookのパスワードは「T#T#L#S#Hblue」となります。一見したところ、意味のある文字列には見えません。誰かにこの文字列を見せられても、同じように感じるでしょう。ですが、これは個人的なもので、あなた自身はどうやってパスワードを生成し、どういう単語をサイトから連想したのか知っているので、覚えるのは簡単です。しかも、このパスワードの強度はかなり高いはずです。パスワードチェッカーで確かめてみてください。

1つだけ、特に慎重に管理すべきパスワードがあります。このパスワードを作るときは、まったく違うフレーズを採用した方がよいかもしれません。そのパスワードとは、メールアカウントのパスワードです。誰かがあなたのメールにアクセスできれば、その人は「パスワードを忘れた場合」の機能を利用して、メールにアクセスできるだけでなく、そのメールアドレスに紐づけられたあらゆるサイトのパスワードを変更できてしまいます。

パスワードは必ず強力なものを使うようにしてください。パスワード管理が難しいというのは誤解で、言い訳にすぎません。次の黄金律をぜひ覚えておいてください。

  • 安全なパスワードを作るとき、重要なのは長さです!
  • Webサイトごとに異なるパスワードを使用することがとても重要です!
  • 複雑さは、パスワードの文字列のランダムさではなく、いかに解読しづらくするかです!
  • パスワードを個人的な内容にするだけで、覚えるのがはるかに簡単になります!