とあるweb屋の仕事術

とあるweb屋の仕事術

10年以上現役のweb製作屋さん。web製作雑務全部やる。

パスワード自動発行のシステム実装ではわかりにくい文字列を排除する

パスワード自動発行のシステム実装ではわかりにくい文字列を排除する

会員登録するときに、

ログインIDとパスワードを

設定するwebサービスは多いと思います。

 

メールアドレスをログインIDとしたり、

パスワードは自分で決めたものにするのか、

自動発行するパタンもあると思います。

 

自動発行する場合に、

ユーザごとにランダムの英数字を

ユニークに発行するわけですが、

ここで注意したいのが、わかりにくい

文字列を含めない、ということ。

 

ユーザのリテラシーが

低い場合、わかりにくい文字列は

入力間違い、入力ミス、認識間違いの

要因になります。

 

たとえば、

小文字の「l(エル)」と数字の「1(いち)」

大文字の「Z(ゼット)」と 数字の「2(に)」

など。

 

ランダムで発行する文字列には

こういったまぎらわしい文字を含めないのが理想。

 

I = 大文字のアイ
l = 小文字のエル
1 = 数字のいち
O = 大文字のオー 
0 = 数字のゼロ  
o = 小文字のオー
2 = 数字のに
Z = 大文字のゼット
j = 小文字のジェイ
i = 小文字のアイ
9 = 数字のキュー
q = 小文字のキュー
g = 小文字のジー
8 = 数字のはち

 

これらの文字列はユーザが

間違いを起こしやすく、

パスワードは正しいはずなのに

認証されない!と問い合わせを

してくるユーザもいるので要注意です。

 

自動発行に上記の文字列は

含めないかたちでランダム生成したい。

上記の文字列を抜いたとしても

セキュリティ的には問題ないはず。