[P2P]DHTを使ったスパムメール&コメント対策の提案
スパムメールやblogのスパムコメント、本当に嫌ですよね。これをどうやって対処するかというのが今回の課題です。
最近でばベイズ理論を使ってスパムかどうか判断するらしいです。私はその辺の事はあまりよく知らないので勉強しようと思いますが。今回はまず単純な仕組みを使ってスパムフィルタリングをしてみましょう。
まずPCにDHTのミドルウェアを搭載しておくとします。また、メーラーが(あるいはBlogの作成ソフト)がDHTのミドルウェアと連携できるようにしておきます。
仕組みは簡単で、メールの内容(ヘッダーは除く)についてハッシュ値h1を取ります。また、同時にタイトルもハッシュ値h2を計算します。ちなみにヘッダーから最初に転送したホップ元アドレスのハッシュ値h3も計算しておきましょう。
スパムと思われたメールが来た際、あるいはメーラーが自動的に全てのメール(あるいはある程度ベイズ理論でスパムと判断したメール)については上記の手順に沿ってDHTのネットワークにNode_ID=h1となるノードに{h1,h2,h3}を格納します。
(あるいは、{h1,h2,h3,count}というのがあって、スパムとみなした回数をcountとし、スパムが見つかった度にcount++をします。そしてcount > count_limを超えた場合、本当にスパムと取る方法もあるでしょう。)
メールを受け取る際には、自動的にメールから{h1,h2,h3}を計算して、それらがスパムメールかどうか、DHTのノードから自動的に判断するというわけです。つまり、{h1,h2,h3}のうち、少なくとも2つが一致した場合スパムとみなします。
ここでハッシュ値を取る事がポイントです。というのはある文cetのハッシュ値をh_cetとすると、h_cetからcetを復元するのは非常に困難です。そのため、メールの内容はハッシュ値をDHTに格納しても解読できないと言う事です。
これはタイトル、ホップ元IPアドレスもいえます。(もっともホップ元IPアドレスは公開しても良さそうですが。。。)
ただ、この方法ももちろん欠点があって、メール毎に少し内容を変えているとこの手法の有効性は薄れます。
他のスパム対処方法と併用すると効果は上がると思います。
「パソコン・インターネット」カテゴリの記事
- Twitter研究会の講師募集(2009.07.13)
- 音楽という名の情報学(2009.04.25)
- 自分の論文がWeb上で公開できるかチェックできるサイト(2009.03.29)
- 「IT技術者のための距離空間入門」を書くためのメモ(2009.02.04)
- 第2回SBM研究会プレゼン資料公開+ライブ中継用URL(2008.12.05)

Comments