JP4708466B2 - 望ましくない電子メッセージの送信または受信を妨害するための方法 - Google Patents

望ましくない電子メッセージの送信または受信を妨害するための方法 Download PDF

Info

Publication number
JP4708466B2
JP4708466B2 JP2008271957A JP2008271957A JP4708466B2 JP 4708466 B2 JP4708466 B2 JP 4708466B2 JP 2008271957 A JP2008271957 A JP 2008271957A JP 2008271957 A JP2008271957 A JP 2008271957A JP 4708466 B2 JP4708466 B2 JP 4708466B2
Authority
JP
Japan
Prior art keywords
signature
message
electronic message
character sequence
scanning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008271957A
Other languages
English (en)
Other versions
JP2009104606A (ja
Inventor
ジェフリー・オーエン・ケファート
Original Assignee
トレンドマイクロ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by トレンドマイクロ株式会社 filed Critical トレンドマイクロ株式会社
Publication of JP2009104606A publication Critical patent/JP2009104606A/ja
Application granted granted Critical
Publication of JP4708466B2 publication Critical patent/JP4708466B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、一般に電子メールおよびその他のタイプの電子メッセージの送信および受信が可能なディジタル・データ・プロセッサおよび相互通信するディジタル・データ・プロセッサのネットワークに関する。特に、本発明は、「スパム」(spam)とも呼ばれる非送信請求商用Eメール(UCE)など、望ましくない非送信請求電子メールを自動的に検出し処理するためのシステムおよび方法に関する。
毎日、無数のインターネット・ユーザは、通常、電子メール(Eメール)の形でありがたくない電子メッセージを受信する。このようなメッセージの最もありふれた例は、一般に「スパム」と呼ばれる非送信請求商用Eメール(UCE)である。UCEは、通常、特定の商品、サービス、またはウェブ・サイトを奨励するものであり、数千人または数百万人もの個人に無差別に送信され、その大多数はUCEが迷惑なものまたは不快なものと認識している。UCEは、重大な問題として広く認められている。UCEに関する記事はほとんど毎日のようにCNETなどの技術ニュース・サービスに登場する。Eメール・ユーザがUCEに曝される機会を低減するために、いくつかの市販用製品およびシェアウェア製品が作成された。少なくとも1社の新設企業であるBright Light Technologiesは、UCEを検出してフィルタリングで除去するための技術を生産して販売するという唯一の目的のために設立された。法律による制限はいくつかの州で企図されており、実際に複数の州で最近実施された。
その他の形式の望ましくないEメールとしては、うわさ、でっちあげ、チェーン・レターなどがある。このような形式のEメールのそれぞれは、複数ユーザからなるネットワーク内で非常に素早く増殖する可能性がある。うわさは、ユーザ全体に非常に勢いよく広まる可能性があり、その結果、時間の浪費や不必要な懸念を引き起こす可能性がある。でっちあげのコンピュータ・ウィルスとして最も上出来なものは、コンピュータ・ウィルスそのものに匹敵するほど長続きし、相当なパニックを引き起こす恐れがある。最後に、チェーン・レターの流布は、企業の方針または連邦法によって禁止するのに十分なほど重大な現象である。
幾分異なるクラスのEメールは機密Eメールであり、その送信または受信は望ましくない場合が多い。機密Eメールは、選択されたグループ外の人には転送されないようになっている。したがって、これらのメッセージの配布を制御することに関する懸念が発生する。
UCEおよび電子的に伝えられるうわさ、でっちあげ、チェーン・レターに共通の特徴は、問題のメッセージの内容(およびその送信)が(単に面白くないどころか)望ましくないものであるという合意が広まりそうなことである。これは、このようなメッセージが電子的形式になっているということとともに、このEメールを自動的に検出し、無害なものにしようと試みる様々な技術を企図することを可能にするものである。
現在までのところ、UCEは、このような努力の排他的な焦点になっていた。既存のUCEソリューションはいくつかの異なる形を取る。その一部は、既存のEメール・パッケージ(たとえば、Eudoraメール・システムとともに機能するよう設計されたMailJail)またはEメール・プロトコル(たとえば、Windows 95、Windows 98、またはWindows NTプラットフォーム上でPOP3プロトコルをサポートするいずれかのEメール・パッケージのために機能するSpam Exterminator)とともに機能するよう設計されたソフトウェア・パッケージである。その他のソリューションは、広く使用されるメール・プロトコル(たとえば、指定のサイトからあるいは明示的に許されているもの以外のサイトからのメール・リレーをブロックするための機構を提供するSendMailメール転送プロトコルの最近のアップグレードであるSendMail v.8.8)に統合されている。もう1つのタイプのソリューションは、Eメール・フィルタリング・サービス、たとえば、junkproof.comによって提供されるサービスであり、これはUCEを送信したユーザに罰金を科すものである。Bright Light Technologiesでは、ソフトウェア製品とサービスを併用するよう提案している。
どのようにパッケージ化可能であっても、これらのソリューションの大部分は、認識と応答という2つの主なステップから構成される。認識ステップでは、所与のEメール・メッセージを検査して、それがスパムになりそうかどうかを判定する。認識ステップ中にそのメッセージがスパムになりそうであると見なした場合、何らかの応答を行う。典型的な応答としては、そのメッセージを自動的に削除すること、それがスパムである可能性があることにユーザの注意をひくようそれにラベルまたはフラグを付けること、優先順位がより低いメール・フォルダにそれを入れることなどがあり、おそらく、カストマイズ可能なメッセージを送信側に返送することと結合される。
主な技術的難題は認識ステップにある。最も重要な難題のうちの2つは、偽陽性(合法的メールを偽ってスパムとして告発すること)および偽陰性(スパムをそれとして識別し損なうこと)の率をできるだけ低く維持することを含む。多種多様な市販用アプリケーションおよびフリーウェア・アプリケーションでは、一般的な問題に対処するため、以下の基本的なスパム検出戦略に基づく組合せまたは変形あるいはその両方を使用する。
ドメインベースの検出
スパムを送信する人(「スパマー」(spammers))は、そこからスパムを送信するための特別なインターネット・アドレス・ドメインをセットアップする場合が多い。一般的な反スパム・ソリューションの1つは、「スパム」ドメインのブラックリストを維持し、このようなドメインから発信されたメールを拒否するか、送達しないか、または送信側に返すことである。スパムが新しい「スパム」ドメインから流出し始めると、そのドメインをブラックリストに追加することができる。
たとえば、xmission.comでは、指定のサイトからのメールを送信側に返送するようにsendmail.cfの規則を変更した。そのテキスト・ファイル(http://spam.abuse.net/spam/tools/dropbad.txt)は、moneyworld.com、cyberpromo.com、bulk-e-mail.com、bigprofits.comなどを含む、スパマーによる使用のためにのみセットアップされたことが分かっているいくつかのドメインをリストしている。http://www.webeasy.com:8080/spam_download_tableには、1000箇所以上のサイトがこのようにブラックリスト化されている。SendMailの最近のバージョン(バージョン8.8以降)はこのようなリストの使用を容易にするよう変更されており、これはスパムとの戦いにおいて重要な進展と見なされている。
しかし、無差別に使用されると、この手法の結果、偽陽性率および偽陰性率が高くなる可能性がある。たとえば、スパマーがaol.comドメインからスパムを送信する場合、aol.comはブラックリストに追加することもできる。その結果、このドメインから合法的にメールを送信する無数の個人はそのメールがブロックされる恐れがある。言い換えれば、偽陽性率は容認できないほど高くなる恐れがある。これに反して、スパマーは禁止ドメインから新たに作成した非禁止ドメインまたは多くの合法的ユーザが使用するドメインへ素早く切り替えることができ、したがって、多くの偽陰性が発生する。
ヘッダベースの検出
スパムの顕著な特徴は、極めて多数の受信側に送信されることである。これを示す表示であり、あるメッセージがスパムになりそうであるという証拠と見なすことができるものがメール・メッセージのヘッダ内に存在する場合が多い。たとえば、長い受信側のリストは通常、集合名のより小さいセットに送信することによって処理されるので、そのユーザの明示的なEメール・アドレスはTo:フィールドに現れない。
Ross Rader of Internet Direct(Idirect)は、Eudora Light、Microsoft Mail、Pegasusを含む、普及している多様なEメール・プログラムのためにスパムのこの特徴に基づいて単純な規則をセットアップするための説明書を発表した。メール・メッセージ・ヘッダがその規則と一致する場合、そのメールはユーザの受信箱から自動的に除去され、特別なフォルダ内に置かれるが、そのフォルダではそれを後で調べるかまたは検査なしで容易に削除することができる。
しかし、この方法のユーザがこれらの検出規則の個別設定に多くの努力を注がない限り、偽陽性率が非常に高くなる可能性があり、したがって、合法的Eメールの大部分はスパムと分類されることになる。
テキストベースのキーワード検出
スパムは、通常、製品を販売し、ポルノのウェブ・サイトを訪れることを唱え、ネズミ講式販売またはその他の金銭的詐欺への賛助を得ようと積極的に試みるという点で普通のEメールとは区別される。したがって、「MAKE MONEY FAST」というテキスト・フラグメントを含む1通のメールは、「During my meeting with you last Tuesday」で始まるメールよりスパムである可能性が高い。
一部の反スパム方法は、各Eメールの本文を走査して、スパムには見られるが他のEメールには見られない傾向のあるキーワードまたはキーフレーズを検出する。キーワード・リストおよびキーフレーズ・リストはカストマイズ可能である。この方法は、上記のドメインベース検出技法およびヘッダベース検出技法と併用される場合が多い。この技法の例としては、procmail、Spam Exterminator、SPAM Attack Pro!とともに機能するjunkfilter(http://www.pobox.com/gsutter/junkmail)がある。
この場合も、普通のEメール・メッセージが禁止キーワードまたはキーフレーズを含むときに偽陽性が発生する可能性がある。この手法は、偽陰性も被りがちである。というのは、禁止キーフレーズのリストは、スパムの新しいインスタンスの到来に遅れないようにするために、毎日数回更新しなければならない恐れがあり、これは反スパム・ベンダにとって技術的に難しいと同時にユーザにとっても不快であるからである。
テキストベースのマシン分類
Spam Be Gone!はEudoraとともに機能するフリーウェア製品である。これは、スパムおよび非スパムEメールの例を記録し、それぞれのインスタンスに対する各着信Eメールの類似性を測定し、スパムまたは非スパムとしてのEメールの分類に達するようその類似性のスコアを結合するインスタンスベースの分類プログラムである。この分類プログラムは、各個別ユーザごとに自動的にトレーニングされる。ユーザが分類プログラムを開発するには、通常、数週間から数カ月はかかる。
十分な量のトレーニングの後、この手法の偽陽性率および偽陰性率は他の技法より低くなると言われている。ある事例(http://www.internz.com/SpamBeGone/stats.html)では、複数のユーザに関する平均が提供されないので、これがパフォーマンスに関する上限になると想定することができるが、偽陰性率は1ないし2カ月間のトレーニング後に10分の数パーセントより低くなり、偽陽性率は1カ月後に20%で、2カ月後に5%であった。したがって、最良の場合でも、スパムとしてラベルが付けられた20のメッセージのうちの1つは実際には合法的なものになる。これは、反スパム・ソフトウェアが自動的にメールを削除するかまたはそれを送信側に返すなどの強い態度で応答する場合には特に容認できないものになる可能性もある。
上記のUCE検出方法はいずれも、スパムにとって総称的であるが普通の非スパムEメールではあまり一般的ではない機能を使用するという意味で「総称的」なものである。これは、通常、ホスト・プログラムを走査して特定のウィルスを示す特別な「シグニチャ」バイト・パターンがあるかどうかを確認することにより特定の既知のコンピュータ・ウィルスを検出するためにウィルス対策プログラムによって一般に使用される「特定の」検出技法とは対照的なものである。総称認識技法は、以前は未知であった新しいスパムを捕らえることができるので、魅力的なものである。しかし、上記で示したように、その欠点は、容認できないほど高い偽陽性率を生じ、場合によっては容認できないほど高い偽陰性率も生じる傾向があることである。特定の検出技法は、通常、より小さい偽陽性率および偽陰性率を有するが、総称技法を実行するより頻繁な更新が必要になる。
総称検出技法は、うわさ、でっちあげ、チェーン・レターまたは機密Eメールなど、他のタイプの望ましくないEメールを認識する際にあまり役に立ちそうもない。送信側のドメインまたはメール・ヘッダのその他の態様に基づく認識は、まったく機能しそうもない。メッセージ本文内に存在するキーワードまたはキーフレーズを基礎とするでっちあげおよびチェーン・レターの総称認識は可能であるかもしれないが、内容の範囲がより広くなりそうなので、スパムの場合より難しくなりそうである。また、テキストを基礎とする機密Eメールの総称認識はほとんど確実に不可能である。というのは、どのようなマシン・アルゴリズムでも認識可能なやり方で機密テキストと非機密テキストを区別するものが何もないからである。
Bright Light Technologiesは他の反スパム製品/サービスを奨励している。Bright Lightでは、インターネット全体で複数のEメール・アドレス(または「プローブ」)を使用しているが、これは合法的宛先ではないので、理論上は望ましくないメッセージのみを受信するものである。受信したメッセージは、24時間体制のオペレーション・センタに配置されたオペレータによって読まれる。これらのオペレータは、メッセージを評価し、ユーザ・グループに対応するメール・サーバ内のスパムブロック機能を制御する規則を更新する。
UCE検出および応答のこの方法は、総称検出ではなく特定の検出を使用するので、本質的には偽陽性および偽陰性に対してあまり脆弱ではないが、いくつかの欠点がある。そのうちの多くは、サービスを維持するために必要な大量の手動労力に由来するものである。Bright Lightのオペレーション・センタは、スパムがあるかどうかEメールのストリームをモニタし、スパムの特定の事例を示す適切なインジケータと思われるキーワードおよびキーフレーズを手動で抽出し、これらのキーワードまたはキーフレーズをデータベースに記憶する専門家を使用しなければならない。いずれかの企業がこのような1組の専門家を独力でサポートすることはほとんど法外に高くなりそうなので、このようにして自社を保護することを希望する企業は、Bright Lightのオペレーション・センタによる連続し途切れないサービスに完全に依存することになると思われる。少なくとも一部の企業は、外部組織からより自由であることと、単一組織によって達成されそうなもの以上のカストマイズを見込んでいるソリューションを選ぶかもしれない。この問題の最重要点は、Bright Lightの方法では互いに独立しているべき2つのタスク、すなわち、望ましくないものとしてメッセージにラベルを付けることと、望ましくないメッセージからシグニチャを抽出することが結合されることである。手動入力の要件を望ましくないメッセージにラベルを付ける際の要件に削減することが可能である場合、これにより、望ましくないメッセージの協調的決定のローカライズが可能になると思われる。さらに、Bright Lightは、キーワードまたはフレーズに基づいて可能な一致を特定のメッセージ全体(またはその大部分)への正確な一致または近似の一致によってより厳重にテストすることができるような補助データを専門家が抽出する際のプロセスについて説明していない。したがって、その特定のソリューションは、個別ユーザがメッセージ一致に関するより厳重な条件を指定する機会を持つと思われるものより偽陽性に対してより脆弱になりそうである。
もう1つの欠点は、でっちあげ、チェーン・レター、不適当に転送された機密メッセージを含むより広範囲のクラスの望ましくないメッセージとは対照的に、Bright Lightのソリューションは特にUCEに向けられていることである。ひとまとめにして考えると、プローブ・アカウントはすべてのUCEのうちの妥当な断片を受信することができるが、それがチェーン・レターおよびうわさを引き寄せることは不明である。
したがって、本発明の一目的は、非常に低い偽陽性率および偽陰性率で、すべてのタイプの望ましくないメールのインスタンスを検出し処理するための自動的かつ非総称的な手順を提供することにある。
本発明の他の目的は、スタッフ配置を伴わず、むしろ積極的にUCEを識別するためにユーザ自身を利用する安価なソリューションを提供することにある。
本発明のさらに他の目的は、機密Eメール・メッセージの望ましくない送信または受信あるいはその両方を防止するためのシステムおよび方法を提供することにある。
本発明は、低い偽陰性率および非常に低い偽陽性率でUCEおよび他の形式の望ましくないEメールを正確に検出し処理するための自動手順を提供する。既存の総称検出方法とは対照的に、本発明は、特定の検出技法を使用して望ましくないメッセージを認識する。言い換えれば、本発明のシステムは、望ましくないメッセージの特定のインスタンスに対するその正確な一致または接近した一致を基礎として望ましくないメッセージを効率よく検出する。Bright Lightによって使用される特定の技法とは対照的に、特定の望ましくないメッセージを識別するために使用する文字ストリングは完全に自動的に導出され、エンド・ユーザが様々なレベルの応答を開始するのに必要な一致度を調整できるようにする補助データで補足される。もう1つの対照的な点は、シグニチャ・データの自動導出によりフレキシビリティが増すことである。というのは、必要な唯一の手動入力は望ましくないものとして特定のメッセージにラベルを付けることであるからである。このため、普通のユーザは、望ましくないメッセージを定義するために協調的に機能することができ、専門家が手動でラベルを付け、望ましくないメッセージからシグニチャを抽出しなければならない外部の集中オペレーション・センタに対する依存状態から解放される。これにより、でっちあげおよびチェーン・レターの権威は、まったく異なる種類の専門知識を必要とする恐れがある、シグニチャの抽出という負担をさらに課すことなしに、それを含むメッセージを識別することができる。もう1つの対照的な点は、抽出したシグニチャ・データによりユーザが、シグニチャの一致からメッセージ全体の一語一句の一致に至る、所与のレベルの一致を構成するものについて独立したフレキシブルな定義を定義できることである。
本発明の方法は、第1の(「アラート」)ユーザが望ましくないメールの所与のインスタンスを受信したときに、そのメッセージに望ましくないものとしてラベルを付けることと、そのメッセージに関するシグニチャを抽出することと、シグニチャ・データベースにそのシグニチャを追加することと、第2の(できる限り同じものを含む)ユーザのメッセージを定期的に走査してデータベース内のシグニチャが存在するかどうかを確認することと、第2のユーザのメッセージのうち、シグニチャを含むものを望ましくないものとして識別することと、このようにラベルが付けられたメッセージに対して適切に応答することとを含む。
具体的には、複数ユーザからなるネットワーク内で望ましくない電子メッセージの送信または受信を妨害する方法は、少なくとも1つの特定の電子メッセージが望ましくないものであることを判定するステップと、少なくとも1つの特定の電子メッセージまたはその変形の検出を可能にする検出データを自動的に抽出するステップと、少なくとも1人のユーザからの1つまたは複数のインバウンド・メッセージまたはアウトバウンド・メッセージあるいはその両方を走査して少なくとも1つの特定の電子メッセージまたはその変形が存在するかどうかを確認するステップと、走査ステップに応答して適切なアクションを実行するステップとを含む。好ましいことに、この方法は、抽出した検出データを記憶するステップをさらに含む。
好ましいことに、判定ステップは、少なくとも1つの特定の電子メッセージの増殖が望ましくないという通知を受信するステップを含む。この受信ステップは、好ましいことに、少なくとも1つの特定の電子メッセージを望ましくないものまたは機密のものとして識別する信号をアラート・ユーザから受信するステップを含む。少なくとも1つの特定の電子メッセージはアラート・ユーザの受信箱に受信することができる。この受信ステップは、好ましいことに、特定の電子メッセージに望ましくないものとしてのフラグを付けるべきであることを示すための識別子をアラート・ユーザに提供するステップを含む。この提供ステップが電子メッセージが望ましくないものであるという識別を援助するために総称検出器を提供するステップを含むことは、好ましいことである。
本発明の抽出ステップは、好ましいことに、少なくとも1つの特定の電子メッセージからシグニチャ情報を抽出するステップを含む。記憶ステップは、好ましいことに、走査ステップに応答して、少なくとも1つの特定の電子メッセージに関する情報をシグニチャ情報に追加するステップを含む。このシグニチャ情報は、好ましいことに、少なくとも1つの特定の電子メッセージからのシグニチャを含む。記憶ステップは、そのシグニチャを少なくとも1つのシグニチャ・データベースに記憶するステップを含むことができる。このシグニチャ・データベースは、好ましいことに、複数のシグニチャ・クラスタを含み、各クラスタは実質的に類似した電子メッセージに対応するデータを含む。シグニチャ・クラスタのそれぞれは、好ましいことに、走査情報を有する文字シーケンス・コンポーネントと、特定のシグニチャ変形に関する識別情報を有する原型コンポーネントとを含む。走査情報は、好ましいことに、特定の電子メッセージに関するサーチ文字シーケンスと、そのクラスタ内に表されるすべての電子メッセージに関する拡張文字シーケンス情報とを含み、識別情報は、特定のシグニチャ変形に関連する電子メッセージのフル・テキスト記憶コピーを指すポインタと、電子メッセージのハッシュブロックと、電子メッセージのコピーが受信され、その増殖が望ましくないものとしてアラート・ユーザによって報告された特定のインスタンスに対応するアラート・データとを含む。
本発明の抽出ステップおよび走査ステップは、複数ユーザからなるネットワークの全域で同時かつ非同期に行うことができる。
本発明の方法は、走査ステップの前に、少なくとも1つの特定の電子メッセージが望ましくないものであることを確認するステップをさらに含むことができる。この確認ステップは、好ましいことに、総称検出技法により少なくとも1つの特定の電子メッセージが望ましくないものであることを確認するステップを含む。この確認ステップは、少なくとも1つの特定の電子メッセージが望ましくないものであることを所定の限界数のユーザが通知することを必要とするステップを含む。
抽出ステップは、好ましいことに、特定の電子メッセージを走査して少なくとも1つのシグニチャ・データベース内のシグニチャがあるかどうかを確認するステップと、走査ステップで一致シグニチャを検出したことに応答して、その一致シグニチャを一致クラスタ内の各メッセージ変形と比較するステップとを含む。この比較ステップは、好ましいことに、特定の電子メッセージに関するハッシュブロックを計算するステップと、計算したハッシュブロックを各原型コンポーネントの識別情報内の変形ハッシュブロックと比較するステップとを含む。本発明の方法が、正確な変形ハッシュブロック一致が検出された場合に、そのポインタを使用して変形一致のフル・テキスト記憶コピーを検索するステップと、変形一致のフル・テキスト記憶コピーと特定の電子メッセージのフル・テキストがその特定の電子メッセージを変形のインスタンスと見なすのに十分なほど類似していると見なされた場合に、特定の電子メッセージからアラート・データを抽出し、それを変形一致に関するアラート・データに追加するステップと、正確な変形ハッシュブロック一致が検出されないかまたは特定の電子メッセージのフル・テキストがそのデータベース内の変形のいずれかと十分に類似していないと判断された場合に、その特定の電子メッセージがいずれかの既存のクラスタと十分に類似しているかどうかを判定するステップと、その特定の電子メッセージがある既存のクラスタと十分に類似している場合に、特定の電子メッセージに関連する新しい識別情報を計算するステップと、その特定の電子メッセージが既存のクラスタと十分に類似していると判定されない場合に、その特定の電子メッセージに関する新しいクラスタを作成するステップとをさらに含むことは、好ましいことである。判定ステップは、好ましいことに、各クラスタの拡張文字シーケンス情報に示されたその特定の電子メッセージの領域のチェックサムを計算するステップと、計算したチェックサムを各クラスタの拡張文字シーケンス情報内の記憶チェックサムと比較するステップとを含む。この方法は、好ましいことに、シグニチャ一致がまったく検出されない場合に、その特定の電子メッセージに関する新しいクラスタを作成するステップをさらに含む。拡張文字シーケンス情報は、好ましいことに、開始オフセット・フィールドと、領域長フィールドと、CRCフィールドとを含み、この方法は、各クラスタごとに、最長領域長を有する一致領域を決定するステップと、すべてのクラスタのうちで最長領域長が少なくとも指定の限界長と等しい場合に、最長領域長クラスタを特定の電子メッセージ原型が追加される原型クラスタとして識別するステップとをさらに含む。最後に、本発明の方法は、好ましいことに、識別したクラスタの走査情報を再計算するステップを含む。アラート・データは、好ましいことに、コピーが本来受信された時刻を有する受信時刻フィールドを含み、この方法は、各シグニチャ・クラスタのすべての変形の受信時刻フィールドを現在時と定期的に比較するステップと、受信時刻フィールドのいずれも所定の日時より最近のものではないシグニチャ・クラスタを除去するステップとをさらに含む。
走査ステップは、好ましいことに、メッセージ本文を抽出するステップと、メッセージ本文を不変形式に変換するステップと、不変形式を走査して検出データに対する正確な一致または接近した一致があるかどうかを確認するステップと、各一致ごとに一致のレベルを決定するステップとを含む。
実行ステップは、好ましいことに、少なくとも1つの特定の電子メッセージまたはその変形の存在を発見したときに適切なアクションを実行するステップを含む。その実行ステップは、少なくとも1つの特定の電子メッセージまたはその変形に望ましくないものまたは機密のものとしてのラベルを付けるステップを含むことができる。また、この実行ステップは、少なくとも1つの特定の電子メッセージまたはその変形を除去するステップも含む。
実行ステップは、好ましいことに、1つまたは複数のユーザ・プリファレンスに応答して、決定した一致のレベルごとに適切なアクションを実行するステップを含み、その決定ステップは、好ましいことに、各一致ごとに最長領域一致を検出するステップと、走査したメッセージのハッシュブロックと抽出した検出データのそれぞれのハッシュブロックの間のハッシュブロックの類似性を計算するステップと、1つまたは複数のユーザ・プリファレンスを受信するステップと、検出ステップ、計算ステップ、および受信ステップに応答して、一致のレベルを決定するステップとを含む。
本発明は、複数ユーザからなるネットワーク内で望ましくない電子メッセージの送信または受信を妨害するための方法ステップを実行するためにマシンによって実行可能な命令からなるプログラムを具体的に実施する、マシンによって読取り可能なプログラム記憶装置も含み、その方法は、少なくとも1つの特定の電子メッセージが望ましくないものであることを判定するステップと、少なくとも1つの特定の電子メッセージまたはその変形の検出を可能にする検出データを自動的に抽出するステップと、少なくとも1人のユーザからの1つまたは複数のインバウンド・メッセージまたはアウトバウンド・メッセージあるいはその両方を走査して少なくとも1つの特定の電子メッセージまたはその変形が存在するかどうかを確認するステップと、走査ステップに応答して適切なアクションを実行するステップとを含む。
最後に、本発明は、複数ユーザからなるネットワーク内で望ましくない電子メッセージの送信または受信を妨害するためのシステムであって、少なくとも1つの特定の電子メッセージが望ましくないものであることを判定する手段と、少なくとも1つの特定の電子メッセージまたはその変形の検出を可能にする検出データを自動的に抽出する手段と、少なくとも1人のユーザからの1つまたは複数のインバウンド・メッセージまたはアウトバウンド・メッセージあるいはその両方を走査して少なくとも1つの特定の電子メッセージまたはその変形が存在するかどうかを確認する手段と、走査手段に応答して適切なアクションを実行する手段とを含むシステムも含む。その他の点では、このシステムの好ましい実施の形態は本発明の方法の好ましい実施の形態と一致する。
図1は、本発明の教示を実施するために適当なシステム10のブロック図である。バス12は、中央演算処理装置(CPU)14と複数の他のシステム・バス・ユニットの間でアドレス、データ、制御を搬送するための複数の信号線からなる。ランダム・アクセス・メモリ(RAM)16は、システム・バス12に結合され、プログラム命令記憶域および作業メモリをCPU14に提供する。シグニチャ抽出モジュールおよび走査/フィルタ・モジュール15は、その方法については以下に説明するが、CPU14あるいは別々のCPU上で動作することができる。端末制御サブシステム18は、システム・バス12に結合され、ディスプレイ装置20、通常はCRTまたはLCDモニタに出力を供給し、キーボードまたはポインティング・デバイスなどの手動入力装置22からの入力を受け取る。ハード・ディスク制御サブシステム24は、回転固定ディスクまたはハード・ディスク26をシステム・バス12に両方向に結合する。制御装置24およびハード・ディスク26は、CPU命令およびデータのための大容量記憶域を提供する。フロッピー・ディスク・ドライブ30とともに、フロッピー・ディスケット30aからシステム・メモリへのコンピュータ・ファイルの転送の際に入力手段として有用なフロッピー・ディスク制御サブシステム28は、フロッピー・ドライブ30をシステム・バス12に両方向に結合する。最後に、通信サブシステム32は、システム・バス12に結合され、インターネットなどのネットワークへのリンクを提供する。
図1に示す構成要素は、パーソナル・コンピュータ、ポータブル・コンピュータ、ワークステーション、ミニコンピュータ、またはスーパーコンピュータ内で実施することができる。このため、バス12の構造またはそのバスに結合されるCPU14の数など、データ処理システム10の物理的な実施の形態の詳細は、本発明の動作にとって重大なものではなく、以下ではこれ以上詳細には説明しない。
大まかに言えば、本発明の方法は2つの段階を含む。第1に、シグニチャ抽出段階では、現在、システムによってそれとして認識されていないような望ましくない(または機密の)メッセージは、おそらく自動手順によって援助される第1のアラート・ユーザによって望ましくない(または機密の)ものとしてラベルが付けられ、所与のシグニチャ・データは、そのメッセージから自動的に抽出され、ユーザ全体に配布される1つまたは複数のデータベース内に置かれる。第2に、シグニチャ走査段階では、少なくとも1人のユーザのメッセージ・セット(できる限り第1のアラート・ユーザのセットを含む)は、実質的に類似したメッセージのインスタンスを検出しようとして、抽出したシグニチャ・データを使用して走査され、このようなメッセージが検出されると適切なアクションが実行される。
図2は、具体的にスパムに対処する本発明の一実施の形態が適用されるコンピュータ・システム環境を示している。スパマー200は、スパム202を企業A204および企業B206に送信する。実際には、スパム202は、多くの様々な企業に送信されるはずである。企業A204が本発明を使用すると想定すると、スパム202は、1人または複数のユーザがアカウントを維持しているメール・サーバ208で受信される可能性がある。ユーザA210が自分のメールにアクセスすると想定すると、スパム202はその着信メールのリストで検出される。ユーザA210がスパム202をそれとして識別したことに応答して、識別されたスパム212はそれとしてラベルが付けられ、本発明のシグニチャ抽出段階が開始される。
本発明のシグニチャ抽出段階では、識別されたスパム212はメール・サーバ208によってシグニチャ抽出エンジン214に転送される可能性がある。シグニチャ抽出エンジン214によって抽出された後、識別されたスパム212のシグニチャはメール・サーバ208に返され、シグニチャ・データベース216に記憶される。本発明のシグニチャ走査段階では、ユーザB218およびユーザC220の着信(または発信)メッセージは、シグニチャ・データベース216内の抽出シグニチャ・データを使用して走査される。この場合、実質的に類似したメッセージ222のインスタンスは、ユーザのためにフラグが付けられるか、その受信箱から除去されるか、または送信が防止される。
この2通りの段階は、ユーザ全体にわたって同時かつ非同期に機能することができる。たとえば、ユーザAは、メッセージ3を読み取って、それに望ましくないものとしてのラベルを付けながら、自分のメッセージを走査して、既知の望ましくないメッセージ1および2があるかどうかを確認している可能性がある。数分後に、ユーザBのメッセージを走査して、望ましくないメッセージ1、2、3が存在するかどうかを確認することができる。30分後にユーザCは第4の望ましくないメッセージ4を発見する可能性があり、1時間後にユーザAのメッセージをもう一度走査して、この場合は1、2、3、4が存在するかどうかを確認することができる。本発明は、アウトバウンド・メッセージならびにインバウンド・メッセージの走査に備えるものである。これは、でっちあげ、チェーン・レター、機密メッセージなど、1人のユーザから他の複数のユーザに転送されそうなタイプのメッセージについては特に有利である。転送される前に望ましくないアウトバウンド・メッセージを捕らえることは、多数の受信側になる可能性のあるものに対して送信された後でメッセージを処理することよりかなり効率のよいことである。
本発明の第1の段階でメッセージから抽出され、本発明の第2の段階で重複メッセージまたは類似メッセージを認識するために後で使用されるシグニチャ・データを表す好ましいデータ構造については図3に示す。当業者であれば、本発明では多少精巧なデータ構造を使用できることが分かるだろう。望ましくないメッセージは実質的に類似したメッセージのセットにクラスタ化される。1つのクラスタ内には、原型と呼ばれる1つまたは複数の変形が存在する可能性がある。多くの場合、各クラスタは単一の原型のみを含むことになる。しかし、事情によっては(特に、複数の関連変形として現れる可能性があるでっちあげの場合)、1つのメッセージのわずかな変形を同じクラスタに属すものと見なすことは有用である可能性がある。1つのクラスタ内に複数の原型があることを見込んでおくと、同じシグニチャを使用して複数の異なる変形を検出することができる。この結果、記憶の効率が高まり、走査速度がある程度高くなり、また、新しい変形がそれとして認識される可能性も高くなる。さらに、本発明のシグニチャ抽出データの精巧さは、変形を検出することと偽陽性を低減することとの間でトレードオフが行われるようにシステムを調整する際のフレキシビリティに備えるものである。
本発明の一実施の形態のシグニチャ・データベースは、原型Clusterのセットからなり、それぞれは固有のClusterID識別子によって区別される。各Cluster300は2つの基本コンポーネントを有する。第1のコンポーネントはSigList302である。SigList302はSigData要素304のリストであり、そのそれぞれは原型Cluster300のメンバー内で検出された特定の文字シーケンスに関する情報を含む。3つのSigData要素であるSigData1、SigData2、SigData3を示す。SigList302内の各SigData要素304は2つの部分を含む。たとえば、SigData2だけを展開する。SigData2 304の第1の部分であるSig2 306は、メッセージ・スキャナによってサーチされる相対的に短いテキスト・パターンである。第2の部分であるRegionList2 308はSig2 306に関連するRegionData要素310のリストであり、そのそれぞれはクラスタ内のすべての原型に含まれるより長い文字シーケンスに関する情報を含む。各RegionData要素310は3つの要素、すなわち、1)シグニチャの先頭から文字シーケンスの先頭までのバイト単位のオフセットであるBeginOffset312と、2)文字シーケンス内の文字数であるRegionLength314と、3)文字シーケンスのチェックサムであるCRC316である。
各Cluster300の第2のコンポーネントはArchetypeList318である。ArchetypeList318はArchetypeData要素320のリストであり、そのそれぞれは特定の原型に関するデータを含む。特に、各ArchetypeData要素320は、1)そのフル・テキストを必要に応じて検索できるように原型メッセージの記憶コピーを指すポインタであるArchetypePtr322と、2)原型の本文から計算され、他のメッセージに対する全体的な類似性を測定するために使用するデータのブロックであるHashBlock324と、3)CaseData要素328のリストであり、そのそれぞれが原型のコピーが受信され、ユーザによって望ましくないものとして報告された特定のインスタンスに関するデータを含むCaseList326とを含むことができる。特に、各CaseData要素328は、1)コピーの送信側のIDであるSendID330と、2)コピーを報告した受信側のIDであるRecvID332と、3)コピーが本来受信された時刻であるRecvTime334とを含むことができる。
シグニチャ抽出
本発明のシグニチャ抽出段階の好ましい実施の形態は、図4に関連して説明するが、その間に特定の以前は未知であった望ましくない(または機密の)メッセージが導出され、複数ユーザからなるネットワークに広められる。本発明は、1人または複数のメール・ユーザを含む環境で使用することができる。メール・ユーザの数が増すにつれて、本発明の利点が増大する。ステップ400では、第1の(アラート)ユーザがメッセージM1を受信する。このユーザは受信したメッセージM1を読み、それが広く流布されそうであり、歓迎されないものであると広く考えられそうなものである(またはそれが機密のものである)という意味で「望ましくないもの」であると考えた場合、そのユーザは、たとえば、ユーザ・インタフェース内の特別なボタンをクリックすることにより、メッセージM1は望ましくない(または機密の)ものとしてフラグを付けるべきであることをシステムに対して示す。任意選択で、第1に総称検出方法を使用して、ユーザがそのメッセージを望ましくないものとして識別するのを支援することができる。いずれの場合でも、ステップ402でそのメッセージに「望ましくないもの」としてのフラグを付けるべきであることをユーザがシステムに対して示した場合、ステップ404でメッセージM1のコピーを自動シグニチャ抽出手順に送信するかまたは入力するかあるいはその両方を行う。任意選択で、ステップ403では、望ましくないものとしてのメッセージの識別をいくつかの方法で確認することができる。この確認は、許可人間ユーザによって行うこともできる。これは、限界数のユーザ全員がそのメッセージに望ましくないものとしてのラベルを付けた後でのみ示される可能性がある。最後に、これは、個別の自動プロセス(たとえば、スパムを検出するための総称技法を使用するもの)によって行うこともできる。メッセージが望ましくないものであるという確認が行われた場合、この方法はステップ404に継続するはずである。メール・システムのユーザ自身が望ましくないかまたは機密のメッセージを識別できるようにすることにより、集中オペレーション・センタにいる専門家への依存状態が回避される。
ステップ404では、メッセージM1を走査して、マスタ・シグニチャ・データベースD1に含まれるシグニチャが存在するかどうかを確認する。ステップ405でメッセージM1がマスタ・シグニチャ・データベースD1内のシグニチャの少なくとも1つを含むと判断された場合、ステップ406でそのメッセージは、そのSigコンポーネントの1つに一致シグニチャを含む各Clusterに関連する各原型と比較して、D1内のいずれかの原型との一致が存在するかどうかを判定する。比較の好ましい方法は、そのメッセージに関するHashBlockを計算することと、このHashBlockを各候補原型に関するHashBlockと比較することである。正確な原型一致が見つかった場合(たとえば、ハッシュブロック距離がゼロになると計算された場合)、一致候補のArchetypePtr322を使用して、そのフル・テキストを検索する。最後に、その原型およびメッセージのフル・テキストが、そのメッセージを原型のインスタンスと見なせるほど十分類似していると見なされた場合、ステップ408で関連CaseData情報328をメッセージから抽出し、その原型用のD1内のCaseList326に追加する。次に制御はステップ418に移行する。しかし、ステップ406で正確な原型一致が見つからないかまたはメッセージのフル・テキストがその原型のフル・テキストと十分に類似していると判定されなかった場合、ステップ410で新しい原型が既存の原型のクラスタと十分に類似しているかどうかについて判定を行い、十分類似している場合はどのクラスタであるかという判定を行う。好ましいことに、そのSigコンポーネントの1つに一致シグニチャを含む各Clusterごとに、BeginOffset312およびRegionLength314によって示される領域のチェックサムを計算することにより、そのSig306に関連するRegionList308内の各RegionData要素310をメッセージM1と比較し、そのメッセージ内のその領域のチェックサムがCRC316に記憶されている値に等しい場合に一致を宣言する。最長RegionLength314を有する一致領域を各Clusterごとに決定する。すべてのCluster内の最長RegionLength314が少なくとも指定の限界長に等しい場合、最長RegionLength314を有するClusterは、新しい原型を追加すべき原型クラスタとして識別される。したがって、ステップ412では、原型データを計算し、それを(すべての副構造が必須情報で充填された)新しいArchetypeData要素としてこのClusterのArchetypeListに追加する。
任意選択で、ステップ414では、そのクラスタへの新しい原型の追加を反映するために、ClusterのSigList302を再計算することができる。突合せアルゴリズム(接尾部アレイ・ルーチンなど)を使用してすべての原型間で見つかった1つまたは複数の文字シーケンスを識別することができ、図5に関連して以下に詳述するSigListデータの導出は、メッセージ本文全体ではなく、一般的に発生する文字シーケンスのセットにのみ適用することができる。この方法はステップ418に継続する。
ステップ405でメッセージM1がマスタ・シグニチャ・データベースD1内のシグニチャのいずれも含まないと判断された場合またはステップ410でいかなる原型クラスタも新しい原型に十分接近していないと判断された場合、この方法はステップ416に継続する。ステップ416でメッセージM1用に新しい原型クラスタを作成し、必須情報を含む単一のArchetypeData要素を作成してArchetypeList内に入れ、シグニチャと関連データのセットを計算してSigList内に入れる。最後に、原型Clusterにその固有のClusterIDを割り当て、そのClusterをマスタ・シグニチャ・データベースD1に追加する。SigList内のシグニチャは、他のメッセージで見つかりそうもない文字シーケンスを選択する自動シグニチャ抽出手順によって自動的に計算される。この手順の好ましい方法に関する詳細については図5に関連して以下に示す。シグニチャは、そのメッセージ自体またはそのメッセージの前処理バージョンで見つかる複数文字からなるシーケンスまたはより一般的には複数文字からなるパターンで構成することができる。これには、メッセージ全体またはその一部分あるいはその両方のチェックサム、そのメッセージの1回または複数回の変換から導出されるチェックサムまたはその他の圧縮データ・ストリングなどの追加情報が付随する可能性がある。この追加情報は、図3に示す各シグニチャに関連するRegionList308に記憶することができる。
最後に、ステップ418では、ステップ408、414、または416でマスタ・シグニチャ・データベースD1に対して適用された更新を反映するために、1つまたは複数の個別ユーザ・ノードに対応するローカル・シグニチャ・データベースを更新する。これは、ローカル・データベースがマスタ・シグニチャ・データベースの正確な複製であることを保証するための標準的なデータベース更新または複写技法を使用するか、あるいは異なるローカル・シグニチャ・データベース間で様々になる可能性のある1組の基準に応じてシグニチャおよび関連補助データを選択的に送信するかまたは選択的に受信して取り入れることによって達成することができる。
SigListデータの導出
次に、ステップ414および416で使用する、所与の原型メッセージに関するSigListデータを抽出または計算するための手順の好ましい実施の形態について図5に関連して説明する。第1に、ステップ500では、メッセージのコーパス内で選択した限界長より小さいかまたはそれに等しいすべてのバイト・シーケンスのオカレンスの回数を数える。好ましい実施の形態では、限界長は3であり、すなわち、1バイト、2バイト、3バイトのすべてのシーケンス(それぞれ1グラム、2グラム、3グラムという)のオカレンスの回数を数える。ステップ501では、数えたオカレンスの回数をnグラム度数データベースに圧縮形式で記憶する。nグラム度数データベースは、わずか数メガバイトのデータベースを必要とする。このデータベースはそのユーザが受信したアーカイブ対象メッセージからなるコーパスから個別に各ユーザごとに計算することができ、あるいは汎用データベースは複数のユーザから選別された総称メッセージからなる標準的なコーパスから計算することもできる。この汎用データベースは、ユーザ全体にわたって配布することもできる。また、このデータベースは定期的に更新することもできる。データベースが本来生成される場所およびそれが更新される頻度に関する詳細は、シグニチャ抽出手順の残りのステップに何の関係もない。
ステップ502では、そこからシグニチャを抽出すべきメッセージM2の本文を分離する。ステップ504では、すべての非英数字を除去し、すべての上段シフト文字をその下段シフト・バージョンで置き換えることにより(図6を参照)、抽出した本文を「不変」形式に変換する。次に、ステップ506では、典型的なメッセージで見つからない可能性が高い文字からなる1つまたは複数のシーケンスを識別する。この1つまたは複数のシーケンスは1つまたは複数のシグニチャを構成する。ありそうもない文字シーケンスの識別は、参照により本明細書に組み込まれ、1995年9月19日に発行された「Methods and Apparatus for Evaluating and Extracting Signatures of Computer Viruses and Other Undesirable Software Entities」という名称の米国特許第5452442号(442特許)に記載された方法によって実施することができる。この方法は、本来、コンピュータ・ウィルス・シグニチャの自動抽出に適用されたものである。メッセージから取られる複数の候補シグニチャを選択し、nグラム度数データベースからのそれぞれのnグラム統計について、各候補シグニチャが無作為の普通のメール・メッセージに現れる可能性を推定するために442特許で見られる式を使用してそれらを結合する。普通のメール・メッセージに現れる可能性が最も低い1つまたは複数の候補シグニチャを選択する。
ひとまとめにして考えると、ステップ502、504、506は、図3でSig306というラベルが付けられたテキスト・ストリング要素の導出を記述するものである。任意選択で、Sig306に関連するRegionData310のリストを計算することによって、偽陽性率をさらに低減することができる。これは、各導出シグニチャごとに以下の手順によってステップ508で達成することができる。それぞれがそのシグニチャを含む文字シーケンスからなる「領域」のシリーズを選択する。好ましい実施の形態では、このシリーズは、シグニチャ上のほぼ中心に位置し、シグニチャの長さの約2倍である第1の領域と、第1の領域を含み、第1の領域のサイズのほぼ2倍である第2の領域と、シリーズ内の最終領域が変換済みのメッセージ本文全体からなるまでの以下同様の領域からなる。各領域ごとに、その領域の長さおよびその領域の文字シーケンスのチェックサムとともに、そのシグニチャの第1の文字からその第1の文字までのオフセット(通常は負の整数)を記録する。これらの3つの要素はその領域のRegionData310を構成する。チェックサムは、巡回冗長検査などの都合のよい方法を使用することができ、好ましいことに少なくとも32ビットにしなければならない。
HashBlockデータの導出
次に、ステップ412および416で要求されたように所与のメッセージに関するHashBlockデータを計算するための方法の好ましい実施の形態について説明する。第1に、メッセージ本文を変換する。この変換は、シグニチャ抽出の前にメッセージ本文に対して適用される変換(ステップ504)と同じにするかまたはそれとは異なるものにすることができる。たとえば、HashBlockを計算するために変換済みのメッセージ本文にブランク・スペースを保持すること以外は、これらの変換を同一のものにすることもできる。次に、変換済みのメッセージ本文を小さい個別ユニットに分割するが、これらのユニット同士はオーバラップする場合もあれば、オーバラップしない場合もある。たとえば、個別ユニットはいずれも連続5文字のシーケンス(オーバラップする)である場合もあれば、オーバラップしない「ワード」(ブランク・スペースによって区切られた個別ユニット)である場合もある。オーバラップしないユニットの方が好ましい。各個別ユニットごとに、ハッシュ関数はそのユニットを小さい整数のハッシュ値(たとえば、0〜255の範囲内)にマッピングする。ハッシュ値カウントのアレイは保たれ、特定のハッシュ値が計算されるたびに、その値のカウントが1だけ増分される。カウント数の上限が15に定められている場合あるいはそれがモジュロ16で計算される(すなわち、16で割ったときに、記録された数が実際の数の剰余になる)場合、各カウントごとに4ビットだけが必要であり、256通りのハッシュ値からなるアレイはちょうど128バイトのHashBlockとして表すことができる。ただし、変更の回数が多すぎなければ、このHashBlockはワードの追加、削除、再配置に対して相対的に鈍感になることに留意されたい。
シグニチャ・データベースの剪定
マスタおよびローカルのシグニチャ・データベースが無制限に増大するのを防止するために、これらのデータベースを定期的に剪定して、最近のインスタンスがまったく報告されていないClusterデータを除去することができる。好ましいことに、周期的間隔で(たとえば、毎日)マスタ・シグニチャ・データベース内の各Clusterを検査する。そのクラスタ構造内のすべてのRecvTime要素334を現在時と比較し、いずれかの指定の日時より最近のものがまったくない場合、そのCluster全体をマスタ・シグニチャ・データベースから除去する。このクラスタの除去はすべてのローカル・シグニチャ・データベースに連絡され、このクラスタを含むものはどれでもそれを除去することができる。
シグニチャ走査
本発明のシグニチャ走査段階では、1人または複数のユーザのメッセージを走査して、望ましくない(または機密の)ものとしてラベルが付けられた特定のメッセージが存在する可能性があるかどうかを確認する。数百人、数千人、または数百万人ものユーザを本発明によって保護することができるが、個別の「第2のユーザ」に焦点を合わせることが最も都合のよいことである。この走査手順ではローカル・シグニチャ・データベースを使用するが、これは新しい望ましくないメッセージが他のユーザによって発見されるにつれて引き続いて更新され、特定のユーザに固有のものにするかまたは複数ユーザによって共用することができる。この走査は、定期的に行うか、あるいはユーザによる要求または何らかの他の事象(最後の走査以降にローカル・シグニチャ・データベースが更新されたという通知など)に応答して行うことができる。さらに、この走査は、様々なユーザについて様々な時期に様々な状況で行うことができる。メッセージが電子メールである典型的な場合には、走査は好ましいことにユーザの受信箱内の項目にのみ適用されるが、ユーザがそのように希望する場合には他の指定のフォルダにも適用することができる。
走査手順の好ましい実施の形態について図6に関連して説明する。ステップ602では、走査すべきメッセージM2の本文を抽出する。次にステップ604では、メッセージ本文をステップ504で適用されたものと同じ不変形式に変換する。ステップ606では、メッセージ本文の不変形式を走査して、ローカル・シグニチャ・データベースD2に含まれるシグニチャのいずれかとの正確な一致または接近した一致があるかどうかを確認するが、このデータベースD2は1つまたは複数のマスタ・シグニチャ・データベース内のClusterデータ構造の全部または一部から構築されたものである。いかなるシグニチャも見つからない場合、メッセージは望ましくない(または機密の)ものと見なされないので、プロセスは終了する。
しかし、ステップ606で1つまたは複数のシグニチャが見つかった場合、ステップ608で関連のRegionData要素310に含まれる補助情報を使用して、1つまたは複数の既知の望ましくないメッセージに対する一致度を査定する。具体的には、メッセージに現れる各シグニチャSig306ごとに、Sig306が現れるすべてのClusterを順に検討する。このような各Cluster300ごとに、Sig306に関連するRegionList308を検討する。第1に、走査したメッセージ内の対応する領域のチェックサムを計算することにより、最大RegionLength314を有するRegionData要素310を検査する。チェックサムがこのRegionData要素310に関するCRC316と一致する場合、RegionData要素310および関連のClusterIDをBestRegionDataElementsというリストに追加し、次のClusterを検討する。チェックサムが一致しない場合、次に長いRegionLength314を有するRegionData要素310を同じ方法で比較し、一致チェックサムが見つかるまで以下同様に比較する。RegionData要素310間に一致チェックサムがまったく存在しない場合、そのシグニチャ自体および関連のClusterIDをBestRegionDataElementsリストに追加し、次のClusterを検討する。
ステップ610では、局所性保存ハッシュ関数を使用して、走査したメッセージのHashBlockを計算する。走査したメッセージのHashBlockを、ステップ606で見つかった一致シグニチャの1つを含む各ClusterのHashBlockと比較し、このような各Clusterごとに類似性を計算する。この類似性の計算では妥当な測定基準を使用することができる。2つのHashBlock(H1およびH2)に関する好ましい類似性測定基準では、それぞれを256要素のアレイとして扱い、それぞれの要素は4ビットとして表され、アレイ要素間の差の絶対値を合計する。すなわち、類似性Sは以下の式によって示される。
Figure 0004708466
これは、アレイ要素の上限が16に定められている場合である。その代わりとして、以下の式によって示される。
Figure 0004708466
これは、アレイ要素がモジュロ16で記憶される場合である。
ClusterIDおよび類似性SをHashBlockSimilarityというリストに追加し、ステップ606で見つかった一致シグニチャの1つを含むClusterがこれ以上存在しなくなるまで、次のClusterを検討する。
ステップ612では、ステップ608から導出したBestRegionDataElementsリストと、ステップ610から導出したHashBlock類似性リストと、1組のユーザ・プリファレンスとを組み合わせて、一致の程度またはレベルを決定する。ユーザ・プリファレンスは、HashBlock類似性に関する1つまたは複数のしきい値と、RegionLength314に関する1つまたは複数のしきい値と、BestRegionDataElementsリストおよびHashBlockSimilarityリストで参照されるClusterのMsgDataコンポーネントの様々な態様に関する条件とで構成することができる。典型的な応用例では、ユーザ・プリファレンスは、選択した場合は高度なユーザによって指定変更が可能な何らかのデフォルト設定に設定することができる。
明示的な一例として、完全、高、中、低という4通りの別々の一致レベルがあると想定する。この場合、ユーザ・プリファレンスの妥当なセットとしては以下のものが考えられる。完全と見なすべき一致レベルの場合、それに関するHashBlock類似性距離がゼロであり、そのCluster用のMsgList内の少なくとも2人のユーザがそのユーザと同じEメール・ドメイン内のRecvID332を有するようなClusterが存在しなければならない。そうではない場合、高と見なすべき一致レベルの場合、それに関するHashBlock類似性距離が5未満であるかまたはBestRegionDataElements内の最長領域長が少なくとも500文字であり、そのCluster用のMsgList内の少なくとも2人のユーザがそのユーザと同じEメール・ドメイン内のRecvID332を有するようなClusterが存在しなければならない。そうではない場合、中と見なすべき一致レベルの場合、それに関する最長領域長が少なくとも100文字であり、そのMsgList内に少なくとも2人の別々のユーザが存在し、ドメインまたは他の特徴に関する制限がまったくないようなClusterが存在しなければならない。そうではない場合、一致レベルは低と見なすべきである。
ステップ614では、ステップ612で決定した一致レベルに対してそのユーザのプリファレンスのセット内のもう1組の規則を適用して、適切な応答を決定し、実施する。適切な応答としては、メッセージを自動的に削除すること、ユーザの受信箱内でのその外観を変更すること(たとえば、それに注釈を付けるかまたはカラー化することによる)、それを特別なフォルダ内に記憶することなどを含むことができる。たとえば、一致レベルが完全である場合、ユーザは、そのメールが自動的に削除されるはずであると示すことができ、一致レベルが高である場合、そのメールは特別な「推定スパム」フォルダ内に置かれるはずであり、一致レベルが中である場合、受信箱内に現れるメールの要約は緑色でカラー表示されるはずであり、メッセージ本文の前には、そのメッセージが望ましくないメールの既知のインスタンスに密接に関連すると思われる理由を示す簡単な説明が付けられるはずである。また、ユーザのプリファレンスは、その一致レベルにかかわらず、望ましくないものと見なすべきではない特定のメッセージ(その管理者またはその企業の最高経営責任者から送信されたものなど)も指定することができる。
任意選択で、望ましくないメッセージが発見された場合、ステップ616ではその望ましくないメッセージの新しいインスタンスに関する情報によってマスタ・シグニチャ・データベースを更新することができる。この更新は、発見時に行われる場合もあれば、あるいはそのメッセージが望ましくないものであることをユーザが確認した後でのみ行われる場合もある。たとえば、完全な一致の場合、この情報は、望ましくないメッセージに関するCaseData328(すなわち、送信側および受信側のIDならびに受信時刻)で構成することができる。この情報は、ローカルで抽出して、マスタ・シグニチャ・データベースの所在地に送信することもでき、そこに取り入れられるはずである。一致レベルが高または中の場合、メッセージ全体がマスタ・シグニチャ・データベースの所在地に送信される可能性があり、それがステップ404でシグニチャ抽出段階に入り、そこで新しい原型を作成してそれを適切な原型クラスタに入れようという試みが行われるはずである。
本発明の教示を実施するためのコンピュータ・システムのブロック図である。 本発明の一実施の形態が適用されるシステム環境の概略図である。 本発明の一実施の形態のシグニチャ・データ構造の概略図である。 本発明の一実施の形態のシグニチャ抽出段階の流れ図である。 本発明の一実施の形態のシグニチャ抽出手順の詳細の流れ図である。 本発明の一実施の形態のシグニチャ走査段階の流れ図である。
符号の説明
10 システム
12 システム・バス
14 中央演算処理装置(CPU)
15 シグニチャ抽出モジュールおよび走査/フィルタ・モジュール
16 ランダム・アクセス・メモリ(RAM)
18 端末制御サブシステム
20 ディスプレイ装置
22 手動入力装置
24 ハード・ディスク制御サブシステム
26 回転固定ディスクまたはハード・ディスク
28 フロッピー・ディスク制御サブシステム
30 フロッピー・ディスク・ドライブ
32 通信サブシステム

Claims (16)

  1. コンピュータに、
    複数のユーザからなるネットワークの少なくとも一人のユーザから、少なくとも1つの特定の電子メッセージの送信または受信を望ましくないものとして識別する信号を受信する受信ステップと、
    nグラム度数データベースを用いて、前記特定の電子メッセージの中から、望ましくないまたは機密の電子メッセージ内に含まれているが、望ましくないまたは機密の電子メッセージではない電子メッセージ内で見つかる可能性の低いシグニチャを抽出する抽出ステップと、
    抽出された前記シグニチャを、少なくとも1つのシグニチャ・データベースに記憶する記憶ステップと、
    少なくとも1人のユーザのメッセージを走査して、前記メッセージ内に前記シグニチャが存在するかどうかを探索することにより、前記少なくとも1つの特定の電子メッセージまたはその変形が存在するかどうかを確認する走査ステップと、
    を実行させるプログラムであって、
    前記シグニチャを抽出するステップは、
    前記特定の電子メッセージの中から、複数の候補シグニチャを取得するステップと、
    前記複数の候補シグニチャのそれぞれについて、前記nグラム度数データベースからのnグラム統計を用いて、無作為の普通のメール・メッセージに現れる可能性を推定するステップと、
    前記無作為の普通のメール・メッセージに現れる可能性に基づいて、抽出する前記シグニチャを選択するステップと、
    を含み、
    前記走査ステップは、前記メッセージの不変形式を走査して、前記抽出されたシグニチャに対する正確な一致または接近した一致があるかどうかを確認するステップを含み、
    前記プログラムは、前記走査ステップにおいて、前記メッセージ中に前記シグニチャが存在すると判断された場合に、コンピュータに、各一致ごとに一致レベルを決定する決定ステップをさらに実行させ、
    前記決定ステップは、
    各一致ごとに、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージにおいて位置および長さをそれぞれ指定されかつ前記抽出されたシグニチャを含む文字シーケンスからなる領域のチェックサムが、走査された前記メッセージの本文の対応する領域のチェックサムと一致するかどうかを検出し、複数の領域のチェックサムが一致する場合は、最長の領域の一致を検出する検出ステップと、
    前記走査したメッセージ本文のハッシュブロックと、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージのそれぞれのハッシュブロックとの間の、ハッシュブロックの類似性を計算する計算ステップと、
    1つまたは複数のユーザ・プリファレンスを受信する受信ステップと、
    前記検出ステップ、前記計算ステップおよび前記受信ステップに応答して、前記一致レベルを決定するステップと、
    を含む、
    プログラム
  2. 前記少なくとも1つのシグニチャ・データベースは、複数のシグニチャ・クラスタを記憶し、
    前記複数のシグニチャ・クラスタのそれぞれは、
    走査情報を有する文字シーケンス・コンポーネントと、
    特定のシグニチャ変形に関する識別情報を有する原型コンポーネントと
    を含み、
    前記走査情報は、
    前記特定の電子メッセージに関するサーチ文字シーケンスと、
    前記複数のシグニチャ・クラスタのそれぞれの全ての電子メッセージに含まれる拡張文字シーケンス情報と、
    を含み、
    前記識別情報は、
    前記特定のシグニチャ変形に関連する前記特定の電子メッセージのフル・テキスト記憶コピーを指すポインタと、
    当該電子メッセージのハッシュブロックと、
    当該電子メッセージのコピーが受信され、その増殖が望ましくないものとして少なくとも1人のユーザによって報告された特定のインスタンスに対応するアラート・データと
    を含む、
    請求項1に記載のプログラム。
  3. 前記拡張文字シーケンス情報は、
    前記シグニチャの先頭から、前記シグニチャを含む拡張文字シーケンスの先頭までのオフセットに関する情報と、
    前記拡張文字シーケンスの文字数に関する情報と、
    前記拡張文字シーケンスのチェックサムと、
    を含み、
    コンピュータに、
    前記複数のシグニチャ・クラスタのうち、前記メッセージ内で見つかったシグニチャに一致する前記サーチ文字シーケンスが現れるシグニチャ・クラスタのそれぞれについて、最長の文字数を有する前記拡張文字シーケンスを有する一致領域を決定するステップと、
    決定された全ての前記拡張文字シーケンスの文字数が、指定の限界長に少なくとも等しい場合、前記サーチ文字シーケンスが現れるシグニチャ・クラスタを、新しい原型を追加すべきシグニチャ・クラスタとして識別するステップと、
    をさらに実行させる、
    請求項2に記載のプログラム。
  4. コンピュータに、
    複数のユーザからなるネットワークの少なくとも一人のユーザから、少なくとも1つの特定の電子メッセージの送信または受信を望ましくないものとして識別する信号を受信する受信ステップと、
    nグラム度数データベースを用いて、前記特定の電子メッセージの中から、望ましくないまたは機密の電子メッセージ内に含まれているが、望ましくないまたは機密の電子メッセージではない電子メッセージ内で見つかる可能性の低いシグニチャを抽出する抽出ステップと、
    抽出された前記シグニチャを、少なくとも1つのシグニチャ・データベースに記憶する記憶ステップと、
    少なくとも1人のユーザのメッセージを走査して、前記メッセージ内に前記シグニチャが存在するかどうかを探索することにより、前記少なくとも1つの特定の電子メッセージまたはその変形が存在するかどうかを確認する走査ステップと、
    を実行させるプログラムであって、
    前記少なくとも1つのシグニチャ・データベースは、複数のシグニチャ・クラスタを記憶し
    前記複数のシグニチャ・クラスタのそれぞれは、
    走査情報を有する文字シーケンス・コンポーネントと、
    特定のシグニチャ変形に関する識別情報を有する原型コンポーネントと
    を含み、
    前記走査情報は、
    前記特定の電子メッセージに関するサーチ文字シーケンスと、
    前記複数のシグニチャ・クラスタのそれぞれの全ての電子メッセージに含まれる拡張文字シーケンス情報と、
    を含み、
    前記拡張文字シーケンス情報は、
    前記シグニチャの先頭から、前記シグニチャを含む拡張文字シーケンスの先頭までのオフセットに関する情報と、
    前記拡張文字シーケンスの文字数に関する情報と、
    前記拡張文字シーケンスのチェックサムと、
    を含み、
    前記識別情報は、
    前記特定のシグニチャ変形に関連する前記特定の電子メッセージのフル・テキスト記憶コピーを指すポインタと、
    当該電子メッセージのハッシュブロックと、
    当該電子メッセージのコピーが受信され、その増殖が望ましくないものとして少なくとも1人のユーザによって報告された特定のインスタンスに対応するアラート・データと
    を含み、
    前記プログラムは、コンピュータに、
    前記複数のシグニチャ・クラスタのうち、前記メッセージ内で見つかったシグニチャに一致する前記サーチ文字シーケンスが現れるシグニチャ・クラスタのそれぞれについて、最長の文字数を有する前記拡張文字シーケンスを有する一致領域を決定するステップと、
    決定された全ての前記拡張文字シーケンスの文字数が、指定の限界長に少なくとも等しい場合、前記サーチ文字シーケンスが現れるシグニチャ・クラスタを、新しい原型を追加すべきシグニチャ・クラスタとして識別するステップと、
    をさらに実行させ、
    前記シグニチャを抽出するステップは、
    前記特定の電子メッセージの中から、複数の候補シグニチャを取得するステップと、
    前記複数の候補シグニチャのそれぞれについて、前記nグラム度数データベースからのnグラム統計を用いて、無作為の普通のメール・メッセージに現れる可能性を推定するステップと、
    前記無作為の普通のメール・メッセージに現れる可能性に基づいて、抽出する前記シグニチャを選択するステップと、
    を含む、
    プログラム
  5. 前記走査ステップが、前記メッセージの不変形式を走査して、前記抽出されたシグニチャに対する正確な一致または接近した一致があるかどうかを確認するステップを含み、
    前記走査ステップにおいて、前記メッセージ中に前記シグニチャが存在すると判断された場合に、前記コンピュータに、各一致ごとに一致レベルを決定する決定ステップをさらに実行させ、
    前記決定ステップが、
    各一致ごとに、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージにおいて位置および長さをそれぞれ指定されかつ前記抽出されたシグニチャを含む文字シーケンスからなる領域のチェックサムが、走査された前記メッセージの本文の対応する領域のチェックサムと一致するかどうかを検出し、複数の領域のチェックサムが一致する場合は、最長の領域の一致を検出する検出ステップと、
    前記走査したメッセージ本文のハッシュブロックと、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージのそれぞれのハッシュブロックとの間の、ハッシュブロックの類似性を計算する計算ステップと、
    1つまたは複数のユーザ・プリファレンスを受信する受信ステップと、
    前記検出ステップ、前記計算ステップおよび前記受信ステップに応答して、前記一致レベルを決定するステップと、
    を含む、
    請求項4に記載のプログラム。
  6. コンピュータに、
    複数のユーザからなるネットワークの少なくとも一人のユーザから、少なくとも1つの特定の電子メッセージの送信または受信を望ましくないものとして識別する信号を受信する受信ステップと、
    nグラム度数データベースを用いて、前記特定の電子メッセージの中から、望ましくないまたは機密の電子メッセージ内に含まれているが、望ましくないまたは機密の電子メッセージではない電子メッセージ内で見つかる可能性の低いシグニチャを抽出する抽出ステップと、
    抽出された前記シグニチャを、少なくとも1つのシグニチャ・データベースに記憶する記憶ステップと、
    少なくとも1人のユーザのメッセージを走査して、前記メッセージ内に前記シグニチャが存在するかどうかを探索することにより、前記少なくとも1つの特定の電子メッセージまたはその変形が存在するかどうかを確認する走査ステップと、
    を実行させるプログラムであって、
    前記少なくとも1つのシグニチャ・データベースは、複数のシグニチャ・クラスタを記憶し
    前記複数のシグニチャ・クラスタのそれぞれは、
    走査情報を有する文字シーケンス・コンポーネントと、
    特定のシグニチャ変形に関する識別情報を有する原型コンポーネントと
    を含み、
    前記走査情報は、
    前記特定の電子メッセージに関するサーチ文字シーケンスと、
    前記複数のシグニチャ・クラスタのそれぞれの全ての電子メッセージに含まれる拡張文字シーケンス情報と、
    を含み、
    前記拡張文字シーケンス情報は、
    前記シグニチャの先頭から、前記シグニチャを含む拡張文字シーケンスの先頭までのオフセットに関する情報と、
    前記拡張文字シーケンスの文字数に関する情報と、
    前記拡張文字シーケンスのチェックサムと、
    を含み、
    前記識別情報は、
    前記特定のシグニチャ変形に関連する前記特定の電子メッセージのフル・テキスト記憶コピーを指すポインタと、
    当該電子メッセージのハッシュブロックと、
    当該電子メッセージのコピーが受信され、その増殖が望ましくないものとして少なくとも1人のユーザによって報告された特定のインスタンスに対応するアラート・データと
    を含み、
    前記走査ステップは、前記メッセージの不変形式を走査して、前記抽出されたシグニチャに対する正確な一致または接近した一致があるかどうかを確認するステップを含み、
    前記プログラムは、コンピュータに、
    前記複数のシグニチャ・クラスタのうち、前記メッセージ内で見つかったシグニチャに一致する前記サーチ文字シーケンスが現れるシグニチャ・クラスタのそれぞれについて、最長の文字数を有する前記拡張文字シーケンスを有する一致領域を決定するステップと、
    決定された全ての前記拡張文字シーケンスの文字数が、指定の限界長に少なくとも等しい場合、前記サーチ文字シーケンスが現れるシグニチャ・クラスタを、新しい原型を追加すべきシグニチャ・クラスタとして識別するステップと、
    前記走査ステップにおいて、前記メッセージ中に前記シグニチャが存在すると判断された場合に、各一致ごとに一致レベルを決定する決定ステップと、
    をさらに実行させ、
    前記決定ステップは、
    各一致ごとに、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージにおいて位置および長さをそれぞれ指定されかつ前記抽出されたシグニチャを含む文字シーケンスからなる領域のチェックサムが、走査された前記メッセージの本文の対応する領域のチェックサムと一致するかどうかを検出し、複数の領域のチェックサムが一致する場合は、最長の領域の一致を検出する検出ステップと、
    前記走査したメッセージ本文のハッシュブロックと、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージのそれぞれのハッシュブロックとの間の、ハッシュブロックの類似性を計算する計算ステップと、
    1つまたは複数のユーザ・プリファレンスを受信する受信ステップと、
    前記検出ステップ、前記計算ステップおよび前記受信ステップに応答して、前記一致レベルを決定するステップと、
    を含む、
    プログラム
  7. 前記シグニチャを抽出するステップが、
    前記特定の電子メッセージの中から、複数の候補シグニチャを取得するステップと、
    前記複数の候補シグニチャのそれぞれについて、前記nグラム度数データベースからのnグラム統計を用いて、無作為の普通のメール・メッセージに現れる可能性を推定するステップと、
    前記無作為の普通のメール・メッセージに現れる可能性に基づいて、抽出する前記シグニチャを選択するステップと、
    を含む、
    請求項6に記載のプログラム。
  8. 前記走査ステップにおいて、前記メッセージ中に前記シグニチャが存在すると判断された場合に、
    コンピュータに、
    前記メッセージに関するハッシュブロックを計算するステップと、
    前記メッセージに関するハッシュブロックと、前記シグニチャ・データベースに記憶されているハッシュブロックとを比較するステップと、
    前記メッセージに関するハッシュブロックと正確に一致する、前記シグニチャ・データベースに記憶されているハッシュブロックが見つかった場合に、前記シグニチャ・データベースに記憶されているポインタを用いて、前記特定の電子メッセージのフル・テキストを検索し、前記メッセージと、前記特定の電子メッセージのフル・テキストとを比較し、前記メッセージが前記特定の電子メッセージのインスタンスとみなしたときに、前記メッセージから、前記メッセージの送信側のID、前記メッセージの受信側のIDおよび前記メッセージが本来受信された時刻を抽出して、前記シグニチャ・データベースに追加するステップと、
    をさらに実行させる、
    請求項2から請求項7までの何れか一項に記載のプログラム。
  9. コンピュータに、
    前記メッセージに関するハッシュブロックと、前記シグニチャ・データベースに記憶されているハッシュブロックとが正確に一致しなかった場合、または、前記メッセージが前記特定の電子メッセージのインスタンスとみなされなかった場合に、前記メッセージが前記複数のシグニチャ・クラスタのいずれかと類似するかどうかを判断するステップと、
    をさらに実行させる、
    請求項に記載のプログラム。
  10. コンピュータに、
    前記走査ステップにおいて、前記少なくとも1つの特定の電子メッセージまたはその変形の存在が発見された場合に、前記メッセージの送信または受信を妨害する実行ステップをさらに実行させる、
    請求項1から請求項9までの何れか一項に記載のプログラム。
  11. 前記実行ステップが、前記少なくとも1つの特定の電子メッセージまたはその変形の、削除、フラグ付けおよび通知の何れかのアクションを実行するステップを含む、
    請求項10に記載のプログラム。
  12. コンピュータに、
    前記走査ステップの前に、前記少なくとも1つの特定の電子メッセージが望ましくないものとして識別する前記信号を限界数のユーザから受信することにより、前記少なくとも1つの特定の電子メッセージが望ましくないことを確認するステップをさらに実行させる、
    請求項1から請求項11までの何れか一項に記載のプログラム。
  13. 前記走査ステップが、
    前記メッセージのメッセージ本文を抽出するステップと、
    前記メッセージ本文の非英数字を除去し且つ当該メッセージ本文の上段シフト文字をその下段シフト文字で置き換えることにより、当該メッセージ本文を不変形式に変換するステップと、
    前記不変形式に変換した前記メッセージ本文を走査して前記シグニチャに対する正確な一致または接近した一致があるかどうかを確認するステップと、
    を含む、
    請求項1から請求項12までの何れか一項に記載のプログラム。
  14. 前記nグラム度数データベースが、少なくとも1人のユーザのそれぞれが受信したアーカイブ対象メッセージからなるコーパスからユーザごとに計算される、または、複数のユーザから選別された総称メッセージからなる標準的なコーパスから計算される、
    請求項1から請求項13までの何れか一項に記載のプログラム。
  15. 前記抽出ステップと、前記走査ステップとが、前記複数のユーザにわたって、同時にかつ非同期に実行される、
    請求項1から請求項14までの何れか一項に記載のプログラム。
  16. 複数ユーザからなるネットワークの少なくとも一人のユーザから、少なくとも1つの特定の電子メッセージの送信または受信を望ましくないものとして識別する信号を受信する受信部と、
    nグラム度数データベースを用いて、前記特定の電子メッセージの中から、望ましくないまたは機密の電子メッセージ内に含まれているが、望ましくないまたは機密の電子メッセージではない電子メッセージ内で見つかる可能性の低いシグニチャを抽出する抽出部と、
    前記抽出されたシグニチャを、少なくとも1つのシグニチャ・データベースに記憶する記憶ステップ記憶部と、
    少なくとも1人のユーザのメッセージを走査して、前記メッセージ内に前記シグニチャが存在するかどうかを探索することにより、前記少なくとも1つの特定の電子メッセージまたはその変形が存在するかどうかを確認する走査部と、
    を備え、
    前記少なくとも1つのシグニチャ・データベースは、複数のシグニチャ・クラスタを記憶し
    前記複数のシグニチャ・クラスタのそれぞれは、
    走査情報を有する文字シーケンス・コンポーネントと、
    特定のシグニチャ変形に関する識別情報を有する原型コンポーネントと
    を含み、
    前記走査情報は、
    前記特定の電子メッセージに関するサーチ文字シーケンスと、
    前記複数のシグニチャ・クラスタのそれぞれの全ての電子メッセージに含まれる拡張文字シーケンス情報と、
    を含み、
    前記拡張文字シーケンス情報は、
    前記シグニチャの先頭から、前記シグニチャを含む拡張文字シーケンスの先頭までのオフセットに関する情報と、
    前記拡張文字シーケンスの文字数に関する情報と、
    前記拡張文字シーケンスのチェックサムと、
    を含み、
    前記識別情報は、
    前記特定のシグニチャ変形に関連する前記特定の電子メッセージのフル・テキスト記憶コピーを指すポインタと、
    当該電子メッセージのハッシュブロックと、
    当該電子メッセージのコピーが受信され、その増殖が望ましくないものとして少なくとも1人のユーザによって報告された特定のインスタンスに対応するアラート・データと
    を含み、
    前記走査部は、
    前記複数のシグニチャ・クラスタのうち、前記メッセージ内で見つかったシグニチャに一致する前記サーチ文字シーケンスが現れるシグニチャ・クラスタのそれぞれについて、最長の文字数を有する前記拡張文字シーケンスを有する一致領域を決定し、
    決定された全ての前記拡張文字シーケンスの文字数が、指定の限界長に少なくとも等しい場合、前記サーチ文字シーケンスが現れるシグニチャ・クラスタを、新しい原型を追加すべきシグニチャ・クラスタとして識別し、
    前記メッセージの不変形式を走査して、前記抽出されたシグニチャに対する正確な一致または接近した一致があるかどうかを確認し、
    前記走査部は、
    各一致ごとに、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージにおいて位置および長さをそれぞれ指定されかつ前記抽出されたシグニチャを含む文字シーケンスからなる領域のチェックサムが、走査された前記メッセージの本文の対応する領域のチェックサムと一致するかどうかを検出し、複数の領域のチェックサムが一致する場合は、最長の領域の一致を検出し、
    前記走査したメッセージ本文のハッシュブロックと、前記抽出されたシグニチャに関連する前記少なくとも1つの特定の電子メッセージのそれぞれのハッシュブロックとの間の、ハッシュブロックの類似性を計算し、
    1つまたは複数のユーザ・プリファレンスを取得し、
    前記検出の結果、前記計算の結果、および、取得した前記1つまたは複数のユーザ・プリファレンスに基づいて、各一致ごとに一致レベルを決定することで、
    前記メッセージ中に前記シグニチャが存在すると判断された場合に、各一致ごとに前記一致レベルを決定する、
    システム。
JP2008271957A 1999-04-09 2008-10-22 望ましくない電子メッセージの送信または受信を妨害するための方法 Expired - Fee Related JP4708466B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/289023 1999-04-09
US09/289,023 US6732149B1 (en) 1999-04-09 1999-04-09 System and method for hindering undesired transmission or receipt of electronic messages

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000105418A Division JP4250300B2 (ja) 1999-04-09 2000-04-06 望ましくない電子メッセージの送信または受信を妨害するためのプログラムを記録したコンピュータ読み取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2009104606A JP2009104606A (ja) 2009-05-14
JP4708466B2 true JP4708466B2 (ja) 2011-06-22

Family

ID=23109681

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2000105418A Expired - Fee Related JP4250300B2 (ja) 1999-04-09 2000-04-06 望ましくない電子メッセージの送信または受信を妨害するためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2008271957A Expired - Fee Related JP4708466B2 (ja) 1999-04-09 2008-10-22 望ましくない電子メッセージの送信または受信を妨害するための方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2000105418A Expired - Fee Related JP4250300B2 (ja) 1999-04-09 2000-04-06 望ましくない電子メッセージの送信または受信を妨害するためのプログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (3)

Country Link
US (1) US6732149B1 (ja)
JP (2) JP4250300B2 (ja)
GB (1) GB2350747B (ja)

Families Citing this family (212)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6643686B1 (en) * 1998-12-18 2003-11-04 At&T Corp. System and method for counteracting message filtering
US6714967B1 (en) * 1999-07-30 2004-03-30 Microsoft Corporation Integration of a computer-based message priority system with mobile electronic devices
US7194681B1 (en) * 1999-07-30 2007-03-20 Microsoft Corporation Method for automatically assigning priorities to documents and messages
US7840639B1 (en) * 1999-09-21 2010-11-23 G&H Nevada-Tek Method and article of manufacture for an automatically executed application program associated with an electronic message
US9092535B1 (en) 1999-09-21 2015-07-28 Google Inc. E-mail embedded textual hyperlink object
US6360221B1 (en) 1999-09-21 2002-03-19 Neostar, Inc. Method and apparatus for the production, delivery, and receipt of enhanced e-mail
US6460050B1 (en) * 1999-12-22 2002-10-01 Mark Raymond Pace Distributed content identification system
US7707252B1 (en) * 2000-05-12 2010-04-27 Harris Technology, Llc Automatic mail rejection feature
US7032023B1 (en) 2000-05-16 2006-04-18 America Online, Inc. Throttling electronic communications from one or more senders
US20040073617A1 (en) 2000-06-19 2004-04-15 Milliken Walter Clark Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail
US9699129B1 (en) * 2000-06-21 2017-07-04 International Business Machines Corporation System and method for increasing email productivity
US6408277B1 (en) 2000-06-21 2002-06-18 Banter Limited System and method for automatic task prioritization
US7725587B1 (en) * 2000-08-24 2010-05-25 Aol Llc Deep packet scan hacker identification
US7711790B1 (en) 2000-08-24 2010-05-04 Foundry Networks, Inc. Securing an accessible computer system
US7644057B2 (en) * 2001-01-03 2010-01-05 International Business Machines Corporation System and method for electronic communication management
CN1316397C (zh) * 2001-02-12 2007-05-16 Emc公司 索引惟一电子邮件消息及其使用的系统和方法
GB2373130B (en) * 2001-03-05 2004-09-22 Messagelabs Ltd Method of,and system for,processing email in particular to detect unsolicited bulk email
US7681032B2 (en) * 2001-03-12 2010-03-16 Portauthority Technologies Inc. System and method for monitoring unauthorized transport of digital content
US8478824B2 (en) 2002-02-05 2013-07-02 Portauthority Technologies Inc. Apparatus and method for controlling unauthorized dissemination of electronic mail
US20050025291A1 (en) * 2001-03-12 2005-02-03 Vidius Inc. Method and system for information distribution management
US6928465B2 (en) * 2001-03-16 2005-08-09 Wells Fargo Bank, N.A. Redundant email address detection and capture system
US7209951B2 (en) * 2001-03-20 2007-04-24 Bernel Goldberg Method and system for modifying the content of e-mail transmissions based on customization settings
US7092993B2 (en) * 2001-03-20 2006-08-15 Bernel Goldberg Method and system for customizing e-mail transmissions based on content detection
DE10115428A1 (de) * 2001-03-29 2002-10-17 Siemens Ag Verfahren zum Erkennen einer unerwünschten E-Mail
FI111779B (fi) * 2001-03-30 2003-09-15 Elisa Comm Oyj Menetelmä yhteydenottojen hallitsemiseksi
US8095597B2 (en) * 2001-05-01 2012-01-10 Aol Inc. Method and system of automating data capture from electronic correspondence
US7849141B1 (en) 2001-06-14 2010-12-07 Apple Inc. Training a computer storage system for automatic filing of data using graphical representations of storage locations
US7640305B1 (en) * 2001-06-14 2009-12-29 Apple Inc. Filtering of data
US7673342B2 (en) * 2001-07-26 2010-03-02 Mcafee, Inc. Detecting e-mail propagated malware
US7487544B2 (en) * 2001-07-30 2009-02-03 The Trustees Of Columbia University In The City Of New York System and methods for detection of new malicious executables
US7117533B1 (en) 2001-08-03 2006-10-03 Mcafee, Inc. System and method for providing dynamic screening of transient messages in a distributed computing environment
US6993660B1 (en) * 2001-08-03 2006-01-31 Mcafee, Inc. System and method for performing efficient computer virus scanning of transient messages using checksums in a distributed computing environment
US7100208B2 (en) * 2001-09-25 2006-08-29 Siemens Communications, Inc. Method and apparatus for source-based message authorization and rejection
WO2003044617A2 (en) * 2001-10-03 2003-05-30 Reginald Adkins Authorized email control system
AU2003211548A1 (en) 2002-02-22 2003-09-09 Access Co., Ltd. Method and device for processing electronic mail undesirable for user
US7130887B2 (en) 2002-04-18 2006-10-31 Bernel Goldberg Method and system for generating separate e-mail transmissions to copied recipients for providing additional information
US20030229672A1 (en) * 2002-06-05 2003-12-11 Kohn Daniel Mark Enforceable spam identification and reduction system, and method thereof
US8046832B2 (en) * 2002-06-26 2011-10-25 Microsoft Corporation Spam detector with challenges
US7908330B2 (en) 2003-03-11 2011-03-15 Sonicwall, Inc. Message auditing
US8396926B1 (en) * 2002-07-16 2013-03-12 Sonicwall, Inc. Message challenge response
US8924484B2 (en) * 2002-07-16 2014-12-30 Sonicwall, Inc. Active e-mail filter with challenge-response
US7539726B1 (en) 2002-07-16 2009-05-26 Sonicwall, Inc. Message testing
EP1533958A4 (en) * 2002-07-22 2007-09-05 Fujitsu Ltd SERVERS FOR ELECTRONIC POST, METHOD FOR DISTRIBUTION ELECTRONIC POST AND COMPUTER PROGRAM
US20040054733A1 (en) * 2002-09-13 2004-03-18 Weeks Richard A. E-mail management system and method
US20040068543A1 (en) * 2002-10-03 2004-04-08 Ralph Seifert Method and apparatus for processing e-mail
US7359930B2 (en) * 2002-11-21 2008-04-15 Arbor Networks System and method for managing computer networks
US7533148B2 (en) * 2003-01-09 2009-05-12 Microsoft Corporation Framework to enable integration of anti-spam technologies
US7089241B1 (en) * 2003-01-24 2006-08-08 America Online, Inc. Classifier tuning based on data similarities
US7725544B2 (en) * 2003-01-24 2010-05-25 Aol Inc. Group based spam classification
US8266215B2 (en) 2003-02-20 2012-09-11 Sonicwall, Inc. Using distinguishing properties to classify messages
US7406502B1 (en) 2003-02-20 2008-07-29 Sonicwall, Inc. Method and system for classifying a message based on canonical equivalent of acceptable items included in the message
US7299261B1 (en) 2003-02-20 2007-11-20 Mailfrontier, Inc. A Wholly Owned Subsidiary Of Sonicwall, Inc. Message classification using a summary
US7249162B2 (en) * 2003-02-25 2007-07-24 Microsoft Corporation Adaptive junk message filtering system
US7219148B2 (en) * 2003-03-03 2007-05-15 Microsoft Corporation Feedback loop for spam prevention
US7543053B2 (en) * 2003-03-03 2009-06-02 Microsoft Corporation Intelligent quarantining for spam prevention
US20060168006A1 (en) * 2003-03-24 2006-07-27 Mr. Marvin Shannon System and method for the classification of electronic communication
US7680886B1 (en) * 2003-04-09 2010-03-16 Symantec Corporation Suppressing spam using a machine learning based spam filter
US7483947B2 (en) * 2003-05-02 2009-01-27 Microsoft Corporation Message rendering for identification of content features
US7590695B2 (en) 2003-05-09 2009-09-15 Aol Llc Managing electronic messages
US20050108340A1 (en) * 2003-05-15 2005-05-19 Matt Gleeson Method and apparatus for filtering email spam based on similarity measures
US7293063B1 (en) * 2003-06-04 2007-11-06 Symantec Corporation System utilizing updated spam signatures for performing secondary signature-based analysis of a held e-mail to improve spam email detection
US7272853B2 (en) * 2003-06-04 2007-09-18 Microsoft Corporation Origination/destination features and lists for spam prevention
US7519668B2 (en) * 2003-06-20 2009-04-14 Microsoft Corporation Obfuscation of spam filter
US7711779B2 (en) * 2003-06-20 2010-05-04 Microsoft Corporation Prevention of outgoing spam
US8533270B2 (en) * 2003-06-23 2013-09-10 Microsoft Corporation Advanced spam detection techniques
US7739602B2 (en) 2003-06-24 2010-06-15 Aol Inc. System and method for community centric resource sharing based on a publishing subscription model
WO2005047862A2 (en) * 2003-11-12 2005-05-26 The Trustees Of Columbia University In The City Of New York Apparatus method and medium for identifying files using n-gram distribution of data
US20050108337A1 (en) * 2003-11-14 2005-05-19 Electronic Data Systems Corporation System, method, and computer program product for filtering electronic mail
JP3758661B2 (ja) * 2003-11-17 2006-03-22 株式会社インテリジェントウェイブ 不正監視プログラム、不正監視の方法及び不正監視システム
US20050120019A1 (en) * 2003-11-29 2005-06-02 International Business Machines Corporation Method and apparatus for the automatic identification of unsolicited e-mail messages (SPAM)
US7730137B1 (en) * 2003-12-22 2010-06-01 Aol Inc. Restricting the volume of outbound electronic messages originated by a single entity
US7613172B2 (en) * 2003-12-24 2009-11-03 Watchguard Technologies, Inc. Method and apparatus for controlling unsolicited messaging
US7548956B1 (en) * 2003-12-30 2009-06-16 Aol Llc Spam control based on sender account characteristics
US7590694B2 (en) 2004-01-16 2009-09-15 Gozoom.Com, Inc. System for determining degrees of similarity in email message information
US8301702B2 (en) * 2004-01-20 2012-10-30 Cloudmark, Inc. Method and an apparatus to screen electronic communications
US7257571B2 (en) * 2004-01-26 2007-08-14 Microsoft Corporation Automatic query clustering
US8886727B1 (en) 2004-01-27 2014-11-11 Sonicwall, Inc. Message distribution control
US9471712B2 (en) 2004-02-09 2016-10-18 Dell Software Inc. Approximate matching of strings for message filtering
US7613923B2 (en) * 2004-02-25 2009-11-03 Watchguard Technologies, Inc. Method and apparatus for controlling unsolicited messaging in real time messaging networks
US20090119159A1 (en) * 2007-10-31 2009-05-07 David C. Reardon System and Method for Transferring Funds to Recipients of Electronic Messages
US8799164B2 (en) 2004-02-26 2014-08-05 David C Reardon Financial transaction system with integrated electronic messaging, control of marketing data, and user defined charges for receiving messages
US8346660B2 (en) 2004-02-26 2013-01-01 David C. Reardon System and method for two-way transfer of funds and electronic content between summa account users with gathering of behavioral metrics and management of multiple currencies and escrow accounts
US7873572B2 (en) * 2004-02-26 2011-01-18 Reardon David C Financial transaction system with integrated electronic messaging, control of marketing data, and user defined charges for receiving messages
US8214438B2 (en) * 2004-03-01 2012-07-03 Microsoft Corporation (More) advanced spam detection features
US8918466B2 (en) * 2004-03-09 2014-12-23 Tonny Yu System for email processing and analysis
US7644127B2 (en) * 2004-03-09 2010-01-05 Gozoom.Com, Inc. Email analysis using fuzzy matching of text
US7631044B2 (en) 2004-03-09 2009-12-08 Gozoom.Com, Inc. Suppression of undesirable network messages
US7613777B2 (en) * 2004-03-11 2009-11-03 Microsoft Corporation Rapidly obtaining a subset of message data from a server for filtering
US20050204005A1 (en) * 2004-03-12 2005-09-15 Purcell Sean E. Selective treatment of messages based on junk rating
US20050204006A1 (en) * 2004-03-12 2005-09-15 Purcell Sean E. Message junk rating interface
WO2005101770A1 (ja) * 2004-04-05 2005-10-27 Hewlett-Packard Development Company L.P. 迷惑メール処理装置およびその方法
US7873695B2 (en) * 2004-05-29 2011-01-18 Ironport Systems, Inc. Managing connections and messages at a server by associating different actions for both different senders and different recipients
US7664819B2 (en) * 2004-06-29 2010-02-16 Microsoft Corporation Incremental anti-spam lookup and update service
US20060031325A1 (en) * 2004-07-01 2006-02-09 Chih-Wen Cheng Method for managing email with analyzing mail behavior
US7904517B2 (en) * 2004-08-09 2011-03-08 Microsoft Corporation Challenge response systems
US7660865B2 (en) * 2004-08-12 2010-02-09 Microsoft Corporation Spam filtering with probabilistic secure hashes
US7454778B2 (en) 2004-09-30 2008-11-18 Microsoft Corporation Enforcing rights management through edge email servers
US20060095966A1 (en) * 2004-11-03 2006-05-04 Shawn Park Method of detecting, comparing, blocking, and eliminating spam emails
US7574409B2 (en) * 2004-11-04 2009-08-11 Vericept Corporation Method, apparatus, and system for clustering and classification
EP1672936B1 (en) * 2004-12-16 2018-12-05 Sony Mobile Communications Inc. Prevention of unsolicited messages
US20060168056A1 (en) * 2004-12-20 2006-07-27 Yahoo!, Inc. System and method for providing improved access to SPAM-control feature in mail-enabled application
US7577709B1 (en) 2005-02-17 2009-08-18 Aol Llc Reliability measure for a classifier
US9288078B2 (en) * 2005-03-25 2016-03-15 Qualcomm Incorporated Apparatus and methods for managing content exchange on a wireless device
MY165346A (en) * 2005-05-03 2018-03-21 E Lock Corp Sdn Bhd Internet security
US8874658B1 (en) * 2005-05-11 2014-10-28 Symantec Corporation Method and apparatus for simulating end user responses to spam email messages
US7930353B2 (en) * 2005-07-29 2011-04-19 Microsoft Corporation Trees of classifiers for detecting email spam
US20070124582A1 (en) * 2005-08-07 2007-05-31 Marvin Shannon System and Method for an NSP or ISP to Detect Malware in its Network Traffic
US20080313704A1 (en) * 2005-10-21 2008-12-18 Boxsentry Pte Ltd. Electronic Message Authentication
US9031999B2 (en) 2005-10-26 2015-05-12 Cortica, Ltd. System and methods for generation of a concept based database
US10380164B2 (en) 2005-10-26 2019-08-13 Cortica, Ltd. System and method for using on-image gestures and multimedia content elements as search queries
US9372940B2 (en) 2005-10-26 2016-06-21 Cortica, Ltd. Apparatus and method for determining user attention using a deep-content-classification (DCC) system
US10848590B2 (en) 2005-10-26 2020-11-24 Cortica Ltd System and method for determining a contextual insight and providing recommendations based thereon
US8818916B2 (en) 2005-10-26 2014-08-26 Cortica, Ltd. System and method for linking multimedia data elements to web pages
US10691642B2 (en) 2005-10-26 2020-06-23 Cortica Ltd System and method for enriching a concept database with homogenous concepts
US10621988B2 (en) 2005-10-26 2020-04-14 Cortica Ltd System and method for speech to text translation using cores of a natural liquid architecture system
US10360253B2 (en) 2005-10-26 2019-07-23 Cortica, Ltd. Systems and methods for generation of searchable structures respective of multimedia data content
US10742340B2 (en) 2005-10-26 2020-08-11 Cortica Ltd. System and method for identifying the context of multimedia content elements displayed in a web-page and providing contextual filters respective thereto
US11019161B2 (en) 2005-10-26 2021-05-25 Cortica, Ltd. System and method for profiling users interest based on multimedia content analysis
US9767143B2 (en) 2005-10-26 2017-09-19 Cortica, Ltd. System and method for caching of concept structures
US10607355B2 (en) 2005-10-26 2020-03-31 Cortica, Ltd. Method and system for determining the dimensions of an object shown in a multimedia content item
US8312031B2 (en) 2005-10-26 2012-11-13 Cortica Ltd. System and method for generation of complex signatures for multimedia data content
US10614626B2 (en) 2005-10-26 2020-04-07 Cortica Ltd. System and method for providing augmented reality challenges
US10776585B2 (en) 2005-10-26 2020-09-15 Cortica, Ltd. System and method for recognizing characters in multimedia content
US10191976B2 (en) 2005-10-26 2019-01-29 Cortica, Ltd. System and method of detecting common patterns within unstructured data elements retrieved from big data sources
US10949773B2 (en) 2005-10-26 2021-03-16 Cortica, Ltd. System and methods thereof for recommending tags for multimedia content elements based on context
US10535192B2 (en) 2005-10-26 2020-01-14 Cortica Ltd. System and method for generating a customized augmented reality environment to a user
US9218606B2 (en) 2005-10-26 2015-12-22 Cortica, Ltd. System and method for brand monitoring and trend analysis based on deep-content-classification
US10387914B2 (en) 2005-10-26 2019-08-20 Cortica, Ltd. Method for identification of multimedia content elements and adding advertising content respective thereof
US10380623B2 (en) 2005-10-26 2019-08-13 Cortica, Ltd. System and method for generating an advertisement effectiveness performance score
US11604847B2 (en) 2005-10-26 2023-03-14 Cortica Ltd. System and method for overlaying content on a multimedia content element based on user interest
US11032017B2 (en) 2005-10-26 2021-06-08 Cortica, Ltd. System and method for identifying the context of multimedia content elements
US10380267B2 (en) 2005-10-26 2019-08-13 Cortica, Ltd. System and method for tagging multimedia content elements
US9953032B2 (en) 2005-10-26 2018-04-24 Cortica, Ltd. System and method for characterization of multimedia content signals using cores of a natural liquid architecture system
US10180942B2 (en) 2005-10-26 2019-01-15 Cortica Ltd. System and method for generation of concept structures based on sub-concepts
US8266185B2 (en) 2005-10-26 2012-09-11 Cortica Ltd. System and methods thereof for generation of searchable structures respective of multimedia data content
US10585934B2 (en) 2005-10-26 2020-03-10 Cortica Ltd. Method and system for populating a concept database with respect to user identifiers
US11386139B2 (en) 2005-10-26 2022-07-12 Cortica Ltd. System and method for generating analytics for entities depicted in multimedia content
US11403336B2 (en) 2005-10-26 2022-08-02 Cortica Ltd. System and method for removing contextually identical multimedia content elements
US10193990B2 (en) 2005-10-26 2019-01-29 Cortica Ltd. System and method for creating user profiles based on multimedia content
US11003706B2 (en) 2005-10-26 2021-05-11 Cortica Ltd System and methods for determining access permissions on personalized clusters of multimedia content elements
US11216498B2 (en) 2005-10-26 2022-01-04 Cortica, Ltd. System and method for generating signatures to three-dimensional multimedia data elements
US20170300486A1 (en) * 2005-10-26 2017-10-19 Cortica, Ltd. System and method for compatability-based clustering of multimedia content elements
US11361014B2 (en) 2005-10-26 2022-06-14 Cortica Ltd. System and method for completing a user profile
US10635640B2 (en) 2005-10-26 2020-04-28 Cortica, Ltd. System and method for enriching a concept database
US9191626B2 (en) 2005-10-26 2015-11-17 Cortica, Ltd. System and methods thereof for visual analysis of an image on a web-page and matching an advertisement thereto
US11620327B2 (en) 2005-10-26 2023-04-04 Cortica Ltd System and method for determining a contextual insight and generating an interface with recommendations based thereon
US9384196B2 (en) 2005-10-26 2016-07-05 Cortica, Ltd. Signature generation for multimedia deep-content-classification by a large-scale matching system and method thereof
US9747420B2 (en) 2005-10-26 2017-08-29 Cortica, Ltd. System and method for diagnosing a patient based on an analysis of multimedia content
US9529984B2 (en) 2005-10-26 2016-12-27 Cortica, Ltd. System and method for verification of user identification based on multimedia content elements
US10372746B2 (en) 2005-10-26 2019-08-06 Cortica, Ltd. System and method for searching applications using multimedia content elements
US8326775B2 (en) 2005-10-26 2012-12-04 Cortica Ltd. Signature generation for multimedia deep-content-classification by a large-scale matching system and method thereof
US10698939B2 (en) 2005-10-26 2020-06-30 Cortica Ltd System and method for customizing images
US9477658B2 (en) 2005-10-26 2016-10-25 Cortica, Ltd. Systems and method for speech to speech translation using cores of a natural liquid architecture system
US9646005B2 (en) 2005-10-26 2017-05-09 Cortica, Ltd. System and method for creating a database of multimedia content elements assigned to users
US8065370B2 (en) 2005-11-03 2011-11-22 Microsoft Corporation Proofs to filter spam
US20070192490A1 (en) * 2006-02-13 2007-08-16 Minhas Sandip S Content-based filtering of electronic messages
US8903763B2 (en) 2006-02-21 2014-12-02 International Business Machines Corporation Method, system, and program product for transferring document attributes
US20080059590A1 (en) * 2006-09-05 2008-03-06 Ecole Polytechnique Federale De Lausanne (Epfl) Method to filter electronic messages in a message processing system
US10733326B2 (en) 2006-10-26 2020-08-04 Cortica Ltd. System and method for identification of inappropriate multimedia content
US8224905B2 (en) 2006-12-06 2012-07-17 Microsoft Corporation Spam filtration utilizing sender activity data
US7890589B2 (en) 2007-01-04 2011-02-15 Research In Motion Limited System and method for providing information on a received communication for an electronic communication device
ATE461500T1 (de) 2007-01-04 2010-04-15 Research In Motion Ltd System und verfahren zur bereitstellung von information auf einem empfangenen kommunikationssignal für eine elektronische kommunikationsvorrichtung
JP2007115279A (ja) * 2007-01-19 2007-05-10 Fuji Xerox Co Ltd 電子メール装置
US20080201722A1 (en) * 2007-02-20 2008-08-21 Gurusamy Sarathy Method and System For Unsafe Content Tracking
US9083556B2 (en) * 2007-05-31 2015-07-14 Rpx Clearinghouse Llc System and method for detectng malicious mail from spam zombies
JP5094487B2 (ja) * 2008-03-17 2012-12-12 三菱電機株式会社 情報漏洩検査装置及びコンピュータプログラム及び情報漏洩検査方法
US8180838B2 (en) * 2008-08-29 2012-05-15 Microsoft Corporation Efficiently managing modular data storage systems
US8321942B1 (en) * 2009-03-12 2012-11-27 Symantec Corporation Selecting malware signatures based on malware diversity
JP4756285B2 (ja) 2009-04-23 2011-08-24 独立行政法人産業技術総合研究所 荷電変換用デバイス
US8925087B1 (en) * 2009-06-19 2014-12-30 Trend Micro Incorporated Apparatus and methods for in-the-cloud identification of spam and/or malware
JP5427497B2 (ja) * 2009-07-09 2014-02-26 株式会社日立製作所 メールゲートウェイ
US8447818B2 (en) * 2009-07-24 2013-05-21 International Business Machines Corporation Partially and completely duplicative messages handling
US8458268B1 (en) * 2010-02-22 2013-06-04 Symantec Corporation Systems and methods for distributing spam signatures
US9406048B2 (en) * 2010-07-07 2016-08-02 Mark Meister Email system for preventing inadvertant transmission of propriety message or documents to unintended recipient
US9589254B2 (en) 2010-12-08 2017-03-07 Microsoft Technology Licensing, Llc Using e-mail message characteristics for prioritization
US8577876B2 (en) * 2011-06-06 2013-11-05 Met Element, Inc. System and method for determining art preferences of people
JP2012069125A (ja) * 2011-10-13 2012-04-05 Message Level Llc 勝手に送り付けてくる好ましくない電子メッセージの検出およびフィルタリングを行うシステムと方法
JP5870677B2 (ja) * 2011-12-21 2016-03-01 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、プログラム
US8954519B2 (en) 2012-01-25 2015-02-10 Bitdefender IPR Management Ltd. Systems and methods for spam detection using character histograms
US9130778B2 (en) * 2012-01-25 2015-09-08 Bitdefender IPR Management Ltd. Systems and methods for spam detection using frequency spectra of character strings
GB2520878A (en) * 2012-08-17 2015-06-03 Opera Solutions Llc System and method for matching data using probabilistic modeling techniques
WO2014203296A1 (ja) * 2013-06-21 2014-12-24 株式会社野村総合研究所 情報処理装置、電子メール閲覧制限方法、コンピュータプログラムおよび情報処理システム
WO2017105641A1 (en) 2015-12-15 2017-06-22 Cortica, Ltd. Identification of key points in multimedia data elements
US11195043B2 (en) 2015-12-15 2021-12-07 Cortica, Ltd. System and method for determining common patterns in multimedia content elements based on key points
US10320726B2 (en) * 2016-08-10 2019-06-11 International Business Machines Corporation Predictive message personalization
US11760387B2 (en) 2017-07-05 2023-09-19 AutoBrains Technologies Ltd. Driving policies determination
WO2019012527A1 (en) 2017-07-09 2019-01-17 Cortica Ltd. ORGANIZATION OF DEPTH LEARNING NETWORKS
US20190327127A1 (en) * 2018-04-23 2019-10-24 Entit Software Llc Information technology event management
US10846544B2 (en) 2018-07-16 2020-11-24 Cartica Ai Ltd. Transportation prediction system and method
US10715475B2 (en) * 2018-08-28 2020-07-14 Enveloperty LLC Dynamic electronic mail addressing
US11181911B2 (en) 2018-10-18 2021-11-23 Cartica Ai Ltd Control transfer of a vehicle
US20200133308A1 (en) 2018-10-18 2020-04-30 Cartica Ai Ltd Vehicle to vehicle (v2v) communication less truck platooning
US11126870B2 (en) 2018-10-18 2021-09-21 Cartica Ai Ltd. Method and system for obstacle detection
US10839694B2 (en) 2018-10-18 2020-11-17 Cartica Ai Ltd Blind spot alert
US11700356B2 (en) 2018-10-26 2023-07-11 AutoBrains Technologies Ltd. Control transfer of a vehicle
US10748038B1 (en) 2019-03-31 2020-08-18 Cortica Ltd. Efficient calculation of a robust signature of a media unit
US10789535B2 (en) 2018-11-26 2020-09-29 Cartica Ai Ltd Detection of road elements
US10958585B2 (en) 2018-12-31 2021-03-23 Juniper Networks, Inc. Methods and apparatus for facilitating fault detection and/or predictive fault detection
US11643005B2 (en) 2019-02-27 2023-05-09 Autobrains Technologies Ltd Adjusting adjustable headlights of a vehicle
US11285963B2 (en) 2019-03-10 2022-03-29 Cartica Ai Ltd. Driver-based prediction of dangerous events
US11694088B2 (en) 2019-03-13 2023-07-04 Cortica Ltd. Method for object detection using knowledge distillation
US11132548B2 (en) 2019-03-20 2021-09-28 Cortica Ltd. Determining object information that does not explicitly appear in a media unit signature
US10796444B1 (en) 2019-03-31 2020-10-06 Cortica Ltd Configuring spanning elements of a signature generator
US11222069B2 (en) 2019-03-31 2022-01-11 Cortica Ltd. Low-power calculation of a signature of a media unit
US10776669B1 (en) 2019-03-31 2020-09-15 Cortica Ltd. Signature generation and object detection that refer to rare scenes
US10789527B1 (en) 2019-03-31 2020-09-29 Cortica Ltd. Method for object detection using shallow neural networks
US11138059B2 (en) 2019-09-25 2021-10-05 Juniper Networks, Inc. Log analysis in vector space
US10748022B1 (en) 2019-12-12 2020-08-18 Cartica Ai Ltd Crowd separation
US11593662B2 (en) 2019-12-12 2023-02-28 Autobrains Technologies Ltd Unsupervised cluster generation
US11590988B2 (en) 2020-03-19 2023-02-28 Autobrains Technologies Ltd Predictive turning assistant
US11827215B2 (en) 2020-03-31 2023-11-28 AutoBrains Technologies Ltd. Method for training a driving related object detector
US11756424B2 (en) 2020-07-24 2023-09-12 AutoBrains Technologies Ltd. Parking assist

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452442A (en) * 1993-01-19 1995-09-19 International Business Machines Corporation Methods and apparatus for evaluating and extracting signatures of computer viruses and other undesirable software entities
JPH1074172A (ja) * 1996-06-10 1998-03-17 Sun Microsyst Inc ジャンク電子メールを識別し廃棄するための方法および装置
JPH1115756A (ja) * 1997-06-24 1999-01-22 Omron Corp 電子メール判別方法及び装置並びに記憶媒体
JPH1115836A (ja) * 1997-06-20 1999-01-22 Nec Ic Microcomput Syst Ltd 文字列探索用テーブル、その作成方法及び文字列探索方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3210692A1 (de) * 1982-03-20 1983-09-22 Norbert Dipl.-Phys. Dr. 1000 Berlin Röder Spielwuerfel
GB9220404D0 (en) * 1992-08-20 1992-11-11 Nat Security Agency Method of identifying,retrieving and sorting documents
US5619648A (en) * 1994-11-30 1997-04-08 Lucent Technologies Inc. Message filtering techniques
US5826022A (en) * 1996-04-05 1998-10-20 Sun Microsystems, Inc. Method and apparatus for receiving electronic mail
JP3489331B2 (ja) * 1996-04-19 2004-01-19 株式会社豊田中央研究所 情報選択音声出力装置
US5883640A (en) * 1996-08-15 1999-03-16 Hsieh; Paul Computing apparatus and operating method using string caching to improve graphics performance
US6144934A (en) * 1996-09-18 2000-11-07 Secure Computing Corporation Binary filter using pattern recognition
US6173364B1 (en) * 1997-01-15 2001-01-09 At&T Corp. Session cache and rule caching method for a dynamic filter
US5897637A (en) * 1997-03-07 1999-04-27 Apple Computer, Inc. System and method for rapidly identifying the existence and location of an item in a file
US5877759A (en) * 1997-03-26 1999-03-02 Netscape Communications Corporation Interface for user/agent interaction
JP3168949B2 (ja) * 1997-08-06 2001-05-21 村田機械株式会社 電子メール機能付通信端末装置
US6249805B1 (en) * 1997-08-12 2001-06-19 Micron Electronics, Inc. Method and system for filtering unauthorized electronic mail messages
US5999967A (en) * 1997-08-17 1999-12-07 Sundsted; Todd Electronic mail filtering by electronic stamp
US6199102B1 (en) * 1997-08-26 2001-03-06 Christopher Alan Cobb Method and system for filtering electronic messages
US6023723A (en) * 1997-12-22 2000-02-08 Accepted Marketing, Inc. Method and system for filtering unwanted junk e-mail utilizing a plurality of filtering mechanisms
US6052709A (en) * 1997-12-23 2000-04-18 Bright Light Technologies, Inc. Apparatus and method for controlling delivery of unsolicited electronic mail
US5999932A (en) * 1998-01-13 1999-12-07 Bright Light Technologies, Inc. System and method for filtering unsolicited electronic mail messages using data matching and heuristic processing
JPH11252158A (ja) 1998-02-27 1999-09-17 Seiko Epson Corp 電子メール情報管理方法及び装置並びに電子メール情報管理処理プログラムを記録した記録媒体
US6073167A (en) * 1998-03-18 2000-06-06 Paratran Corporation Distribution limiter for network messaging
GB9811574D0 (en) * 1998-05-30 1998-07-29 Ibm Indexed file system and a method and a mechanism for accessing data records from such a system
US6161130A (en) * 1998-06-23 2000-12-12 Microsoft Corporation Technique which utilizes a probabilistic classifier to detect "junk" e-mail by automatically updating a training and re-training the classifier based on the updated training set
US6167434A (en) * 1998-07-15 2000-12-26 Pang; Stephen Y. Computer code for removing junk e-mail messages
US6240409B1 (en) * 1998-07-31 2001-05-29 The Regents Of The University Of California Method and apparatus for detecting and summarizing document similarity within large document sets
US6085321A (en) * 1998-08-14 2000-07-04 Omnipoint Corporation Unique digital signature
US6330590B1 (en) * 1999-01-05 2001-12-11 William D. Cotten Preventing delivery of unwanted bulk e-mail

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452442A (en) * 1993-01-19 1995-09-19 International Business Machines Corporation Methods and apparatus for evaluating and extracting signatures of computer viruses and other undesirable software entities
JPH1074172A (ja) * 1996-06-10 1998-03-17 Sun Microsyst Inc ジャンク電子メールを識別し廃棄するための方法および装置
JPH1115836A (ja) * 1997-06-20 1999-01-22 Nec Ic Microcomput Syst Ltd 文字列探索用テーブル、その作成方法及び文字列探索方法
JPH1115756A (ja) * 1997-06-24 1999-01-22 Omron Corp 電子メール判別方法及び装置並びに記憶媒体

Also Published As

Publication number Publication date
US6732149B1 (en) 2004-05-04
JP2009104606A (ja) 2009-05-14
JP2000353133A (ja) 2000-12-19
GB2350747A (en) 2000-12-06
GB2350747B (en) 2004-09-22
GB0007562D0 (en) 2000-05-17
JP4250300B2 (ja) 2009-04-08

Similar Documents

Publication Publication Date Title
JP4708466B2 (ja) 望ましくない電子メッセージの送信または受信を妨害するための方法
US10042919B2 (en) Using distinguishing properties to classify messages
US9386046B2 (en) Statistical message classifier
US7930351B2 (en) Identifying undesired email messages having attachments
US6772196B1 (en) Electronic mail filtering system and methods
EP1877905B1 (en) Identifying threats in electronic messages
US8321512B2 (en) Method and software product for identifying unsolicited emails
US7406506B1 (en) Identification and filtration of digital communications
US7197539B1 (en) Automated disablement of disposable e-mail addresses based on user actions
US7664812B2 (en) Phonetic filtering of undesired email messages
US8463861B2 (en) Message classification using legitimate contact points
US20060095966A1 (en) Method of detecting, comparing, blocking, and eliminating spam emails
WO2005010692A2 (en) System and method for identifying and filtering junk e-mail messages or spam based on url content
US20060149820A1 (en) Detecting spam e-mail using similarity calculations
EP1376420A1 (en) Method and system for classifying electronic documents
US20100154058A1 (en) Method and systems for collecting addresses for remotely accessible information sources
JP2007265368A (ja) スパム除去方法
US8819142B1 (en) Method for reclassifying a spam-filtered email message
Al Abid Designing Spam Filtering by Analyzing User and Email Behaviour

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100713

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20100830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110126

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110316

LAPS Cancellation because of no payment of annual fees