(57)【要約】  中央インフラとローカル・コンピューティング装置を持つネットワーク上で、ファイルのコンテンツ識別を用いて、ネットワークの保護（安全化）と制御を実行する方法およびシステム。この方法は、ローカル・コンピューティング装置上で生成されたか、あるいは受け取られた新規ファイルのハッシュ値を計算し、このハッシュ値を中央インフラに送り、このハッシュ値を中央インフラ上のデータベースに格納されている先に求められたハッシュ値と比較して、このファイルが上記ネットワークには初めてであるかどうか判定し、このファイルが、上記ネットワークには初めてである場合には、この中央インフラにインストールされ、かつ、そこで更新されるコンテンツ識別エンジンを用いて、このファイル・コンテンツをチェックする。ポリシー・ルールにより、このローカル・コンピューティング装置に適切な動作を実行させるファイルに対して、コンテンツ属性を決定する。【選択図】図３
2007520796.tif 000002
【特許請求の範囲】
【請求項１】
中央インフラを含むネットワーク環境の残りの部分にリンクされている少なくとも１つのローカル・コンピューティング装置を含む前記ネットワーク環境で、ファイルのコンテンツを識別する方法であって、
一方向関数を用いて、前記少なくとも１つのローカル・コンピューティング装置の１つにある新規ファイル用の基準値を計算するステップと、
前記計算された基準値を前記中央インフラに送るステップと、
前記計算された基準値と、先に前記ネットワーク環境の前記残りの部分に格納された基準値を比較するステップと、
比較した後で、
前記計算された基準値が、先に格納された基準値と一致することがわかった場合には、前記新規ファイルの前記コンテンツがすでに識別されていると判定して、該当するコンテンツ属性を検索するステップ、あるいは、前記計算された基準値が、先に格納された基準値のどれとも一致しないことがわかった場合には、前記新規ファイルの前記コンテンツがまだ識別されていないと判定し、その後で、前記ローカル・コンピューティング装置上の前記新規ファイルを前記中央インフラに分け与えて、かつ、前記中央インフラに、前記ネットワーク環境にわたって前記コンテンツをリモートで識別するステップで前記新規ファイルの前記コンテンツを識別させ、前記新規ファイルの前記コンテンツと一致するコンテンツ属性を決定して、前記コンテンツ属性のコピーを格納するステップと、
判定の後で、
前記コンテンツ属性に基づいて、前記ローカル・コンピューティング装置上で動作を開始させるステップと、
を含むことを特徴とする方法。
【請求項２】
前記コンテンツ属性に基づいて、前記ローカル・コンピューティング装置上で動作を開始させるステップは、前記新規ファイルに対応する前記コンテンツ属性を前記ローカル・コンピューティング装置に送った後で実行されることを特徴とする請求項１に記載の方法。
【請求項３】
前記新規ファイルの前記コンテンツを識別するステップは、前記中央インフラにインストールされたスキャニング手段を用いて、スキャンしてウイルスを見つけ出すステップ、スキャンしてアダルト・コンテンツを見つけ出すステップ、スキャンして自己宣伝広告メッセージを見つけ出すステップ、スキャンして著作権所有情報を見つけ出すステップのグループのうちの１つまたは複数のステップを含むことを特徴とする請求項１または２のいずれかに記載の方法。
【請求項４】
前記新規ファイルのコピーを前記中央インフラに格納するステップをさらに含むことを特徴とする請求項１ないし３のいずれかに記載の方法。
【請求項５】
前記コンテンツ属性に基づいて、前記ローカル・コンピューティング装置上で動作を開始させるステップは、前記ローカル・コンピューティング装置上の前記新規ファイルを、前記ネットワーク環境の前記残りの部分から復元された前記新規ファイルの別バージョンに代えることも含むことを特徴とする請求項１ないし４のいずれかに記載の方法。
【請求項６】
ネットワーク上で実行されるときに、請求項１ないし５に記載の方法のいずれかを実行するコンピュータ・プログラム・プロダクト。
【請求項７】
中央インフラを含むネットワーク環境の残りの部分（格納データベースを含む）にリンクされた少なくとも１つのローカル・コンピューティング装置を含む前記ネットワーク環境で、ファイルのコンテンツを識別するシステムであって、
一方向関数を用いて前記ローカル・コンピューティング装置上の新規ファイルの基準値を計算する手段と、
前記計算された基準値を前記中央インフラに送る手段と、
前記計算された基準値と、前記データベースからの先に格納された基準値を比較する手段と、
を備え、さらに、
前記新規ファイルの前記コンテンツが、前記計算された基準値と、前記残りの部分に先に格納された基準値との比較に基づいて、すでに識別されているかどうか判定する手段と、
前記ローカル・コンピューティング装置上の前記新規ファイルを、前記中央インフラに分け与える手段と、
前記中央インフラ上にあって、前記新規ファイルの前記コンテンツをリモートで識別し、また、前記新規ファイルがまだ識別されていない場合にはコンテンツ属性を割り当てる手段と、前記残りの部分に前記コンテンツ属性を格納する手段と、
前記新規ファイル用のコンテンツ属性に基づいて、前記ローカル・コンピューティング装置上で動作を開始させる手段と、
を備えることを特徴とするシステム。
【請求項８】
前記新規ファイルのコピーを前記残りの部分に格納する手段をさらに備えることを特徴とする請求項７に記載のシステム。
【請求項９】
一方向関数を計算する手段と、中央インフラを含むネットワーク環境の残りの部分（格納データベースを含む）にリンクされた少なくとも１つのローカル・コンピューティング装置と、前記コンテンツを識別する手段とを含むネットワーク環境で、ファイルの前記コンテンツを識別するシステムを変更する方法であって、
上記コンテンツを識別する手段、または前記一方向関数を計算する手段を変更するステップと、
前記ネットワーク環境の前記残りの部分をスキャンして、一方向関数を用いて計算された基準値を求めるステップと、
前記基準値のそれぞれに対して、
前記ネットワーク環境から、前記基準値と一致するファイルを要求するステップと、
前記ファイルの前記コンテンツを識別して、前記ファイルの前記コンテンツと一致するコンテンツ属性を決定し、前記コンテンツ属性のコピーを格納するステップと、
前記コンテンツ属性を、前記ファイルを含むあらゆるローカル・コンピューティング装置に送るステップと、
送った後で、
前記コンテンツ属性に基づいて、前記ローカル・コンピューティング装置上で動作を開始させるステップと、
を含むことを特徴とする方法。
【請求項１０】
前記ネットワーク環境の前記残りの部分をスキャンして、一方向関数を用いて計算された基準値を求めるステップは、前記ネットワーク環境の前記残りの部分をスキャンして、一方向関数を用いて計算された、所定日付後に生成された基準値を求めるステップを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記基準値のそれぞれに対して、前記ファイルを、前記コンテンツを識別する手段に送ることを特徴とする請求項９または１０に記載の方法。
【請求項１２】
前記基準値のそれぞれに対して、前記ファイルを、前記コンテンツを識別する手段に分け与えて、前記ネットワーク上で、前記ファイルの前記コンテンツをリモートで識別するステップをさらに含むことを特徴とする請求項９または１０に記載の方法。
【請求項１３】
前記コンテンツ属性を、前記ファイルを含むあらゆるローカル・コンピューティング装置に送るステップは、
前記ファイルを含むあらゆるローカル・コンピューティング装置を、格納データベースを用いて識別するステップと、
前記コンテンツ属性を前記識別されたローカル・コンピューティング装置に送るステップと、
を含むことを特徴とする請求項９または１２のいずれかに記載の方法。
【請求項１４】
前記コンテンツ属性を前記識別されたローカル・コンピューティング装置に送るステップは、前記識別されたローカル・コンピューティング装置がそれぞれ前記ネットワークに接続されてない場合に、待機リストに記入項目（エントリ）を作成して、前記ローカル・コンピューティング装置が前記ネットワークに再接続されるときに、前記待機リスト上の前記記入項目に従って、前記コンテンツ属性を、前記識別されたローカル・コンピューティング装置に送るステップを含むことを特徴とする請求項９ないし１３のいずれかに記載の方法。
【請求項１５】
前記基準値と一致するファイルを、前記ネットワーク環境から要求するステップは、前記基準値と一致する前記ファイルを持つローカル・コンピューティング装置が前記ネットワークにまったく接続されてない場合に、待機リストに記入項目を作成して、前記ローカル・コンピューティング装置が前記ネットワークに再接続されるときに、前記記入項目に従って、前記基準値と一致するファイルを、前記ローカル・コンピューティング装置から要求するステップを含むことを特徴とする請求項９ないし１４のいずれかに記載の方法。
【請求項１６】
前記コンテンツ属性が、不要のコンテンツと一致するかどうか識別し、もし一致する場合には、前記データベースに格納されたデータに基づいて、前記ネットワーク上で前記不要のコンテンツを最初に導入したローカル・コンピューティング装置を識別するステップをさらに含むことを特徴とする請求項９ないし１５のいずれかに記載の方法。
【請求項１７】
ネットワーク上で実行されるときに、請求項９ないし１６のいずれかに記載の方法を実行するコンピュータ・プログラム・プロダクト。
【請求項１８】
請求項６ないし１７記載のコンピュータ・プログラム・プロダクトを格納する機械読取り可能なデータ記憶装置。
【請求項１９】
ローカル・エリア・ネットワークまたは広域ネットワークを用いての請求項６ないし１７記載のコンピュータ・プログラム・プロダクトの伝送。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、テキスト（文字）データまたはグラフィカル・データが入っているコンピュータ・ファイルのコンテンツを制御する方法とシステムに関し、さらに、このようなコンテンツ識別システムを更新する方法に関する。さらに具体的に言えば、ネットワーク環境で、ローカル・コンピューティング装置上のコンピュータ・ファイルのコンテンツとセキュリティ・ステータスをチェックし、かつ管理するための方法とシステム、および、このようにチェックし、かつ管理するシステムを更新するための方法とシステムが述べられている。
【背景技術】
【０００２】
今日の世界では、コンピュータが広く普及している。特にビジネル環境では、コンピュータは、小規模ネットワーク、またはさらに大きいネットワーク上で相互接続されることが非常に多い。ソフトウェアとデータはしばしば、民間人と民間企業の双方の投資材の重要部分であるので、単一コンピューティング装置と全ネットワーク、およびそれらのワークステーションを、ウイルス、トロイの木馬、ワーム、悪意のあるソフトウェアから保護することが重要である。別の問題は、あからさまの性描写のあるアダルト・コンテンツのように、望ましくないコンテンツが入っている分のファイルと関係がある。これらのファイルは、歓迎されない不要のものとして、ローカル・コンピューティング装置で受け取られることが多い。
【０００３】
ウイルスに関連するセキュリティ問題を解決するために、ウイルス・チェッカーとも呼ばれているウイルス保護システムが開発されてきた。従来のウイルス・チェッカーのいくつかの例として、Ｎｏｒｔｏｎ  ＡｎｔｉＶｉｒｕｓ、ＭｃＡｆｅｅ  ＶｉｒｕｓＳｃａｎ、ＰＣ−ｃｉｌｌｉｎ、Ｋａｓｐｅｒｓｋｙ、Ａｎｔｉ−Ｖｉｒｕｓがある。これらの従来のウイルス保護ソフトウェア・パッケージの大部分は、コンピューティング装置のバックグラウンドで絶え間なく実行していて、かつ、絶え間なく保護しているように、構成されている。これらのウイルス保護システムは、新規ソフトウェアまたは修正されたソフトウェアのコードと、よく知られているウイルスの指紋（例えば、これらのウイルスが、ファイル中にもたらしたコードの一部）を比較する。他のウイルス保護システムは、このコンピューティング装置上で利用できるあらゆるデータのコードを比較する。これにより、中央演算処理装置（ＣＰＵ）の時間が著しく費やされて、それが、他のタスクを実行するコンピューティング装置の容量を制限する。さらに、これらのウイルス・チェッカーの動作原理により、ウイルス・スキャニング・プログラムがウイルスの指紋を見分けるために、この指紋を知る必要があるので、これらのソフトウェア・パッケージは、予防的な働きよりもむしろ、反応型の働きをする。これは、指紋のデータベースをきわめて定期的に更新して、そのデータベースを、比較的に新しいウイルスから保護する必要があることを意味している。その結果、このコンピュータのセキュアな状態は、ウイルス保護ソフトウェア・パッケージの販売会社が新規ウイルスの指紋を利用できるようにする正確さのような外部要因に左右されるだけでなく、定期的に更新を実行することに関するユーザの義務感にも左右される。最新情報が、サーバーから中央に自動的に提供される場合には、これらのウイスル最新情報を、それぞれのワークステーションに送らなければならないので、ネットワークの容量が減らされる。
【０００４】
ネットワーク環境では、このような指紋のデータベースを更新する問題は、すべてのユーザに責任を負わせて、全員が自分のウイルス・チェッカー・データベースを更新しなければならないことを意味しているので、明らかに重要となる。別法として、このようなウイルス・スキャニングを中央サーバーで実行し、したがって、新規指紋の更新を、中央サーバーに限定する。それにもかかわらず、このことは、このネットワーク上で大量のデータを定期的に転送する必要があり、それにより、費用のかかるネットワーク帯域幅を大量に利用し、ことによると（このサーバーに対するクライアントの数によって決まる）、他の活動のために、ネットワーク容量またはサーバー容量に負担をかけすぎる場合があることを意味している。
【０００５】
費やされるＣＰＵ時間の量を制限するために、ウイルス・スキャニング・プロセスの速度を上げるために、追加手法が開発されてきた。これらの手法は、ファイルのコンテンツのハッシングを含むことが非常に多い。ハッシングは「一方向関数」の一応用例である。一方向関数は、一方向で用いるときには、逆方向を、ほぼ実行不可能にするアルゴリズムである。一方向関数は、ファイルのコンテンツについて、計算によりハッシュ値などの値を生成する。また、一方向関数が、異なるファイルからの重複値を避けるくらい充分複雑である場合には、この一方向関数は、上記ファイルの指紋を一意的に生成できる。ハッシング関数の一意性は、使用されるハッシング関数のタイプ、すなわち、形成されるダイジェストのサイズと、ハッシング関数の品質によって決まる。優れたハッシング関数は、テーブル内での衝突がもっとも少ない。すなわち、異なるファイルに対して、同一のハッシュ値をもたらすおそれがもっとも低い。述べられる通り、これはまた、計算された上記ダイジェストのサイズ、すなわちハッシュ値により決定される。例えば、１２８ビットのダイジェストが使用される場合には、得ることのできる異なる可能な値の数は、２128である。
【０００６】
ネットワーク環境で、ハッシングを使用して、ウイルスをチェックすることが知られている。一般に、ローカル・コンピュータ上で実行するように選択されたアプリケーションのハッシュが計算され、また、保護されたコンピュータ（secured computer）上のデータベースからの格納ハッシュが、このローカル・コンピュータ上で検索され、それにより、この保護されたコンピュータが、このローカル・コンピュータの保護された部分、またはネットワーク・サーバーとなることもあり、さらに、双方の値が比較される。一致する場合には、このアプリケーションが実行され、また、一致しない場合には、セキュリティ処置が実行される。このセキュリティ処置は、このローカル・コンピュータ上にウイルス・スキャナをロードする処置を含む。このセキュリティ処置はまた、ネットワーク管理者に警告する処置も含む場合がある。さらに、異なるワークステーションからのソフトウェアへのアクセス可能性を区別するために、またソフトウェアが認可されるかどうかチェックする方法として、このセキュリティ処置を利用することも知られている。
【０００７】
コンピュータシステムまたは装置上で無法（詐欺師、rogue）ソフトウェアを識別する方法にハッシングを使用することも知られている。この方法は、一般に、ネットワーク環境で使用できる。実行されるソフトウェア・アプリケーションのハッシュ値を計算し、このハッシュ値をサーバーに転送して、そのハッシュ値を先に格納された値と比較する。これらの本質的特徴の１つは、この方法がサーバー上でデータベースを使用し、かつ、このサーバーが多数のクライアントを持つサーバーであることである。このサーバー上のデータベースは、ほとんどのソフトウェア・アプリケーションや、それらの対応する指紋が、このデータベースに格納されているように、異なるクライアントにより情報を追加することで構築される。このデータベースは、出所の正しさの点から、ソフトウェア・アプリケーションを、そのソフトウェア・アプリケーションのオーナ（所有者）と照合することで、構築される。これが実行できなければ、そのシステムは、他のクライアントから、ローカル・コンピュータ上でのこのアプリケーションの出現を評価するヒューリスティック（発見的）な結果をもたらすこともできる。
【０００８】
ファイル・コンテンツとメッセージ・コンテンツの識別子を含む電子メール（すなわち、ｅ−ｍａｉｌ）により電子ファイルを送る方法が知られている。このメッセージがカスタマに配信されるかどうかは、このメッセージ・コンテンツの識別によって決まる。この方法は、電子メール配信を編成するために使用されることがあるが、ただし、電子メール配信に集中するという欠点があり、この方法では、ネットワーク上のファイルを全部、保護できるとは限らない。
【０００９】
電子メール・メッセージを監視し、コンピュータシステムを保護して、ウイルス攻撃や、要りもしない商業電子メール（ＵＣＥ）から守ることも知られている。このようなコンピュータシステムは、好ましくは、メール・サーバーまたはインターネット・サービス・プロバイダに導入され、かつ、ダイジェストを計算して、そのダイジェスト値と、先に受け取られた電子メールの格納されたダイジェスト値を比較することで、電子メールの特定部分をチェックする。このようにして、この電子メールが、認可ダイジェストを持っているかどうか、あるいは、この電子メールがＵＣＥであるか、または電子メール・ワームを含むかどうか判定する。このシステムは、電子メール・ウイルスとＳＰＡＭに集中するという欠点と、例えばフロッピー（登録商標）・ディスクまたはＣＤ−ＲＯＭのような外部メモリ記憶手段からコピーされたファイル、あるいは例えばトロイの木馬に感染しているかもしれないデータ・ファイルまたは実行可能なファイルを全部チェックできるようにするとは限らないという欠点がある。
【００１０】
ネットワーク・サーバーを用いて、いくつかのポリシー・ルールに従って、異なるワークステーション上でソフトウェアを実行する作業を制御することが知られており、それにより、改良されたコンピュータ・セキュリティ・システムが、ソフトウェアの分類により得られる。この分類は、いくつかのデータ形式に基づくこともあり、それらのデータ形式の１つが、例えば、ソフトウェア・データのハッシュ値であることがうかがえる。これは、一般に、プログラムが、ローディングと実行、およびそのハッシュ値と信頼値（trusted value）との比較のために選択されて、その実行ルールを決定する場合に、そのプログラムのハッシュ値の計算により実行される。この分類はまた、そのコンテンツのハッシュ、デジタル署名、そのファイルシステムまたはネットワーク・パス、あるいはそのＵＲＬゾーンにも基づくことがある。
【００１１】
上述の方法およびシステムは、ハッシング関数を使用して、ソフトウェア・アプリケーションが真正であるかどうかチェックすること、あるいは、ソフトウェア・アプリケーションの実行を規制することを表わしている。それにもかかわらず、従来のウイルス・スキャナを用いて、ネットワーク上ですべての新規ファイルをウイルス・スキャンし、それにより、あらゆるローカル・コンピュータ上で、従来のウイルス・スキャナの指紋データベースを更新する必要性が制約されるという問題は、考察されない。ウイルス・チェッキング・システムとデータ監視システムの弱点の１つは、ウイルスまたは悪意のあるソフトウェアが発見され、指紋がわかり、さらに、ネットワーク上、またはこのネットワークのローカル・コンピューティング装置上のローカル・データベースが更新されると、直ちに、これらのシステムが、このようなウイルスまたは悪意のあるソフトウェアから、しばしば保護できるにすぎない点である。このようなローカル・データベースの更新は、このウイルスまたは悪意のあるソフトウェアが最初に広がったときから、ウイルス・チェッキング・システムまたはデータ監視システムが、このウイルスまたは悪意のあるソフトウェアを検出して、それに逆らって働くことができるときまで、著しい期間がかかる場合があることを意味している。それゆえ、一般に、重要なウイルス・チェッキング・システムの更新またはアップグレード、あるいは、データ監視システムの更新またはアップグレードが、目下、実行されているときには、時間と計算電力を費やす全システム（例えば、ネットワーク）が再チェックされるか、あるいは、そのようなシステムがまったく再チェックされないで、起りうる感染または悪意のあるソフトウェアを、このシステム中に残している。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明の目的は、ネットワーク上で、ローカル・コンピューティング装置では初めてのファイルのコンテンツを識別するシステムおよび方法を提供することである。本発明の目的はまた、コンテンツ識別手段を更新するか、あるいはアップグレードする方法を提供することである。本発明の利点は、次のものを１つまたは複数、含む。
ａ）あらゆるローカル・コンピューティング装置上のコンテンツ識別子が必要とする情報を更新する必要性を制限しながら、高い信頼度を提供する。
ｂ）高い効率を持ち、かつ、ネットワーク・システムにおいて高い安全度を提供する。
【００１３】
本発明のさらなる利点は、本発明をウイルス・チェッカーとして使用する場合には、あらゆるローカル・コンピューティング装置上で、従来のウイルス・スキャナの指紋のデータベースを更新する必要がないので、その安全レベルがさらに高められることである。
【００１４】
本発明のさらなる具体的利点は、ネットワークには初めてのファイルのコンテンツを、ネットワーク全体に対して、一度だけ識別することである。
【００１５】
さらに、本発明の具体的利点は、ネットワーク上のプロセッサ（ＣＰＵ）の総処理時間とネットワーク・トラフィックの量が減らされることである。
【００１６】
本発明の具体的利点は、ウイルス識別手段、悪意のあるソフトウェアの識別手段、またはコンテンツ識別手段をアップグレードするか、または更新するときに、この更新されたか、またはアップグレードされたバージョンが、効率的なやり方で、「汚染された(contaminated)」コンテンツの予防的検索に用いられることである。これにより、「汚染」、すなわち、ウイルス、悪意のあるソフトウェア、あるいは、感染したコンテンツまたは容認できないコンテンツを生み出したときから、上記識別手段がこの「汚染」を検出できるときまでデータを生成する場合でさえ、ネットワークの安全を実現できる。汚染されたファイルを検出すると、同様に、メタベースで利用できるデータに基づいて、同様なファイルを容易に識別し、かつ処理できるので、ネットワークのクリーニングを効率的に行うことができて、ＣＰＵ時間とネットワーク時間が減らされる。
【００１７】
本発明の利点はまた、このファイルを中央サーバーに送って、チェックする必要はなく、それでも中央ウイルス・チェッキング手段を使用しながら、ローカルでチェックでき、したがって、中央サーバーからの転送、または中央サーバーへの転送の間、このファイルを破損する危険性が回避される。
【００１８】
上述の目的の少なくとも１つと、上述の利点の少なくとも１つは、本発明により、ネットワーク上で、コンテンツ識別の方法およびシステムを用いて得られる。
【課題を解決するための手段】
【００１９】
ネットワーク環境で、データ・ファイルのコンテンツを識別する方法は、少なくとも１つのローカル・コンピューティング装置が、中央インフラを含むネットワーク環境の残りの部分にリンクされているネットワークに使用される。この方法およびシステムは、一方向関数を用いて、上記少なくとも１つのローカル・コンピューティング装置の１つにある新規ファイル用の基準値を計算する処置、上記計算された基準値を上記中央インフラに送る処置、上記計算された基準値をこのネットワーク環境の残りの部分に格納された基準値と比較する処置を含む。
【００２０】
この方法はさらに、比較した後で、上記計算された基準値が、先に格納された基準値と一致することがわかった場合には、この新規ファイルのコンテンツがすでに識別されていると判定して、該当するコンテンツ属性を検索するか、あるいは、上記計算された基準値が、先に格納された基準値のどれとも一致しないことがわかった場合には、この新規ファイルのコンテンツがまだ識別されていないと判定し、その後で、このローカル・コンピューティング装置上の新規ファイルを上記中央インフラに分け与えて、かつ、上記中央インフラに、このネットワーク環境にわたってコンテンツをリモートで識別することで上記新規ファイルのコンテンツを識別させ、この新規ファイルのコンテンツと一致するコンテンツ属性を決定して、上記コンテンツ属性のコピーを格納する処置、判定の後で、上記コンテンツ属性に基づいて、上記ローカル・コンピューティング装置上で動作を開始させる処置も含む。
【００２１】
ネットワーク環境でデータ・ファイルのコンテンツを識別する方法では、その基準値はハッシュ値である。先に格納された基準値は上記中央インフラに格納される。ネットワーク環境でデータ・ファイルのコンテンツを識別する方法およびシステムでは、新規ファイルのコンテンツを識別する処置は、中央インフラ上にウイルス対策チェッカー手段を用いて、この新規ファイルをスキャンしてウイルスを検出する処置を含む。
【００２２】
この方法はさらに、上記新規ファイルのコンテンツを識別する処置が実行される前に、新規ファイルを、ローカル・コンピューティング装置から中央インフラに転送する処置をも含むことがある。さらに、この方法は、新規ファイルのコピーを中央インフラに格納する処置も含む。この新規ファイルのコピーを中央インフラに格納する処置は、コピーをローカル・コンピューティング装置から中央インフラに転送して、行われる。中央インフラに格納されたファイルのコピーをすばやく突き止められるように、このファイルを格納した場所のアドレスを、そのハッシュ値とともに格納する。
【００２３】
本発明の方法では、上記コンテンツ属性に基づいて、ローカル・コンピューティング装置上で動作を開始させる処置は、ローカル・コンピューティング装置上の新規ファイルを、上記新規ファイルの前回バージョンのコピーに代えることを含む。さらに、上記コンテンツ属性に基づいて、ローカル・コンピューティング装置上で動作を開始させる処置はまた、ローカル・コンピューティング装置上の新規ファイルを、このネットワーク環境の残りの部分から復元された上記新規ファイルの別バージョンに代えることも含む。
【００２４】
本発明の方法はさらに、上記新規ファイルのコンテンツを識別する処置が実行される前に、ローカル・コンピューティング装置上の新規ファイルを中央インフラに分け与え、それにより、上記新規ファイルのコンテンツを識別する処置が、ネットワーク環境にわたってコンテンツをリモートで識別して実行される処置を含む。この方法は、ローカル・コンピューティング装置上のローカル・エージェントの作動をチェックする処置を含む。
【００２５】
さらに、ローカル・コンピューティング装置上で動作を開始させる処置は、新規ファイルに対応するコンテンツ属性をローカル・コンピューティング装置に送った後で実行される。
【００２６】
ネットワーク環境でデータ・ファイルのコンテンツを識別する方法では、新規ファイルのコンテンツを識別する処置は、スキャンしてアダルト・コンテンツを見つけ出す処置、スキャンして自己宣伝広告メッセージ(Self Promotional Advertising Message)または要りもしない商業電子メール（ＵＣＥ）を見つけ出す処置、スキャンして著作権所有情報を見つけ出す処置のグループのうちの１つまたは複数の処置を含む。スキャニングは、上記中央インフラ上のスキャニング手段を用いて実行される。この方法はさらに、コンテンツ・ファイアウォールを提供して、或るローカル・コンピューティング装置を、例えばインターネットなどの外部ネットワークに接続し、また、上記或るローカル・コンピューティング装置を、残りのローカル・コンピューティング装置により形成されたネットワーク環境にも接続する方法およびシステムにも関する。したがって、上記或るローカル・コンピューティング装置は、このネットワーク環境を外部ネットワークとリンクし、このネットワーク環境外にあるソースに直接接続される唯一のコンピューティング装置である。したがって、このローカル・コンピューティング装置は、外部ネットワーク上の場所から生じる攻撃から、ネットワーク環境を保護するように、コンテンツ・ファイアウォールとして働く。このローカル・コンピューティング装置は、雑多なやり方で動作するコンテンツ・ファイアウォールとして働き、すなわち、このローカル・コンピューティング装置は、あらゆるトラフィックが通り過ぎるのを見て、ハッシング機能と比較機能を実行し、さらに、エージェントに連絡して、ポリシーを実施するコンテンツ・ファイアウォールとして働く。
【００２７】
この方法は、具体的に言えば、ネットワークと、その構成要素のセキュリティ・ステータスをチェックする方法に関する。この実施態様では、ネットワーク環境でデータ・ファイルのセキュリティ・ステータスを決定する方法は、少なくとも１つのローカル・コンピューティング装置が中央インフラを含むネットワーク環境の残りの部分にリンクされているネットワーク上で使用される。この方法は、一方向関数を用いて、上記少なくとも１つのローカル・コンピューティング装置の１つにある新規ファイル用の基準値を計算する処置、上記計算された基準値を上記中央インフラに送る処置、上記計算された基準値をこのネットワーク環境の残りの部分に格納された基準値と比較する処置、比較した後で、上記計算された基準値が、先に格納された基準値と一致することがわかった場合には、この新規ファイルのセキュリティ・ステータスがすでにチェックされていると判定して、この対応するセキュリティ・ステータスを検索するか、あるいは、上記計算された基準値が、先に格納された基準値のどれとも一致しないことがわかった場合には、この新規ファイルのセキュリティ・ステータスがまだ識別されていないと判定し、その後で、上記中央インフラに、上記新規ファイルのセキュリティ・ステータスをチェックさせて、この新規ファイルと一致するコンテンツ属性を決定して、そのセキュリティ・ステータスのコピーを格納する処置、その後で、判定の後、上記新規ファイルのセキュリティ・ステータスに基づいて、上記ローカル・コンピューティング装置上で動作を開始させる処置も含む。この処置は、例えば、上記ローカル・コンピューティング装置のユーザに対して、また、このネットワーク上の他のユーザに対して、このファイルにアクセスできないようにする処置、あるいは、この感染したファイルを復元する処置である。
【００２８】
上述の方法は、ローカル・エージェント上で行われる動作によって開始する。ローカル・エージェント上で行われる動作によって開始させる処置は、例えば、アプリケーションを実行するか、あるいはファイルを開く処置であるかもしれない。
【００２９】
本発明はまた、一方向関数を計算する手段、中央インフラを含むネットワーク環境の残りの部分にリンクされた少なくとも１つのローカル・コンピューティング装置、および、ファイルのコンテンツを識別する手段を含むネットワーク環境で、上述のシステムにより、このコンテンツを識別するシステムを変更する方法であって、上記コンテンツを識別する手段、または上記一方向関数を計算する手段を変更する処置、上記ネットワーク環境の残りの部分をスキャンして、一方向関数を用いて計算された基準値を求める処置、また、上記基準値のそれぞれに対して、上記ネットワーク環境から、上記基準値と一致するファイルを要求し、上記コンテンツを識別する手段に上記ファイルを送って、上記ファイルのコンテンツを識別し、上記ファイルのコンテンツと一致するコンテンツ属性を決定し、かつ上記コンテンツ属性のコピーを格納し、上記コンテンツ属性を、上記ファイルを含むあらゆるローカル・コンピューティング装置に送る処置、送った後で、上記コンテンツ属性に基づいて、上記ローカル・コンピューティング装置上で動作を開始させる処置を含む方法に関わっている。
【００３０】
本発明はまた、一方向関数を計算する手段、中央インフラを含むネットワーク環境の残りの部分（格納データベースを含む）にリンクされた少なくとも１つのローカル・コンピューティング装置、ファイルのコンテンツを識別する手段を含むネットワーク環境で、上述のシステムにより、そのコンテンツを識別するシステムを変更する方法であって、上記コンテンツを識別する手段または上記一方向関数を計算する手段を変更する処置、上記ネットワーク環境の残りの部分をスキャンして、一方向関数を用いて計算された基準値を求める処置、また上記基準値のそれぞれに対して、上記ネットワーク環境から、上記基準値と一致するファイルを要求し、上記ファイルのコンテンツを識別し、上記ファイルのコンテンツと一致するコンテンツ属性を決定し、かつ上記コンテンツ属性のコピーを格納し、上記コンテンツ属性を、上記ファイルを含むあらゆるローカル・コンピューティング装置に送る処置、送った後で、上記コンテンツ属性に基づいて、上記ローカル・コンピューティング装置上で動作を開始させる処置を含む方法にも関わっている。上記ネットワーク環境の残りの部分をスキャンして、一方向関数を用いて計算された基準値を求める処置は、上記格納データベースをスキャンして、一方向関数を用いて計算された基準値を求める処置を含むことがある。上記ネットワーク環境から、上記基準値と一致するファイルを要求する処置の後で、上記ファイルを、このコンテンツを識別する手段に送ってもよい。別法として、このファイルも共用され、またこのコンテンツを識別する処置が、ネットワーク上で実行されてもよい。この共用する処置は、保護された接続のもとに実行され、また、ローカル・コンピューティング装置と中央インフラとの間に限定される。ネットワーク環境でファイルのコンテンツを識別するシステムを変更する処置は、新たな一方向関数を導入して、基準値を計算することで開始するか、あるいは、これらのファイルのコンテンツを識別する手段の更新により開始する。この方法では、上記ネットワーク環境の残りの部分をスキャンして、一方向関数を用いて計算された基準値を求める処置は、このネットワーク環境の残りの部分をスキャンして、一方向関数を用いて計算された、所定日付後に生成された基準値を求める処置を含む。上記所定日付は、上記変更する処置が実行されるウイルスまたは悪意のあるソフトウェアの生成日と関係がある。上記コンテンツ属性を、上記ファイルを含むあらゆるローカル・コンピューティング装置に送る処置は、このファイルを含むあらゆるローカル・コンピューティング装置を、格納データベースを用いて識別する処置と、これらのコンテンツ属性を上記識別されたローカル・コンピューティング装置に送る処置とを含む。この方法を使用して、実行される動作を最小限に抑えるように、ネットワーク環境の残りの部分中のハッシング鍵、例えば、或る日付後のコンテンツが示されているファイルのハッシング鍵の一部をスキャンする。前回のコンテンツ識別の日付は、このコンテンツ属性で検索される。これらのコンテンツ属性を上記識別されたローカル・コンピューティング装置に送る処置は、上記識別されたローカル・コンピューティング装置がそれぞれ上記ネットワークに接続されてない場合に、待機リストに記入項目（エントリ）を作成して、これらのローカル・コンピューティング装置がこのネットワークに再接続されるときに、上記待機リスト上の上記記入項目に従って、これらのコンテンツ属性を、上記識別されたローカル・コンピューティング装置に送る処置を含む。上記基準値と一致するファイルを、上記ネットワーク環境から要求する処置は、上記基準値と一致する上記ファイルを持つローカル・コンピューティング装置がこのネットワークにまったく接続されてない場合に、待機リストに記入項目を作成して、このローカル・コンピューティング装置が上記ネットワークに再接続されるときに、上記記入項目に従って、上記基準値と一致するファイルを、上記ローカル・コンピューティング装置から要求する処置を含む。上記方法はさらに、これらのコンテンツ属性が、不要のコンテンツと一致するかどうか識別し、もし一致する場合には、上記データベースに格納されたデータに基づいて、このネットワーク上で上記不要のコンテンツを最初に導入したローカル・コンピューティング装置を識別する処置も含む。
【００３１】
これらの基準値はハッシング値である。このコンテンツを識別する手段は、ウイルス対策チェッカー手段か、スキャンしてアダルト・コンテンツを見つけ出す手段か、スキャンして自己宣伝広告メッセージを見つけ出す手段か、あるいは、スキャンして著作権所有情報を見つけ出す手段である。上記コンテンツ属性に基づいて、このローカル・コンピューティング装置上で動作を開始させる処置は、このローカル・コンピューティング装置上のファイルを、このネットワーク環境の残りの部分から復元されたファイルの別のバージョンに代えることを含むか、または、このファイルの前バージョンのコピーに代えることを含むか、あるいは、このファイルを隔離する処置、またはこのファイルを除去する処置を含む。
【００３２】
本発明はまた、ネットワーク上で実行されるときには、上述の方法のどれでも実行できるコンピュータ・プログラム・プロダクトとも関係がある。本発明はさらに、中央インフラを含むネットワーク環境の残りの部分（格納データベースを含む）にリンクされた少なくとも１つのローカル・コンピューティング装置を含むネットワーク環境で、ファイルのコンテンツを識別するシステムにも関し、このシステムは、一方向関数を用いて上記ローカル・コンピューティング装置上の新規ファイルの基準値を計算する手段、上記計算された基準値を上記中央インフラに送る手段、上記計算された基準値を上記データベースからの先に格納された基準値と比較する手段を含む。このシステムはさらに、この新規ファイルのコンテンツが、上記計算された基準値と、上記残りの部分に先に格納された基準値との比較に基づいて、すでに識別されているかどうか判定する手段、中央インフラ上にあって、この新規ファイルのコンテンツを識別し、また、この新規ファイルがまだ識別されていない場合にはコンテンツ属性を割り当てるようにする手段、上記残りの部分に上記コンテンツ属性を格納する手段、上記新規ファイル用のコンテンツ属性に基づいて、上記ローカル・コンピューティング装置上で動作を開始させる手段も含む。
【００３３】
本発明によるシステムでは、ファイルのコンテンツを識別する手段は、上記中央インフラ上にウイルス対策チェッカー手段を含む。さらに、この新規ファイルのコピーを上記残りの部分に格納する手段も含む。ファイルのコンテンツを識別する手段は、スキャンしてアダルト・コンテンツを見つけ出す手段、スキャンして自己宣伝広告メッセージを見つけ出す手段、スキャンして著作権所有情報を見つけ出す手段のグループのうちの１つまたは複数の手段を含むことがある。
【００３４】
本発明はまた、ネットワーク上で実行されるときには、上述の方法のどれでも実行できるコンピュータ・プログラム・プロダクトを格納する機械読取り可能なデータ記憶装置にも関する。さらに、本発明はまた、上述の方法のどれでも実行できるコンピュータ・プログラム・プロダクトの伝送にも関する。
【００３５】
本発明の個々の好ましい面が、併記の独立クレームと従属クレームに述べられている。これらの従属クレームからの特徴は、適宜に、独立クレームの特徴、また他の従属クレームの特徴と組み合わされることがあり、単にこれらのクレームにはっきりと述べられるものだけではない。
【００３６】
データ・ファイルのウイルス・スキャニングとコンテンツ識別の方法が、絶えず改良され、変更されて、進化してきたが、この発明思想は、従来の常法からの離脱を含め、新規な大幅改良を表わすものと考えられ、それにより、この種のより効率的で、より安定し、かつより信頼できる方法が提供される。
【００３７】
本発明の上記および他の特性、特徴、利点は、本発明の原理を例示として図示する添付図面といっしょに、以下の詳細な説明を読めば、明らかになろう。この説明は、本発明の範囲を制限することなく、例示のためにのみ与えられている。以下に引用される参照図は、添付図面をさしている。
【発明を実施するための最良の形態】
【００３８】
異なる図において、同一参照数字は、同一要素または類似要素を指している。
【００３９】
本発明は、いくつかの図面を参照して、個々の実施形態に関して述べられるが、ただし、本発明は、それらの実施形態には限定されず、特許請求の範囲によってのみ制限される。描かれた図面は、図式的なものにすぎず、限定されない。これらの図面では、これらの要素の一部のサイズは、例示目的で、誇張されて、所定の尺度では描かれてないことがある。この説明や特許請求の範囲に、「含む」という語が使用されている場合には、この語は、他の要素またはステップを除外することはない。
【００４０】
さらに、本説明中や特許請求の範囲中の第１、第２、第３などの語は、類似する要素を区別するために使用され、必ずしも、シーケンシャルな順序、すなわち発生順を表わすために使用されていわけではない。このように使用される語は、適切な場合に交換可能であり、また、本明細書に述べられる本発明の実施形態は、本明細書中に説明または図示されるもの以外の順序で動作できる。
【００４１】
この説明では、「ファイル」、「プログラム」、「コンピュータ・ファイル」、「コンピュータ・プログラム」、「データ・ファイル」、「データ」という語は、取り替えて使用でき、また、どれか１つ使用しても、それが、用いられる前後関係により、それ以外の語を意味することもある。「ハッシュ」と「ハッシング」の語は、一方向関数の用途の例として使用されることになるが、ただし、本発明は、特定形式の一方向関数には限定されない。
【００４２】
「コンピューティング装置」という語は、演算を行い、かつ／または、アルゴリズムを実行することのできるどんな装置も含むものと広く解釈されるべきである。コンピューティング装置は、ラップトップ、ワークステーション、パーソナル・コンピュータ、ＰＤＡ、スマート・ホン、ルーター、ネットワーク・プリンタ、あるいは、プロセッサを持ち、かつ例えばファックス装置またはコピー機、あるいは、いわゆる「ハードウェア・ファイア・ウォール」またはモデムなどの任意の専用電子装置のように、ネットワークに接続できる他の任意の装置のいずれであってもよい。
【００４３】
ネットワーク上でそれぞれの新規ファイルのコンテンツを識別することで、ネットワークを保護し、かつ制御する方法およびシステムは、どんなタイプのネットワーク上でも使用できる。これは、仮想プライベート・ネットワーク、ローカル・エリア・ネットワーク（ＬＡＮ）、または広域ネットワーク（ＷＡＮ）であるプライベート・ネットワークなどである。これはまた、インターネットなどのパブリック広域ネットワークの一部に含まれていることもある。パブリック広域ネットワークの一部が使用される場合には、これは、ＡＳＰまたはＸＳＰのビジネス・モデルを用いて、サービス・プロバイダでそれぞれのファイルのコンテンツを識別する方法およびシステムをリモートで提供することで実行されて、ローカル・コンピューティング装置を運用する支払いクライアント（paying client）に中央インフラを提供する。いくつものローカル・コンピューティング装置５０ａ、５０ｂ、．．．、５０ｉと、サーバーとも呼ばれる中央インフラ１００を示す模範的なネットワーク１０が図１に示されている。ネットワーク１０に接続されているローカル・コンピューティング装置５０の数は、本発明により、ネットワーク１０を保護し、かつ制御する方法では、限定してない。ビジネス環境では、このようなローカル・コンピューティング装置５０の数は、一般に、数台から数千台に及ぶ。ネットワーク１０上にあるそれぞれの新規ファイルのコンテンツを識別する方法およびシステムは、Ｍｉｃｒｏｓｏｆｔ  ＤＯＳ、Ａｐｐｌｅ  Ｍａｃｉｎｔｏｓｈ  ＯＳ、ＯＳ／２、Ｕｎｉｘ（登録商標）、ＤａｔａＣｅｎｔｅｒ−Ｔｅｃｈｎｏｌｏｇｉｅｓ社のオペレーティング・システムなどの多数の異なるオペレーティング・システムに用いることができる。
【００４４】
ファイルのコンテンツ識別を保護し、かつ決定するクイック方法を提供するために、本発明による方法およびシステムは、ローカル・コンピューティング装置５０上にある新規ファイルのハッシュ値を求め、これらのハッシュ値を、中央サーバー上の先に格納されたハッシュ値やファイル情報と比較し、さらに、中央インフラ１００上のコンテンツ識別エンジンを用いて、ネットワーク１０には初めてのファイルのコンテンツを決定する。次に、新規ファイルのコンテンツを表わすコンテンツ属性を、ローカル・コンピューティング装置５０に送って、そこで、適切な処置を実行する。これらのコンテンツ属性をローカル・コンピューティング装置５０には送らないが、ただし、中央インフラ１００から、適切な処置を開始させることも可能である。新規ファイルは、一般に、ローカル・コンピューティング装置５０上で、新規コンテンツを生成しているファイルであるか、あるいは、外部ファイルが受け取られているときのファイルである。「ファイル」という用語は、ソフトウェアとも呼ばれるソフトウェア・アプリケーションだけでなく、データもさすことがある。
【００４５】
ファイルまたはデータのコンテンツを識別する処置は、そのファイルまたはデータを中央インフラ１００に向けて送り、そこで、そのファイルまたはデータをチェックすることで行われるか、あるいは、そのファイルまたはデータをローカルで共用することで行われて、中央インフラ１００が、リモートで、そのファイルまたはデータのコンテンツを識別できるようにしている。その共用する処置は、例えば、保護された環境で行われる。その共用する処置は、このファイルまたはデータを載せたローカル・コンピューティング装置５０と、中央インフラ１００との間に限定される。
【００４６】
中央インフラ１００は、ローカル・コンピューティング装置５０のうちの１つにすでにあるファイルに対して、ハッシュ値を計算するごとに、そのレコードを収めるデータベース（メタベースとも呼ばれる）１１０を含む。このハッシュ値のほかに、このレコードは、いくつかの他のフィールドも収めている。これらのフィールドには、ファイル・ソース情報が格納されている。特定のハッシュ値と一致するファイル・ソース情報は、そのファイル名、ローカル・コンピューティング装置５０のファイルシステム上のファイルのパスを含め、このハッシュ値と一致するファイルがあるローカル・コンピューティング装置５０のリスト、前回変更の日付を含む。特定ファイル用のファイルソース情報の一例が表１に与えられている。
【００４７】
【表１】
2007520796.tif 000003
【００４８】
さらに他のフィールドには、このファイルが収めているコンテンツのタイプを識別するコンテンツ属性のリストが格納されている。これらのコンテンツ属性は、例えば、ウイルスを含むファイル、著作権所有ＭＰ３音声ファイル、著作権所有画像ファイルであるファイル、映像であるファイル、アダルト・コンテンツが入っているかもしれない映像であるファイル、自己宣伝広告メッセージ（ＳＰＡＭ）であるファイル、ＨＯＡＸであるファイル、エクスプリシット・リリックス（あからさまな性描写のある歌詞、explicit lyrics）が入っているファイル、または、複数の実行可能コードが入っているファイルもさすこともある。このリストは、限定的なものではない。
【００４９】
中央インフラ１００はさらに、コンテンツ識別エンジン１２０も含む。これは、ファイルのコンテンツを使用して、このファイルがどのタイプのコンテンツを含んでいるのか決定するソフトウェア・アプリケーション１３０、または一組のソフトウェア・アプリケーション１３０ａ、１３０ｂ、１３０ｃ、１３０ｄなどであることもある。これらのソフトウェア・アプリケーションは、以下のように多種多様である。
【００５０】
- ウイルス・スキャナ。これは、提示されたファイルのコンテンツをスキャンして、そのコンテンツを、公知のウイルス指紋のデータベースと比較する１つのソフトウェアである。これは、例えば、Ｓｙｍａｎｔｅｃ  ＣｏｒｐｏｒａｔｉｏｎによるＮｏｒｔｏｎ  ａｎｔｉ−ｖｉｒｕｓ、Ｎｅｔｗｏｒｋ  Ａｓｓｏｃｉａｔｅｓ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  Ｉｎｃ．によるＭｃＡｆｅｅ、Ｔｒｅｎｄ  ＭｉｃｒｏによるＰＣ−ｃｉｌｌｉｎ、Ｋａｓｐｅｒｓｋｙ  ＬａｂによるＫａｐｅｒｓｋｙ  Ａｎｔｉ−Ｖｉｒｕｓ、Ｆ−Ｓｅｃｕｒｅ  ＣｏｒｐｏｒａｔｉｏｎによるＦ−ｓｅｃｕｒｅ  Ａｎｔｉ−Ｖｉｒｕｓなどのような従来のどんなウイルス・スキャニング・ソフトウェアであってもよい。
【００５１】
- 映像に含まれるアダルト・コンテンツ用のスキャナ。これは、提示されたファイルのコンテンツをスキャンして、アダルト・コンテンツを表わすかもしれないシェーディング、色、テクスチャがあるかどうか調べる１つのソフトウェアである。映像をスキャンしてアダルト・コンテンツを見つけ出す処置は、すでに知られている。アダルト・コンテンツは、例えば、示されるヌードの量によって決定されることもある。肌の色調は、特定の範囲内にある色相・彩度値を持っている。それゆえ、画像をスキャンする場合には、皮膚色調特性を持つピクセルの量を決定し、また、その量と、ピクセルの総数を比較することができる。このピクセル総数に対する皮膚色調ピクセルの比率により、画像中の可能なアダルト・コンテンツの比率を決定することができる。しきい値は、画像を、それらの可能なアダルト・コンテンツによって分類できるように、導入されることが多い。同様にして、動画像が分類されることもあり、それにより、その画像が、異なるフレームに分割され、また、それらの画像が、上述の方法によって分類される。
【００５２】
- インターネット・コンテンツ・レイティング用のスキャナ。これは、ＰＩＣＳ（すなわち、Ｐｌａｔｆｏｒｍ  ｆｏｒ  Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｅｎｔ  Ｓｅｌｅｃｔｉｏｎ）ラベル・システムに基づいて、オブジェクトをスキャンしてアダルト・コンテンツを見つけ出す１つのソフトウェアである。自主的に、インターネット・コンテンツ・プロバイダが、インターネット・オブジェクトにＰＩＣＳレーティングを提供して、インターネット・オブジェクト中のアダルト・コンテンツを決定することもできる。ＰＩＣＳレーティングは、このオブジェクトのメタデータに格納されている。このデータは、普通、インターネット・オブジェクトを見ている人には見えない。このレーティング・システムは、よく知られており、インターネット・コンテンツ・レーティング用のスキャナの一例が、ｗｅｂページのコンテンツをスキャンするＮｅｔｓｃａｐｅ  ｗｅｂブラウザに与えられている。
【００５３】
- オブジェクトをスキャンして、アダルト・コンテンツを示すかもしれないエクスプリシット・リリックスを見つけ出すスキャナ。これは、テキスト・ファイルにも、音声ファイルにも知られている。音声ファイルは、まず最初にテキスト・ファイルに移される。次に、これらのテキスト・ファイルをスキャンして、それらのテキスト・ファイルを、エクスプリシット・リリックスが入っているデータベースと比較する。
【００５４】
- ＳＰＡＭエンジン。電子メール・メッセージのコンテンツをスキャンして、疑わしいＳＰＡＭがあるかどうか調べる１つのソフトウェア。ＳＰＡＭを見分けるアルゴリズムがすでに知られている。これらのアルゴリズムは、一般に、電子メール・メッセージ中のテキストを分解し、統計分析器を用いて統計的データをこのテキストに結び付け、さらに、ニューラル・ネットワーク・エンジンをこの統計分析器に結合して、統計インジケータに基づいて、不要のメッセージを見分けることに基づいている。
【００５５】
コンテンツ識別エンジン１２０に用いられるであろうソフトウェア・アプリケーションの他の例として、例えば、スキャンして著作権所有コンテンツを見出し、また、このファイルのコンテンツと、著作権所有情報などのデータベースを比較するエンジンがある。いくつかの採用例において、人間の操作者は、コンテンツ識別エンジン１２０の役割を遂行でき、その場合、操作者は、ファイルに、コンテンツ識別属性を記したタグを手操作で付ける。コンテンツ識別エンジン１２０を起動すると、コンテンツ識別エンジン１２０は、入力として、ローカル・エージェントからファイルを受け取って、その検出されたコンテンツを表わす一組の属性を生成する。
【００５６】
コンテンツ識別エンジン１２０はまた、ローカル・コンピューティング装置５０上のデータが、ネットワーク上、またはこれらのローカル・コンピューティング装置５０上で、許容データのルールに従っているかどうかチェックさせることがある。これらのルールは、ローカル・コンピューティング装置５０が異なれば、異なる。
【００５７】
したがって、コンテンツ識別エンジン１２０は、一組のサードパーティ・エンジンの機能を統合する１つのソフトウェアとして構築されることになる。
【００５８】
本発明のさらに他の実施形態では、上記実施形態に基づくシステムおよび方法が述べられており、それにより、メタベース１１０に格納されている特定のハッシュ値と一致するレコードは、このハッシュ値と一致するような中央インフラ１００上のファイルの場所が保存されているフィールドも含む。この実施形態では、ネットワーク１０上で、ローカル・コンピューティング装置５０上にあるすべての異なるファイルのコピーが、中央インフラ１００に格納される。そこで、この実施形態の中央インフラ１００も、大量の格納スペースを含む。これは、好ましくは、中央インフラ１００のうち、ネットワーク１０には直結されてない保護された部分であって、ローカル・コンピューティング装置５０上のファイルが、例えばウイルスにより破損される場合には、ローカル・コンピューティング装置５０上にあるファイルのこれらの同一コピーを使用できるようにしている。
【００５９】
これらのファイルのハッシュ値は、ハッシング関数を用いて計算される。ハッシング関数は、一般に、一方向関数であり、すなわち、そのダイジェストが与えられると、元のデータを再構築することは、少なくとも、計算上、禁止同然である。すべてＲＳＡ  Ｄａｔａ  Ｓｅｃｕｒｉｔｙ  Ｉｎｃ．から入手できるＭＤ５、ＳＨＡ−１、またはｒｉｐｅｍｄ、Ｗｏｌｌｏｎｇｏｎｇ大学で設計されたｈａｖａｌ、Ｘｅｒｏｘセキュア・ハッシュ関数であるｓｎｅｆｒｕなどの異なるタイプのハッシング関数を使用できる。もっともよく使用されるハッシング関数は、ＭＤ５とＳＨＡ−１である。ＭＤ５のアルゴリズムは、入力として、任意の長さのメッセージを受け取って、出力として、この入力の１２８ビットの「指紋」または「メッセージ・ダイジェスト」を生成する。同一のメッセージ・ダイジェストを持つ２つのメッセージを生成すること、あるいは、所与のあらかじめ指定したターゲット・メッセージ・ダイジェストを持つ任意のメッセージを生成することは実行不可能であると推測される。ＭＤ５のアルゴリズムは、デジタル署名の用途を目的とし、その場合、大きいファイルは、公開鍵暗号方式のもとに、プライベート（秘密）鍵を用いて暗号化される前に、セキュアなやり方で「圧縮」されなければならない。ＭＤ５のアルゴリズムは、３２ビットマシンで、かなり高速であるように設計されている。さらに、ＭＤ５のアルゴリズムは、大きな代用テーブルをまったく必要としない。このアルゴリズムは、かなりコンパクトにコード化できる。代替ハッシング関数ＳＨＡ−１、すなわち、セキュア・ハッシング・アルゴリズム−１は、１６０ビットのハッシュを生成するハッシング・アルゴリズムである。このアルゴリムのさらに新しいバージョンは、２５６のビット長と５１２のビット長も提供する。
【００６０】
ネットワーク１０を保護し、かつ／または制御する方法およびシステムを表わす上述の実施形態では、ローカル・エージェントが、ローカル・コンピューティング装置５０にインストールされる。このローカル・エージェントは、ローカル・コンピューティング装置５０で走って、いくつかのアルゴリズムと手続きを実行する１つのソフトウェアである。ローカル・コンピューティング装置５０上のローカル・エージェントは、一般に、ローカル・コンピューティング装置５０上で新たなコンテンツを生成しようとする場合に、トリガ（起動）される。不必要なハッシュ値計算やデータ転送を避けるために、どの処置が、このローカル・エージェントをトリガするのか、またどの処置がこのローカル・エージェントをトリガしないか判定するために、ポリシーが設定される。例えば、テキスト文書を作成しようとする場合には、テキスト文書が保存されるごとに、このファイルをチェックする必要はない。このようなタイプの文書に対するポリシーは、好ましくは、例えば、このファイルを保存するとともに閉じる場合に、この文書をチェックする。このローカル・エージェントをトリガでき、したがって、このコンテンツ識別プロセスを開始できるであろう処置のいくつかの例は、電子メール・メッセージを開くか、または受け取り、電子メール添付ファイルを開くか、または受け取り、実行可能ファイルを実行し、．ｄｌｌまたは．ｐｉｆの拡張子の付いたファイルを実行することなどである。したがって、このポリシーを適用することにより、文書の絶え間ないチェックやスキャニングを妨げて、不必要なハッシュ計算やコンテンツ識別作業の回数を制限することができ、したがって、これにより、ＣＰＵ時間の不必要な使用や、ネットワーク・トラフィックへの負荷が制限される。このようなコンテンツ識別の方法およびシステムは、このファイルが作成される用途の種類により制限されることはない。
【００６１】
このコンテンツ識別プロセスは、ローカル・コンピューティング装置５０上のローカル・エージェントによりトリガされるか、あるいは、中央インフラ１００によりトリガされることもある。中央インフラ１００によりトリガされるプロセスは、一般に、コンテンツ識別のために、新たなアルゴリズムまたはツールが用いられようとする場合に、行われる。このような新たなアルゴリズムまたはツールは、最適化されたアルゴリズムやツール、あるいは、その前にアンインストールされたツールなどである。これらのツールのいくつかの例は、これらの機能に限定しなければ、ウイルスをチェックするもの、ファイルが著作権所有ＭＰ３音声ファイルであるかどうかチェックするもの、ファイルが著作権所有画像ファイルであるかどうかチェックするもの、ファイルが、アダルト・コンテンツが入っているかもしれない映像であるかどうかチェックするもの、ＳＰＡＭまたはＨＯＡＸであるとして、ファイルにタグが付けられているかどうかチェックするもの、ファイルにエクスプリシット・リリックスが入っているかどうかチェックするもの、あるいは、ファイルに著作権所有の複数の実行可能コードが入っているかどうかチェックするものなどである。これらのツールの更新は、ファイルのステータスに影響を及ぼし、したがって、原理的には、メタベース１１０中の対応するレコードに影響を及ぼす。それゆえ、コンテンツ識別手段１２０の更新タイプに応じて、対応するレコードを更新することは興味深い。
【００６２】
特定の実施形態では、この方法は、ネットワーク環境用のウイルス・チェッカーに関する。この方法を適用できるネットワーク１０は、前の実施形態について述べられたものと同一である。このローカル・エージェントは、ローカル・コンピューティング装置５０上の新規ファイルのハッシュ値を計算する。この新規ファイルは、ローカル・コンピューティング装置５０上で生成された新規コンテンツ、あるいは、ローカル・コンピューティング装置５０で受け取られる外部ファイルを含む。次に、新規ファイルのハッシュ値と、対応するファイル情報を、サーバーとも呼ばれる中央インフラ１００に送り、そこで、そのハッシュ値を、ネットワーク１０の異なるローカル・コンピューティング装置５０上にすでにあるファイルと一致する先に格納されたハッシュ値と比較する。このような比較により、このファイルが、ネットワーク１０全体で新規であるかどうかチェックすることができる。別法として、このハッシュ値は、まず最初に、特定のローカル・コンピューティング装置５０上にあるファイルと一致するハッシュ値とファイル情報のローカル・データベースとも比較され、次に、このファイルが、まだローカル・コンピューティング装置５０上にはないことがわかった場合には、このハッシュ値と対応するファイル情報を、中央インフラ１００とやり取りして、このファイルが、ネットワーク１０全体で新規であるかどうかチェックできるようにする。すべての新規ファイルのファイル情報とハッシュ値を転送する処置は、従来の中央ウイルス・チェッカーでは、ネットワーク・トラフィックのごくわずかの一部分しか対応しないが、この別法は、ウイルスのチェックに用いられるネットワーク・トラフィックをさらに減らすことができる。ハッシュ値が、ネットワーク１０上で新規のものとして識別された場合には、このメタベース・エージェントは、このローカル・エージェントをトリガして、この新規ハッシュ値と一致するファイルを、ローカル・コンピューティング装置５０から中央インフラ１００に転送する。このファイルを転送する処置は、保護されたやり方で実行されることがある。すなわち、このファイルは、ネットワーク接続部に存在するウイルスから影響を受けることのないように、あるいは、このファイルがウイルスを含む場合でも、ウイルスがネットワーク１０全体に広がることのないように、転送される。こうするために、公知のセキュアな伝送ルート、トンネル、および／または公知のセッション暗号化／復号化手法が使用される。代替実施形態では、このファイルまたはデータは、中央インフラに分け与えられ、また、このウイルス・チェッキング手段は、このファイルまたはデータをリモートでチェックすることがある。次に、中央インフラ１００にインストールされ、かつそこで更新される従来のウイルス・チェッカーは、このファイルにウイルスがあるかチェックする。これは、例えば、Ｓｙｍａｎｔｅｃ  ＣｏｒｐｏｒａｔｉｏｎによるＮｏｒｔｏｎ  ａｎｔｉ−ｖｉｒｕｓ、Ｎｅｔｗｏｒｋ  Ａｓｓｏｃｉａｔｅｓ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  Ｉｎｃ．によるＭｃＡｆｅｅ、Ｔｒｅｎｄ  ＭｉｃｒｏによるＰＣ−ｃｉｌｌｉｎ、Ｋａｓｐｅｒｓｋｙ  ＬａｂによるＫａｐｅｒｓｋ���  Ａｎｔｉ−Ｖｉｒｕｓ、Ｆ−Ｓｅｃｕｒｅ  ＣｏｒｐｏｒａｔｉｏｎによるＦ−ｓｅｃｕｒｅ  Ａｎｔｉ−Ｖｉｒｕｓなどのような従来のどんなウイルス・チェッカーであってもよい。
【００６３】
本発明の上述の実施形態の具体的な利点は、ウイルス・スキャニング・ソフトウェアが、すべてのローカル・エージェントで更新される必要はないことであるが、ただし、これは、中央インフラ１００のウイルス・スキャニング・ソフトウェアの更新に限定されることである。このようにして、セキュリティは、ネットワーク１０の異なるユーザが遅滞なく、それらのウイルス・スキャニング・ソフトウェアを更新することに左右されないから、ネットワーク１０のセキュリティ・レベルは、著しく高められる。このスキャンされたファイルにウイルスがなければ、ウイルスのないファイルであるとして、メタベース１１０において、そのファイルにマークが付けられる。ファイルにウイルスが見出される場合には、危険なファイルとして、そのファイルにマークが付けられる。改悪された同一ハッシング鍵を持つあらゆるファイルを、ネットワーク１０上で見つけ出すために、メタベース１１０にクエリーが起る。その結果もたらされるものは、ファイルが位置づけられるアセットネーム(assetname)とパスを持つファイルのリストである。この情報を利用すれば、すべてのローカル・コンピューティング装置５０、すなわち、すべてのワークステーションにウイルスが見出される恐れを、全ネットワーク１０からなくする処置を行うことができる。このようにして、第１のローカル・コンピューティング装置５０でのウイルス検出に基づいて、予防的なウイルス・スキャニングを、他のローカル・コンピューティング装置５０に行うことができる。ウイルス・チェッキングに対して定められたポリシーにより、このウイルス・エンジンは、この影響を受けたシステムにインストールされたエージェントに、このファイルを除去し、また可能であれば、中央インフラ１００上にあるウイルス・エンジンにより配信される復元バージョン、あるいは、まだウイルスを持ってないファイルの前回バージョンに代えるように知らせる。前回バージョンに代える処置は、このメタベースを探索して、そのファイルの前回バージョンを見出すことで、容易に行えるか、あるいは、別のローカル・コンピューティング装置５０上で、感染してないバージョンを探索することで、行える。感染してないバージョンを、別のローカル・コンピューティング装置５０でも、また、中央インフラ１００上にあるメタベースでも検索できない場合には、このウイルス・スキャナは、中央インフラ１００上に、このファイルの新たな殺菌されたコピーを保存できるようにする特徴を持たなければならない。これらの利点は、他のコンテンツ識別パッケージにも含まれている。
【００６４】
代替実施形態では、新規ハッシュ値を持つファイルを、中央インフラに転送しないで、そのファイルがネットワーク１０上で識別されている場合には、このファイルが、ローカルで自動的に共用され、次に、リモート・チェッカーは、このようなファイルの共用を利用して、ネットワーク１０の全域で、このファイルをチェックさせるファイルシステムを転送する。このコンテンツ・タグ付け（タギング）が上記サーバーで行われる。セキュリティを高めるために、この共用ファイルへのアクセス可能性はサーバーに限定される。さらに、他のファイルをチェックさせるために、ｊａｖａアプレットをローカル・エージェントに転送してもよい。
【００６５】
先の実施形態は、ネットワーク１０を通じて、ローカル・コンピューティング装置５０をスキャンする中央ウイルス・チェッカーの改良である。これは、ローカル・ドライブ、例えばＣ：＼、Ｄ：＼などが共用される場合にのみ、可能である。セキュリティに関して共用する恐れ以外に、ローカル・ユーザは、ローカル共用性を容易に変更でき、それにより、リモート・チェッカーに、これらのファイルをチェックさせない。これは、本発明では、少なくとも一部回避される。なぜなら、ネットワーク１０の共用性を変更しても、新規ファイルのハッシュ値を計算して、そのハッシュ値を中央インフラ１００に送る作業は影響を受けないからである。
【００６６】
他の利点として、ＣＰＵは、ウイルスをチェックし続ける必要はなく、一方向関数だけを計算する必要があるので、ローカル・コンピューティング装置５０でのＣＰＵ時間を節約するという点がある。これはまた、ネットワーク時間も節約する。すなわち、ただ１つの中央ウイルス・チェッカーだけが使用され、かつ更新されるので、管理するサーバーは、ローカル・コンピューティング装置５０上のウイルス・チェッカーを、ウイルスの最新情報で更新する必要はない。
【００６７】
図３は、上述の実施形態により、ローカル・コンピューティング装置５０上のローカル・エージェントによりトリガされるコンテンツ識別プロセスの方法２００を示している。このプロセスの間に、ローカル・コンピューティング装置５０上でも、中央インフラ１００でも行われる異なるステップが説明されている。
【００６８】
このコンテンツ識別プロセスは、ローカル・コンピューティング装置５０上で、ローカル・エージェントを用いて、絶えずスキャンして新たなデータまたはアプリケーションを見つけ出すことに基づいている。このようにスキャンしてデータとアプリケーションを見つけ出す処置は、上述のように、いつローカル・エージェントをトリガすべきか判定するポリシー・ルールにより制限される。「新規」ファイルが検出されている場合には、新規ファイルのコンテンツ識別によりネットワーク１０を保護し、かつ制御する方法が開始する。これはステップ２１０である。次に、方法２００は、ステップ２１２に進む。
【００６９】
ステップ２１２において、ＭＤ５またはＳＨＡ−１のようなハッシング関数を用いて、「新規」ファイルのハッシュ値を計算する。この計算は、ローカル・コンピューティング装置の或るＣＰＵ時間を用いて、実行される。それにもかかわらず、使用されるＣＰＵ時間の量は、例えば、従来のウイルス・チェッカーを用いてローカル・コンピューティング装置５０上のファイルをチェックするとしたら、必要となるであろうＣＰＵ時間よりも大幅に少ない。次に、方法２００は、ステップ２１４に進む。
【００７０】
ステップ２１４において、ハッシュ値とファイル・ソース情報を、ローカル・エージェントから、ネットワーク１０の中央インフラ１００に転送する。必要であれば、この転送は、保護された転送であることもあり、それにより、ネットワーク接続部上に位置するウイルスが、このデータの転送の間に、ファイル・ソース情報やハッシング鍵を両方とも変更することが避けられる。このような保護された伝送は、公知のセキュアな伝送ルートにわたり、トンネルを介して、あるいは、公知のセッション暗号化／復号化手法を用いて、行われる。
【００７１】
ステップ２１６において、このハッシュ値を、すでにメタベース１１０中にあるデータと比較する。メタベース１１０には、ネットワーク１０上にあるすべての旧ファイル、すなわち、ネットワーク１０上に存在していて、かつ上述のように「新規」ではないあらゆるファイルのハッシュ値とファイル・ソース情報が格納されているので、このファイルが、すでにネットワーク１０上にあるかどうかチェックすることは可能である。それゆえ、このハッシュ値が新規のものとして識別されている場合には、これは、そのファイルが、ネットワーク１０全体には「新規」であることを意味している。このファイルが新規である場合には、方法２００は、ステップ２１８に進む。このハッシュ値が新規のものでなければ、これは、ネットワーク１０上で、ローカル・コンピューティング装置５０上のどこかに、このファイルがすでに存在していることを意味している。このような場合、このファイルのコンテンツを表わすコンテンツ属性がすでに存在している。次に、方法２００は、ステップ２２４に進む。
【００７２】
ステップ２１８において、メタベース・エージェントは、ローカル・エージェントをトリガして、新規ハッシュ値と一致するファイルを、ローカル・コンピューティング装置５０から中央インフラ１００に転送する。このファイルを転送する処置は、保護されたやり方で行われる。すなわち、このファイルは、ネットワーク接続部に存在するウイルスから影響を受けることのないように、あるいは、このファイルがウイルスを含む場合でも、ウイルスがネットワーク１０全体に広がることのないように転送される。こうするために、公知のセキュアな伝送ルート、トンネル、および／または公知のセッション暗号化／復号化手法が使用される。方法２００はさらに、ステップ２２０に進む。
【００７３】
ステップ２２０では、このファイルを、コンテンツ識別エンジン１２０にロードして、このファイルを処理する。この処理では、中央インフラ１００のＣＰＵ時間が使用される。コンテンツ識別エンジン１２０は、上述のように、従来のウイルス・チェッカー、映像情報をチェックする手段、ＳＰＡＭをチェックする手段などを含んでもよい。これは、複数のコンテンツ識別エンジンを順番に呼び出す繰返し処置である。次に、方法２００は、ステップ２２２に進む。
【００７４】
ステップ２２２において、このファイルのコンテンツを識別するコンテンツ属性を、このファイルについて決定する。つぎに、これらのコンテンツ属性を、メタベース１１０に格納し、したがって、将来の作業において、このファイルが、別のローカル・コンピューティング装置５０上で「新規」であることがわかった場合には、このファイルのステータスを識別することができる。次に、方法２００はステップ２２４に進む。使用される実施形態により、以下のステップは、このファイルを中央インフラ１００に格納して、このファイルへのパスをメタベース１１０に追加する処置を含む。このステップは、図３には示されていない。
【００７５】
ステップ２２４において、これらのコンテンツ属性をローカル・エージェントに送る。このコンテンツ属性に基づいて、このローカル・エージェントは、これらのコンテンツ属性に対して設定されたポリシー・ルールに従って、適切な処置を実行する。これは、ステップ２２６において行われる。これは、例えば、そのファイルが感染した場合には、そのファイルを削除し、また、そのファイルを、感染しなかった前回バージョンに代えたりする。特定の実施形態では、このポリシー・ルールに基づく適切な処置の実行は、メタベース１１０のエージェントによりトリガされ、したがって、ステップ２２４を回避できる。
【００７６】
このコンテンツ・ポリシーは、コンテンツ識別エンジン１２０で決定されたコンテンツ属性により、ファイルで何をなすべきか決定するポリシーである。このコンテンツ・ポリシーは、ファイルを削除する処置、ファイルを削除して、ファイルを前回バージョンに代える処置、ファイルを別のコンピューティング装置上にコピーするとともに、コピーを発信コンピューティング装置に残しておく処置、ファイルを別のコンピューティング装置上に移すとともに、発信コンピューティング装置上の元のファイルを削除する処置、ファイルの有無を記録する処置、ファイルを隠すか、あるいは、ファイルを読取り専用にする、ファイルを読取り不能にする、ファイルを実行不能にすることなどのように、ファイルの属性を変更する処置のような処置を含む。このコンテンツ・ポリシーは、例えば、中央インフラ１００から、コンテンツ属性を受け取るときに、ローカル・エージェントにより実行される。ローカル・エージェントについてのコンテンツ・ポリシーは、このローカル・エージェントにより、中央ポリシー・インフラから、ローカル・コンピューティング装置５０にダウンロードされる。
【００７７】
図４は、上述の実施形態により、コンテンツ識別エンジン１２０がトリガするコンテンツ識別プロセスの方法３００を示している。このプロセスの間に、ローカル・コンピューティング装置５０上でも、中央インフラ１００でも行われる異なるステップが説明されている。
【００７８】
このプロセスは、一般に、コンテンツ識別のために、新たなアルゴリズムまたはツールが用いられようとする場合に、使用される。このような新たなアルゴリズムまたはツールは、最適化されたアルゴリズムやツール、あるいは、その前にアンインストールされたツールである。先に述べられたように、これは、コンテンツ識別プロセスの動作開始が、コンテンツ識別に用いられようとする新たなアルゴリズムまたはツールのタイプで決定されるというポリシーにより、規制される。
【００７９】
方法３００は、例えば、コンテンツ識別エンジン１２０に対して、新たなアルゴリズムまたはツールを提供することで、コンテンツ識別エンジン１２０を変更して、開始する。代表的な例は、ウイルスまたは悪意のあるデータが生み出され、このウイルスまたは悪意のあるデータが識別されて、ウイルス・チェッカーまたはコンテンツ識別手段に用いられる指紋が生成された後で、このウイルス・チェッカーまたはコンテンツ識別手段に用いられる指紋データベースを、一回、更新することである。ウイルスが生み出されたときから、ウイルス・チェッカーまたはコンテンツ識別手段が、このウイルスまたは悪意のあるデータを検出できるときまで、著しい時間がかかることがあり、その間、このネットワークが保護されないので、効率的なやり方で、予防チェックさせる、すなわち、その時間枠で生成されたファイルのチェックを行わせるシステムを持つことは有利である。従来のシステムでは、一般に、非常に大きなＣＰＵやネットワーク帯域幅を必要とする全ネットワークは、再スキャンされる必要があるか、あるいは、これらのシステムは、保護されないままにしておかれる。
【００８０】
方法３００の第１のステップ３０２において、動作開始の際に、メタベース１１０をスキャンして、ハッシング鍵と一致するハッシュ値を求める。次に、方法３００は、ステップ３０４に進む。
【００８１】
ステップ３０４において、ハッシング鍵と一致するファイルを要求する。このファイルは、中央インフラ１００上の中央ストレージから要求されるか、あるいは、ローカル・コンピューティング装置５０から要求されることもある。次に、ローカル・コンピューティング装置５０は、対応するファイルをアップロードする許可を、中央インフラ１００に与える。このハッシュ値と一致するファイルへのパスは、それぞれのハッシュ値と一致するレコードから得られる。このレコードが、異なるパスを収めており、しかも、これらのパスがすべて、対応するファイルのコピーと一致する場合には、中央インフラ１００上のエージェントは、例えば、その時点にてネットワーク１０に接続されていて、かつ、このファイルをアップロードさせるローカル・コンピューティング装置５０が見つけ出されるまで、このレコードにリストされたパスをスキャンすることで、このファイルの１コピーを検索する。次に、方法３００は、ステップ３０６に進む。
【００８２】
このファイルが検索されると、このファイルをコンテンツ識別エンジン１２０に送る。これは、ステップ３０６において行われる。次に、アップグレードされたコンテンツ識別エンジン１２０は、このファイルのコンテンツをスキャンして、このファイルと一致するコンテンツ属性を生み出す。方法３００はさらに、ステップ３０８に進む。
【００８３】
ステップ３０８において、これらのコンテンツ属性をメタベース１１０に格納して、将来、セキュリティ・ステップが、これらのファイルのコンテンツを直接に識別できるようにする。方法３００はさらに、ステップ３１０に進む。
【００８４】
ステップ３１０において、これらのコンテンツ属性を、対応するファイルが格納されているローカル・コンピューティング装置５０上にあるすべてのローカル・エージェントに送る。これらのパスは、メタベース１１０に格納されている対応するハッシング鍵のレコードに見つけ出すことができる。このステップにおいて、コンテンツ属性を、対応するハッシング鍵のレコードにパスが記されているすべてのファイルに送る。ローカル・コンピューティング装置５０が、チェックの時に、ネットワークに接続されていない（すなわち、ネットワークから切り離されている）場合には、待機リストを作成して、コンピュータがネットワークに接続されると直ちに、必要なファイルをチェックできるようにしてもよい。待機リストは、ファイルに、そのコンテンツを識別するように求めるステップだけでなく、コンテンツ属性をいくつかのファイルに提供するステップでも、作成される。このリストは、中央インフラにより作成されるか、あるいは、ネットワークの下流の１ローカル配布地点にて、作成される。ローカル・コンピューティング装置５０が、例えばラップトップなどの携帯用コンピューティング装置であるときには、ローカル・コンピューティング装置５０の切り離しは、特に頻繁に行われる。このようにして、このネットワークの一部である、切り離されたローカル・コンピューティング装置５０でも、セキュリティが保証されている。方法３００は、ステップ３１２に進む。
【００８５】
ステップ３１２において、対応するローカル・コンピューティング装置５０上のローカル・エージェントは、これらのコンテンツ属性により、また、ローカル・コンピューティング装置５０により、上記ポリシーを実行する。
【００８６】
本発明の実施形態の主な利点の１つは、ネットワーク１０全体には初めてのファイルだけが、一回、スキャンされる必要があることである。別のローカル・コンピューティング装置５０において、このファイルの同一コピーが使用され、インストールされ、開かれるか、あるいは保存されて閉じられる場合には、このファイルは、ネットワーク１０に知られているものとして、中央インフラ１００で認識され、このようにして、このファイルのコンテンツを再チェックする必要がないようにしている。これは、多数のローカル・コンピューティング装置５０を持つネットワーク１０に本発明が使用される場合には、特に有利である。
【００８７】
これらの実施形態の方法はまた、中央インフラ１００、コンピューティング装置から成るいくつかの配布地点、また、上記配布地点のそれぞれに対して、いくつかのローカル・コンピューティング装置５０を持つネットワーク上で実施されることもある。このようにして、例えば、待機リストを作成するか、あるいは、予防的に検索することなどの処理ステップの少なくとも一部は、この配布地点のコンピューティング装置上のエージェントにより行われることがある。これらの配布地点は、ネットワーク上で、物理的に区切られた領域に対応する。
【００８８】
動作しているときには、新規ファイルのコンテンツを識別する方法およびシステムは、オプションとして、決まった時間に、ローカル・エージェントの「ハートビート」をチェックする処置を含む。すなわち、この方法およびシステムは、ローカル・コンピューティング装置５０上でローカル・エージェントがまだ実行しているかどうかチェックされることもある。これにより、ユーザが、このエージェントをローカルで停止させ、したがって、ローカル・コンピューティング装置５０に攻撃を受けやすくすることが避けられる。ローカル・エージェントが停止している場合には、ネットワーク管理者に警告する。さらに、警告メッセージをローカル・コンピューティング装置５０に送り、それにより、ローカル・コンピューティング装置５０のユーザに警告できる。このネットワーク管理者はまた、ローカル・コンピューティング装置５０を隔離して、ネットワーク１０上で、他のローカル・コンピューティング装置５０に損害を与えないようにすることもできる。さらに、中央エージェントも、ローカル・エージェントを再実行しようとすることができる。
【００８９】
同様にして、新規ファイルのコンテンツを識別する方法およびシステムは、オプションとして、ローカル・コンピューティング装置５０がまだネットワーク１０に接続されているかどうか、決まった時間にチェックすることができる。ローカル・コンピューティング装置５０がもはやネットワーク１０に接続されてない場合には、ローカル・エージェントはさらに動作して、新規ファイルのハッシング鍵を待機リストに収めて、ネットワーク接続が回復すると、それらのハッシング鍵をチェックする。その間、対応するファイルは、隔離されるか、あるいは、このファイルのタイプにより、例えば、実行できなくなることがある。
【００９０】
上述の実施形態は、外部ネットワークに接続されている異なるコンピューティング装置に対して、コンテンツ・ファイアウォールとして使用される。あらゆる入出力ファイル、入出力メッセージ、または入出力データ・フレームでは、このコンテンツ・ファイアウォールは、そのハッシュを計算し、このハッシュが新規であるかどうかチェックし、特定コンテンツ用のタグがそのハッシュに付けられているかどうかチェックし、さらに、この特定コンテンツに関連するポリシーを実施する。
【００９１】
さらなる実施形態では、コンテンツ・ファイアウォールとして本発明を使用する別の構成が述べられている。この方法とシステムが使用できるコンピュータ・ネットワークの図式的な全体像が図５に示されている。再構成可能な専用ファイアウォール電子装置の形式を取ることがあるローカル・コンピューティング装置などのただ１つの再構成可能なファイアウォール電子装置５０は、例えばインターネットなどの外部ネットワーク４０に直結され、また、残りのローカル・コンピューティング装置４１０は、外部ネットワーク４００には直結されず、ネットワーク環境においてグループにまとめられて、再構成可能なファイアウォール電子装置に接続することで、外部ネットワーク４００に接続されるにすぎない。この外部ネットワークは、利用できる可能なネットワークであれば、どんなものであってもよい。再構成可能なファイアウォール電子装置５０で表わされるコンテンツ・ファイアウォールの目標は、残りのローカル・コンピューティング装置４１０を含むネットワーク環境を、外部ネットワーク上の場所および／または装置から生じる攻撃から保護することである。再構成可能なファイアウォール電子装置５０は、このメタベースのローカル・コピーを収めているか、あるいは、保護された高速ネットワークを、内部ネットワークの一部である中央インフラ１００に使用できるか、いずれかである。これにより、このメタベースを通じて、高速クエリーが可能である。動作の間、コンテンツ・ファイアウォールとして機能する再構成可能なファイアウォール電子装置５０は、入力ファイルまたは入力メッセージまたは入力データ・フレームのハッシュ値を計算するという処置を実行する。次に、これらの計算されたハッシュ値は、ローカルで格納されるメタベース、あるいは、保護された高速ネットワークを用いて格納されるメタベースと比較されて、このような入力ファイル、入力メッセージ、または入力データ・フレームが新規であるかどうか判定される。さらに、このファイル、このメッセージ、またはこのデータ・フレームに、特定コンテンツ用のタグが付けられているかどうかチェックする。この特定コンテンツにより、この特定コンテンツに関連するポリシーが実施される。このポリシーは、特定コンテンツを、その最終目的地まで通過させること、特定コンテンツをドロップすること、特定コンテンツを記録すること、特定コンテンツを隔離することなどである。このシステムは、ネットワーク速度を著しく減速しないように、充分なＣＰＵ電力を必要とする。
【００９２】
このネットワークに接続されたローカル・コンピューティング装置のどれも、取り外し可能装置を装備してない場合、すなわち、そのことから、スキャンされないコンテンツをその取り外し可能装置で実行するか、あるいは開くことができる場合には、これは、非常にセキュアで、かつ管理可能な機構である。
【００９３】
本発明の他の実施形態では、雑多モードにおいて、コンテンツ・ファイアウォールとして本発明を使用する同様な構成が提供される。それにより、このコンテンツ・ファイアウォールは、すべてのトラフィックが通り過ぎるのを見て、このようなハッシングと比較の機能を実行し、さらに、これらのエージェントに連絡して、ポリシーを実施する。この手法の利点は、障害地点が１つもなく、もはやボトルネックもないことであり、さらに、ハッシュを計算するローカル・コンピューティング装置上には、依然としてリソースが使用されないことである。さらに、中央メタベースに連絡するのに、帯域幅はまったく使用しない。この欠点は、内部ネットワークのすべてのコンピューティング装置にローカル・エージェントをインストールする必要があることである。
【００９４】
異なる実施形態で表わされる方法およびシステムは、ウイルスまたは悪意のあるデータの有無に関して、追加情報を報告するか、識別するステップや、それらのステップを実行する手段をそれぞれ含む。メタベース１１０に提供された情報に基づいて、このネットワーク上でウイルスまたは悪意のあるデータが入力されているローカル・コンピューティング装置５０の識別が得られる。これは、例えば、そのパスと、変更日または生成日に関する情報に基づくこともある。さらに、メタベース１１０に提供された情報（例えば、ファイルのタイプ）に基づいて、ウイルスがどのように作用するのかについて、さらなる情報が得られる。さらに、このメタベースにより、例えば、ウイルスまたは悪意のあるデータが、どのようにネットワーク上に広がっているのか見極めることができる。こうして得られた情報を蓄積し、かつ／または使用して、このネットワークのセキュリティをさらに高める。この情報が、例えば、発生するいくつかの出来事のために蓄積される場合には、ネットワークのセキュリティの弱点を示す、すなわちローカル・コンピューティング装置５０がウイルスまたは悪意のあるデータの攻撃を受けやすいことを示す総合分析、例えば統計的分析が行われる。これは、自動的に実行できる。次に、例えば、ローカル・コンピューティング装置５０を定期的に充分チェックするか、あるいは、ローカル・コンピューティング装置５０に対して、インターネットなどの外部ソースへの限られたアクセスのみを提供することなど、調整されたセキュリティ措置が講じられる。
【００９５】
ローカル・コンピューティング装置５０が故障すると、メタベースから、例えばパス・ファイルなどのあらゆる必要な情報が得られるので、このメタベースにおいて得られる情報は、復元目的で使用できる。ローカル・コンピューティング装置５０、または、その一部が、もはや接続できないときには、失われた情報の少なくとも一部は、メタベース、中央インフラに格納されたファイル、および／または、ネットワーク上の他の場所に格納されたファイルにある情報に基づいて復元できる。
【００９６】
上述の実施形態に基づいて、本発明は、コンピューティング装置上で実行されるときに、本発明による方法のうちのいずれかの機能を提供するコンピュータ・プログラム・プロダクトを含む。さらに、本発明は、このコンピュータ・プログラム・プロダクトを機械読取り可能な形式で格納し、かつ、コンピューティング装置上で実行されるときに本発明の方法の少なくとも１つを実行するＣＤ−ＲＯＭまたはディスケットなどのデータ・キャリアを含む。今日、このようなソフトウェアは、インターネット上で提供されることが多く、それゆえ、本発明は、ローカル・エリア・ネットワークまたは広域ネットワーク上で、本発明による印刷用コンピュータ・プログラム・プロダクトを送る処置を含む。
【図面の簡単な説明】
【００９７】
【図１】コンピュータ・ネットワークを図式的に描いたものである。
【図２】中央インフラと、その基本ソフトウェア・コンポーネントを図式的に描いたものである。
【図３】ローカル・エージェントで駆動されるコンテンツ識別プロセスを図式的に描いたものである。
【図４】メタベースで駆動されるコンテンツ識別プロセスを図式的に描いたものである。
【図５】コンテンツ・ファイアウォールのシステムおよび方法を適用できるコンピュータ・ネットワークを図式的に描いたものである。
【符号の説明】
【００９８】
１０  ネットワーク、５０  ローカル・コンピューティング装置、１００  中央インフラ
【図１】
2007520796.tif 000004
【図２】
2007520796.tif 000005
【図３】
2007520796.tif 000006
【図４】
2007520796.tif 000007
【図５】
2007520796.tif 000008
【国際調査報告】
2007520796.tif 000009
2007520796.tif 000010
2007520796.tif 000011
2007520796.tif 000012
2007520796.tif 000013