パスワード管理の話

2018/3/7作成

自分の今のパスワード管理の方法について整理して記録しておきます。

まずパスワードの生成方法ですが、完全ランダム文字列です。大文字小文字数字記号を出来るだけまぜますが、ダブルクリックによる一括選択がやりやすいという理由で記号がアンダースコアのみを使います。文字数は、そのサービスで受け入れられる最長の長さにします。

パスワードはサービスごとに分けます。同じパスワードを別のサービスで使い回すことは基本的にしません。たまに、一時的に登録するだけで、特に個人情報などの登録しない場合には「1234」のような単純なパスワードを使うこともありますが、それは例外です。ある程度継続して使うサービスであったり、個人情報や金銭情報などを登録する際には必ず新規にランダムなパスワードを生成して登録しています。

こんなパスワードですので、当然ながらすべてを記憶することはできません。はなから記憶するのは諦めていますので、パスワード管理は専用のテキストファイルを使っています。自分のPCの隠しディレクトリにテキストファイルを置き、パスワードを入力する必要がある際にはそのテキストファイルからコピーペーストしています。ここはテキストファイルではなくパスワード管理ソフトを使うべきだなぁとは思っているのですが、なかなか実行できていません。

パスワードを定期的に変更するということは一切していません。意味がないと思っているからです。

今時は大抵のサービスはウェブブラウザを介して利用しますので、パスワードを入力する際にはウェブブラウザを利用します。そこでパスワードは基本的にブラウザに記憶させて自分では入力しないようにしています。ウェブブラウザに記録させるとそれだけパスワード情報が拡散するので危険という考え方もあるかと思いますが、私はフィッシング対策に有効だと思うのでウェブブラウザのパスワード記憶機能を使っています。フィッシングサイトに誘導された場合、自力でそれがフィッシングサイトであることを見抜くのは事実上不可能だと思っています。それくらいフィッシングサイトは巧妙ですので。しかし、ウェブブラウザはプログラムですのでサイトのURLを正確に検証してパスワードを補完するかどうかを決定してくれます。つまり、ウェブブラウザがパスワードを補完しないということはフィッシングサイトであるという判定ができるということです。

サービスによっては、パスワードを忘れたときに備えて秘密の質問を設定することがあります。前述の通り、パスワードは全てテキストファイルに記録してますので、パスワードを忘れるということはありません。ここではテーマがぶれるので詳しくは書きませんが、パスワードファイルが消失しないようにバックアップ体制もそれなりにしっかりと敷いています。なので個人的には秘密の質問は不要なのですが、サービス側から設定することを強要されるので、ここでもランダム文字列を設定するようにしています。秘密の質問は、大抵は「母親の旧姓は」「子供の時に飼ってたペットの名前は」などのいくつか用意された質問から選択して回答を設定するようになっています。自分で質問を作れるのならともかく、これらの用意された質問は、私個人で無くても私とある程度親しい人なら回答を知っている質問も多いです。つまり、これらは秘密でもなんでもない。そこに真実の回答を登録してしまうと、私と親しい人にパスワードを再設定されてしまうリスクがあります。それを避けるために、秘密の質問にはランダム文字列を設定するようにしています。もちろん設定した文字列は秘密のテキストファイルに記録しておきます。批判ついでに書いておくと、秘密の質問の問題点は回答の揺らぎに対応していないこともあります。回答を漢字で記すかひらがなで記すか。それぞれしるし方もいく通りかのゆらぎがあることがあります。しかし、秘密の質問を突破するには登録時のしるし方を正確に再現しなければなりません。そんな細かいことまで覚えてられませんので、結局はどこかに回答をメモしておかなければならず、メモしておくのであれば真実である必要も無いということになります。

二段階認証は基本的に設定していません。二段階認証にも実装はいろいろありますが、最も多いのはSMSによるものでしょうか。しかし、SMS網は設計が古くセキュリティも弱いため、偽装SMSを送るのも容易であるという話を聞いたことがあるというのが理由の一つです。それが本当かどうかはわかりませんが、もし本当ならセキュリティの為の二段階認証がかえってセキュリティを弱めているということになります。本当にSMSがセキュリティ上の弱点になり得るのかどうか、いずれちゃんと調べてみなければと思っているのですが、それもなかなかできていません。ちゃんと調べて弱点になり得ない、もしくは十分に実用的なセキュリティを保てるとわかったら二段階認証も導入しようと思います。

さて、ここまでいろいろ偉そうに書いてきましたが、セキュリティ上の弱点はパスワードを記録したテキストファイルになります。これを閲覧されたら全てがおじゃんです。そのテキストファイルにアクセスするには私のPCにログインしなければならないわけですが、当然にログインの際にはテキストファイルを閲覧できません。なので、ここだけは記憶できるパスワードを用いています。ここが最大の弱点だよなぁと思っていますが、今のところ有効な対策を思いつけていません。

もう一つの大きな弱点はスマホです。スマホにはパスワードテキストは置いてませんし、ウェブブラウザの同期もしていませんので、そこからパスワードや認証情報がもれるということはありません。しかし、メールソフトが入ってます。大抵のサービスではパスワードリマインダとしてメールを用いた認証を行っています。つまり、私のスマホを入手してサービスでパスワードリマインドすればアカウントを乗っ取ることができるということです。これはスマホのセキュリティでも書いたとおりに大きな問題だなと認識しているのですが、今のところどう対策をしたらいいか思いつけていません。スマホを持ち歩かないのが一番なのでしょうが、さすがにそれでは不便すぎて現実的ではないですし。

ということで、2018年時点での私のパスワードとの付き合い方でした。よりよい方法を知ったり実践するようになったら、また追記します。

(2021/1/25追記)

上述の通りパスワードはサイト/サービスごとにランダムなものを生成して使用しています。これまではパスワードが必要になるたびに「パスワード 生成」とかでぐぐって出てきたサイトで生成していたのですが、毎回ぐぐるのも面倒なので自分でランダムパスワードジェネレータを作りました。パスワード生成です。

いまどきはブラウザにパスワードジェネレータが搭載されているので、いちいちこうしたツールを使う必要もないのですが、なんとなくブラウザにすべてお任せしてしまうと不安で自分の手で操作しないと気が済まないのは、やっぱり老人だからですかねぇ(^^)。

(2021/1/27追記)

ブラウザにパスワード管理を任せてしまうのは不安というのは、新しいやり方に慣れない老人だからだというのはそれはそうなんですが、それだけでもないよなと思うところもありますのでちょっと書きます。

ブラウザに限らずパスワードマネージャ全体に言えることなんですが、マスターパスワード自体をパスワードマネージャで管理できない問題ってのがあるんですね。ここだけはパスワードを暗記して手で打つしかない。実際のところとしてはChromeなどはChromeログイン時のパスワードもChromeが自動入力してくれるんですけれどね。でもそれはパソコンにログインしてるユーザは確かに本人であるという信頼があるからしていること。これはつまりパソコンにログインするときのパスワードがマスターパスワードであって、ここではパスワードマネージャが使えないってこと。だからマスターパスワードにはランダムで長い強固なパスワードを使うことが難しく、簡単で暗記できるパスワードになってしまう。これ、なんだかんだといって解決の難しい問題だと思うんですね。

マイクロソフトアカウントのPINは一つの回答ではあると思うんです。マクロソフトアカウント自体のパスワードとパソコンのログインパスワードを同一にしてしまうと、マイクロソフトアカウントのパスワードがぜい弱になってしまう。だからパソコンにログインするときには暗記可能なPINにして、マイクロソフトアカウントのパスワードは強固にしましょうと。それはマイクロソフトアカウントのセキュリティは向上しますけど、パソコンのセキュリティ向上にはならない。

ここは一般には指紋認証などの生体認証が使われることが多いとは思いますが、生体認証にも問題がないわけではない。

ということで、どうするのがいいのかなぁと考えているのがイマココってところです。

(2021/9/11追記)

二段階認証についてちょっと追記です。今でも二段階認証は基本的に使ってないのですが、それはいくつか問題があると思っているからです。

一つはスマホや携帯電話を使った二段階認証の場合、デバイス紛失時のリスクが大きいこと。紛失にはデバイスの移行を忘れて機種変更してしまった場合も含みます。その際に一切ログインできなくなってしまったら大変困りますし、なんらか救済措置があったとしても、それは大抵はとても面倒な手間が掛かります。そのリスクを考えるとちょっとなぁというのが正直なところ。

そしてこれはサービスによるのですが、二段階認証手段がパスワードリセットに使えてしまう場合があること。パスワードを忘れたときにスマホを使って認証してパスワードを再設定できたら、それは実質的にスマホだけの一段階認証ですよね。パスワードを盗むよりもスマホを盗む方が容易ですから、セキュリティが下がっていることになります。であればやりたくないなぁというところです。