ベストなパスワードの作り方

76

先日ある学校で配布されたタブレットのパスワードが「123456789」に統一されていた、という馬鹿げた事例がありましたので、今回は「ベストなパスワードの作り方」を紹介したいと思います。

でも、なぜ「123456789」だと駄目なのでしょうか?
それは「推測されやすいから」です。

推測されやすい、つまりは「バレバレのパスワード」ということです。
この「123456789」は2020年度に「情報漏洩したパスワードランキング」の第5位です。
「情報漏洩したパスワードランキング」は、毎年発表されている「クソなパスワード」のランキングです。

ちなみに
「123456」 が1位
「12345678」が4位
なので、この「1から順番に数字を並べた」系が総数ではぶっちぎりのトップ(最悪のパスワード)ですね。
上記は2020年版ですが、毎年トップです。
(こんなにも典型的な「クソなパスワード」を付けていた学校、ベンダーは何を考えているのか…)


では、どんなパスワードがベストなのでしょうか?

パスワードを考える時にポイントになるのが3点です。

1「バレにくいこと」
2「ユニークであること(同じパスワードを使い回さない)」
3「忘れにくいこと」
それぞれ解説します。

1「バレにくいこと」

「123456789」のように推測されやすいパスワードは避けるという意味です。
推測されやすいパスワードはリスト化され、攻撃者は簡単なプログラムを組んで、そのリストのワードを順番に試して解読することができます。
また、総当たり攻撃(すべての文字列を順番に試す攻撃)などを考えて、8桁以上の桁数にしておくことも含まれます。

2「ユニークであること(同じパスワードを使い回さない)」

パスワードはいくら複雑にしていたとしても「サービス側が流出する可能性がある」ことを想定しないといけません。
もし、同じパスワードをいろんなサービスで使っていた場合、一箇所から流出したら、すべてのパスワードが流出したのと同じになります。
たとえば楽天市場でパスワード流出があったとします。
そのパスワードを知った犯人はこう考えます「同じパスワードをAmazonでも使っているんじゃないか?試してみよう」と。
(実際に流出したパスワードとメールアドレスの情報は、俗に言う闇サイトで売買されています)

3「忘れにくいこと」

これは必須というわけではありませんが、それぞれのサイトで別々のパスワードを設定していると、どうしても忘れてしまいます。
もちろん紙に書いておいたり、エクセルなどにメモしても良いです。
その場合は、出来る限り長く、英語、数字、記号が完全にランダムなパスワードがベストになります。
たとえば「6wTtCbw-2xCG8ais」「2Z4WrbriwRBrQRyQ」「8XpecKBFBTXuVeeV」「a9uUS9PSjrsWrZWF」「9pNAmrw_xMrmScZf」みたいな感じですね。
※上記のようなランダムな文字列を生成してくれるサービスは色々あります。https://www.japan9.com/cgi/rand_num.cgiなど便利です。

ただ、メモして置く場合、今度はその紙やメモの流出リスクも考えなければならなくなります。
なので、やはりベストなのは「頭の中だけで覚えておくこと」です。

でも、ユニーク(使い回さない)ってことは「複雑なパスワードを複数覚えておく」ということになります。

このIT社会の中では、数十個のサービスを利用することになりますので、それだけの数のパスワードを覚えておくことなど可能なのでしょうか?

普通に考えて「6wTtCbw-2xCG8ais」などを、何十個も覚えておくことはまず不可能でしょう。
なので、覚えておく量は出来る限り減らす必要があります。
おすすめは「メインのワード + ルール」だけを覚えておく方法です。

たとえばメインのワードはkinocodeにします。
そして、それにルールを足します。
これが重要なので、ぜひ自分で考えてほしいのですが、ここではわかりやすく簡単なルールを設定します。

「登録するサービス名の頭文字 + メインワードの末尾を大文字 + @ + 登録するサービス名の末尾 」

みたいな感じです。
つまり、楽天ショッピングに登録する場合は「rkinocodE@g」になりますね。
ヤフージャパンなら「ykinocodE@n」です。

このように、「メインのワード + ルール」でパスワードを決めると、いくらサービスが増えても覚えておく内容は変わらず「メインのワード + ルール」だけなので、十分暗記できると思います。
もちろん、セキュリティの高さだけで言うと「6wTtCbw-2xCG8ais」みたいな完全ランダムのほうが上ですが、メインワードとルールを推測されにくい物にすれば十分実用に耐えるパスワードになると思います。

また、他のコツとして「日本語の文章風にする」というのもあります。
たとえば「Yahuuno@kinocode@saitodayo」(やふうの@kinocode@さいとだよ)みたいな感じです。
日本語の文章風にすることで、日本語がわからない人には推測ができないパスワードになるからです。

他にも
・アルファベットのoを0に変換する(kin0c0deなど)※これはベタな手法なのでバレバレですが。
・e(イー)をi(ローマ字読みでイ)と打つ(kinocodiなど)
・aとbとdとoとpとqなど、文字の中に◯がある文字は000にする(kin000c000000e)

など、ルールは色々考えることが出来ます。
かなり複雑なルールでも一度覚えてしまえば、それ以上覚えることが増えたりしないので、結構大丈夫です。

また、複雑なルールを作り、万が一忘れた時用に、その「ルールだけ」をメモに書いておくなどすれば、メモが流出した場合などもメインワードを推測されなければ解読できないので、一定の安心感があります。

さらに言うと、そのサービスの種類や、重要度によって変えるのも良いでしょう。
住所や個人情報、またはクレジットカードを入力するようなサイトは、長く厳重なルールにし、特に情報を入力しないサービスなどは簡単なルールにするなどです。


以上、色々書きましたが、このうち「どれか」を選ぶのではなく「組み合わせて」考えてください。
セキュリティは組み合わせることで桁違いに強固になります。

自分だけの最強のパスワードを考えると、IT社会でストレス少なく過ごせるのではないかと思いますよ。



余談

未だに「定期的にパスワードを変更を促してくるサイト」が存在しますが、これはまったくセキュリティ対策になっていませんので、無視でOKです。
(強制してくるサイトもありますが…)
これ、10年ぐらい前は「パスワードは定期的に変更すべき」というのが常識化していたのですが、2017年の時点で綺麗サッパリ否定されています。

そもそも「なんで定期的に変更すべきなのか?」の根拠が不明です。

夜道を一人で歩いていて、なにか後ろから付けられているような気がするが、振り返っても誰もいない。
何度確認しても誰もいない。
それでも、一度不安になった気持ちは落ち着かず、だれもいないのに無意味に振り返り、何度も闇夜を睨みつける…。
そして、ついには全速力で走り出してしまう…本当に誰もいないのに…。

そんな心理と同じ理由で「パスワードは定期的に変更すべき」という一文が、ガイドラインに書かれてしまったのではないか?と思ってしまいます。

出どころとしては、米国国立標準技術研究所(NIST)が2012年ぐらいに出したガイドラインに書いてあったようで、そのせいで理由もわからず常識化してしまっていました。
でも、それも2017年のNISTのガイドラインでは「定期的なパスワード変更を促すべきではない」と、完全に真逆の指針が出ています。
普通に考えても、いちいちパスワード変えさせられたら覚えるのが大変なので「覚えやすい簡単なパスワード」に設定してしまうのは当然です。
逆にセキュリティが弱まってしまうというこです。なので、真逆の方向転換したのでしょう。
(そもそも、2012年に根拠不明のガイドラインを出したのでしょうか…)

しかし、未だに日本では「定期的にパスワードを変更を促してくるサイト」が多く残っています。
三◯住友銀行でもそうです。

「定期的にパスワードを変更するメリット」を考えてみたのですが、「こっそりパスワードがバレて、気づかないぐらいにちょびちょびお金が取られていたら困るから、変更した方が良い」ぐらいしか思いつきませんでした。

未だにパスワードの変更を促してくる時点で「この会社は、セキュリティ対策の情報が古い」というのが明白です。
皆さんもそういう会社は注意したほうが良いですよ。