見出し画像

パスワード止めて、パスフレーズ使おうぜ

・パスワードは絶対に使いまわさないでください
・パスワードを毎月変えて、メモなどを残さないでください。
・12文字以上英数字を使って設定しください。

・・・・・・無茶だろ

「時間制のレンタルCTO」をやらせていただき色々なIT・情報部門に関わらせていただくのですが、時々こういうパスワード関連の相談や要請、時には指示や議論が発生します。

この人間の限界にチャレンジするかのような方針は、可能であるなら間違ってないとは思いますが、やっぱり無茶です。現実性のない建前のルールとなってしまい、そこから漏洩とか問題が起こるんですよね。とはいえ誰も悪くなくて、おそらく様々なコンサルの間で伝言ゲームとなっていき、時代の変化に合わない形として定着をしてしまったんだろうなと思います。

以下で少しの時間投資で安全性が上がるネタを書きましたので、是非参考にしてください。

※エンジニアの方には当たり前すぎて一切面白みはないと思います。

パスフレーズ(Pass-phrase)を使おう

パスフレーズ?パスワードじゃなくて?・・・ですよね。辞書を引いてみました。

ワード【word】 の解説
1 言葉。単語。多く他の語と複合して用いる。「キーワード」「クロスワード」
フレーズ【phrase】 の解説
1 句。成句。「キャッチフレーズ」 2 音楽で、楽句。

だそうです。単語じゃ短いだろ、文章(句)にしようぜという話です。

「Pass」は「通過する」という意味として、【パスワード:通過するための単語】、【パスフレーズ:通過するための句】ということですね。単語と捉えるからランダムにしたり色々混ぜてみたりややこしくなたったり、逆に覚えやすい単純すぎるものになっちゃうんですよね。

フレーズと言っても難しく考えずに例えば、"5月25日のお昼は家族とかつ丼を食べた"というフレーズをローマ字にしてみると、"5gatu25nitinoohiruhakazokutokatsudonwotabeta" になります。

お気に入りの楽曲の歌詞とかでもいいと思います。これなら忘れても調べられますからね。例えば、"夕焼け小焼けの赤とんぼ"→"YuuyakekoyakenoAkatonbo"とかですね。ただ、数字を入れてみると一層いいと思います。

一見長いように見えて入力大変そうですが文章なのでランダムな文字よりも流暢に入力できますよ。

少しだけ参考値

お遊び程度ですが、https://howsecureismypassword.net/ でどのくらいの時間でパスワードが突破されるかを計算してくれるサイトがあります。

※最もシンプルな総当たり方式=所要時間の最大値が最も大きい方式です。「総当たり」以外に様々なパスワード解析手段があるので、お遊び程度の最大値程度に見てください

やってみました。

KphC4DNm →  1時間 (8文字ランダム)
KphC4DNmNaPR → 2000年(12文字ランダム)
Kyouha25niti → 2000年(12文字”今日は25日”のローマ字読み)
KyouhaIchigo → 300年(12文字”今日はいちご”のローマ字読み … 数値抜き)

ちなみに前述の"5月25日のお昼は家族とかつ丼を食べた"のローマ字読みは、200'QUINDECILLION'年(※QUINDECILLION は10の48乗)だそうです。

文字数と数値が混ざっているといい感じです。

世の中のサイト設計者のみなさんへお願い

「パスワードを8文字以下で登録してください」って制約を本当にやめてほしい。8とか12で区切る意味ってなんなんですかね。※最悪なのは「8文字で」と"以下"がないパターン。一層予想レンジが狭まるので「総当たりする人」に親切です。

この記事が気に入ったらサポートをしてみませんか?