2012-06-10

検閲のためのHTTPステータスコードの必要性

There is no HTTP code for censorship (but perhaps there should be) | Terence Eden has a Blog An HTTP Status Code For Censorship? - Slashdot

イギリスでは、ISPはThe Pirate Bay(世界最大のBitTorrent用マグネットリンクサイト)をブロックするように命令されている。あるISPは、ユーザーに検閲されているのを伝えるために、HTTP 403 Forbiddenを使っているようだ。しかし、これは定義上、間違ってる。なぜならば、HTTPのステータスコード4xxxは、クライアントがエラーな状態にあるかもしれない状況を示すためにあるからだ。また、サーバー側が要求を理解しているが、その処理を拒否した時にも使われる。

単に中継を行うISPが4xxを使うのは、どうもおかしい。それに、既存のステータスコードは、検閲の場合に使われることを想定していない。やはり、検閲が行われていることを示すステータスコードが必要である。

では、何番台のステータスコードがふさわしいのか。

1xxは、要求を受け付けて処理中であるときに使われるステータスコードであり、ユーザーに、確証はできない応答を返すものである。1xxは検閲コードとして使える。

2xxは、クライアントの要求の受付や処理が成功したことを示す。これはふさわしくない。

3xxは、要求の達成には、ユーザーエージェント側での追加的な行動が必要であることを告げるコードだ。これも、おそらくふさわしくない。まあ、政府やISPに規制をやめろと抗議するのはユーザー側の仕事かもしれないが。

4xxは、クライアント側にエラーがありそうな場合に使われる。マイクロソフトは独自のコード、HTTP 450を、パレンタルコントロールによってブロックされた場合に使っている。

5xxは、サーバー側にエラーがあったり、あるいは処理を達成出来なかった場合に送られる。これは、ISPではなく、Webサイト側のサーバーが検閲をしている場合には、使えるかもしれない。

Slashdotでは、いつものように楽しい議論が行われている。たとえば、Evil Bitを立てるべきだとか、「666 地獄行き」にするべきだ(宗教ISPのみが使うべきであるとのツッコミあり)とか、あるいは、「1984 思想犯罪の検出」にするべきだとか。

2 comments:

Anonymous said...

451というのはどうだ。
本が燃えるアイコン付だとなおgood

江添亮 said...

ああ、そうか。
451ってそれだったのか。