アカウント名:
パスワード:
これが許されるなら漢字パスワードもありでは
Unicodeで文字種を制限してなけりゃ当然、漢字も受け付けるし、ハッシュ化してりゃ元の文字も関係ないので、海外でも既に(意図せず)利用可能になっているサイトはありそうな気がする。そして未テストで使えているだけだと、いつか突然利用不可になるパターンが嫌だ。
Unicodeで文字種を制限してなけりゃ当然、漢字も受け付けるし、ハッシュ化してりゃ元の文字も関係ないので、海外でも既に(意図せず)利用可能になっているサイトはありそうな気がする。 そして未テストで使えているだけだと、いつか突然利用不可になるパターンが嫌だ。
海外のサイトでは、確かに(意図せず?)漢字のパスワードを受け付けるサイトが結構あるようです。一方、日本のWebプログラマーは過剰バリデーション脳に汚染されている人が多いせいか、残念なことに、日本では漢字のパスワードどころか記号すらまともに受け付けないサイトが大半です。
過剰バリデーション脳の歴史は古く、CGI が設置可能なレンタルサーバーが増えてきて、Perlでプログラミングをするのが流行しだした2000年頃に書かれたフリーCGIも、大半が正規表現で過剰に入力内容をバリデーションしていました(それでいて脆弱性だらけでしたが)。そして、何らかの脆弱性が発見されたら根本的な対策を行わずによりバリデーションを強化して入力可能な文字を制限するといった悪循環に陥っている気がするのです。最近でも、ほぼ全てのインジェクション攻撃を無効化/防止する入力バリデーション [ohgaki.net]なんていうものが持て囃されているようですし。
過剰バリデーションの何が行けないかというと、パスワードに記号が使えないことにより安全性が低下したり、「いちご100%」といった記号を含む書籍名の検索や「hogehoge+test@example.com」というメールアドレスが使えないことによって利便性が低下したりするからです。
Gmail だとメールアドレスの最後に "+hoge" と任意の文字列を追加することにより用途毎にメールアドレスを分けて自動整理することができますが、日本のWebサービスの大半は「+」が含まれているというだけで「メールアドレスが不正です」といったエラーを返す残念な仕様になっており、その便利な機能を使うことすらできません。どうやら、メールアドレスに使用できる記号を「-」「_」「.」「@」に限定するバリテーションが大流行しているようです。
技術者の中にも「RFC5322 では、メールアドレスに、ドットとアンダースコアは2つ以上連続させてはならないとされている」といった都市伝説を未だに信じている人が結構いるようですので、「"!#$%&'*+-/=?^_`{|}~\"\\.."@example.com」という RFC上正しいメールアドレスが正常に処理されるようになる日は永遠にこないような気がします(「メールアドレスのルール」系まとめがそろって間違ってるのでご注意を [hatenablog.com])。
日本のWebサービスの大半は「+」が含まれているというだけで「メールアドレスが不正です」といったエラーを返す残念な仕様になっており、その便利な機能を使うことすらできません。
最近、いくつかのサイトの登録メールアドレスを変更したのですが、 そのときの実績(※あまり正確ではない)は、 メールアドレスに「+」が 使えたのが 18件に対し、使えなかったのが 6件で、 「+」が使えない方が少数派でした。
+がイケるサイトにはpixivがあります。あとスラドはSlashdotJapan時代からイケますね。ダメな所は、自分の知っている所ではニコ動のユーザー登録です…
(+を受け付けなくて)マジかよと思ったのが、DTP界の重鎮(ただし死にかけ)のQuarkのサイト。
昔ICQにカタカナパスワード設定してしまって最近まで入れなかった思い出
@前のピリオドを思い出した。perl云々ってよりはRFC規定外だから良しとする風潮の方が個人的には嫌いです。
入力方法に課題がありそう。
他で入力してコピペかな。
Punycodeとかいいんじゃないかな
変換中に見えたの、「希望」でしたっけ?
type="password" にすると●になって英数字以外打てないのがなければ流行るんじゃないかなぁ
<input type="password"> でも、コピペすれば英数字以外のパスワードも入力できます。とはいえ、それが通るかどうかは別の話 [it.srad.jp]。type=password に高をくくっていい加減なバリデーションしているサイトもたまにあって、登録時のパスワード入力は通るけど、認証時のパスワード入力は通らない、なんて羽目になると途方にくれます。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
計算機科学者とは、壊れていないものを修理する人々のことである
すでに意図せずありそう (スコア:1)
Unicodeで文字種を制限してなけりゃ当然、漢字も受け付けるし、ハッシュ化してりゃ元の文字も関係ないので、海外でも既に(意図せず)利用可能になっているサイトはありそうな気がする。
そして未テストで使えているだけだと、いつか突然利用不可になるパターンが嫌だ。
過剰バリデーション脳により、日本では漢字どころか記号すらまともに使えない (スコア:5, 興味深い)
海外のサイトでは、確かに(意図せず?)漢字のパスワードを受け付けるサイトが結構あるようです。一方、日本のWebプログラマーは過剰バリデーション脳に汚染されている人が多いせいか、残念なことに、日本では漢字のパスワードどころか記号すらまともに受け付けないサイトが大半です。
過剰バリデーション脳の歴史は古く、CGI が設置可能なレンタルサーバーが増えてきて、Perlでプログラミングをするのが流行しだした2000年頃に書かれたフリーCGIも、大半が正規表現で過剰に入力内容をバリデーションしていました(それでいて脆弱性だらけでしたが)。そして、何らかの脆弱性が発見されたら根本的な対策を行わずによりバリデーションを強化して入力可能な文字を制限するといった悪循環に陥っている気がするのです。最近でも、ほぼ全てのインジェクション攻撃を無効化/防止する入力バリデーション [ohgaki.net]なんていうものが持て囃されているようですし。
過剰バリデーションの何が行けないかというと、パスワードに記号が使えないことにより安全性が低下したり、「いちご100%」といった記号を含む書籍名の検索や「hogehoge+test@example.com」というメールアドレスが使えないことによって利便性が低下したりするからです。
Gmail だとメールアドレスの最後に "+hoge" と任意の文字列を追加することにより用途毎にメールアドレスを分けて自動整理することができますが、日本のWebサービスの大半は「+」が含まれているというだけで「メールアドレスが不正です」といったエラーを返す残念な仕様になっており、その便利な機能を使うことすらできません。どうやら、メールアドレスに使用できる記号を「-」「_」「.」「@」に限定するバリテーションが大流行しているようです。
技術者の中にも「RFC5322 では、メールアドレスに、ドットとアンダースコアは2つ以上連続させてはならないとされている」といった都市伝説を未だに信じている人が結構いるようですので、「"!#$%&'*+-/=?^_`{|}~\"\\.."@example.com」という RFC上正しいメールアドレスが正常に処理されるようになる日は永遠にこないような気がします(「メールアドレスのルール」系まとめがそろって間違ってるのでご注意を [hatenablog.com])。
Re:過剰バリデーション脳により、日本では漢字どころか記号すらまともに使えない (スコア:1)
日本のWebサービスの大半は「+」が含まれているというだけで「メールアドレスが不正です」といったエラーを返す残念な仕様になっており、その便利な機能を使うことすらできません。
最近、いくつかのサイトの登録メールアドレスを変更したのですが、
そのときの実績(※あまり正確ではない)は、
メールアドレスに「+」が 使えたのが 18件に対し、使えなかったのが 6件で、
「+」が使えない方が少数派でした。
Re:過剰バリデーション脳により、日本では漢字どころか記号すらまともに使えない (スコア:1)
+が
イケるサイトにはpixivがあります。あとスラドはSlashdotJapan時代からイケますね。
ダメな所は、自分の知っている所ではニコ動のユーザー登録です…
Re: (スコア:0)
(+を受け付けなくて)マジかよと思ったのが、DTP界の重鎮(ただし死にかけ)のQuarkのサイト。
Re: (スコア:0)
昔ICQにカタカナパスワード設定してしまって最近まで入れなかった思い出
Re: (スコア:0)
@前のピリオドを思い出した。
perl云々ってよりはRFC規定外だから良しとする風潮の方が個人的には嫌いです。
Re: (スコア:0)
入力方法に課題がありそう。
他で入力してコピペかな。
Re: (スコア:0)
Punycodeとかいいんじゃないかな
Re: (スコア:0)
変換中に見えたの、「希望」でしたっけ?
Re: (スコア:0)
type="password" にすると●になって英数字以外打てないのがなければ流行るんじゃないかなぁ
Re:すでに意図せずありそう (スコア:1)
<input type="password"> でも、コピペすれば英数字以外のパスワードも入力できます。
とはいえ、それが通るかどうかは別の話 [it.srad.jp]。type=password に高をくくっていい加減なバリデーションしているサイトもたまにあって、登録時のパスワード入力は通るけど、認証時のパスワード入力は通らない、なんて羽目になると途方にくれます。