例えば以下のページを見ると、WindowsやLinuxの世界において8桁という数字には意味がありますが、これはあくまでもOSの制約から生まれてきた数字であって、セキュリティ上の強度は根拠になっていません。
http://www.itmedia.co.jp/enterprise/0310/03/epn15.html
しかし色んなところで「パスワードは8桁以上」という制約を見ます。例えばGoogleは8文字以上必須、Yahoo!Japanは8文字以上推奨となっています。
なぜ8なのでしょうか。セキュリティ上の強度という観点から根拠を教えて下さい。
私の想像では、WindowsやLunuxなどのOS(もしくはアプリケーション)の制約から8という数字が生まれ、それが定着してしまったのではないかと思います。
今回はそれ以外の回答を求めています。
この分野では、Department of Defense Password Management Guidelineというのが有名だそうです。
米国の国防総省による1985年出版のガイドラインで、セキュリティ上の観点からパスワードを何文字として設定すべきかの計算式が、付録Cにあります。
お尋ねの件の源流は、おそらくこれではないかと思います。
パスワード強度を考慮した文字長 M は、以下の式で計算するそうです:
M = log(L*R/P) / log(A)
L=パスワードの有効期間
R=パスワード推定回数
P=パスワードが破られる確率
A=文字種類
当時のシステム例にたいしては8~9文字という計算例が示されています。
最近のWebアプリケーションに対するものとしては、たとえば、富士通のセキュリティサービスのページにある診断結果報告書サンプルは以下のように説明しています:
L=3年間
R=1分間120回試行
P=1/1000000
A=62文字; a-z, A-Z, 0-9
M=7.97
つまり、3年間の機関で安全なパスワードにするためには少なくとも8桁以上にする必要があります。
普通の人が、瞬時に記憶出来る数字は7桁(±2)とのこと。
セキュリティー上、それより多い8桁にしておくと安全性が高まるから、ということではないでしょうか。
憶測で失礼しました。
記憶認証である以上、そのような説もありえるかもしれませんね。
この分野では、Department of Defense Password Management Guidelineというのが有名だそうです。
米国の国防総省による1985年出版のガイドラインで、セキュリティ上の観点からパスワードを何文字として設定すべきかの計算式が、付録Cにあります。
お尋ねの件の源流は、おそらくこれではないかと思います。
パスワード強度を考慮した文字長 M は、以下の式で計算するそうです:
M = log(L*R/P) / log(A)
L=パスワードの有効期間
R=パスワード推定回数
P=パスワードが破られる確率
A=文字種類
当時のシステム例にたいしては8~9文字という計算例が示されています。
最近のWebアプリケーションに対するものとしては、たとえば、富士通のセキュリティサービスのページにある診断結果報告書サンプルは以下のように説明しています:
L=3年間
R=1分間120回試行
P=1/1000000
A=62文字; a-z, A-Z, 0-9
M=7.97
つまり、3年間の機関で安全なパスワードにするためには少なくとも8桁以上にする必要があります。
20年以上前のガイドラインですが、信頼出来る機関のものであり、また具体的な計算式が示されていることから、これをよりどころにしている可能性は大いにあり得ますね。
ただ、富士通の計算はかなりこじつけ感が強いですが。
昔のコンピュータの扱いやすい長さが(Long)で英数字ならば8バイトだった。(メモリーが高かった)その名残かも。
勿論、2桁や4桁で機密性が貧弱、と言って下限が長すぎる、思い出せない、または間違う人が続出となる。
今はメモリーも記憶媒体(内部・外部とも)安くなったので、それに毛を生やそうと言う考えかも。
パスワードに日本語やその他の言語文字が使えれば短くても、もっと機密性が出ると思うのですが。
OSの制約以外の回答を、と書いているのになぜそれを書くのかな。
8桁が人間が一度に覚えられる限界だからです。
4は少ない
6は少ない
8は少ない
10は覚えきれない
で、とりあえず8にしてあるんだそうな。
どこかの書籍に書いてたと思いますよ。
やっぱり回答開くんじゃなかった。
20年以上前のガイドラインですが、信頼出来る機関のものであり、また具体的な計算式が示されていることから、これをよりどころにしている可能性は大いにあり得ますね。
ただ、富士通の計算はかなりこじつけ感が強いですが。