連日、情報処理関連の話題が続いておりますが、これも性分ですのでご了承のほどお願い申し上げます。そんだけSPAMコメント&トラックバックに辟易しているという事で。
今まではベイジアンフィルタに目を向けておりましたが、その実装の困難さと所謂スパムコーパスというデータベースの管理コストを鑑み、それに対するリターンと誤検出の訂正措置を行うのが非常に面倒であるという結論に達しました。ぶっちゃけ実装がメンドくさい。
んで目をつけたのが画像認証等、チャレンジ/レスポンス型テストであるCaptcha。早い話、機械では判読不能かつ人間なら判読可能な情報を与え、それに対するレスポンスをみることで回答者が人間か機械かの区別をつけられるというもの。画像認証は言わずもがな、それだけにはとどまらず、クイズのように意味的な文章を回答する等『理解』が必要なテストはCaptchaに当たります。
このテストのいいところは、管理側には人的コストがかからず応答の正当性を確かめられるということです。現在画面に表示されている画像に描かれている数字を記入してください、などはその生成法さえ確かめられれば検定する事が出来ます。機械的スパムを防ぐには最適。
他方、アクセシビリティの問題等も残りますが、現在のところこのサイトでは音声ブラウザを用いた閲覧等は行われていないようで、コメントやトラックバックの送信に関してのみ制限する事には特に問題はないようです。この辺りはピコサイトの特権だ。'`,、 ('∀`) '`,、
幸い、PHPでの文字列を画像化する方法やCaptchaに使えそうなアルゴリズムを思いついたので実装してみる事にします。気まぐれに。
Comment
というわけで実装テスト。文字列長すぎ?