ぼくのかんがえたさいきょうのパスワード管理
ちまたでは【パスワードの定期変更は意味がある/ない】の議論がつきませんが、みなさまいかがお過ごしでしょうか。
自分なりに満足の行くアカウント管理ができつつあるので、紹介したいと思います。
モットーは【簡単かつセキュアに】
こうやりたい。しかも簡単に。
実現したいのはこんなアカウント管理です。
- スマホでもPCでも同じように管理する
- メールアドレスを登録するサイト毎に変更する
- パスワードを登録するサイト毎に変更する
- 可能な限り、20文字以上で大文字小文字数字記号が入り乱れたものにする。
- あんまりブラウザのパスワード記憶に頼りたくない。
いやいや、無理やん。
面倒くさい。
メールアドレスとか何個作らなあかんねんと。
パスワード、覚えられるわけがないと。
けど、できちゃうんです。相当楽に。
用意するもの
用意するものは3つだけです。
- Gmail
- Dropbox
- keepassx
なぜ、google アカウント?というのは後述します。
GmailはGoogle の提供するメールサービス、 Dropbox はファイル共有サービスです。
keepassx はオープンソースのパスワード管理ソフトです。聞き慣れないアプリかもしれませんが、MacでもWindows でもLinuxでも使えるすぐれものです。
Mac 製品しか使わないって人はkeepassx の代わりに、1Password がいいと思います。(Androidのクライアントもあるようです)
ぼくのかんがえたさいきょうのパスワード管理
登録時
サイトに登録するときは次のようにしています。
メインのメールアドレスをcameong@gmail.com とします。
- keepassx のデータベースをDropbox につくる (初回だけ)
- メールアドレスを
cameong+"ランダムな文字列"@gmail.com
で登録する - パスワードを20文字以上のランダムなものを作る
- メールアドレスとパスワードとサイトドメインをkeepassx に保存する。
- Dropbox を使う端末(PC, スマホ)で連携する
ランダムなパスワード生成は mac だと pwgen
などを使うといいでしょう。
--- 追記 2016/7/2 ---
keepass に標準のパスワード生成機能があるようです。
こちらも便利ですね!
追記ここまで
注意点としては
- アカウント情報の更新をする端末を決めておきましょう
- じゃないとkeepassx のデータベースが壊れるかもしれません
- すくなくともiPhone はkeepassxのデータをデバイス内に保存してるので、リアルタイムに同期はしていません。
- ぼくはPCで更新するようにしています
- 【追記】↑リアルタイム同期しているとの報告も受けました。設定によって変更できるかも。
- keepassx に鍵をかけるか暗号化しましょう
- サイトのドメインも忘れずに登録しておきましょう
ログイン時
サイトにログインするときは、すごく簡単です。
- ログイン画面に行く
- keepassx を開く
- サイトのドメインを検索し
- id, password をそれぞれkeepassx からコピペする
おしまい。簡単ですね。
PCでもスマホでも同じアクションでログインできます。
解説
すこし、解説します。
cameong+"ランダムな文字列"@gmail.com
はちゃんと自分のところにとどくのか?
はい、届きます。
Gmailの仕様でメールアドレスのローカルパート(@より前) の+
以降は無視され、+
より前のメールアドレス宛に届きます。
ですので、cameong+"ランダムな文字列"@gmail.com
は全て cameong@gmail.com
に届く寸法になります。
もし、Gmail 以外に同等の機能のあるメールサービスがあれば、なにを使っても大丈夫です。(あったら教えて下さい)
--- 追記 2016/7/2 ---
@icloud.com も同様の機能があるようです。( from id:takuya_1st )
追記ここまで
パスワード忘れた時
パスワードを忘れた時、通常であれば、パスワードリセットフォームからメールアドレスを入力するのですが、この方法だとメールアドレスを記憶しておくのは無理です。
基本的にはkeepassxにどのサイトをどのメールアドレスを利用しているか保存してあるはずなので、keepassx を見れば大丈夫です。
もし、keepassx に書きわすれていた時は、、、Gmailで登録したサイトのドメインを検索してください。
(普通であれば)登録したメールアドレス宛にアカウント有効化のメールが届いているはずなので
- 有効化のメールを探す。
- To アドレスを調べる。
この方法で登録アドレスがわかると思います。
なぜメールアドレスをサイトごとに変更するのか
メールアドレスに+hash を足してサイトごとの登録メールアドレスを変えているのは、【登録しているサイト以外にメールアドレスを知られたくない】ためにおこなっています。
たとえば、
- サイトAで
cameong+AAA@gmail.com
のメールアドレスを登録 - サイトBで
cameong+BB@gmail.com
のメールアドレスを登録
していたとします。
もしサイトAのメールアドレスとパスワードが流出した場合、サイトBのメールアドレスを検知するのは困難ですので
サイトBと称してcameong@gmail.com
宛にメールが送られてくると怪しいわけです。(サイトBからはcameong+BB@gmail.com
宛に送られてくる。)
ソーシャルハッキングがますます増えている昨今では、+hash は一定の効果があるのではないかと思います。
パスワード流出の二次被害防止のために、最低限でもサイトごとに異なるパスワードを登録してください。
2段階認証
大本のメールアドレスを他人に乗っ取られてしまうと↑でやったことが意味なくなってしまいますので、2段階認証を使って強固にしましょう。
ぼくは2段階認証のクライアントにauthy を使っています。
はじめはauthenticator を使っていたのですが、登録できる端末が1つしか無いので、もしその端末が水没したりすると終わるので、複数デバイスで利用可能なauthy を利用しています。
(authentiator でも端末が使えなくなった時のためにリカバリープランはあるのですが、面倒くさくて)
運用しながら、管理方法を改善しています。
こんな管理方法があるよ!などありましたら、コメント欄等でおしえてください。
それでは、よいパスワード管理ライフを!
--- 追記 2016/7/2 ---
keepass より高機能なパスワード保存アプリには次のようなものがあります。
1Password
Dashlane www.dashlane.com
どちらもマルチデバイス対応しているようなので、試してみたいと思います。
追記ここまで