コンピュータにおいて、望ましくないコンピュータプログラムが常駐するであろう領域を特定するステップと、前記領域内にデータオブジェクトを提供して、該データオブジェクトが、前記コンピュータにセキュリティを与えるとともに、前記望ましくないプログラムに対する免疫を提供するようにするステップと、を含むことを特徴とする方法。前記コンピュータの第2の領域内に、前記データオブジェクトに関連するヌル構成オブジェクトを提供するステップをさらに含む、ことを特徴とする請求項1に記載の方法。前記ヌル構成オブジェクトが、ヌルレジストリキーを含む、ことを特徴とする請求項2に記載の方法。前記ヌル構成オブジェクトが、ヌル構成情報を含む、ことを特徴とする請求項2に記載の方法。前記データオブジェクトの削除又は修正を防ぐステップをさらに含む、ことを特徴とする請求項1に記載の方法。前記データオブジェクトの削除又は修正を防ぐステップが、前記データオブジェクトに対するセキュリティ許可を設定するステップを含む、ことを特徴とする請求項5に記載の方法。前記データオブジェクトの削除又は修正を防ぐステップが、前記データオブジェクトを、前記望ましくないプログラムとは異なるオブジェクトタイプに修正するステップを含む、ことを特徴とする請求項5に記載の方法。前記データオブジェクトの削除又は修正を防ぐステップが、前記データオブジェクト内に第2のデータオブジェクトを配置するステップを含む、ことを特徴とする請求項7に記載の方法。前記データオブジェクトのアクセスに応答して、セキュリティイベントを生成するステップをさらに含む、ことを特徴とする請求項1に記載の方法。前記ヌル構成オブジェクトのアクセスに応答して、セキュリティイベントを生成するステップをさらに含む、ことを特徴とする請求項2に記載の方法。コンピュータにおいて、望ましくないコンピュータプログラムが常駐するであろう領域を特定し、前記領域内にデータオブジェクトを提供して、該データオブジェクトが、前記コンピュータにセキュリティを与えるとともに、前記望ましくないプログラムに対する免疫を提供するようにする、ように構成されたイノキュレータエンジンを備える、ことを特徴とする装置。前記イノキュレータエンジンが、前記コンピュータの第2の領域内に、前記データオブジェクトに関連するヌル構成オブジェクトを提供するように構成される、ことを特徴とする請求項11に記載の装置に記載の装置。前記ヌル構成オブジェクトが、ヌルレジストリキーを含む、ことを特徴とする請求項12に記載の装置。前記ヌル構成オブジェクトが、ヌル構成情報を含む、ことを特徴とする請求項12に記載の装置。前記データオブジェクトの削除又は修正を防ぐように構成されたセキュリティサブシステムをさらに備える、ことを特徴とする請求項11に記載の装置。前記セキュリティサブシステムが、前記データオブジェクトに対するセキュリティ許可を設定することにより、前記データオブジェクトの削除又は修正を防ぐ、ことを特徴とする請求項15に記載の装置。前記セキュリティサブシステムが、前記データオブジェクトを、前記望ましくないプログラムとは異なるオブジェクトタイプに修正することにより、前記データオブジェクトの削除又は修正を防ぐ、ことを特徴とする請求項15に記載の装置。前記セキュリティサブシステムが、前記データオブジェクト内に第2のデータオブジェクトを配置することにより、前記データオブジェクトの削除又は修正を防ぐ、ことを特徴とする請求項17に記載の装置。前記データオブジェクトのアクセスに応答して、セキュリティイベントを生成するように構成されたセキュリティサブシステムをさらに備える、ことを特徴とする請求項11に記載の装置。前記ヌル構成オブジェクトのアクセスに応答して、セキュリティイベントを生成するように構成されたセキュリティサブシステムをさらに備える、ことを特徴とする請求項12に記載の装置。コンピュータにおいて、望ましくないコンピュータプログラムが常駐するであろう領域を特定する手段と、前記領域内にデータオブジェクトを提供して、該データオブジェクトが、前記コンピュータにセキュリティを与えるとともに、前記望ましくないプログラムに対する免疫を提供するようにする手段と、を備えることを特徴とする装置。コンピュータにおいて、望ましくないコンピュータプログラムが常駐するであろう領域を特定し、前記領域内にデータオブジェクトを提供して、該データオブジェクトが、前記コンピュータにセキュリティを与えるとともに、前記望ましくないプログラムに対する免疫を提供するようにする、ための命令を記憶したコンピュータ可読媒体を含む製造品。ユーザは、コンピュータ内に望ましくないコンピュータプログラムが存在すること又はネットワーク内の装置内に望ましくないプログラムが存在すること、又は携帯情報端末、スマートフォン、iPad又はiPhoneなどのポータブルコンピュータ装置内に望ましくないプログラムが存在することを発見した場合、通常は、現在利用可能な解決策を用いて、この望ましくないプログラムを除去することができる。例えば、現在のソフトウェアプログラムを使用して、コンピュータ内のマルウェア又はウイルスを除去することができる。しかしながら、コンピュータは、同じ望ましくないプログラムに再感染する可能性が高い。再感染率が高い約50以上などの場合、特に複数のコンピュータが同じ望ましくないプログラムに再感染する場合には、企業にとってコンピュータの維持コストが高額になる。企業が、大規模で全組織的な統合アプリケーションソフトウェアパッケージである企業システムを使用している場合、このコストの増大を招く可能性が高い。例えば、企業が、あるコンピュータを企業システムとともに又はその一部として使用するように再構成し、この再構成したコンピュータを分析した後で、このコンピュータが企業のコンピュータに以前に侵入していた望ましくないプログラムマルウェア又はウイルスなどに感染又は再感染していることが判明した場合、この再感染を除去するのに必要な手順が企業にとってコストの増大を招く。現在の技術には、コンピュータ又はネットワーク装置の再感染を防ぐための、それほど複雑でない安価な方法を提供するものはない。従って、現在の技術は、その性能が限られており、少なくとも上記の制約及び不完全性が存在する。以下の図を参照しながら本発明の非限定的かつ非包括的な実施形態について説明するが、特に指定しない限り様々な図全体を通じて同じ参照数字は同じ部分を示す。本明細書の説明では、本発明の実施形態を完全に理解できるように、構成要素、モジュール、ソフトウェア、プログラムコード及び/又は方法の例などの数多くの具体的な詳細を示す。しかしながら、当業者であれば、これらの具体的な詳細の1又はそれ以上を伴わずに、或いは他の装置、システム、方法、モジュール、ソフトウェア、プログラムコード、構成要素、材料、部品、及び/又は同様のものを用いて本発明の実施形態を実施できると認識するであろう。その他の場合、本発明の実施形態の態様を曖昧にしないように、周知の構造、材料、モジュール、ソフトウェア、プログラムコード又は動作については詳細に図示又は説明していない。また、本質的に図は代表的表現であり、これらの形状は、あらゆる要素の正確な形状又は正確なサイズを示すことを意図するものではなく、本発明の範囲を限定することを意図するものでもない。図1は、本発明の1つの実施形態による装置システム100のブロック図、又は本発明の実施形態において使用できる装置システムのブロック図である。例示的なコンピュータ装置105又はコンピュータ105は、通信ネットワーク110に接続可能であるとともに、これに沿って通信することができる。従って、コンピュータ装置105は、ネットワーク110を介してリモートサーバ112と通信し、このリモートサーバ112からデータオブジェクト又はプログラムをダウンロードすることができる。サーバ112のプラットフォーム上では、本発明の1つの実施形態によるイノキュレータエンジン114が動作し、このイノキュレータエンジン114の機能については後述する。コンピュータ装置105は、例えば限定ではなく、コンピュータパーソナルコンピュータなど、サーバ、ワークステーション、メインフレームコンピュータ、ミニコンピュータ、マイクロコンピュータ、ノートブック型又はラップトップ型コンピュータ、パームトップ、スマート装置スマートプリンタ、スマートカメラ、スマートスキャナ又はその他のスマート装置など、又はポータブルコンピュータ装置携帯電話機、スマートフォン、携帯情報端末、iPad、iPhone又はその他のポータブルコンピュータ装置など、或いは別のタイプのコンピュータとすることができる。通信ネットワーク110は、例えば限定ではなく、ワイドエリアネットワークインターネットなどなどの公衆ネットワーク、ローカルエリアネットワークLAN、或いは異なるタイプのプライベートネットワーク、セミプライベート又は公衆ネットワークなどである。ネットワーク110を形成する単複のリンクは、有線、無線、又はこれらの組み合わせとすることができる。コンピュータ装置105は、計算動作又はデータ送信で使用される標準要素115を含む。図1に示す要素115のいくつかは、ハードウェア要素又はオブジェクトディスクドライバなどである。当然ながら、要素115内の構成要素は、コンピュータ装置のタイプに応じて異なることができる。例えば、PDA又はスマートフォン内のハードウェア要素と比較すると、パーソナルコンピュータ内のいくつかのハードウェア要素は異なる場合がある。一例として、要素115は、プロセッサ120、1又はそれ以上のメモリ素子125、ディスクなどの記憶装置130、ネットワークインターフェイス142内の構成要素とすることもできるポート140、ディスクドライバ145、ネットワークインターフェイス142内の構成要素とすることもできるネットワークドライバ150、及び/又はコンピュータ装置内で使用されるその他の既知の要素を含む。コンピュータ装置105は、当業者に周知の管理機能及びその他の機能を実行する、例えばオペレーティングシステムOS155などのソフトウェア要素152も含む。OS155は、例えば、MicrosoftWINDOWS登録商標ベースのオペレーティングシステム、MACOS登録商標、MACOSX登録商標、iOSモバイルオペレーティングシステム、UNIX又はUNIX様OS、BSD及びその子孫オペレーティングシステム、Linux/GNU、GoogleCROMEOS登録商標、OS/2、又は別のオペレーティングシステムなどの様々なタイプの既知のOS155のうちの1つとすることができる。なお、上記のオペレーティングシステム名のうちの少なくとも一部は登録商標である。後述するように、イノキュレータ114は、コンピュータ装置105上にブロックオブジェクト160すなわち、ブロック160又はウェッジ160を送信して、コンピュータ装置105に既知の特定のソフトウェアプログラムがインストールされ又は実行されるのを防ぐように構成される。ブロックオブジェクト160は、不活性オブジェクト或いはヌルオブジェクト、又は機能を実施も実行もしないデータオブジェクトであるデータオブジェクトである。本明細書では、このブロックオブジェクト160をブロック160又はウェッジ160とも呼ぶ。以下でさらに詳細に説明するように、特定のブロックオブジェクト160は、コンピュータ装置105上における特定のコンピュータプログラムのインストール又は実行をブロックする。ブロックされるコンピュータプログラムは、悪質なコンピュータプログラムの場合も、又は悪質でないコンピュータプログラムの場合もある。コンピュータ装置105は、ユーザインターフェイス165及び/又はその他の周辺構成要素を含むこともできる。当然ながら、ユーザインターフェイス165は、コンピュータ装置105のタイプに応じて異なることができる。例えば、ノートブック型コンピュータ用のユーザインターフェイスは、PDA用のユーザインターフェイス又はスマートフォン用のユーザインターフェイスとは異なり得る。インターフェイス165は、コンピュータ装置105と一体化すること、又はコンピュータ装置105に結合してともに機能することができる。一例として、パーソナルコンピュータ用のインターフェイス165は、マウス又はコントロールパッド170、キーボード176、及び/又は画面又はタッチ画面180のうちの少なくとも1つを含むことができる。バス153は、上述したコンピュータ装置105の構成要素が互いに通信してともに機能できるようにする。図面を明確にするために、図1には、装置105内で使用できる他の標準的ハードウェア、ソフトウェア、又はファームウェア構成要素については示していない。イノキュレータエンジン114は、標準プログラミング言語C、C、又はその他の好適な言語などに基づくソフトウェアコードにより形成される。図2は、本発明の実施形態による、図1の装置100のさらなる詳細を示すブロック図である。既知のコンピュータプログラム205すなわち、不要な又は望ましくないコンピュータプログラム205、或いは不要な又は望ましくないソフトウェアプログラム205が、例えば既知のマルウェア又は既知の悪質でないプログラムであると仮定する。マルウェアは、例えば、ウイルス、ワーム、トロイの木馬、バックドア、スパイウェア、アドウェア、ボットネット、又はコンピュータに悪質な影響を与える又は他の望ましくない機能を実行する可能性がある他のマルウェア又は他のプログラムとすることができる。悪質でないプログラムは、例えば、ピアツーピアファイル共有プログラム又は他のタイプの悪質でないコンピュータプログラムとすることができる。他の悪質でないプログラムは、例えば従業員が気を取られずに職場で利益を上げ続けるように、企業がコンピュータ装置105にインストール又は再インストールしたくないと望むコンピュータゲーム、ビデオ又はその他のプログラムを実行するコンピュータプログラムとすることができる。既知のコンピュータプログラム205は、以前にコンピュータ装置105に感染し或いはネットワーク110又はコンピュータ装置105に接続する他のいずれかの装置に感染し、既にコンピュータ装置105から削除され、その後既にその属性210を分析されている、最近発見又は分析されたマルウェアプログラム又は悪質でないプログラムとすることもできる。コンピュータプログラム205の属性210は、例えば、別個のリモートデータベース212に、又はリモートサーバ112内のデータベースに、或いはリモートサーバ112がアクセスできる別の装置図2には図示せずに記憶することができる。当業者には、コンピュータプログラムの属性を分析する様々な方法が知られている。一例では、コンピュータプログラム205が、コンピュータ装置105或いはコンピュータ装置105と通信できる、又はネットワーク110上で通信できる別のコンピュータ装置に既にインストールされている。コンピュータプログラム205が、コンピュータ装置105或いはコンピュータ装置105と通信できる、又はネットワーク110上で通信できる別のコンピュータ装置に感染したと仮定する。一例では、コンピュータ装置105からコンピュータプログラム205を除去するために、WindowsManagementInterfaceWMIを使用してコンピュータ装置105に接続することができる。当業者には周知のように、WMIは、例えばWindowsOSなどの特定のオペレーティングシステムによるコンピュータ装置の管理及び制御を可能にする。一例では、WMIを介して管理されるコンピュータ装置が、例えば企業ネットワークなどのネットワーク内に存在することができる。ネットワーク管理者は、WMIを使用して、コンピュータ装置、アプリケーション及びネットワーク上の情報を問い合わせて設定することができる。WMIを使用することにより、管理者は、Microsoft社がサポートするAPIアプリケーションプログラムインターフェイスコールを使用してファイルシステム220内のレジストリ230にアクセスし、コンピュータ装置105に特定のコンピュータプログラム205悪質なコンピュータプログラム又は悪質でないコンピュータプログラムがインストールされているかどうかを判定することができる。管理者は、APIコールを使用して特定のレジストリキー222にデータを書き込むことができる。一例では、この特定のレジストリキー222が、Microsoftサービスパックのインストール又はアップデートから使用されるレジストリキーであり、このレジストリキーは、コンピュータ装置105の再起動後に除去すべき特定のファイル及びレジストリキーに関する命令を含む。コンピュータ装置105から特定のコンピュータプログラム205を除去するために、この特定のコンピュータプログラム205を除去するための命令が特定のレジストリキー222に書き込まれる。コンピュータ装置105を再起動すると、オペレーティングシステム155は、この特定のレジストリキー222を読み取って、コンピュータ装置105から特定のコンピュータプログラム205を除去するまた、コンピュータプログラム205のレジストリキー206も除去する。OS155は、レジストリキー222内の、特定のプログラム205及びレジストリキー206を除去するための命令に基づいて、プログラム205及びレジストリキー206の除去を実行する。従って、WMIの機能を有利に使用して、コンピュータ装置105からコンピュータプログラム205をクリーニングワクチン接種、除去、削除、隔離することができる。本明細書の説明に基づけば、コンピュータ装置105からコンピュータプログラム205を除去するための他の方法も有利に使用できることが理解される。次に、この既知のコンピュータプログラム205の属性210を分析すると仮定する。当業者であれば、コンピュータプログラムを分析して、属性210の以下の特性又は詳細を判断することができる。一例では、属性210が、この既知のプログラム205のソフトウェア名がUNWANTED-1であり、ファイル拡張子がextであることを示す。属性210が、この既知のコンピュータプログラム205がファイルシステム220によって位置215に記憶される予定であることを示しているとさらに仮定する。当業者には周知のように、ファイルシステムは、あらゆるオペレーティングシステムタイププラットフォーム内のサブシステムの1つである。通常、位置215は、コンピュータ装置105のメモリ125図1内の領域である。既知のプログラム205が、Windowsベースのオペレーティングシステムへのインストールを試みている場合、又はインストール済みソフトウェアのためにレジストリ型システムを使用する別のタイプのオペレーティングシステムへのインストールを試みている場合、属性210は、この既知のプログラム205が、ファイルシステム220によって管理され、メモリ125図1のメモリ領域235内に存在するレジストリ230内にレジストリキー206を作成するつもりであることを示すこともできる。当業者には周知のように、レジストリは、Windowsオペレーティングシステムが使用する、コンピュータプログラムに関する構成情報を記憶するためのデータベースである。ほとんどのコンピュータプログラムは、少なくともインストール中にレジストリにデータを書き込む。当業者であれば、本明細書で説明する構成の変形例又は代替例を作成できると理解するであろう。例えば、本明細書で説明するように、メモリランダムアクセスメモリなどに記憶されるオブジェクト又は他の記憶構成要素には、常にメモリ内に常駐はできずにディスクに記憶され、アクセスされた時にメモリにロードされるものもある。より具体的な例として、ディスクドライバ145図1、レジストリ230及び/又はファイルシステム220などの一部のオブジェクト又はその他の記憶構成要素は、通常はディスクに記憶されて常にRAM内には常駐できず、アクセスされた時にのみRAM内にロードすることができる。これとは別に又はこれに加えて、既知のプログラム205が、非WINDOWSベースのオペレーティングシステムへのインストールを試みている場合、属性210は、この既知のプログラム205が構成情報ファイル240すなわち、設定ファイル240を作成するつもりであることを示すことができる。プログラム205がコンピュータ装置105にインストールされると、構成ファイル240は、この既知のプログラム205を有効に登録する。例えば、MAC登録商標OS登録商標のオペレーティングシステムでは、この構成ファイル240はプリファレンスファイル240である。プリファレンスファイルが削除された場合、コンピュータプログラム205は、そのプリファレンスファイル240を再構築する。構成ファイル240が、あらゆる好適な構成ファイル又はメタデータファイル、或いはコンピュータプログラム205に関連し、必ずしもMACOSオペレーティングシステムに限定されないあらゆる好適なタイプのオペレーティングシステムが使用する他のデータファイルを含むことは、本発明の実施形態の範囲に含まれる。本発明の1つの実施形態では、イノキュレータエンジン114をメモリ250に記憶し、例えば限定ではなく、サーバ又は別のタイプのコンピュータとすることができるリモートコンピュータ装置112内のプロセッサ255によって実行することができる。オペレーティングシステム155がWindowsオペレーティングシステムである場合、管理者は、プロセッサ255がイノキュレータエンジン114を実行できるようにすることができる。イノキュレータエンジン114は、データベース212に記憶又は収集された、既知のコンピュータプログラム205に関連する属性又はメタデータである属性210を、レジストリキー206を含めて読み込む。通常、属性210は、コンピュータプログラム205がインストール後に常駐する予定のターゲット装置105内のメモリ空間又はメモリアドレス空間、又はコンピュータプログラム205がインストール後に常駐する予定のターゲット装置105内のファイルシステム位置を示す。属性210は、望ましくないコンピュータプログラム205のレジストリキー206を受け取るであろうレジストリ位置226を示すこともできる。本発明の1つの実施形態では、イノキュレータエンジン114が、ネットワーク110を介してブロックオブジェクト160すなわち、ブロック160又はウェッジ160を提供し、コンピュータ装置105上に送信260して、既知の特定のソフトウェアプログラム既知のプログラム205がターゲットコンピュータ装置105にインストールされ、又は実行されるのを防ぐ。ブロックオブジェクト160は、不活性オブジェクト或いはヌルオブジェクト、又は機能を実施も実行もしないデータオブジェクトであるデータオブジェクトである。本明細書では、このブロックオブジェクト160を、ブロック160又はウェッジ160、或いは実行せずにメモリ空間のみを占めるダミーファイル160とも呼ぶ。例えば、このブロックオブジェクト160は、コンピュータ装置105に再インストールされないようにすべき既知のコンピュータプログラム205のメモリ空間又はメモリアドレス空間を占める、いずれの機能も実行しない特定サイズの所与のデータとすることができる。OS155のファイルシステム220は、このブロックデータ160をメモリ領域215にインストールする。Windowsタイプのオペレーティングシステムでは、ファイルシステム220が、不要なコンピュータプログラム205がインストールを試みる際にレジストリキー206を生成してインストールするはずのレジストリ領域226に、偽のレジストリキー225ヌルレジストリキー225もインストールする。このヌルレジストリキー225は、望ましくないコンピュータプログラム205のレジストリキー206のレジストリ領域226を占める、いずれの機能も実行しないすなわち、実行されない特定サイズの所与のデータでもある。別のタイプのオペレーティングシステムでは、ファイルシステム220が、ブロックオブジェクト160ヌルオブジェクト160、データオブジェクト160、又はダミーオブジェクト160のための偽の構成情報241ヌル構成情報241を構成ファイル240にインストールする。MACOSオペレーティングシステムでは、この構成ファイルが、プリファレンスファイルとして広く知られている。この偽の構成情報241は、不活性オブジェクト又は非機能データオブジェクトでもある。換言すれば、このヌル構成情報241は、非Windowsシステムにインストールされようとしている望ましくないコンピュータプログラム205の構成情報のメモリ領域を占める、いずれの機能も実行しないすなわち、実行されない特定サイズの所与のデータでもある。本明細書及び以下の特許請求の範囲では、Windowsベースのシステム又はレジストリキーを使用する他のOSタイプの場合のヌルレジストリキー225をヌル構成オブジェクト225とも呼ぶ。本明細書及び以下の特許請求の範囲では、非Windowsベースのシステムの場合のヌル構成情報241をヌル構成オブジェクト241とも呼ぶ。ヌル構成オブジェクト225又は241は、ヌルオブジェクト160データオブジェクト160に関連する。なお、iPad、iPhone又はスマートフォンなどのモバイル装置のオペレーティングシステムなどのオペレーティングシステムは、その全てのタイプがファイルシステムを有する。この結果、ターゲット装置105に不要なコンピュータプログラム205がインストールされるのを防ぐために、これらのファイルシステムを使用して、ブロックオブジェクト160を具体化したもの及び/又は偽の構成情報241を具体化したものをインストールすることができる。特定のブロックオブジェクト160データオブジェクト160は、コンピュータ装置105に特定のコンピュータプログラム205がインストール再インストールされ又は実行されるのをブロックする。ブロックされるコンピュータプログラム205は、悪質なコンピュータプログラムの場合もあれば、又は悪質でないコンピュータプログラムの場合もある。プログラム205が装置105に再インストールを試みると、ブロックオブジェクト160が、プログラム205のインストール先メモリ空間であるメモリ領域215を占める。この結果、このブロックオブジェクト160は、装置105へのプログラムの再インストールを防ぎ、装置105にプログラム205がインストールされ又は再感染するのを防ぐ抗体又は機能的抗体となる。プログラム205のインストール先メモリ空間215にはブロックオブジェクト160が存在するので、プログラム205はインストールできずにエラーを生じるようになる。当業者には周知のように、Windowsオペレーティングシステムにインストールされるコンピュータプログラムに関しては、このコンピュータプログラムがレジストリにも登録される。本発明の実施形態では、イノキュレータエンジン114が、偽のレジストリキー225或いはダミーレジストリキー225又は代用レジストリキー225を提供してレジストリ230内に送信する260。この偽のレジストリキー225は、ブロックオブジェクト160に関連する。オペレーティングシステム155は、コンピュータプログラム205の実際のレジストリキー206の代わりに、この偽のレジストリキー225をレジストリ230にインストールする。この偽のレジストリキー225は、コンピュータプログラム205マルウェア205又は悪質でないプログラム205などがターゲット装置105へのインストール中にレジストリキー206を作成する場所である、レジストリ230の領域226にインストールされる。コンピュータプログラム205がターゲット装置105へのインストールを試みている時には、レジストリ230には既に偽のレジストリキー225がインストールされており、コンピュータプログラム205は、この偽のレジストリキー225を削除できないので、エラーが発生するようになる。従って、ブロックデータ160及び/又は偽のレジストリキー225は、ターゲット装置105の、コンピュータプログラム205が居住又はインストールする必要がある領域をブロックする。本発明の1つの実施形態では、セキュリティサブシステム266によって管理されるセキュリティ許可設定265が、コンピュータプログラム205が偽のレジストリキー225の値を望ましくないプログラム205に関連する相応の値に変更するのを防ぐので、コンピュータプログラム205は、偽のレジストリキー225を削除することができない。この結果、コンピュータプログラム205は、ターゲット装置105に正常にインストールされず、ターゲット装置105は、コンピュータプログラム205による再感染から守られる。コンピュータプログラム205を装置105にうまくインストールできるようにするには、コンピュータプログラム205の作成者が、例えばコンピュータプログラム205の名前を変更するか、又はプログラム205のレジストリキー206以外の異なるレジストリキーを使用する必要がある。本発明の別の実施形態では、OS155内のセキュリティ許可265を、ブロックオブジェクト160に関して、不要なコンピュータプログラム205がインストール済みのブロックオブジェクト160を修正又は置換できないように設定することができる。例えば、セキュリティ許可265を、インストール済みのブロックオブジェクト160をネットワーク管理者しか変更できないように設定することができる。データオブジェクトのためのセキュリティ許可265は、セキュリティサブシステム266を使用して設定することも、ネットワーク管理者がネットワーク110を介して遠隔で設定又は構成することもできる。セキュリティ許可265を設定することにより、不要なソフトウェアプログラム205がブロックオブジェクト160を首尾よく上書きし、削除し、置換し、又は修正することに対するセキュリティ又は保護が提供される。セキュリティサブシステム266は、ブロックオブジェクト160及び/又はヌルのレジストリキー225のためのセキュリティ許可265を設定する。不要なコンピュータプログラム205の名前がUNWANTED-1であると仮定する。本発明の別の実施形態では、不要なコンピュータプログラム205が将来的にメモリ空間215にアクセスするのをブロックするブロックオブジェクト160を、ソフトウェアプログラム205が首尾よく上書き、削除、置換又は修正するのを防ぐために、ネットワーク管理者又はユーザが、ファイルシステム220及びセキュリティサブシステム266を介して、ブロックオブジェクト160の名前を変えずにそのタイプを変更することができる。例えば、ネットワーク管理者は、ブロックオブジェクト160を、ファイルオブジェクト160から、ファイルオブジェクトとは異なるタイプのオブジェクトであるディレクトリ160Aに変更することができる。ディレクトリ160Aの名前は、前のファイルオブジェクト160と同じUNWANTED-1になる。UNWANTED-1という名前の不要なコンピュータプログラム205が将来的にメモリ領域215へのインストールを試みた場合、この不要なコンピュータプログラム205は、同じUNWANTED-1という名前のディレクトリ160Aと名前が衝突するのでインストールすることができなくなる。この名前の衝突により、OS155がエラーコードをトリガし、これにより不要なコンピュータプログラム205がターゲット装置105にインストールを試みたことをネットワーク管理者又はターゲット装置105のユーザに警告することができる。本発明の別の実施形態では、不要なソフトウェアプログラム205が上記の例で説明したようにUNWANTED-1という名前のディレクトリ160Aを首尾よく上書き、削除、置換又は修正するのを防ぐために、ネットワーク管理者又はユーザが、ファイルシステム220及びセキュリティサブシステム266を介して、メモリ領域215内のディレクトリ160A内に別のブロックオブジェクト160Bを配置することができる。上記の例のブロックオブジェクト160と同様に、ブロックオブジェクト160Bも、非機能的又は非実行的な1つのデータオブジェクトである。ブロックオブジェクト160Bは、ブロックオブジェクト160の名前と異なる名前UNWANTED-2などを有することも、又はブロックオブジェクト160の名前と同じ名前UNWANTED-1などを有することもできる。ディレクトリ160A内にブロックオブジェクト160Bが存在するので、不要なコンピュータプログラム205は、将来的にターゲット装置105へのインストールを試みた時にディレクトリ160Aを削除又は修正することができない。本発明の別の実施形態では、ターゲット装置105へのインストール又は再インストールを試みる侵入コンピュータプログラム205が、偽のレジストリキー225に対するアクセス、修正又は削除を試みた場合、或いはターゲット装置105へのインストール又は再インストールを試みる侵入コンピュータプログラム205が、ブロックオブジェクト160に対するアクセス、修正又は削除を試みた場合、セキュリティイベント272を生成するようにOS155をプログラムすることができる。コンピュータプログラム205が、特定のメモリ領域215及び/又は特定のレジストリ領域226内のデータオブジェクトにアクセス例えば、読み込み、書き込み、修正又は削除しようと試みた場合、OS155は、セキュリティサブシステム266などを介してこのセキュリティイベント272をトリガすることができる。その後、このセキュリティイベント272が監査サブシステム274に送信され、このサブシステム274は、このセキュリティイベント272をセキュリティイベントログ276に記録することができる。様々な市販のソフトウェア及びオープンソースソフトウェアを使用して、セキュリティイベントログ276を読み込み分析することができる。事実上、セキュリティイベント272は、コンピュータプログラム205がターゲット装置105へのインストールを試み、偽のレジストリ225及び/又はブロックオブジェクト160にアクセスし、又はこれらを修正又は削除しようと試みている時に、ネットワーク管理者又はターゲット装置105のユーザに警告を行う仕掛け線又は盗難警報器である。本発明の別の実施形態では、上述したセキュリティイベント272機能が除外される。非限定的な動作例では、例えばMicrosoftWindowsオペレーティングシステム又はその他のタイプのオペレーティングシステムを使用するコンピュータシステムに、悪質なものである場合も、又は悪質なものでない場合もある1つのソフトウェア205をサービスとして登録すると仮定する。WindowsOSでは、現在の制御セット/サービスという名前のレジストリキー206の下にソフトウェア205が登録され、そのサービス名が有害ソフトウェアであると仮定する。このソフトウェア205は、ターゲット装置105にインストールされ又は感染すると、レジストリ230にこのレジストリキー206を作成する。例えば上述したような方法を使用して、ターゲットシステム105からソフトウェア205をクリーニング例えば、削除又は除去することができる。このソフトウェア205の属性210が分析され例えば、データベース212に記録されると、イノキュレータエンジン114が、ターゲット装置105に抗体を送り込んで、ソフトウェア205が将来的にターゲットシステム105にインストールされるのを防ぐことができる。上述したように、この抗体は、ブロックオブジェクト160ウェッジ160、ソフトウェア205と同じ名前のディレクトリ160A、ブロックオブジェクト160Bを含むディレクトリ160A、ブロックオブジェクト160に関連する偽のレジストリキー225、及び/又はブロックオブジェクト160に関連する偽の構成情報241とすることができる。上述したように、これらの抗体内の構成要素は、例えば、オペレーティングシステムのタイプ、及び/又はネットワーク管理者がブロックオブジェクト160、ディレクトリ160A、レジストリキー225及び/又は偽の構成情報241に設定することを好むセキュリティの量に基づいて異なることができる。イノキュレータエンジン114は、ネットワーク110に沿ってリモートプロシージャコールRPCを介してレジストリ235を開く。RPCは、Microsoftベースのオペレーティングシステムの内蔵機能である。当業者には周知のように、RPCは、一方のコンピュータ上のプログラムが他方のコンピュータ内のプログラムを実行できるようにする一種のプロトコルである。一方のコンピュータ内のプログラムは、適当な引数を含むメッセージを他方のコンピュータに送信し、この他方のコンピュータは、実行したプログラムの結果を含むメッセージを返送する。イノキュレータエンジン114は、現在の制御セット/サービスというレジストリパスの下に、有害ソフトウェアという名前のレジストリキーを作成する。従って、イノキュレータエンジン114は、ターゲット装置105にインストールを試みたプログラム205が作成したものと同じ名前のレジストリキーを作成する。同じく上述したように、イノキュレータエンジン114を使用して、レジストリキー225に対するセキュリティ許可265を設定することができる。例えば、セキュリティ許可265は、レジストリキー225の所有者以外の誰かによるレジストリキー225への読み取りアクセス及び書き込みアクセスを防ぐ。通常、レジストリキー225の所有者はネットワーク管理者である。この同じ例では、装置105のユーザが、後でインターネット又は別のネットワークを閲覧し、有害ソフトウェアという名前の同じプログラム205がターゲット装置105を悪用しようと試みると仮定する。有害ソフトウェアプログラム205は、その現在の制御セット/サービス/有害ソフトウェアという名前のレジストリキー206を作成し、ターゲット装置105へのインストールを試みている時に、このレジストリキー206をレジストリ230にインストールしようと試みる。レジストリ230には、レジストリキー225が既にインストールされているので、プログラム205のコードライン内にアクセス拒否エラーが生成される。このエラーコードは、レジストリ230に既にレジストリキー225がインストールされているという理由で生成され、このレジストリキー225が占めるレジストリ領域へのプログラム205によるアクセスが拒否されたことを示す。通常、プログラム205は、レジストリキー225を上書き又は修正するための正式なセキュリティ許可証明書を有していないので、エラーコードが生成される。プログラム205は、このエラーコードに対処するためのプログラミング応答を有しておらず、ターゲット装置105へのインストールを正常に完了することができず、ターゲット装置105の再起動中にプログラム205が存在し続けるための適当なレジストリキー及びファイルパスがインストールされないので、ターゲット装置105の再起動時に、OS155によってターゲット装置105から削除される。本発明の別の実施形態では、上述した抗体ブロックオブジェクト160、ディレクトリ160A、レジストリキー225及び/又は偽の構成情報241などを、以前にコンピュータプログラム205に感染したことがないターゲット装置105内に与えることができる。この解決策は、既知の不要なソフトウェア205による悪用に対するターゲット装置105の能動的なワクチン接種を可能にする。従って、本発明の実施形態では、装置及び/又は方法が、コンピュータセキュリティのためのイノキュレータ及び抗体を備える。ターゲットコンピュータ装置105すなわち、図1のターゲットコンピュータ105又はコンピュータシステム105に特定の既知のソフトウェアプログラムがインストールされて実行されるのを防ぐブロックオブジェクトすなわち、ブロック又はウェッジが、ターゲットコンピュータ装置にインストールされる。一例として、このブロックオブジェクトは、MicrosoftWindowsのRPCコールを使用して、遠隔装置からネットワークを介してターゲット装置105にインストールすることができる。本発明の実施形態により提供される解決策は、ターゲット装置にソフトウェアエージェントをインストールする必要がないという利点を有する。代わりに、この解決策は、データオブジェクト、ファイル及び/又はレジストリキーを提供して、不要なコンピュータソフトウェアプログラム205のインストールを防ぐ。従って、本発明の実施形態は、従来の解決策によるエージェント、アクティブな実行コード、ビヘイビアブロックソフトウェアの使用、或いは高額になること又はシステムリソースを消費することがある他の従来の解決策を有利に回避する。ターゲット装置内のターゲットシステムは、例えばMicrosoftWindowsOSとすることができるが、本発明の実施形態は、他のタイプのオペレーティングシステムを保護することもできる。ブロックオブジェクトがターゲットシステムにインストールされる押し込まれると、ターゲットシステムは、ターゲットシステムへのインストール又は実行を試みる特定の不要なソフトウェアプログラムから保護され、又はこれに対して免疫を持つようになる。上述したように、ブロックオブジェクトとともに偽のレジストリキーを使用してターゲットシステムを保護することもできる。本発明の実施形態により提供される解決策は、ターゲットシステムが一般にマルウェアと呼ばれる特定の悪質なソフトウェアプログラムに対して免疫を持つようにすることができる。しかしながら、本発明の実施形態により提供される解決策は、ターゲットシステムが、ネットワーク管理者又はその他のユーザにより選択される悪質でないソフトウェアに対しても免疫を持つようにすることができる。図3は、本発明の実施形態による方法300のブロック図である。最初に、望ましくないコンピュータプログラムが常駐するであろう領域を特定するブロック305。その後、この領域内にデータオブジェクトを配置して、このデータオブジェクトが、コンピュータにセキュリティを与え、望ましくないコンピュータプログラムに対する免疫を提供する抗体となるようにするブロック310。ブロック315における任意のステップとして、データオブジェクトに対するアクセス例えば、削除及び/又は修正を防ぐための動作を実行することもできる。上述したように、データオブジェクトに対するアクセス、削除及び/又は修正を防ぐことは、データオブジェクトに対するセキュリティ許可を設定すること、データオブジェクトのタイプを修正すること、又はデータオブジェクト内に第2のデータオブジェクトを配置することを含むことができる。本発明の別の実施形態では、例えば、ヌルレジストリキー225又はヌル構成情報241に対するセキュリティ許可を設定すること、セキュリティサブシステム266を使用することにより、ヌルレジストリキー225又は、妥当な場合にはヌル構成情報241に対するアクセス削除及び/又は変更などを防ぐこともできる。ブロック305において領域を特定する前に、コンピュータ又はネットワーク内の別の装置から望ましくないコンピュータプログラムをクリーニングワクチン接種することもできる。上述した本発明の技術のいずれかをコンピュータが実行できるようにする、機械可読又はコンピュータ可読媒体に記憶できるプログラム又はコードを実装すること、或いはフィールドプログラマブルゲートアレイFPGA又は他の特殊な装置などの組み込み装置を含む、本発明の技術の実施形態を実施するためのコンピュータ可読命令を記憶するコンピュータ可読媒体を含む製造の物品に記憶できるプログラム又はコードを実装することも本発明の範囲に含まれる。本明細書で説明した教示に照らして、上述した実施形態及び方法の他の変形及び修正も可能である。要約書に記載した内容を含む、例示した本発明の実施形態についての上記説明は、包括的であること、又は開示した詳細な形態に本発明を限定することを意図するものではない。本明細書では、本発明の特定の実施形態及び具体例について例示目的で説明したが、当業者であれば認識するように、本発明の範囲内で様々な同等の修正を行うことができる。本発明に対するこれらの修正は、上記の詳細な説明に照らして行うことができる。以下の特許請求の範囲で使用する用語を、本発明を本明細書及び特許請求の範囲で開示する特定の実施形態に限定するものであると解釈すべきではない。むしろ、本発明の範囲は、以下の特許請求の範囲により完全に定められるべきであり、特許請求の範囲の解釈の確立された原則に基づいて解釈すべきものである。