アカウント名:
パスワード:
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あと、僕は馬鹿なことをするのは嫌いですよ (わざとやるとき以外は)。-- Larry Wall
ID文字列の同一視、とか? (スコア:2, すばらしい洞察)
あるいは、ショボいハッシュ使ってて衝突しちゃったとか。
Re:ID文字列の同一視、とか? (スコア:2, 参考になる)
IDカラムにbinaryをセットしてなくて、
登録時はアプリケーション側で大文字小文字の区別をしつつ同一IDがないかを確認して登録して、
認証するときに where id='hoge' and password = 'hogehoge'; な行が*1行以上あるか*で確認して、
ユーザー情報を表示するときには where id='hoge' で取得できた1行目のデータを表示、
なんて実装になっていれば、ID:hogeの人がID:Hogeの人のデータを見れてしまう可能性はありますね。
参考:デフォルトでは、MySQL 検索では大文字と小文字は区別されません [mysql.com]
Re: (スコア:0)
誕生日パラドックス脳の恐怖? (スコア:2, 参考になる)
100万人の会員がいたとして、半々くらいの確率で「その中の2人がコリジョンを起こす」のだとすると、ハッシュは40ビットあたりですかね。
逆にハッシュが32ビットだったとしたら、会員数は6万人程度かな。
例えば、DB記録の都合上IDを32ビット数値で扱いたくて、MD5の一部から32ビットだけ抽出したとか。
「32ビットの空間なら、50%の確率で衝突が起きるのはユーザーが21億人になったとき。余裕、余裕」
Re: (スコア:0)