ふとパスワードについて語る

 インターネット経由のサービスを利用する際、利用に先立ってアカウントを作成することが多い。基本的にはID(メールアドレスが多い)とパスワードのセットを入力させられるだろう。最近は、SNSアカウントなどに認証をお任せするシステムも多いかもしれないが、原則としてはひとつのサービスにつき一つのアカウントを作ることになるだろう。

 そうすると、困るのはパスワードの管理だ。世の中の常識としては、パスワードの使いまわしはダメということになっているのだが、一方で、パスワードは自身が覚えていられる文字列でなければならないため、現実的にはなかなか難しい。恥ずかしながら数年前まで、私もほとんどのアカウントで使いまわしのパスワードを使っていた。

 今では、パスワードの使いまわしは止めているが、そのきっかけとなったのは、あるフィッシングサイトに、アカウント情報を入力してしまったことであった。非常に近しいSNSの友人のメッセージ(のちにこれは本人の書き込みでないことを知らされるが)に含まれるリンクであったので、完全に油断していた。よからぬことをしてしまったということは、使用していたiPhoneがやたらしつこく警告してくるからすぐに気づいた。おそらく、よからぬサイトにアカウント情報を入力したということを検出して、「そのパスワードはもう盗まれてますぜ。使いまわしダメ。絶対。」と言ってくれているのだが、じゃあなんでそんなことわかるんだ?あまりじろじろと中身を見ないでほしいなという気持ちもiPhoneに対し若干抱きつつも、もはや現状はオレオレ詐欺に騙されつつあるご老人と同様ということに気づき、おとなしくパスワードを変えていく作業を開始するとともに、iPhoneには感謝することにした。幸い実害は全くなかった。

 さて、使いまわしは止めるといっても、さすがに全部自力で覚えられる文字列をバラバラに設定するというのは不可能なので、パスワード管理ツールのお世話になることにした。パスワード管理ツールは、任意の文字列を生成してくれて、それを、アカウント情報を入力するサイト・IDとともに覚えてくれるローテクだが有能なツールだ。サイトによっては、アクセスしただけでID・パスワードを自動で入れてくれたりするのでとっても便利。(だが、その自動入力が有効に機能するのは1%くらいで、期待するとかえって2度手間になるので、正直全く期待していない。)さておき、がんばって、覚えている限りのアカウントをパスワード管理ツールの配下に置くことに成功した。自分がどのくらいインターネットサービスのアカウントを持っているかなど、かつて知る由もなかったが、これによって軽く100以上あることが判明し失神しそうになった。しかも、どれも微妙に使っているので、やっぱりなんだかんだでインターネットサービスに依存しているんだと再確認した。

 本題はここからである。パスワードは、アカウント作成時か、マイページからパスワード変更画面を呼び出して設定することになると思うが、使ってよい文字や文字数についての制限は、サイトによってかなりバラバラであることがわかった。割と先進的な企業のサイトでは(もっともいまだにパスワードで認証していることはもはや先進的ではないかもしれないが)、特殊文字使用可能で、文字数制限も特にない(上限をきちんと調べていないが30文字以上くらいはいけると思われる)一方で、クラシックな企業のサイトでは、文字数は8文字までとか、特殊文字は使用NGで、英数のみ、ひどいと英語は大文字のみみたいのもある。ポリシーがまちまちなのはある程度仕方ないと思うが、問題はそのポリシーが事前に示されていないことだ。

 上記のパスワード管理ツールに移行する際、パスワードについてはジェネレータにお任せすることにしたが、例えば30文字・特殊文字/英数という設定で生成したパスワードを設定しようとすると、次の画面で「特殊文字は使えません」「文字数は8文字までです」などとエラーを返してくるという始末で、こっちとしてはなるべく複雑なパスワードを設定したい(覚えるのは人間ではないので)と思う一方、相手システムはそうさせてくれず、生成してははじかれるのそのせめぎ合いを何度か繰り返してようやく決定されるというちょっと面倒な事態に遭遇したのだ。

 この時いろいろなことを考えた。まず、「一つのサイトのパスワードを変更するために私がこんなにトライアンドエラーをさせられるのは、私以外にこんなに熱心にパスワードを複雑化しようとしている人はいないのではないか?」ということである。もし、私以外にパスワード複雑化を熱心にしている人がたくさんいれば、「使える文字は事前に示せ」「文字数8字じゃ不安。もっと増やせ」などの抗議が殺到し、改善されているはずである。逆に多くの人がせいぜい8文字くらいの自分にとって覚えやすいパスワードを使いまわしまくっているから、この境遇にだれもたどりつかず、改善もされないと考えるとつじつまが合う。

 また、例えば、パスワードが8文字しか設定できないサイトのアカウントが、もし利用者の過失なしに盗まれた場合(たとえばブルートフォース攻撃で破られた)ようなときは誰に責任があるのだろうか?もちろん、辞書式攻撃で破られる単純なパスワードで破られるのは問題外だが、相応に複雑に設定された場合は、あとは「たった8文字だから破られるんじゃね?」という話になる。英数特殊でざっくり100種類あるとすると、パスワード生成パターンはざっくり10の16乗だ。これは大丈夫と言って数字なのだろうか?仮に大丈夫だとして、一方で30文字とか設定できるシステムもあるのだが、そんなに設定できる意味は?ということになる。30文字を設定した設計者は「やっぱり30文字くらいないと不安じゃね?」とおもって設定した数字だと思うのだが。。。

 パスワード認証というものすごい基本的なところで、こんなにもやもやした部分があるということは、実は、意識が高い人がしきりに「パスワードを複雑にせよ」「使いまわしはイカン」と言い続けているけど、結局事故に合うか合わないかは、パスワードの複雑さにかかわらず時の運か、もしくは複雑にするコストに見合わない程度の事故率減少効果しかないという構図になっているのだろうか?と思ったりした。まぁ実際自分がもしサイバー犯罪者だとして、大した旨味もないアカウントをリスクを冒して盗もうとするかというとそうでもない気がする。そんなもんだろうなと思う。

 実際は、攻撃とみなされるような行動はブロックされたり、2要素認証を組み合わせたり、そのうちパスワード認証なんてなくなっていくということになるのかもしれないが、パスワードは大切大切という人がいる一方で、たいして大切にもされていないということがあるのではないかと思った次第である。

 「パスワードの定期変更、必要ですか?」専門家に聞いてみた|NHK

コメント

タイトルとURLをコピーしました