(57)【要約】  侵入コードを検知するためのコードモニタリング方法及び装置を提供する。  本発明のコードモニタリング方法は、対象コードに対してシステムに常在する常駐コードであるかシステムに侵入した侵入コードであるかを判別する。コードモニタリング方法において、第１コードパターンは対象コードより抽出される。第２コードパターンは格納手段からをロードされ、第１コードパターンと第２コードパターンとの距離を計算する。計算された距離を閾値と比較して対象コードが侵入コードであるか否か判断する。【選択図】      図３
2009522636.tif 000002
【特許請求の範囲】
【請求項１】
モニタリングの対象コードに対して該対象コードがシステムに侵入した侵入コードであるか否かを判別するモニタリング方法であって、
前記対象コードから第１コードパターンを抽出するステップと、
格納手段から第２コードパターンを読み出す（ｌｏａｄ）ステップと、
前記第１コードパターンと第２コードパターンとの距離を計算するステップと、
計算された距離を閾値と比較して前記対象コードが侵入コードであるか否かを判断するステップとを有することを特徴とする対象コードモニタリング方法。
【請求項２】
前記第１コードパターンは、前記対象コードの所定の部分から抽出され、抽出された部分は独自性（ｕｎｉｑｕｅｎｅｓｓ）を有することを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項３】
生体免疫判別のための抗原提供体系を前記対象コードに適用して前記対象コードを変換し、変換されたコードから所定のパターンを含む部分を前記第１コードパターンとして抽出することを特徴とする請求項１又は２に記載の対象コードモニタリング方法。
【請求項４】
前記第１コードパターンを抽出するステップは、前記対象コードをＤＮＡ塩基配列にエンコードするステップと、
前記ＤＮＡ塩基配列をこれに対応するアミノ酸の値に置換するステップと、
前記置換された値から所定の条件を満たすコードパターンを前記第１コードパターンとして抽出するステップとを含むことを特徴とする請求項３に記載の対象コードモニタリング方法。
【請求項５】
前記対象コードをＤＮＡ塩基配列にエンコードするステップは、前記対象コードをバイト単位でＤＮＡ塩基数によってモジュロ演算するステップと、
前記モジュロ演算した結果で発生した剰余をそれぞれＤＮＡ塩基の１つと置換するステップとを含むことを特徴とする請求項４に記載の対象コードモニタリング方法。
【請求項６】
前記ＤＮＡ塩基配列をこれに対応するアミノ酸の値に置換するステップは、コドン規則に従って前記ＤＮＡ塩基配列で３個の連続するＤＮＡ塩基に対応するアミノ酸の値に置換することを特徴とする請求項４に記載の対象コードモニタリング方法。
【請求項７】
前記置換された値によって生成された配列から抽出される前記第１コードパターンは、主要組織適合性複合体（ＭＨＣ１；Ｍａｊｏｒ  Ｈｉｓｔｏｃｏｍｐａｔｉｂｉｌｉｔｙ  Ｃｏｍｐｌｅｘ  １）分子のバインディングパターン（ｂｉｎｄｉｎｇ  ｐａｔｔｅｒｎ）条件のうちのいずれか１つを満たすことを特徴とする請求項４又は６に記載の対象コードモニタリング方法。
【請求項８】
前記格納手段に第２コードパターンが格納されるのは、システムに常駐する常駐コードから第３コードパターンを抽出するステップと、
前記第３コードパターンと同じ長さのランダムパターンを生成するステップと、
各々の前記ランダムパターンと前記第３コードパターンとの第２距離をそれぞれ計算するステップと、
前記第２距離が第２閾値よりも小さければ、該当するランダムパターンを前記格納手段に前記第２コードパターンとして格納するステップとを含むことを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項９】
前記第３コードパターンは、所定の位置の常駐コードから所定の長さで抽出されることを特徴とする請求項８に記載の対象コードモニタリング方法。
【請求項１０】
生体免疫判別のための抗原提供体系を前記常駐コードに適用し、前記常駐コードを変換し、変換されたコードから所定のパターンを含む部分を前記第３コードパターンとして抽出することを特徴とする請求項８又は９に記載の対象コードモニタリング方法。
【請求項１１】
前記第３コードパターンを抽出するステップは、前記常駐コードをＤＮＡ塩基配列にエンコードするステップと、
前記ＤＮＡ塩基配列をこれに対応するアミノ酸の値に置換するステップと、
前記置換された値から所定の条件を満たすコードパターンを前記第３コードパターンとして抽出するステップとを含むことを特徴とする請求項１０に記載の対象コードモニタリング方法。
【請求項１２】
前記常駐コードをＤＮＡ塩基配列にエンコードするステップは、前記常駐コードをバイト単位で前記ＤＮＡ塩基の数によってモジュロ演算するステップと、
前記モジュロ演算した結果で発生した剰余をそれぞれＤＮＡ塩基の１つと置換するステップとを含むことを特徴とする請求項１１に記載の対象コードモニタリング方法。
【請求項１３】
前記ＤＮＡ塩基配列をこれ対応するアミノ酸の値に置換するステップは、コドン規則に従って前記ＤＮＡ塩基配列で３個の連続するＤＮＡ塩基に対応するアミノ酸の値に置換することを特徴とする請求項１１に記載の対象コードモニタリング方法。
【請求項１４】
前記置換された値によって生成された配列から抽出される前記第３コードパターンは、主要組織適合性複合体分子のバインディングパターン条件のうちのいずれか１つを満たすことを特徴とする請求項１１又は１３に記載の対象コードモニタリング方法。
【請求項１５】
前記第２閾値は、前記常駐コードのコードパターン分布から選択された２つのコードパターン間の距離の１／２を最小値として有することを特徴とする請求項８に記載の対象コードモニタリング方法。
【請求項１６】
前記第２距離は、前記各ランダムパターンと前記第３コードパターンとの間のアルファベット順の差の二乗和で計算されることを特徴とする請求項８または１５に記載の対象コードモニタリング方法。
【請求項１７】
前記距離は、前記第１コードパターンと第２コードパターンとの間のアルファベット順の差の二乗和として計算されることを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項１８】
前記対象コードが侵入コードであると判別されれば、前記対象コードが悪性（ｍａｌｉｃｉｏｕｓ）コードであるか否かを判別するステップをさらに有することを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項１９】
システムにおいて、モニタリングの対象コードに対して該対象コードが前記システムに侵入した侵入コードであるか否かを判別するコードモニタリング装置であって、
前記対象コードから第１コードパターンを抽出するコードパターン抽出部と、
入力された第２コードパターンと前記第１コードパターンとの距離を計算し、計算された距離を閾値と比較して前記対象コードが侵入コードであるか否かを判断するコード判断部とを備えることを特徴とする対象コードモニタリング装置。
【請求項２０】
前記コードパターン抽出部は、前記対象コードの所定の部分から前記対象コードの独自性（ｕｎｉｑｕｅｎｅｓｓ）を有するように前記第１コードパターンを抽出することを特徴とする請求項１９に記載の対象コードモニタリング装置。
【請求項２１】
前記コードパターン抽出部は、生体免疫判別のための抗原提供体系を前記対象コードに適用して前記対象コードを変換し、変換されたコードから所定のパターンを含む部分を前記第１コードパターンとして抽出することを特徴とする請求項１９又は２０に記載の対象コードモニタリング装置。
【請求項２２】
前記コードパターン抽出部は、前記対象コードをＤＮＡ塩基配列にエンコードし、
アミノ酸配列を生成するために、前記ＤＮＡ塩基配列をこれに対応するアミノ酸の値に置換し、
前記置換によって生成されたアミノ酸配列から所定の条件を満たすコードパターンを前記第１コードパターンとして抽出することを特徴とする請求項２１に記載の対象コードモニタリング装置。
【請求項２３】
前記所定の条件は、主要組織適合性複合体（ＭＨＣ１；Ｍａｊｏｒ  Ｈｉｓｔｏｃｏｍｐａｔｉｂｉｌｉｔｙ  Ｃｏｍｐｌｅｘ  １）分子のバインディングパターン（ｂｉｎｄｉｎｇ  ｐａｔｔｅｒｎ）条件のうちのいずれか１つであることを特徴とする請求項２２に記載の対象コードモニタリング装置。
【請求項２４】
格納部をさらに有し、
前記コードパターン抽出部は、前記システムの常駐コードから第３コードパターンを抽出し、前記第３パターンと同じ長さを有するランダムパターンを生成する工程をさらに実行し、
前記コード判断部は、前記各ランダムパターンと前記第３コードパターンとの間の第２距離をそれぞれ計算し、前記各第２距離が第２閾値よりも小さければ、該当するランダムパターンを前記格納部に前記第２コードパターンとして格納する工程をさらに実行することを特徴とする請求項１９に記載の対象コードモニタリング装置。
【請求項２５】
前記コード判断部で前記対象コードが侵入コードであると判別されれば、前記対象コードが悪性（ｍａｌｉｃｉｏｕｓ）コードであるか否かを判別する悪性コード予測部をさらに有することを特徴とする請求項１９に記載の対象コードモニタリング装置。
【請求項２６】
請求項１〜１４のうちのいずれか一項に記載された対象コードモニタリング方法を実行するプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、侵入コード検知のためのコードモニタリング方法及び装置に関し、より詳細には、コンピュータで動作するアプリケーション（ａｐｐｌｉｃａｔｉｏｎ）のコードをモニタリングし、モニタリング対象コードが侵入コードであるか常駐コードであるかを判別するコードモニタリング方法及び装置に関する。
【背景技術】
【０００２】
悪性コードとは、製作者が意図的にユーザに被害を与えるために作成したすべての悪意目的を有するプログラム、マクロ（ｍａｃｒｏ）、及びスクリプト（ｓｃｒｉｐｔ）など、コンピュータ上で作動するすべての実行可能な形態のコードを意味する。
【０００３】
図１は、悪性コードの生命周期を示す図である。
図１に示すように、悪性コードの生命周期は、悪性コードが作成され、公開される時期１０と、通信網を介して感染ファイルが配布されて拡散する時期１１と、悪性コードが活性化しユーザに認知される時期１２と、ワクチンプログラムのアップデート後に悪性コードが除去される時期１３と、消滅する時期１４とに区分することができる。
【０００４】
図２の（ａ）は、変種の悪性コードの生命周期を示す図である。横軸は時間を表し、縦軸は感染数を表す。図２の（ａ）によれば、新種の悪性コード２０が出現し消滅しながら、変種の悪性コード２１が持続的に発生することにより悪性コードの生命周期が長くなることが分かる。
図２の（ｂ）は、悪性コードに対応する時点を示す図である。図面符号２２は、ユーザが悪性コードに対応するためにワクチンプログラムをアップデート（ｕｐｄａｔｅ）する必要があると思われる時期を表し、図面符号２３は、実際にワクチンプログラムがアップデートされる時期を表す。図２の（ｂ）によれば、ユーザがアップデートを所望する時期と実際のアップデート時期とに差があることが分かる。
【０００５】
上述したように、ワクチンプログラムのアップデート時期の差は、悪性コードが拡散した後に分析がなされて対応方法が設けられ、これに応じて新しいエンジンにアップデートする時間が長くかかるために発生する。また、変種の出現により、悪性コードの分析により多くの時間と人力が消費されるという問題もある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、上記のような問題点を解決するために案出されたものであって、モニタリング対象コードからコードパターンを抽出し、抽出されたパターンを常駐コードの特性を反映したパターンと比較することで、モニタリング対象コードが侵入コードであるか常駐コードであるかを判別するコードモニタリング方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために、本発明は、モニタリングの対象コードに対してシステムに侵入した侵入コードであるか否かを判別するコードモニタリング方法であって、まず、前記対象コードから第１コードパターンを抽出する。次に、格納手段から第２コードパターンを読み込み、前記第１コードパターン及び第２コードパターンとの距離を計算する。計算された距離を閾値と比較して前記対象コードが侵入コードであるか否かを判断する。
【０００８】
また、本発明はシステムにおいて、モニタリングの対象コードに対して該対象コードが前記システムに侵入した侵入コードであるか否かを判別するコードモニタリング装置であって、コードパターン抽出部及びコード判断部を備える。前記コードパターン抽出部は、前記対象コードから第１コードパターンを抽出する。前記コード判定部は、入力された第２コードパターンと前記第１コードパターンとの距離を計算し、計算された距離を閾値と比較して前記対象コードを侵入コードであるか否かを判断する。
【発明の効果】
【０００９】
本発明によれば、生体免疫体系において自己／非自己を識別するために用いられるメカニズムを用いてモニタリングの対象コードが常駐コードであるか侵入コードであるかを判別することで、従来技術に比べて侵入コードの判別性能が改善され、これによって従来技術に比べてワクチンプログラムのアップデートが速くなり、悪性コードに対し迅速に対処することができるという効果がある。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照しながら、本発明をより詳細に説明する。
【００１１】
生体分子を用いて情報を処理しようとする分子情報処理技術にＤＮＡ分子を用いたＤＮＡ分子コンピュータ技術がある。
ＤＮＡ分子コンピュータは、基本的にＤＮＡ塩基配列に情報を格納し、ＤＮＡ分子が有する化学的特性を用いて情報を処理する方式である。
【００１２】
ＤＮＡ分子コンピュータ技術は、免疫系を構成する細胞の特性、すなわち過去に経験した抗原に対する記憶を有するだけでなく、新しいパターンの抗原に対しても対抗することができるため、このような特性を用いてパターン認識や特徴抽出などの分野に応用されて来た。本発明では、モニタリングの対象コードに対して侵入コードの可否を判別するために、上述したＤＮＡ分子コンピュータの概念を導入する。
【００１３】
図３は、本発明の一実施形態によるコードモニタリング装置を示すブロック図である。
図３に示すコードモニタリング装置は、コードパターン抽出部３１及びコード判断部３２を備える。
コードモニタリング装置は、対象コードが侵入コードであるか常駐コードであるかを判断するために、免疫判断パターンを格納する格納部３３をさらに備えることができる。
【００１４】
さらに、コードモニタリング装置は、対象コードがコード判断部３２において侵入コードであると判定されたときに、侵入コードが悪性コードであるか否かを予測する悪性コード予測部３４をさらに備えることができる。ここで、格納部３３は通常的な情報格納装置であって、メモリ、ＭＤ、ＣＤ、ＤＶＤなどであると言える。
【００１５】
コードパターン抽出部３１は、対象コードの予め定められた位置から判別に用いるコードを所定の長さで抽出する。すなわち、コードの抽出は、一定の割合によって全体の対象コードから一定の部分から抽出することができる。例えば、１０００バイト（ｂｙｔｅ）のコードがあれば、抽出は１００バイトだけなされることができ、このときにこの１００バイトは互いに異なる位置から一定の長さ、すなわち１０バイトずつ１０個の集合の形態で抽出することができる。
また、抽出されたコードは、他の対象コードから抽出されたコードと区別される独自性（ｕｎｉｑｕｅｎｅｓｓ）を有する。もし、抽出されたコードが異なる対象コードから抽出されたコードと区別されなければ、対象コードの他の部分から同じ方式で判別に用いるコードが抽出される。
【００１６】
本実施形態では、コードパターンを抽出するために、生体免疫体系のうちで免疫判別のために抗原の一部がモニタリングされる抗原提供体系（ａｎｔｉｇｅｎ−ｐｒｅｓｅｎｔｉｎｇ  ｓｙｓｔｅｍ）を模倣する。
すなわち、抗原提供体系を対象コードに適用して対象コードを変換し、変換されたコードからコードパターンを抽出するものである。本実施形態では、抗原提供体系としてＤＮＡ配列からタンパク質（アミノ酸）コードを抽出し、抽出されたタンパク質（アミノ酸）コードに自己（ｓｅｌｆ）／非自己（ｎｏｎｓｅｌｆ）を識別するメカニズムを適用して対象コードからコードパターンを抽出する。
【００１７】
図４は、上述した生体免疫体系によって、コードパターン抽出部３１で実行されるコードパターン抽出工程を説明するためのフローチャートである。
まず、実行コードの経路を追跡して全体の実行コードをロードする（ステップ４１）。
実行コードをロードする時点は、コンピュータシステムにファイルがコピーされるとき、ネットワークで電子メール（ｅｍａｉｌ）などを介してファイル送信がなされるとき、ユーザが実行ファイルを実行したとき、その他、悪性コード対抗プログラムに対してユーザが定めた時点のうちのいずれか１つであると言える。
【００１８】
図５は、ロードされた１６進コード（ｈｅｘａｄｅｃｉｍａｌ  ｃｏｄｅ）の一例を示す図である。図面番号５１は、１６進コード５２の位置を示す。
ロードされたコードは、ＤＮＡコードにエンコードされる（ステップ４２）。
エンコードは、図５に示す１６進コードにおいて各バイトに割り当てられた値を４で割り、その剰余がそれぞれ０、１、２、３であれば、その剰余をそれぞれＤＮＡ塩基であるＡ、Ｔ、Ｇ、Ｃに置換してなされる。この結果を図６に示す。
【００１９】
ステップ４３では、ＤＮＡコードをプロテインコードに変換する。変換は、公知の者に対するコドン規則（ｃｏｄｏｎ  ｒｕｌｅ）に従ってなされる。人間に対するコドン規則は、下記の表１の通りである。
【００２０】
【表１】
2009522636.tif 000003
【００２１】
表１によって、例えば、ＤＮＡコードのうち“ＧＣＡ”の塩基配列を有する場合には“Ａ”に置換される。
図７は、表１によって置換された結果を示す図である。
【００２２】
ステップ４４では、図７に示したタンパク質（アミノ酸）コードからコードパターンを抽出する。コードパターンは、タンパク質（アミノ酸）コードから生体免疫体系で自己／非自己を識別するために用いられるメカニズムである主要組織適合複合体１（Ｍａｊｏｒ  Ｈｉｓｔｏｃｏｍｐａｔｉｂｉｌｉｔｙ  Ｃｏｍｐｌｅｘ  １：ＭＨＣ１）分子のバインディングパターン（ｂｉｎｄｉｎｇ  ｐａｔｔｅｒｎ）に該当する部分を抽出することによって得られる。
【００２３】
ＭＨＣ１分子バインディングパターンは、下記の２つの式にて表現することができる。
（ａ）  ［Ａ−Ｚ］｛２｝Ｙ［Ａ−Ｚ］［ＹＦ］［Ａ−Ｚ］｛２｝［ＬＭＩＶ］
（ｂ）  ［Ａ−Ｚ］｛４｝Ｎ［Ａ−Ｚ］｛３｝［ＬＭＩＶ］
ここで、［Ａ−Ｚ］はアルファベットＡからＺまでの選択範囲を表し、｛２｝は連続する文字の数を表す。
【００２４】
図８は、図７に示すタンパク質（アミノ酸）コードのうち、上述した（ａ）または（ｂ）の式を満たす部分を抽出した一例を示す図である。
図８において、図面符号８１はファイル名を、８２は（ａ）又は（ｂ）式のパターンを、８３は（ａ）又は（ｂ）式によるタンパク質（アミノ酸）コードを、８４は８３のタンパク質（アミノ酸）コードに対するファイル内の位置をそれぞれ表す。
【００２５】
図３のコード判断部３２は、格納部３３に格納された免疫判断用コードパターンをロードし、ロードされた免疫判断用コードパターンをコードパターン抽出部３１から抽出されたコードパターンと比較し、抽出されたコードが常駐コードであるか侵入コードであるかを判別する。
ここで、免疫判断用コードパターンとは、常駐コードを用いてコードパターン抽出部３１とコード判断部３２によって免疫判断用コードパターンとして判別されて格納部３２に格納されたパターンである。
【００２６】
図９は、格納部３２に免疫判断用パターンが格納される工程を説明するためのフローチャートである。
まず、常駐コードに対するコードパターンを抽出する（ステップ９１）。コードパターンの抽出は、図４に示す工程によってなされる。
【００２７】
ステップ９２では、ランダムパターンが生成される。このとき、ランダムパターンは、常駐コードに対するパターンと同じ長さを有し、無作為に生成される。
ステップ９３では、常駐コードパターンとｉ番目のランダムパターンとの距離を比較する。距離は多様な方法で計算することができ、例えば、下記の数式１のようにアルファベット順の差の二乗を足して計算することができる。
【００２８】
【数１】
2009522636.tif 000004
ここで、Ｓは常駐コードパターンを、Ｔはランダムパターンを、Ｎは常駐コードパターンの数を、ｎはパターンの長さを表す。
【００２９】
ｉ番目のランダムパターンに対して、数式１によって計算された距離と閾値とを比較し（ステップ９４）、計算された距離が閾値よりも少ないか同じであれば、該当のランダムパターンを免疫判断用コードパターンとして格納部３３に格納する（ステップ９５）。
【００３０】
ここで、閾値は所定の値であり、本実施形態では、常駐コードのパターン分布に応じて常駐コードパターンの分布から任意に選択された２つのコードパターン間の距離の１／２が閾値の最小値として選択される。もし、閾値が低く設定されれば、選択される免疫判断用コードパターンが多くなる傾向があり、高く設定されれば免疫判断用コードパターンが少なくなる傾向がある。
【００３１】
コード判断部３２は、図９に示す工程に応じて格納部３３に格納された免疫判断用コードパターンと、コードパターン抽出部３１で抽出された対象コードのパターンとの間の距離を下記の数式２のように計算する。
【００３２】
【数２】
2009522636.tif 000005
ここで、Ｓは免疫判断用コードパターンを、Ｔは対象コードのパターンを、Ｎは免疫判断用コードパターンの数を、Ｍは対象コードから抽出されたパターンの数を、ｎはパターンの長さを表す。
【００３３】
数式２によって計算された距離が閾値よりも小さいか同じであれば対象コードを常駐コードとして、閾値よりも大きければ対象コードを侵入コードとして判定する。
【００３４】
コード判断部３２が対象コードを侵入コードとして判断した場合に、悪性コード予測部３４は、侵入コードが悪性コードであるか否かを判別する。
悪性コードの有無に対する判別工程は、ユーザの経験及び疑いのある悪性コードに基づいて実行される。
【００３５】
一般的に表れる悪性コードの症状は、ファイル特性把握、ゴート（ｇｏａｔ）ファイル実験、プロセス、スレッド（ｔｈｒｅａｄ）、レジストリ（ｒｅｇｉｓｔｒｙ）の変更、ネットワークポート、コードエミュレーション（ｃｏｄｅ  ｅｍｕｌａｔｉｏｎ）、実行コードデバッギング（ｄｅｂｕｇｇｉｎｇ）、システムモニタリングなどの方法を用いて把握することができる。また悪性コードの症状は、例えばスパイウェア（ｓｐｙｗａｒｅ）、ワーム（ｗｏｒｍ）、ボット（ｂｏｔ）、トロイの木馬（ｔｒｏｊａｎ）、ファイルウイルス、マクロ（ｍａｃｒｏ）ウイルスのような悪性コードの種類または圧縮の有無によって異なる症状を表すようになる。
【００３６】
悪性コードの判別は、ユーザの経験に基づいてパターン化したり自動化することができ、悪性コードとして判別される場合に、悪性コード予測部３４は、該当のコード又は他のコードの実行を中断してネットワーク上の他のコンピュータに警報を出力することができる。
【００３７】
下記の表２は、上述した閾値と免疫判断用コードパターン生成の割合に従って対象コードのうちで侵入コードを判別した実験結果を表すものである。
【００３８】
【表２】
2009522636.tif 000006
【００３９】
上記した表２において、割合は免疫判断用コードパターン生成の割合を表し、生成可能な組み合わせのすべてのパターン数に対し実際に生成されるパターン数の割合である。
例えば、パターンの長さがｎで、各位置ごとにｍ個の文字で表現されるパターンがあれば、このパターンの生成可能な組み合わせのパターン数は、ｍのｎ乗個となるであろう。生成の割合とは、このようなｍのｎ乗個のパターンの１／１０、１／１００、…などの個数だけを生成して用いることを意味する。
上記の表２では、すべて可能な組み合わせのパターン数のうちで１／１，０００，０００に該当する個数、５０／１，０００，０００に該当する個数、１／１００，０００の生成割合を用いて侵入コードの判断性能を測定したものである。
【００４０】
表２によれば、侵入コードを判別するための閾値が２７００、２５００、２３００であるときに侵入コード判別性能が優れることが分かり、免疫判断用パターン生成の割合が高いほど侵入コード判別性能が優れることが分かる。
本発明の侵入コード判別性能を評価するために、他の実験結果として、既存のワクチンプログラムを回避する悪性コードサンプルに対して侵入コード判別性能を実験した。
【００４１】
総４８，４７１個のサンプルのうち、既存のワクチンプログラムによって検出された悪性コードは１７，８８５個であり、既存のワクチンプログラムを回避する悪性コードは３０，５０６個であった。
無作為に選択した既存のワクチンプログラムを回避する悪性コード２，５７５個に対する非自己診断によって侵入コードとして判別された悪性コードは閾値を２７００とし、免疫判断用コードパターン生成の割合をそれぞれ１．Ｅ−０６、１．Ｅ−０５としたときに４８％、６８％の判別率を示した。したがって、既存のワクチンプログラムよりも優れた性能を示すことが分かる。
【００４２】
図１０は、従来技術と本発明に係る変種悪性コードの生命周期を比較して示す図である。
図面符号１０は従来の変種悪性コードの生命周期で、１０２は本発明に係る変種悪性コードの生命周期である。図面符号２２は、悪性コードに対してユーザが悪性コードに対応するためにワクチンプログラムをアップデートしなければならないと思う時期を表し、図面符号２３は、従来のワクチンプログラムが実際にアップデートされる時期である。図面符号１０３は、本発明によってワクチンプログラムが実際にアップデートされる時期を表す。
【００４３】
図１０によれば、本発明の場合には、対象コードに対して侵入コードの可否を判別し、侵入コードとして判別されれば再び悪性コードの可否を予測することで、従来技術よりも迅速に悪性コード発生の可否をワクチンプログラム配布者に報告し、ワクチンプログラムのアップデートをより迅速にアップデートすることができる。
【００４４】
なお、本発明は、コンピュータ読取可能なコードで実現することが可能である。コンピュータ読取可能な記録媒体は、コンピュータシステムによって読取可能なデータが格納されるすべての種類の記録装置を含む。コンピュータ読取可能な記録媒体の例としては、ＲＯＭ、ＲＡＭ、ＣＤ−ＲＯＭ、磁気テープ、フロッピー（登録商標）ディスク、及び光データ格納装置などがあり、さらに搬送波、例えばインターネットを介した送信形態で実現されるものも含む。また、コンピュータ読取可能な記録媒体は、ネットワークで接続されたコンピュータシステムに分散され、分散方式としてコンピュータが読取可能なコードで格納されて実現することができる。
【００４５】
上述したように、本発明の好ましい実施形態を参照して説明したが、該当の技術分野において熟練した当業者にとっては、特許請求の範囲に記載された本発明の思想及び領域から逸脱しない範囲内で、本発明を多様に修正及び変更させることができることを理解することができるであろう。すなわち、本発明の技術的範囲は、特許請求の範囲に基づいて定められ、発明を実施するための最良の形態により制限されるものではない。
【図面の簡単な説明】
【００４６】
【図１】悪性コードの生命周期を示す図である。
【図２】（ａ）は変種悪性コードの生命周期を示す図であり、（ｂ）は悪性コードに対応する時点を示す図である。
【図３】本発明の一実施形態によるコードモニタリング装置を示すブロック図である。
【図４】図３のコードパターン抽出部で実行されるコードパターン抽出工程を説明するためのフローチャートである。
【図５】ロードされた１６進コードの対象コードの一例を示す図である。
【図６】ＤＮＡコードにエンコードされた結果を示す図である。
【図７】コドン規則に従ってプロテインコードに置換された結果を示す図である。
【図８】図７に示すタンパク質（アミノ酸）コードのうち、所定の条件を満たす部分を抽出した一例を示す図である。
【図９】図３の格納部に免疫判断用コードパターンが格納される工程を説明するためのフローチャートである。
【図１０】従来技術と本発明に係る変種悪性コードの生命周期を比較して示す図である。
【符号の説明】
【００４７】
３１      コードパターン抽出部
３２      コード判断部
３３      格納部
３４      悪性コード予測部
【図１】
2009522636.tif 000007
【図２】
2009522636.tif 000008
【図３】
2009522636.tif 000009
【図４】
2009522636.tif 000010
【図５】
2009522636.tif 000011
【図６】
2009522636.tif 000012
【図７】
2009522636.tif 000013
【図８】
2009522636.tif 000014
【図９】
2009522636.tif 000015
【図１０】
2009522636.tif 000016
【手続補正書】
【提出日】平成19年10月29日(2007.10.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
モニタリングの対象コードがシステムに常駐する常駐コードであるのか前記システムに侵入した侵入コードであるか否かを判別するモニタリング方法であって、
前記対象コードから第１コードパターンを抽出するステップと、
格納手段から第２コードパターンを読み出す（ｌｏａｄ）ステップと、
前記第１コードパターンと第２コードパターンとの距離を計算するステップと、
計算された距離を第１閾値と比較して前記対象コードが侵入コードであるか否かを判断するステップとを有することを特徴とする対象コードモニタリング方法。
【請求項２】
前記第１コードパターンは、前記対象コードの所定の部分から各々の対象コード毎に抽出され、抽出された第１コードパターンは独自性（ｕｎｉｑｕｅｎｅｓｓ）を有することを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項３】
生体免疫判別のための抗原提供体系を前記対象コードに適用して前記対象コードを変換し、所定のパターンを含む部分が前記変換されたコードから抽出されることを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項４】
前記第１コードパターンを抽出するステップは、前記対象コードをＤＮＡ塩基配列にエンコードするステップと、
前記ＤＮＡ塩基配列をこれに対応するタンパク質の値に置換するステップと、
前記置換によって生成された配列から所定の条件を満たすコードパターンを前記第１コードパターンとして抽出するステップとを含むことを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項５】
前記対象コードをＤＮＡ塩基配列にエンコードするステップは、前記対象コードをバイト単位でＤＮＡ塩基数によってモジュロ演算するステップと、
前記モジュロ演算した結果で発生した剰余をそれぞれＤＮＡ塩基の１つと置換するステップとを含むことを特徴とする請求項４に記載の対象コードモニタリング方法。
【請求項６】
前記ＤＮＡ塩基配列をこれに対応するタンパク質の値に置換するステップは、コドン規則に従って前記ＤＮＡ塩基配列で３個の連続するＤＮＡ塩基に対応するタンパク質の値に置換することを特徴とする請求項４に記載の対象コードモニタリング方法。
【請求項７】
前記置換された値によって生成された配列から抽出される前記第１コードパターンは、主要組織適合性複合体（ＭＨＣ１；Ｍａｊｏｒ  Ｈｉｓｔｏｃｏｍｐａｔｉｂｉｌｉｔｙ  Ｃｏｍｐｌｅｘ  １）分子のバインディングパターン（ｂｉｎｄｉｎｇ  ｐａｔｔｅｒｎ）条件のうちのいずれか１つを満たすことを特徴とする請求項４に記載の対象コードモニタリング方法。
【請求項８】
前記第２コードパターンを読み出すステップは、システムに常駐する常駐コードから第３コードパターンを抽出するステップと、
前記第３コードパターンと同じ長さのランダムパターンを生成するステップと、
前記生成されたランダムパターンと前記第３コードパターンとの第２距離を計算するステップと、
前記第２距離が第２閾値よりも小さければ、該当するランダムパターンを前記格納手段に前記第２コードパターンとして格納するステップとを含むことを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項９】
前記第３コードパターンは、所定の位置の常駐コードから所定の長さで抽出されることを特徴とする請求項８に記載の対象コードモニタリング方法。
【請求項１０】
生体免疫判別のための抗原提供体系を前記常駐コードに適用し、前記常駐コードを変換し、変換されたコードから所定のパターンを含む部分を前記第３コードパターンとして抽出することを特徴とする請求項８に記載の対象コードモニタリング方法。
【請求項１１】
前記第３コードパターンを抽出するステップは、前記常駐コードをＤＮＡ塩基配列にエンコードするステップと、
前記ＤＮＡ塩基配列をこれに対応するタンパク質の値に置換するステップと、
前記置換された値から生成された配列から所定の条件を満たすコードパターンを前記第３コードパターンとして抽出するステップとを含むことを特徴とする請求項８に記載の対象コードモニタリング方法。
【請求項１２】
前記常駐コードをＤＮＡ塩基配列にエンコードするステップは、前記常駐コードをバイト単位で前記ＤＮＡ塩基の数によってモジュロ演算するステップと、
前記モジュロ演算した結果で発生した剰余をそれぞれＤＮＡ塩基の１つと置換するステップとを含むことを特徴とする請求項１１に記載の対象コードモニタリング方法。
【請求項１３】
前記ＤＮＡ塩基配列をこれ対応するアミノ酸の値に置換するステップは、コドン規則に従って前記ＤＮＡ塩基配列で３個の連続するＤＮＡ塩基に対応するタンパク質の値に置換することを特徴とする請求項１１に記載の対象コードモニタリング方法。
【請求項１４】
前記置換された値によって生成された配列から抽出される前記第３コードパターンは、主要組織適合性複合体分子のバインディングパターン条件のうちのいずれか１つを満たすことを特徴とする請求項１１に記載の対象コードモニタリング方法。
【請求項１５】
前記第２閾値は、前記常駐コードのコードパターン分布から選択された２つのコードパターン間の距離の１／２を最小値として有することを特徴とする請求項８に記載の対象コードモニタリング方法。
【請求項１６】
前記第２距離は、前記各ランダムパターンと前記第３コードパターンとの間のアルファベット順の差の二乗和で計算されることを特徴とする請求項８に記載の対象コードモニタリング方法。
【請求項１７】
前記距離は、前記第１コードパターンと第２コードパターンとの間のアルファベット順の差の二乗和として計算されることを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項１８】
前記対象コードが侵入コードであると判別されれば、前記対象コードが悪性（ｍａｌｉｃｉｏｕｓ）コードであるか否かを判別するステップをさらに有することを特徴とする請求項１に記載の対象コードモニタリング方法。
【請求項１９】
システムにおいて、モニタリングの対象コードがシステムに常駐する常駐コードであるのか前記システムに侵入した侵入コードであるか否かを判別するコードモニタリング装置であって、
前記対象コードから第１コードパターンを抽出するコードパターン抽出部と、
入力された第２コードパターンと前記第１コードパターンとの距離を計算し、計算された距離を第１閾値と比較して前記対象コードが侵入コードであるか否かを判断するコード判断部とを備えることを特徴とする対象コードモニタリング装置。
【請求項２０】
前記コードパターン抽出部は、前記対象コードの所定の部分から前記対象コードの独自性（ｕｎｉｑｕｅｎｅｓｓ）を有するように前記第１コードパターンを抽出することを特徴とする請求項１９に記載の対象コードモニタリング装置。
【請求項２１】
前記コードパターン抽出部は、生体免疫判別のための抗原提供体系を前記対象コードに適用して前記対象コードを変換し、変換されたコードから所定のパターンを含む部分を前記第１コードパターンとして抽出することを特徴とする請求項１９に記載の対象コードモニタリング装置。
【請求項２２】
前記コードパターン抽出部は、前記対象コードをＤＮＡ塩基配列にエンコードし、
タンパク質配列を生成するために、前記ＤＮＡ塩基配列をこれに対応するタンパク質の値に置換し、
前記置換によって生成されたタンパク質配列から所定の条件を満たすコードパターンを前記第１コードパターンとして抽出することを特徴とする請求項２１に記載の対象コードモニタリング装置。
【請求項２３】
前記所定の条件は、主要組織適合性複合体（ＭＨＣ１；Ｍａｊｏｒ  Ｈｉｓｔｏｃｏｍｐａｔｉｂｉｌｉｔｙ  Ｃｏｍｐｌｅｘ  １）分子のバインディングパターン（ｂｉｎｄｉｎｇ  ｐａｔｔｅｒｎ）条件のうちのいずれか１つであることを特徴とする請求項２２に記載の対象コードモニタリング装置。
【請求項２４】
前記第２コードパターンを格納する格納部をさらに有し、
前記コードパターン抽出部は、前記システムの常駐コードから第３コードパターンを抽出し、前記第３パターンと同じ長さを有するランダムパターンを生成する工程をさらに実行し、
前記コード判断部は、前記生成されたランダムパターンと前記抽出された第３コードパターンとの間の第２距離をそれぞれ計算し、前記各第２距離が第２閾値よりも小さければ、該当するランダムパターンを前記格納部に前記第２コードパターンとして格納する工程をさらに実行することを特徴とする請求項１９に記載の対象コードモニタリング装置。
【請求項２５】
前記コード判断部で前記対象コードが侵入コードであると判別されれば、前記対象コードが悪性（ｍａｌｉｃｉｏｕｓ）コードであるか否かを判別する悪性コード予測部をさらに有することを特徴とする請求項１９に記載の対象コードモニタリング装置。
【請求項２６】
モニタリングの対象コードがシステムに常駐する常駐コードであるか前記システムに侵入した侵入コードであるかを判別するモニタリングのためのコードパターンを抽出する方法であって、
前記常駐コードからコードパターンを抽出するステップと、
前記抽出したコードパターンに対応するランダムパターンを生成するステップと、
前記ランダムパターンと前記コードパターンとの距離を計算するステップと、
前記計算した距離が閾値よりも小さければ、該当するランダムパターンを生体免疫判断用のコードパターンとして抽出するステップとを含むことを特徴とするコードパターン抽出方法。
【請求項２７】
前記コードパターンを抽出するステップは、生体免疫判別のための抗原提供体系を前記常駐コードに適用して前記常駐コードを変換し、変換されたコードから所定のパターンを含む部分を抽出することを特徴とする請求項２６に記載のコードパターン抽出方法。
【請求項２８】
前記コードパターンを抽出するステップは、前記常駐コードをＤＮＡ塩基配列にエンコードするステップと、
前記エンコードされたＤＮＡ塩基配列を対応するプロテインの値に置換するステップと、
前記置換によって生成された配列から所定の条件を満たすパターンを前記コードパターンとして抽出するステップとを含むことを特徴とする請求項２６に記載のコードパターン抽出方法。
【請求項２９】
前記常駐コードをＤＮＡ塩基配列にエンコードするステップは、前記常駐コードをバイト単位で前記ＤＮＡ塩基の数によってモジュロ演算するステップと、
前記モジュロ演算した結果で得られた剰余をそれぞれＤＮＡ塩基の１つと置換するステップとを含むことを特徴とする請求項２８に記載のコードパターン抽出方法。
【請求項３０】
前記エンコードされたＤＮＡ塩基配列を対応するプロテインの値に置換するステップは、コドン規則に従って前記ＤＮＡ塩基配列で３個の連続するＤＮＡ塩基に対応するタンパク質の値に置換することを特徴とする請求項２８に記載のコードパターン抽出方法。
【請求項３１】
前記所定の条件を満たすパターンを前記コードパターンとして抽出するステップは、前記置換によって生成された配列から主要組織適合複合体（ＭＨＣ１；Ｍａｊｏｒ  Ｈｉｓｔｏｃｏｍｐａｔｉｂｉｌｉｔｙ  Ｃｏｍｐｌｅｘ  １）分子のバインディングパターン（ｂｉｎｄｉｎｇ  ｐａｔｔｅｒｎ）条件のうちのいずれか１つを満たすパターンを前記コードパターンとして抽出することを特徴とする請求項２８に記載のコードパターン抽出方法。
【請求項３２】
モニタリングの対象コードがシステムに常駐する常駐コードであるか前記システムに侵入した侵入コードであるかを判別するモニタリングのためのコードパターン抽出装置であって、
前記常駐コードからコードパターンを抽出するコードパターン抽出部と、
前記抽出したコードパターンに対応し、抽出したコードパターンと同じ長さを有するランダムパターンを生成するランダムパターン生成部と、
前記生成したランダムパターンと前記抽出したコードパターンとの距離をそれぞれ計算する距離計算部と、
前記計算した距離が閾値よりも小さければ、該当するランダムパターンを生体免疫判断用のコードパターンとして保存するコードパターン保存部とを有することを特徴とするコードパターン抽出装置。
【請求項３３】
請求項１乃至２６のうちのいずれか一項に記載された方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
ｉ番目のランダムパターンに対して、数式１によって計算された距離と第２閾値とを比較し（ステップ９４）、計算された距離が第２閾値よりも少ないか同じであれば、該当のランダムパターンを免疫判断用コードパターンとして格納部３３に格納する（ステップ９５）。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
ここで、第２閾値は所定の値であり、本実施形態では、常駐コードのパターン分布に応じて常駐コードパターンの分布から任意に選択された２つのコードパターン間の距離の１／２が閾値の最小値として選択される。もし、閾値が高く設定されれば、選択される免疫判断用コードパターンが多くなる傾向があり、低く設定されれば免疫判断用コードパターンが少なくなる傾向がある。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
数式２によって計算された距離が第１閾値よりも小さいか同じであれば対象コードを常駐コードとして、第１閾値よりも大きければ対象コードを侵入コードとして判定する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
下記の表２は、上述した第１閾値と免疫判断用コードパターン生成の割合に従って対象コードのうちで侵入コードを判別した実験結果を表すものである。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
表２によれば、侵入コードを判別するための第１閾値が２７００、２５００、２３００であるときに侵入コード判別性能が優れることが分かり、免疫判断用パターン生成の割合が高いほど侵入コード判別性能が優れることが分かる。
本発明の侵入コード判別性能を評価するために、他の実験結果として、既存のワクチンプログラムを回避する悪性コードサンプルに対して侵入コード判別性能を実験した。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
総４８，４７１個のサンプルのうち、既存のワクチンプログラムによって検出された悪性コードは１７，８８５個であり、既存のワクチンプログラムを回避する悪性コードは３０，５０６個であった。
無作為に選択した既存のワクチンプログラムを回避する悪性コード２，５７５個に対する非自己診断によって侵入コードとして判別された悪性コードは第１閾値を２７００とし、免疫判断用コードパターン生成の割合をそれぞれ１．Ｅ−０６、１．Ｅ−０５としたときに４８％、６８％の判別率を示した。したがって、既存のワクチンプログラムよりも優れた性能を示すことが分かる。
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図１
【補正方法】変更
【補正の内容】
【図１】
2009522636.tif 000017
【国際調査報告】
2009522636.tif 000018
2009522636.tif 000019