魅惑のセッション処理

セッション処理とは、スクリプトで一定の時間内でのみ有効なハッシュを生成し、ログの更新時にそのハッシュが有効かどうかをチェックすることによって、荒らしかどうかを判断するものである。一定期間有効なハッシュを発行するところのどこが、荒らし対策と結びつくのか?それは、そのハッシュを生成するのに必要なプログラムを書くのが難しいからである。どれくらいかというと、数ギガのファイルでも1バイトでも異なっていると、まったく別の物になってしまう。YY-BOARD NEXT 5.85で実装したのは、極単純で暗号化アルゴリズム固定、クッキーすら使わないなど穴だらけのものであるが、それでも、ページを表示してから1分間しか猶予がないので、人力でないbotからの投稿はある程度防げるハズである。

この処理は、使いようによっては画像への直リンク対策にもなると思う。一般的に画像などのファイルへの直リンク制限は、リファラー制限によるものが多い。しかし、一般的なダウンロードソフトは、これを偽装することができるし、Norton Internet Security等のセキュリティーソフトを入れている場合、リファラーを出さないする機能がついているため、正常に画像が表示されないなどの弊害が出る。また、Googleイメージや、WebArchiveに画像が保存されない可能性もある。そこで、この一定期間有効なハッシュを生成するセッション処理が役に立つ。そもそも、画像が一度クライアントマシンにダウンロードされれば、連続で同一ファイルをダウンロードする必要はないわけで、動作上差し支えないわけだ。

次はJoyful Note Nextに組んでみようと思う。これがアップローダーとして足りない機能は、サムネイル作成機能と、セッション処理、ファイル取得にcgiプロクシを挟む、カウンタあたりだろう。

ダウンロードはWeb素材/ダウンロードより。1

しかし、そろそろPerlからPHPに移行する頃だな・・・。