技評の記事「入力バリデーションはセキュリティ対策」に読者を混乱させるとコメントしたら名誉毀損だと恫喝された件
誰もバイナリとテキストをごっちゃにして取り扱えなんて言ってません。テキストデータの場合のみ自動でチェックするということはできると思います RT @yohgaki: 文字エンコーディングのバリデーションは、バイナリもテキストも受け入れるアプリではシステムが勝手にやるような物じゃない
2011-12-19 23:50:02@ikepyon 自動でチェックするには判別しないとならないですよ。どうやって「自動」で判別するのですか?
2011-12-20 07:11:15@ockeghem 特殊な物もあるでしょうけど(ビットパターンのチェックとか)そういう物を除けば、それで十分だと思います。
2011-12-20 07:12:16@ikepyon それとフレームワークを使うのはオプションであって、汎用言語で入力のバリデーションを自動でやるのはどうかと思いますよ。言語設計者ならライブラリやアプリの仕事とするでしょう。SmalltalkやJavaみたいに環境なら別ですけど。
2011-12-20 07:15:08@ockeghem ガチガチのウォーターフォール型ならそうですね。でもWebアプリは小規模アジャイル型が多くてプログラマが仕様を決めてるので、仕様をちゃんと作る、はこういう場合あまり役立たないですね。
2011-12-20 08:14:03@yohgaki 何を自動判別する必要があるんですか?データをどう取り扱いたいかを決めるのはアプリを書くプログラマですよ?プログラマがデータをテキストデータとして扱いたいと考えたら、テキストデータでないものは自動ではじけるようにすることはできるのではないですか?
2011-12-20 08:30:19@yohgaki データをすうちとしてあつかうのか、テキストなのか、バイナリなのかを判断するのはプログラマ出会って、言語なんかじゃないです
2011-12-20 08:33:00@ikepyon 「自動」ってなに?と言う話なのですか。だとすると「完全自動」はあり得ない。自動で出来る部分はあってもプログラマが理解して明示的にバリデーションする事が必要。(か、Javaみたいに強制させる)
2011-12-20 08:50:47入力バリデーションはプログラマの仕事(設計者の仕事でもあるけど)というのは当たり前すぎるのにどうして異論があるのか不思議でならない。
2011-12-20 09:01:36入力バリデーションセキュリティ対策じゃない、という話には論理的矛盾がある。入力バリデーションはセキュリティ対策であるのに、これに対して異論があるのも理解できない。
2011-12-20 09:03:00それから「コンピュータの計算は不正確」という常識を知らない人が結構いるのも意外。特にfloatなんて有効数字部分が23ビットしかない。有効桁数たったの6桁。これに対する比較が同じにならないからという論理に納得してしまう人が多いのも意外だった。
2011-12-20 09:06:31アジャイル系Web開発ではプログラマが普通に仕様を決めてますよ。この為、どうバリデーションすべきかは知ってないとならないです。RT @ockeghem 仕様をちゃんと作らない前提で、どうやってバリデーションの仕様を決めるのでしょうか?
2011-12-20 10:32:33@yohgaki きちんとした仕様書は作らないけど、仕様は明確になっていると言うことですよね。文書化されているかの違いと言うことで
2011-12-20 10:35:19@ockeghem セキュアかどうかは別として仕様は明らかになってないとならないですね。出来れば作る前がよいけど少なくとも作った後では。
2011-12-20 10:37:53@ockeghem 作った後はコードが仕様なので、分かりやすいかどうかは別にして仕様はある状態になりますね。
2011-12-20 10:39:11[メモ] 軽く2回読んでみたのですが、何を言われているのかよくわかりませんでした。時間があるときにまたゆっくり。 http://t.co/kQcuQZvB
2011-12-20 10:40:39@yohgaki 完全自動化なんて不可能なのはわかりきってます。テキストデータなのに文字エンコーディングがおかしいデータがあるかどうかは自動化出来るでしょ?と言ってるんですが?言語が文字データを取り扱う関数なのに勝手にバイナリデータとして扱うのがおかしいと言ってるんですよ
2011-12-20 11:09:21ですねw RT @tomoki0sanaki: Java とか .NET にすればいいんじゃね!? RT @ikepyon しかし、現行の言語や、フレームワークではそれが実装されてないから、仕方なくプログラマが文字エンコーディングのチェックが必要なのが現状だと思う
2011-12-20 11:09:52@ikepyon 文意が良く理解できなかったのですが「文字エンコーディングのチェックは言語かフレームワークが自動ですべき」つまりプログラマが関与しなくてもチェックできているべき、という考えでは無かったのですか?
2011-12-20 11:32:11@yohgaki テキストデータとしてデータを取り扱う際に文字エンコーディングのバリデーションを言語などでしろというだけです。すべてのデータで自動的にしろなんて考えてません
2011-12-20 13:05:14そういうがあるから現実では難しいですよね。ブラウザが何とかしろと言いたいですが、できないからアプリのプログラマが苦労しないといけないorzRT @s_hskz: レガシーエンコーディングなwebページのform要素からそのエンコにソグワナイ文字?が平気で送られてきますよね。
2011-12-20 13:09:08