そこで破られにくいパスワードを1つ用意して、あとはシングルサインオン(SSO:Single Sign On)で共用するというのが比較的よく語られる解決法だと思う。企業内だと、ActiveDirectoryと連携したシングルサインオン(SSO:Single Sign On)ソリューションがあったりする。インターネット上だとOpenIDとかがあるけど、そもそもサイト側がOpenIDを採用してくれないことにはユーザーは楽にはならない。いまどきだと、PCに仕込まれた標準的なICタグリーダーにケータイかざしてサッと認証するような方法も考えられるが、これは標準化がもっと進む或いはデファクトが確立されなければ一般的にはならないだろう。
そこで、自衛のためにPwdHash。これはブラウザ(FirefoxまたはIE6/7)で使えるブラウザ拡張だ。ヒント文字(ユーザーはこれ1種類だけ覚えていればよい)を与えると、ドメイン名・サブドメイン名を判断して、パスワードを画面上で生成してくれる。
PwdHash:例えば、ヒント文字を"xpotechi"とする。生成されるパスワードは以下のようになる。
Users tend to use a single password at many different web sites. By now there are several reported cases where attackers breaks into a low security site to retrieve thousands of username/password pairs and directly try them one by one at a high security e-commerce site such as eBay. As expected, this attack is remarkably effective.
- www1.a.com → sCMANDa9sfBI
- www2.a.com → sCMANDa9sfBI (サブドメインが同じなのでパスワードは同じ)
- www1.b.com → UlYcXlFXA7S2 (ドメイン名が異なるのでパスワードは変わる)
利点を再確認すると、
- ユーザーはヒント文字(上の例ではxpotechi)さえ覚えていればよい
- ドメインが変わったら自動的に別のパスワードになるので、漏洩時に一挙全滅とはならない
いずれにせよ、ちょっとわかりにくいと思うので、上記の手動サイトでいろいろ試してみると動きがわかると思う。
ブラウザ拡張のダウンロードはこちら。
- Stanford大学 Web Password Hashingのサイト
- PwdHash | Firefox Add-ons | Mozilla Corporation
- USENIX Security Symposium 2005 paper (技術論文)
後編終わり。
次回は非ITネタで。