推し馬の写真集を電子書籍で購入する際にも必要となるログインパスワード。
以前、グーグルの研究チームが量子コンピューターの開発に成功したというニュースがあり、話題となっていました。
何でも従来のコンピューターで1万年かかる計算をわずか3分20秒で解いたというから驚きです。
それに伴い、仮想通貨(暗号通貨)の安全性が脅かされるといったことが取り上げられていましたが、それだけではなく、もっと身近なところで、僕らが普段使っているパスワードの安全性もその基準が大きく変わってこようとしています。
最近では英大文字・英小文字・数字の3種類を使って8文字以上のパスワード設定を必須にしているサイトが多いですが、量子コンピューターを使われてパスワード解析をされたら8文字のパスワードなんて瞬殺です^^;
結論を先に書いてしまうと、私が考える安全なパスワードは
半角英字(小文字) + 半角英字(大文字) + 数字 + 記号 の4種類を使った11文字のパスワード
となります。
ではなぜその結論に達したのか?
今回の記事では4つのポイントに絞ってまとめていきたいと思います。
量子コンピューターに限らず、悪意のあるハッカーから身を守るためにも、パスワード管理の参考にしてみてください。
1:そもそも8文字のパスワードはどのくらい安全なの?
パスワードの強度については、パスワードの解析時間を計算してくれる「How Secure Is My Password」というサイトがあります。そのサイトを使わせてもらって計算していきましょう。
まず、多くのサイトが最低ラインに設定している半角英数字8文字のパスワード。試しに「oshikatu」という値を入力調べてみたところ、なんと半角英数字8文字のパスワードは5秒で解析されてしまうという結果に(笑)

では、同じ8文字のパスワードでも半角英字の大文字や記号も加えてみたらどうなるでしょう。「Oshik@tu」という文字列を入力してみたところ、結果は次のような感じに。

先ほどの5秒よりはマシでしょうが、2時間でも大して変わりませんよね。これを見る限り、現状多くのWEBサイトで最低ラインに設定されている8文字のパスワードでは、量子コンピューターを使うまでもなく瞬殺であることが分かります。
では現状、何文字のパスワードなら安全と言えるのか?
何年解析されなかったら安全なパスワードかというのは定義が難しのですが、最近では人生100年時代と言われていますので、ここでは100年解析されなかったらまぁ安全だろうと判断することにします。
8文字のパスワードでは半角英字(小文字) + 半角英字(大文字) + 数字 + 記号 の4種類の文字を使っても8時間で解析されてしまうという結果でした。
安全なパスワードの文字数を探るために、ここから9文字、10文字と1文字ずつ増やした確認していったところ、次のような結果となりました。
9文字「Oshik@tu1」・・・3週間
10文字「Oshik@tu12」・・・5年
段々と期間が延びてまいりました。ドンドンいきます。
11文字「Oshik@tu123」・・・400年

11文字で基準をした100年を超えてきました。半角英字(小文字) + 半角英字(大文字) + 数字 + 記号 の4種類を使った11文字のパスワードなら、ほぼ安全だということが分かりますね。

ちなみに、半角英数字(小文字のみ)のパスワードの場合は13文字で解析に100年かかるそうです。パスワードの強度を意識される場合は、現状だとこのあたりの文字数のパスワードを設定するといいでしょう。
2:量子コンピューターに対抗するには何文字のパスワードが必要?
さて、現在のコンピューターで1万年かかる計算をわずか3分20秒で処理してしまう量子コンピューターに対抗するには何文字のパスワードを設定する必要があるのか。ここでも1番強度が高い、半角英字(小文字) + 半角英字(大文字) + 数字 + 記号 の4種類を使ったパスワードで何文字必要かを考えていきます。
その強度を計算するために、まずは量子コンピューターが現在のコンピューターの何倍の処理速度なのかを知らなければいけません。
1万年 ÷ 3分20秒
= 315,362,160,000秒 ÷ 200秒
= 1,576,810,800
数字が大きすぎて分かりづらいですが、量子コンピュータの処理速度は現状のコンピューターの15億7681万800倍ということですね。
なので、量子コンピューターを使って解析に100年かかる計算は、現状のコンピューターでは1576億8180万年かかる処理でなければいけないということになります。そこで再び「How Secure Is My Password」で何文字のパスワードならその条件を満たすのかを確認します。
12文字「Oshik@tu1234」・・・3万4千年
13文字「Oshik@tu12345」・・・200万年
14文字「Oshik@tu123456」・・・2億年
15文字「Oshik@tu1234567」・・・150億年
16文字「Oshik@tu12345678」・・・1兆年

半角英字(小文字) + 半角英字(大文字) + 数字 + 記号 の4種類を使ったパスワード16文字で量子コンピューターでの処理でも解析にかかる時間が100年を超えてきそうです。

もっと膨大な桁数のパスワードが必要な気がしていましたが、意外と16桁で大丈夫なんですね。
3:長くても覚えやすいパスワードを作るコツ
さて、16文字と言っても半角英字(小文字) + 半角英字(大文字) + 数字 + 記号 の4種類が含まれたパスワードは作るのも覚えるのもちょっと大変ですよね。
パスワード管理ツールで複雑なパスワードを生成して管理するのもひとつの方法ですが、僕としてはできる限り自分の頭の中で覚えておきたいと思うタイプの人間なので、ツールに頼るのはちょっとなぁと思っています。
今回は自分が好きな競争馬の名前を使ってパスワードを考えてみることを提案してみます。
例えばスーパーホース「アーモンドアイ」の名前を使ってパスワードを作ってみましょう。

アーモンドアイは英語表記にする「Almond Eye」です。そしてアーモンドアイは東京2,400Mで2分20秒6という世界レコードを叩き出したので、その情報を加えるとします。
これらを組み合わせて出来たパスワードが「AlmondEye2206@Tokyo」。
こうした覚えやすいことの組み合わせでも、19文字の強力なパスワードが簡単に作れるんですね。
また、別のサイトに対しては「AlmondEye2206@Fuchu」といった感じの、ちょっとだけ変えたパスワードを設定していきます。
「AlmondEye2206@」までは同じで、それ以降の部分をサイトごとに変えていくというやり方ですね。
このように固定のキーフレーズを決めておいて、「固定のキーフレーズ+サイトごとに違う文字列」でパスワードを設定していくと
・覚えやすい
・どこかのサイトで漏洩しても他のサイトにはリスクが小さい
・長いので簡単には破らない
と、3拍子揃った強力なパスワードとなっていきます。
4:多くの人がやってしまうパスワード管理で最も危険なこと
パスワード管理で1番危険なのは、全てのサイトで同じパスワードを設定して、使いまわしてしまうことです。
インターネット上の個人情報なんていうのは簡単に流出してしまう時代ですから、上記のように同じパスワードを使いまわしていると、どこかで情報が漏れた途端に全てのサイトで不正ログインされる危険にさらされてしまいます。
仮に銀行のオンラインアカウントに不正ログインされてしまった日には目も当てられないですよね。
でも、そんなこと言っても全てのサイトで全く違うパスワードを設定するのも、管理上現実的ではありません。

僕自身も、そんな幾つも違うパスワードなんて覚えていられませんし^^;
そんな時に役に立つのが、先ほどご紹介したキーとなる固定のフレーズを使いまわす考え方になります。今まで同じパスワードを複数のサイトで使いまわしてしまっていたという場合は、パスワード設定を見直してみることをお勧めします。
また、固定のフレーズに生年月日や電話番号など、個人情報を使用するのも避けたほうが無難です。
まとめ
それでは、今回の内容のまとめです。
・パスワードは半角英字(小文字) + 半角英字(大文字) + 数字 + 記号 の4種類を使うのが最も強力
・現状は11文字未満のパスワードは生きているうちに解析される恐れがある
・対量子コンピューターの場合は16文字のパスワードが必要
・長くて覚えやすいパスワードは「固定のキーフレーズ+サイトごとに違う文字列」
・固定のフレーズに生年月日や電話番号など、個人情報は使わない
最後までお読みいただき、ありがとうございました。