トップページに戻る

Category

AllArchives

Checker

Credit

会員制サイトにおけるパスワード(2)

会員制サイトにおけるパスワード(1)で書いた分類方法□2のシステムはサーバー内に「正しいパスワード」を保存する必要がありません。一方向暗号を施した文字列があればそれで事足ります。秘密の質問に答えた時点でその(暗号化された)文字列を新しく書き換えればいいんです。
□2の中で「秘密の質問に答えるとパスワードを変更できる」というhotmail式を追跡してみましょう。

  1. 正しいパスワードに「tokix」、秘密の質問の答えに「マンゴ」を設定
  2. 「tokix」を一方向暗号化した文字列aと「マンゴ」を一方向暗号化した文字列Aをサーバーに保存
  3. パスワードを忘れた!
  4. 秘密の質問に対して「マンゴ」を入力
  5. 入力された「マンゴ」を一方向暗号化し文字列A'を得る
  6. 得られたA'がサーバーに保存されているAと同一なので「正しい答え」と判断・新しいパスワードが設定可能になる
  7. 新しいパスワードに「kawase」を設定
  8. サーバーから(最初のパスワード「tokix」を一方向暗号化した)aを消去・代わりに新しいパスワード「kawase」を一方向暗号化した文字列bを保存
生のパスワードをサーバーに保存する必要がないのが分かりますね?

対して分類方法□1のシステムはサーバー内に「正しいパスワード」ないしは「正しいパスワードを可逆的に暗号化した文字列」を保存する必要があります。「(ブラウザかメールに)正しいパスワードを出力する」っていうのはそういうことです。

仮にサーバー内のパスワードデータファイルを抜けたとします。cgiのバグ等を利用し抜けたとします。
□2では抜けたとしてもそれは意味のない文字列です。□1では意味のある文字列です。

こうした視点で見ると□2の方が□1より強固なシステムと思えます。勿論これが唯一の視点ってことではないですけど。「秘密の質問」に「適当に答えればいつか当たる」ようなモノを設定されたら脆いですし。
「パスワードを忘れた場合の救済措置」といった極一部分を見ることでサーバー上で動いているcgi等内部システムの様子が推測できたりもする訳です。

SeeAlso

SameSubCategory

Footprint

Navigation

TrackBack

この記事へのトラックバック

Comment

PostForm

情報を登録  
コメントは本文以外省略可能で、当方の承認後掲載されます