(57)【特許請求の範囲】
【請求項１】
デバイスと装着されて、前記デバイスからウイルスが存在しているかどうかを判断する対象になるスキャニング用データを受信するインタフェース部と、
ウイルスシグネチャーを格納する第１格納部と、
前記第１格納部に格納されたウイルスシグネチャーと前記スキャニング用データとを比較して、前記スキャニング用データに対してウイルスが存在しているかどうかを判断するアンチ−ウイルスエンジンとを備え、
前記第１格納部は、
前記ウイルスシグネチャーを予め決められた大きさに分割した第１分割データと、
前記第１分割データの各々のハッシュ値である第１ハッシュ値と、
前記第１分割データの各々の実際データと、
サブマッチャーテーブルとを含み、
前記サブマッチャーテーブルは、
前記第１分割データの各々を表すインデックス値と、
前記インデックス値に対応する前記第１分割データの先頭からのオフセットとそのオフセットにおける値との組み合わせとを含み、
前記アンチ−ウイルスエンジンは、
スキャニング用データを予め決められた大きさに分割した第２分割データを生成し、
前記第２分割データのハッシュ値である第２ハッシュ値を求め、
前記第２ハッシュ値が前記第１ハッシュ値の１つとして前記第１格納部に含まれているかどうか判断し、
前記第２ハッシュ値が前記第１格納部に含まれている場合、前記第２ハッシュ値に対応する前記第２分割データが、前記第２ハッシュ値と同じ前記第１ハッシュ値となる前記第１分割データを表す前記インデックス値に対応する前記組み合わせを有するデータを含むかどうかを判断し、
前記第２ハッシュ値に対応する前記第２分割データが前記組み合わせを有するデータを含む場合、前記第２分割データが前記第１分割データと一致しているかどうか判断するスマートカード。
【請求項２】
前記スキャニング用データの前記第２分割データの全体が、前記ウイルスシグネチャーの前記第１分割データの全体と一致するとき、ウイルスパターンがあると判断する、請求項１に記載のスマートカード。
【請求項３】
前記サブマッチャーテーブルは、前記各々の第１ハッシュ値の中で同じ第１ハッシュ値を有する前記第１分割データを示す衝突パターンインデックス値をさらに含む、請求項１に記載のスマートカード。
【請求項４】
前記アンチ−ウイルスエンジンの動作のための設定情報を入力できるユーザインタフェースを前記デバイスに提供する機能、前記設定情報に含まれたスキャニングスケジュールに従ってスキャニング用データを送信してくれることを前記デバイスに要請する機能、前記設定情報に含まれたアップデートスケジュールに従って予め格納していたウイルスシグネチャーデータをアップデートできる機能のうち、少なくとも何れか一つの機能を行うことのできるアプリケーションをさらに含むことを特徴とする請求項１に記載のスマートカード。
【請求項５】
前記ユーザインタフェースは、前記アンチ−ウイルスエンジンのスキャニングスケジュール、スキャニング用ファイルが格納されるスキャニングディレクトリ、スキャニングするファイル及びアップデートスケジュールのうち、少なくとも一つを入力できる入力部を備えることを特徴とする請求項４に記載のスマートカード。
【請求項６】
ウェブサーバをさらに備え、
前記アプリケーションは、前記ウェブサーバ上で動作することを特徴とする請求項４に記載のスマートカード。
【請求項７】
前記アンチ−ウイルスエンジンは、前記判断結果を前記デバイスに送信することを特徴とする請求項１に記載のスマートカード。
【請求項８】
前記スマートカードが受信又は送信するデータパケットをセキュリティーポリシーに従ってフィルタリングするファイアウォールをさらに備えることを特徴とする請求項１に記載のスマートカード。
【請求項９】
前記インタフェース部により受信されたスキャニング用データを格納する第２格納部をさらに備え、前記アンチ−ウイルスエンジンは、前記第２格納部に格納されたスキャニング用データに対してウイルスが存在しているかどうかを判断することを特徴とする請求項１に記載のスマートカード。
【請求項１０】
スキャニング用データを有するデバイスと、
デバイスと装着されて、前記デバイスからウイルスが存在しているかどうかを判断する対象になるスキャニング用データを受信し、前記スキャニング用データに対してウイルスが存在しているかどうかを判断する、請求項１から９のいずれか１つのスマートカードと、
前記デバイスのウェブブラウザと連携し、アンチ−ウイルス機能の設定、スキャニング結果の通知、及び、最新のウイルスシグネチャーを前記スマートカードに向けて送信するウェブサーバとを備えることを特徴とするアンチ−ウイルスシステム。
【請求項１１】
ウイルスシグネチャーを予め決められた大きさに分割した第１分割データ、前記第１分割データの各々のハッシュ値である第１ハッシュ値、前記第１分割データの各々の実際データ、並びに、前記第１分割データの各々を表すインデックス値、及び、前記インデックス値に対応する前記第１分割データの先頭からのオフセットとそのオフセットにおける値との組み合わせを有するサブマッチャーテーブルを格納するスマートカード基板のウイルススキャニング方法であって、
デバイスから、ウイルスの存在の有無を判断する対象になるスキャニング用データをスマートカードが受信するステップと、
前記受信したスキャニング用データを予め決められた大きさに分割した第２分割データを生成するステップと、
前記第２分割データのハッシュ値である第２ハッシュ値を求めるステップと、
前記第２ハッシュ値が前記第１ハッシュ値の１つとして前記スマートカード基板に含まれているかどうか判断するステップと、
前記第２ハッシュ値が前記スマートカード基板に含まれている場合、前記第２ハッシュ値に対応する前記第２分割データが、前記第２ハッシュ値と同じ前記第１ハッシュ値となる前記第１分割データを表す前記インデックス値に対応する前記組み合わせを有するデータを含むかどうかを判断するステップと、
前記第２ハッシュ値に対応する前記第２分割データが前記組み合わせを有するデータを含む場合、前記第２分割データが前記第１分割データと一致しているかどうか判断するステップと、
前記スキャニング用データの前記第２分割データの全体が、前記ウイルスシグネチャーの前記第１分割データの全体と一致するとき、前記スマートカードが前記スキャニング用データに対してウイルスが存在していると判断するステップと
を含むスマートカード基盤のウイルススキャニング方法。
【請求項１２】
前記判断するステップを行うための設定情報を入力できるユーザインタフェースを提供するステップをさらに含むことを特徴とする請求項１１に記載のスマートカード基盤のウイルススキャニング方法。
【請求項１３】
前記設定情報に含まれたスキャニングスケジュールに従ってスキャニング用データを送信してくれることを前記デバイスに要請するステップをさらに含むことを特徴とする請求項１２に記載のスマートカード基盤のウイルススキャニング方法。
【請求項１４】
スキャニング用データをユーザが選択できるように、ユーザにスキャニング用データ目録を提供するステップをさらに含み、
前記スキャニング用データをスマートカードが受信するステップは、前記ユーザから前記スキャニング用データ目録から選択されたスキャニング用データに対して行われることを特徴とする請求項１２に記載のスマートカード基盤のウイルススキャニング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスの資源（Ｒｅｓｏｕｒｃｅ）を実質的に使用しないながらもデバイスのセキュリティーを強化できるスマートカード、並びにアンチ−ウイルスシステム及びスキャニング方法に関する。
【背景技術】
【０００２】
スマートカードは、主にモバイルデバイスに装着されて使用されるものであって、技術が発展するにつれて多様な分野で活用されている。特に、携帯電話、ＰＤＡ、又はスマートフォンのようなモバイルデバイスにスマートカードが装着されて金融取引などのような機能を支援しているが、近来にアップストアのようにネットワーク網を介して接続したサーバからアプリケーションをダウンロードしてモバイルデバイスにインストールして使用する傾向が増加するにつれて、モバイルデバイスがウイルスのような悪性マルウェアに露出する可能性が高まった。
【０００３】
一方、スマートカードが装着されるモバイルデバイスは、通常に音声通話、画像通常、カメラ、録音機、ＭＰ３プレーヤー、金融取引、証券取引などのように多様な機能をすべて支援するため、メモリリソースとプロセシングリソースのようなリソースが多く必要となる。
【０００４】
したがって、デバイスのリソースに影響を与えないながらもデバイスのセキュリティーを強化できる方案が必要である。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、デバイスのセキュリティーを強化できるスマートカード、アンチ−ウイルスシステム、及びスキャニング方法を提供することにその目的がある。
【０００６】
また、本発明は、デバイスの資源（Ｒｅｓｏｕｒｃｅ）を実質的に使用しないながらも、デバイスのセキュリティーを強化できるスマートカード、アンチ−ウイルスシステム、及びスキャニング方法を提供することにその目的がある。
【課題を解決するための手段】
【０００７】
本発明の一実施の形態によれば、デバイスと装着されて、前記デバイスからウイルスが存在しているかどうかを判断する対象になるスキャニング用データを受信するインタフェース部と、ウイルスシグネチャーを格納する第１格納部と、前記第１格納部に格納されたウイルスシグネチャーと前記スキャニング用データとを比較して、前記スキャニング用データに対してウイルスが存在しているかどうかを判断するアンチ−ウイルスエンジンとを備え、前記第１格納部は、前記ウイルスシグネチャーを予め決められた大きさに分割した第１分割データと、前記第１分割データの各々のハッシュ値である第１ハッシュ値と、前記第１分割データの各々の実際データと、サブマッチャーテーブルとを含み、前記サブマッチャーテーブルは、前記第１分割データの各々を表すインデックス値と、前記インデックス値に対応する前記第１分割データの先頭からのオフセットとそのオフセットにおける値との組み合わせとを含み、前記アンチ−ウイルスエンジンは、スキャニング用データを予め決められた大きさに分割した第２分割データを生成し、前記第２分割データのハッシュ値である第２ハッシュ値を求め、前記第２ハッシュ値が前記第１ハッシュ値の１つとして前記第１格納部に含まれているかどうか判断し、前記第２ハッシュ値が前記第１格納部に含まれている場合、前記第２ハッシュ値に対応する前記第２分割データが、前記第２ハッシュ値と同じ前記第１ハッシュ値となる前記第１分割データを表す前記インデックス値に対応する前記組み合わせを有するデータを含むかどうかを判断し、前記第２ハッシュ値に対応する前記第２分割データが前記組み合わせを有するデータを含む場合、前記第２分割データが前記第１分割データと一致しているかどうか判断するスマートカードが提供される。
【０００８】
また、本発明の他の一実施の形態によれば、スキャニング用データを有するデバイスと、デバイスと装着されて、前記デバイスからウイルスが存在しているかどうかを判断する対象になるスキャニング用データを受信し、前記スキャニング用データに対してウイルスが存在しているかどうかを判断する上述するスマートカードと、前記デバイスのウェブブラウザと連携し、アンチ−ウイルス機能の設定、スキャニング結果の通知、及び、最新のウイルスシグネチャーを前記スマートカードに向けて送信するウェブサーバとを備えることを特徴とするアンチ−ウイルスシステムが提供される。
【０００９】
また、本発明のさらに他の一実施の形態によれば、ウイルスシグネチャーを予め決められた大きさに分割した第１分割データ、前記第１分割データの各々のハッシュ値である第１ハッシュ値、前記第１分割データの各々の実際データ、並びに、前記第１分割データの各々を表すインデックス値、及び、前記インデックス値に対応する前記第１分割データの先頭からのオフセットとそのオフセットにおける値との組み合わせを有するサブマッチャーテーブルを含むスマートカード基板のウイルススキャニング方法であって、デバイスから、ウイルスの存在の有無を判断する対象になるスキャニング用データをスマートカードが受信するステップと、前記受信したスキャニング用データを予め決められた大きさに分割した第２分割データを生成するステップと、前記第２分割データのハッシュ値である第２ハッシュ値を求めるステップと、前記第２ハッシュ値が前記第１ハッシュ値の１つとして前記スマートカード基板に含まれているかどうか判断するステップと、前記第２ハッシュ値が前記スマートカード基板に含まれている場合、前記第２ハッシュ値に対応する前記第２分割データが、前記第２ハッシュ値と同じ前記第１ハッシュ値となる前記第１分割データを表す前記インデックス値に対応する前記組み合わせを有するデータを含むかどうかを判断するステップと、前記第２ハッシュ値に対応する前記第２分割データが前記組み合わせを有するデータを含む場合、前記第２分割データが前記第１分割データと一致しているかどうか判断するステップと、前記スキャニング用データの前記第２分割データの全体が、前記ウイルスシグネチャーの前記第１分割データの全体と一致するとき、前記スマートカードが前記スキャニング用データに対してウイルスが存在していると判断するステップとを含むスマートカード基盤のウイルススキャニング方法が提供される。
【発明の効果】
【００１０】
本発明の一実施の形態に係るスマートカード、アンチ−ウイルスシステム、及びスキャニング方法は、デバイスのセキュリティーを強化できるという効果がある。
【００１１】
また、本発明の一実施の形態に係るスマートカード、アンチ−ウイルスシステム、及びスキャニング方法は、デバイスの資源（Ｒｅｓｏｕｒｃｅ）を実質的に使用しないながらも、デバイスのセキュリティーを強化できるという効果がある。
【００１２】
また、本発明の一実施の形態に係るスマートカード、アンチ−ウイルスシステム、及びスキャニング方法は、悪性コードからモバイルデバイスを保護する機能を行うと同時に、スマートカードの大容量メモリとプロセッサとを介して自体動作することによって、資源的な側面でモバイルデバイスの動作に寄与できるという効果がある。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムの機能ブロック図である。
【図２】本発明の他の実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムの機能ブロック図である。
【図３】本発明の他の実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムの機能ブロック図である。
【図４】本発明の一実施の形態に係るアンチ−ウイルスエンジンの機能ブロック図である。
【図５】本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスエンジンが具現化された例を説明するための図である。
【図６】本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムが具現化されたスマートカードのボードを示した図である。
【図７】本発明の一実施の形態に係るスマートカードが装着されるデバイスの機能ブロック図である。
【図８】本発明の他の実施の形態に係るスマートカードの機能ブロック図である。
【図９】本発明の他の実施の形態に係るスマートカード基盤のアンチ−ウイルスエンジンの構造図である。
【図１０】本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【図１１】本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法でのアンチ−ウイルス構成を設定する過程を説明するためのフローチャートである。
【図１２】本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【図１３】本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【図１４】本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【図１５】本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォール構成を設定する過程を説明するためのフローチャートである。
【図１６】本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォールの動作を説明するためのフローチャートである。
【図１７】本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォールの動作を説明するためのフローチャートである。
【図１８】本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法におけるウイルススキャニングでのパターニング動作を説明するためのフローチャートである。
【図１９】図９と図１８の実施の形態を説明するための図である。
【発明を実施するための形態】
【００１４】
以上の本発明の目的、他の目的、特徴及び利点は、添付された図面と関連した以下の好ましい実施の形態により容易に理解されるはずである。しかしながら、本発明は、ここで説明される実施の形態に限定されずに他の形態で具体化されうる。むしろ、ここで紹介される実施の形態は、開示された内容が徹底かつ完全になるように、そして当業者に本発明の思想を十分に伝達させるために提供されるものである。本明細書において、ある構成要素が他の構成要素上にあると言及される場合に、それは、他の構成要素上に直接形成されうるか、又はそれらの間に第３の構成要素が介在されうることを意味する。
【００１５】
本明細書で使用された用語は、実施の形態を説明するためのもので、本発明を限定するものではない。本明細書において、単数形は、特に言及しない限り、複数形も含む。明細書で使用される「含む（ｃｏｍｐｒｉｓｅｓ）」及び／又は「含む（ｃｏｍｐｒｉｓｉｎｇ）」と言及された構成要素は、一つ以上の他の構成要素の存在又は追加を排除しない。
【００１６】
以下、図面を参照して本発明を詳細に説明する。以下の特定実施の形態を述べるにおいて、様々な特定の内容は、発明をさらに具体的に説明し理解を助けるために作成された。しかしながら、本発明を理解することができる程度のこの分野における知識を有した読者は、このような様々な特定の内容がなくても使用されうることを認知できる。ある場合には、発明を述べるにおいて周知で発明と大きく関連のない部分は、本発明を説明するにおいて特別な理由なしで混乱を引き起こすことを防止するために述べないことを予め言及しておく。
【００１７】
図１は、本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムの機能ブロック図である。
【００１８】
図１に示すように、本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムは、デバイス１０及び所定の通信プロトコルに従ってデバイス１０と通信するスマートカード１００を備えることができる。所定の通信プロトコルは、例えばＩＳＯ（ＩｎｔｅｒｎａｔｉｏｎａｌＳｔａｎｄａｒｄｉｚａｔｉｏｎ Ｏｒｇａｎｉｚａｔｉｏｎ）プロトコル、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ Ｓｅｒｉａｌ Ｂｕｓ）プロトコル、ＳＤ（Ｓｅｃｕｒｅ Ｄｉｇｉｔａｌ）プロトコルのうち、少なくとも何れか一つでありうる。
【００１９】
デバイス１０のインタフェース部１１とスマートカード１００のインタフェース部１０９は、上述したプロトコルのうち、少なくとも何れか一つを支援できる。ＩＳＯプロトコル、ＵＳＢプロトコル、ＳＤプロトコルは、例示に過ぎず、本願発明の思想から逸脱しない範囲内で他のプロトコルも使用されうる。
【００２０】
デバイス１０としては、スマートカード１００を装着して使用できる装置であれば、如何なる装置でも良く、例えば、セルラーフォン、ＰＤＡ、又はスマートフォンのようなモバイルデバイスも良い。ここで、デバイス１０は、ウイルスのようなマルウェアに対するスキャニングの対象になるスキャニング用データを有しており、スマートカード１００が要請する場合、スキャニング用データをスマートカード１００に送信し、スマートカード１００からスキャニング結果を受信してデバイス１０のユーザに提供できる。
【００２１】
また、デバイス１０は、スマートカード１００の要請がなくても、スキャニング用データをスマートカード１００に周期的又は命令に従って送信できる。例えば、デバイス１０は、スマートカード１００が装着されてスマートカード１００と通信が可能になると、自動的にスマートカード１００にスキャニング用データを送信できる。
【００２２】
スマートカード１００は、デバイス１０から受信するスキャニング用データに対してスキャニング動作を行い、スキャニング結果をデバイス１０に送信できる。
【００２３】
本発明の一実施の形態に係るスマートカード１００は、スキャニング用データに対してスキャニング動作を行うアンチ−ウイルスエンジン１０１（これについては、以下で詳細に後述する）と、アンチ−ウイルススキャニング動作のために必要な少なくとも一つ以上のアンチ−ウイルスアプリケーション部１０３を備えることができる。
【００２４】
また、本発明の一実施の形態に係るスマートカード１００は、例えばマイクロプロセッサー又は中央処理装置（以下、プロセッサ）が内蔵され、モバイルデバイスに着脱可能な装置であって、データを格納するか、又は暗号や認証のようなセキュリティー関連動作を行うことができ、ＳＩＭ（ＳｕｂｓｃｒｉｂｅｒＩｄｅｎｔｉｆｉｃａｔｉｏｎ Ｍｏｄｕｌｅ）、ＵＩＭ(User Identification Module)、Ｒ−ＵＩＭ（Ｒｅｍｏｖａｂｌｅ−Ｕｓｅｒ Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ Ｍｏｄｕｌｅ）のようなネットワーク認証アプリケーションを少なくとも一つ以上含むことができる。また、本発明の一実施の形態に係るスマートカード１００は、ウェブサーバ及び／又はファイアウォールエンジン（以下、ファイアウォールとする）を備えることができる。
【００２５】
アンチ−ウイルスアプリケーション部１０３は、アンチ−ウイルススキャニング動作に必要な少なくとも一つ以上のアプリケーションを意味する。また、本願明細書において「ウイルス」は、デバイス１０の動作に害を及ぼすことができる任意のすべての悪性コード（例えば、ウイルス、マルウェア、ウォーム、トロイの木馬、又は他の悪性的コード）を含む意味として使用される。
【００２６】
例えば、アンチ−ウイルスアプリケーション部１０３は、アンチ−ウイルスシステム動作に必要な情報（以下、アンチ−ウイルスシステム設定情報とする）を入力できるユーザインタフェースをデバイス１０に提供できる機能、アンチ−ウイルスシステム設定情報に含まれたスキャニングスケジュールに従って、スキャニング用データを送信してくれることをデバイス１０に要請する機能、設定情報に含まれたアップデートスケジュールに従って予め格納していたウイルスシグネチャーデータをアップデートできる機能のうち、少なくとも何れか一つの機能を行うことのできるアプリケーションを含むことができる。
【００２７】
アンチ−ウイルスシステム設定情報は、例えばアンチ−ウイルスエンジンのスキャニングスケジュール、スキャニング用ファイルが格納されるスキャニングディレクトリ、スキャニングするファイル、アップデートスケジュール、及び／又は動作モードのような情報でありうる。このような情報は、あくまでも例示に過ぎず、上で言及しない情報でもアンチ−ウイルスシステムの動作に必要な情報であれば、アンチ−ウイルスシステム設定情報に該当できる。
【００２８】
また、アプリケーション部１０３は、アンチ−ウイルスシステム設定情報を入力できるユーザインタフェースをデバイス１０に提供できるアプリケーション、アンチ−ウイルスシステム設定情報に含まれたスキャニングスケジュールに従って、スキャニング用データを送信してくれることをデバイス１０に要請するアプリケーション、アンチ−ウイルスシステム設定情報に含まれたアップデートスケジュールに従って、予め格納していたウイルスシグネチャーデータをアップデートできるアプリケーションのように各々専用機能をする複数のアプリケーションを含むことができる。一方、本願明細書では、上述したように、アンチ−ウイルススキャニング動作に必要なアプリケーションをアンチ−ウイルスアプリケーションと呼ぶことにする。以下、これらのアプリケーションの動作を詳細に説明する。
【００２９】
本発明の一実施の形態に係るアンチ−ウイルスアプリケーションは、アンチ−ウイルスシステム設定情報を入力できるユーザインタフェースをデバイス１０に提供できる。本アプリケーション（以下、ユーザインタフェース用アンチ−ウイルスアプリケーションとする）は、例えばデバイス１０からアンチ−ウイルスシステム設定情報の要請があるとき、又はスマートカード１００の初期化時にデバイス１０を介してユーザインタフェースを提供できる。ここで、ユーザインタフェースは、アンチ−ウイルスエンジン１０１のスキャニングスケジュール、スキャニング用ファイルが格納されるスキャニングディレクトリ、スキャニングするファイル及びアップデートスケジュールのうち、少なくとも何れか一つを入力できる入力部を画面の形態で提供できる。
【００３０】
本発明の他の実施の形態に係るユーザインタフェース用アンチ−ウイルスアプリケーションは、ウェブサーバ（図１には図示せず）上において動作するように具現化されるか、又はウェブサーバがなくても動作するように具現化されることができる。
【００３１】
ユーザインタフェース用アンチ−ウイルスアプリケーションが提供するユーザインタフェースを介してユーザから設定情報を受け取ると、デバイス１０は、受け取った設定情報をスマートカード１００に送信し、ユーザインタフェース用アンチ−ウイルスアプリケーションは、送信された設定情報を所定の格納部に格納することができる。図１の実施の形態によれば、第１格納部１０５に設定情報が格納されることができる。
【００３２】
また、本発明の一実施の形態に係るアンチ−ウイルスアプリケーションは、アンチ−ウイルスシステム設定情報に含まれたスキャニングスケジュールを読み取り（参照）し、そういうスケジュールに従ってスキャニング用データを獲得できる。例えば、本アプリケーション（以下、スキャニングデータ用アンチ−ウイルスアプリケーションとする）は、デバイス１０にスキャニング用データを周期的又は命令に従って要請でき、その要請に従って送信されたスキャニング用データを所定の格納部に格納することができる。図１の実施の形態によれば、第２格納部１０７にスキャニング用データが格納されることができる。
【００３３】
本発明の一実施の形態に係るスキャニングデータ用アンチ−ウイルスアプリケーションがスキャニング用データを要請する際、アンチ−ウイルスシステム設定情報に含まれたスキャニングディレクトリ、及び／又はスキャニングするファイルの名称が含まれることができ、デバイス１０は、そういうスキャニングディレクトリに含まれたファイルと及び／又は特定名称のファイルを探索して、スマートカード１００に送信できる。
【００３４】
一方、本発明の一実施の形態に係るアンチ−ウイルスシステム設定情報には、「自動スキャニング動作モード」と「受動スキャニング動作モード」のように動作モードに対する情報がさらに含まれることができる。ユーザが別途の動作モードを指定しない場合、本発明の一実施の形態に係るスマートカード１００は、前記２種類の動作モードのうちの何れか一つをデフォルトとして動作できる。
【００３５】
例えば、「自動スキャニング動作モード」に設定された場合は、アンチ−ウイルスシステム設定情報のスキャニングディレクトリ、及び／又はスキャニングするファイルの名称、スキャニングスケジュール、アップデートスケジュールなどに従って、ユーザの別途の指示無しでアンチ−ウイルスシステムが動作できる。
【００３６】
「受動スキャニング動作モード」に設定された場合、ユーザインタフェース用アンチ−ウイルスアプリケーションは、ユーザにスキャニングするファイル及び／又はディレクトリの目録を提供でき、ユーザは、そういうスキャニングするファイルの目録やディレクトリを見て、スキャニング対象を選択してスキャニング動作を実行させることができる。アンチ−ウイルスアプリケーション部１０３は、スキャニングするファイルの目録やディレクトリを専用として提供するアンチ−ウイルスアプリケーションをさらに含むことができる。
【００３７】
本発明の一実施の形態に係るアンチ−ウイルスアプリケーションは、アンチ−ウイルスシステム設定情報に含まれたアップデートスケジュールに従って、予め格納していたウイルスシグネチャーデータをアップデートできる。例えば、本アンチ−ウイルスアプリケーション（以下、アップデートアンチ−ウイルスアプリケーションとする）は、周期的又は命令にしたがってウイルスシグネチャーデータを格納するサーバ（以下、アップデートサーバとする）又はデバイス１０にアップデートするウイルスシグネチャーデータを要請し、その要請によって受信されるアップデート用データを利用して、予め格納していたウイルスシグネチャーデータをアップデートする。
【００３８】
本発明の一実施の形態に係るアップデートアンチ−ウイルスアプリケーションは、ＯＴＡ方式でアップデート用データを送信できる。一方、本発明の他の実施の形態に係るアップデートアンチ−ウイルスアプリケーションは、ＨＴＴＰプロトコルに従ってアップデート用データを受信することができる。このためには、アップデートアンチ−ウイルスアプリケーションは、ＨＴＴＰプロトコルに従ってアップデートサーバにアップデート用データを送信してくれることを要請できる。
【００３９】
また、本発明の一実施の形態に係るアンチ−ウイルスアプリケーションは、スキャニング結果をデバイス１０に提供できる。本アンチ−ウイルスアプリケーションは、アンチ−ウイルスエンジンがスキャニングした結果をデバイス１０に送信し、デバイス１０は、そういうスキャニング結果をユーザに提供できる。一方、スキャニング結果を提供するアプリケーションは、上述したように別途の専用アプリケーションとして具現化が可能であるが、ユーザインタフェース用アンチ−ウイルスアプリケーションの機能の一部としても具現化が可能である。
【００４０】
以上のように、上述したアンチ−ウイルスアプリケーションは、直接デバイス１０と通信して動作することもでき、異なっては、後述する図２又は図３の実施の形態のように、ウェブサーバ上において動作する形態で具現化されることができる。
【００４１】
本発明の一実施の形態に係るスマートカード１００は、アンチ−ウイルスシステム設定情報、ユーザ情報、スキャニング用データ、及びウイルスシグネチャーを格納することができる。
【００４２】
図１の実施の形態によれば、スマートカード１００は、アンチ−ウイルスシステム設定情報を格納する第１格納部１０５、ユーザ情報、スキャニング用データ及びウイルスシグネチャーを格納する第２格納部１０７を備えることができる。本実施の形態において、格納部を２個備えると説明したが、これは、例示に過ぎず、本願発明の思想から逸脱しない限度内で１個の格納部又は３個以上の格納部を備えて、上述した情報を個別的に格納するように構成することも可能である。
【００４３】
本発明の一実施の形態に係る第１格納部１０５は、ＮＯＲフラッシュ（ＮＯＲ Ｆｌａｓｈ）メモリであって、ＥＴＳＩファイルシステムを支援することができる。第２格納部１０７は、ＮＡＮＤフラッシュ（ＮＡＮＤ Ｆｌａｓｈ）メモリでありうる。これらのフラッシュ形態のメモリは、例示に過ぎず、本願発明の思想から逸脱しない限度内で他の形態のメモリを格納部として使用することができることはもちろんである。
【００４４】
本発明の一実施の形態に係る第１格納部１０５は、例えばＩＳＯプロトコル、ＵＳＢプロトコル、又はＳＤプロトコルに従って、アンチ−ウイルスシステム設定情報をデバイス１０から受信して格納することができる。例えば、第１格納部１０５は、ＡＰＤＵの形態でアンチ−ウイルスシステム設定情報を受信することができる。
【００４５】
本発明の一実施の形態に係る第２格納部１０７は、例えばＩＳＯプロトコル、ＵＳＢプロトコル、又はＳＤプロトコルに従ってユーザデータを受信することができ、これもＡＰＤＵの形態で受信することができる。また、第２格納部１０７は、デバイス１０から受信される大量格納命令（ＭａｓｓＳｔｏｒａｇｅ Ｃｏｍｍａｎｄ）に従って、スキャニング用データを受信して格納することができる。
【００４６】
一方、本発明の一実施の形態に係る第２格納部１０７は、ＯＴＡ（Ｏｖｅｒ ｔｈｅ Ａｉｒ）方式でウイルスシグネチャーを受信して格納又はアップデートするか、又はモバイルデバイスのアプリケーション端でＵＳＢプロトコルに応じるインタフェース部を介して受信して格納することができる。
【００４７】
上述した実施の形態において、第２格納部１０７は、ウイルスシグネチャーを格納すると説明したが、これと異なるように構成することもできる。例えば、第２格納部１０７が格納するウイルスシグネチャーの全て又は一部は、スマートカード１００ではない他のデバイスに格納し、アンチ−ウイルスシステムが動作するときのみに前記他のデバイスから必要なウイルスシグネチャーを受信して使用するように構成できる。ここで、他のデバイスは、図１のデバイス１０であっても良く、それともスマートカード１００と直接又は間接的に接続するサーバであっても良い。
【００４８】
本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムは、デバイス１０から受信されるスキャニング用データをそのままメモリにロードしてスキャニングするか、又は一時的に格納させてからメモリにロードしてスキャニングできる。
【００４９】
例えば、アンチ−ウイルスエンジン１０１は、スキャニング用データとウイルスシグネチャーとを比較して、スキャニング用データにウイルスが含まれているかどうかを判断するとき、上述したようにデバイス１０から受信されるデータを直にメモリにロードして使用するか、又は第２格納部１０７のような格納部に一時的に格納されたスキャニング用データをメモリにロードして使用することができる。
【００５０】
本発明の一実施の形態に係るアンチ−ウイルスエンジン１０１は、インタフェース部を介してデバイス１０と通信できる。
【００５１】
また、本発明の一実施の形態に係るアンチ−ウイルスエンジン１０１は、ウイルスシグネチャーを暗号化して格納部１０７に格納することができ、スキャニング動作を行い際、暗号化されたウイルスシグネチャーを再度復号化して使用することができる。
【００５２】
図２は、本発明の他の実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムの機能ブロック図である。
【００５３】
図２に示すように、スマートカード基盤のアンチ−ウイルスシステムは、デバイス２０とスマートカード２００とを備える。本実施の形態において、デバイス２０は、インタフェース部２１、ウェブブラウザ２３、及びプロキシサーバ２５を備え、スマートカード２００は、アンチ−ウイルスエンジン２０１、アンチ−ウイルスアプリケーション部２０３、第１格納部２０５、第２格納部２０７、インタフェース部２０９、及びウェブサーバ２１１を備える。
【００５４】
一方、図２のインタフェース部２１、アンチ−ウイルスエンジン２０１、アンチ−ウイルスアプリケーション部２０３、第１格納部２０５、第２格納部２０７、インタフェース部２０９は、図１の実施の形態での類似の図面番号が付された構成要素と類似の機能を行うので、これらの構成要素についての詳細な説明は省略することにし、以下では、ウェブブラウザ２３、プロキシサーバ２５、ウェブサーバ２１１などの機能について主に説明する。
【００５５】
ウェブブラウザ２３は、ＨＴＭＬ又は他のメディアタイプの文書をユーザが見ることができるように支援し、ウェブサーバ２１１は、ウェブブラウザ２３からのリクエスト（例：ＨＴＴＰリクエスト）に対応して、ウェブページを提供できる。
【００５６】
プロキシサーバ２５は、ウェブブラウザ２１からのリクエストを分析して、該当するウェブサーバ側にリクエストを送信できる。図２の実施の形態では、ウェブサーバ２１１が一つのみ示されているので、プロキシサーバ２５は、ウェブブラウザ２１から受信されるリクエストをウェブサーバ２１１に送信する。
【００５７】
しかしながら、本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムは、ウェブサーバ２１１の他に、他のウェブサーバ（図示せず）もさらに備えることができる。追加されるウェブサーバは、スマートカード２００に位置するか、又はデバイス２０とインターネット網のようにネットワーク網で接続した任意の所に位置できる。このような場合、プロキシサーバ２５は、ウェブブラウザ２１から受信したリクエストがウェブサーバ２１１に向かうものであるか、又は他のウェブサーバ（図示せず）に向かうものであるかを判断して、それに合わせて送信する。
【００５８】
本実施の形態において、アンチ−ウイルスアプリケーション部２０３に含まれたアプリケーションの少なくとも一つ以上は、ウェブサーバ２１１上において動作できる。ウェブサーバ２１１上において動作するという意味は、例えば、ウェブサーバ２１１が提供するウェブコンテンツ上でユーザから情報（例えば、アンチ−ウイルスシステム設定情報）を受け取るか、もしくは命令（スキャニング遂行命令）を受け取るか、又はウェブコンテンツを介してユーザにユーザインタフェースを提供するか、もしくはイベント（例えば、スキャニング結果通知）などを知らせる動作を行うことを含む。
【００５９】
本実施の形態において、アンチ−ウイルスアプリケーション部２０３は、ウェブサーバ２１１上で動作することもできるが、ウェブサーバ２１１とは独立的に動作するように構成することも可能である。すなわち、ウェブサーバ２１１上においてアンチ−ウイルスアプリケーション部２０３が動作するように構成することは選択事項であり、アプリケーション部２０３が含むアンチ−ウイルスアプリケーションのうち、一部アンチ−ウイルスアプリケーションは、ウェブサーバ２１１上で動作し、残りの一部アンチ−ウイルスアプリケーションは、ウェブサーバ２１１とは独立的に動作するように構成できる。
【００６０】
本発明の一実施の形態によれば、ウェブサーバ２１１を介してインターネットアクセスが可能であり、内部の日程管理、電話帳などのファイルに対してアクセスできる。このような日程管理、電話帳などのファイルは、例えば第２格納部２０７に格納されることができる。
【００６１】
図３は、本発明の他の実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムの機能ブロック図である。
【００６２】
図３に示すように、スマートカード基盤のアンチ−ウイルスシステムは、デバイス３０とスマートカード３００とを備える。本実施の形態において、デバイス３０は、インタフェース部３１、ウェブブラウザ３３、及びプロキシサーバ３５を備え、スマートカード３００は、アンチ−ウイルスエンジン３０１、アンチ−ウイルスアプリケーション部３０３、第１格納部３０５、第２格納部３０７、インタフェース部３０９、ウェブサーバ３１１、ファイアウォール３１３、ファイアウォールアプリケーション部３１５を備える。
【００６３】
図３の実施の形態のインタフェース部３１、ウェブブラウザ３３、プロキシサーバ３５、アンチ−ウイルスエンジン３０１、アンチ−ウイルスアプリケーション部３０３、第１格納部３０５、第２格納部３０７は、図１又は図２の実施の形態での類似の図面番号が付された構成要素と類似の機能を行うので、これらの構成要素についての詳細な説明は省略することにし、以下では、ファイアウォール３１３とファイアウォールアプリケーション部３１５とを主に説明する。
【００６４】
本実施の形態におけるファイアウォール３１３は、前記スマートカードが受信又は送信するデータパケットを所定のセキュリティーポリシーに従ってフィルタリングできる。例えば、ファイアウォール３１３は、デバイス３０から受信するデータパケットやデバイス３０に送信するデータパケットをフィルタリングできる。また、ファイアウォール３１３は、デバイス３０ではない他の外部の装置（図示せず）にデータパケットが向かうか、又はそれから受信される場合にも所定のセキュリティーポリシーに従ってフィルタリングできる。
【００６５】
本発明の一実施の形態に係るファイアウォール３１３は、ウェブサーバ３１１に向かうか、又はウェブサーバ３１１から送信されるデータパケットを所定のセキュリティーポリシーに従ってフィルタリングできる。このセキュリティーポリシーは、例えば特定ＵＲＬを有したサーバはアクセスできないようにするか、又は特定データパケットはウェブサーバ３１１に伝達されないようにすることでありうる。
【００６６】
本発明の一実施の形態によれば、スマートカード３００は、ファイアウォール３１３の動作に必要な動作を行うファイアウォールアプリケーション部３１５をさらに備えることができる。このようなファイアウォールアプリケーション部３１５は、ユーザからファイアウォール３１３の動作に必要な設定情報（ファイアウォール設定情報）を受け取ることができるユーザインタフェースをデバイス３０を介して提供できるアプリケーション及び／又はファイアウォールの動作とその結果に対するログを記録するアプリケーションを備えることができる。本ファイアウォールアプリケーション部３１５は、ウェブサーバ３１１上で動作するように具現化されうるが、必ずウェブサーバ３１１上において動作するように具現化する必要はない。
【００６７】
「ファイアウォール設定情報」とは、例えば、遮断する「特定ＵＲＬを有したサーバ」に対する目録やそういう目録に対するアップデートスケジュールなどのような情報でありうる。このような情報は、あくまでも例示に過ぎず、上で言及しない情報であってもファイアウォールの動作に必要な情報であれば、ファイアウォール設定情報に該当できる。
【００６８】
本発明の一実施の形態に係るファイアウォール３１３の動作結果は、デバイス３０に提供されうる。例えば、ファイアウォール３１３は、ファイアウォール３１３の動作結果をファイアウォールアプリケーション部３１５とアンチ−ウイルスアプリケーション部３０３とに送信できる。以後、ファイアウォールアプリケーション部３１５は、ファイアウォールの動作結果をログとして記録し、アンチ−ウイルスアプリケーション部３０３は、ユーザにファイアウォールの動作結果を提供できる。
【００６９】
例えば、スマートカード３００がウイルスシグネチャーをアップデートするために、外部にあるアップデートサーバにアクセスしようとするとき、ファイアウォール３１３は、アップデートサーバにアクセスしてもよいかどうかをセキュリティーポリシー（例えば、セキュリティーポリシーは、ファイアウォール設定情報に含まれうる）に基づいて判断し、判断結果、アクセスしてはならない場合、アンチ−ウイルスアプリケーション部３０３は、ユーザにアップデートサーバにアクセスできないことを通知し、ファイアウォールアプリケーション部３１５は、判断結果をログとして記録しておく。
【００７０】
以上のように、図３の実施の形態は、ファイアウォール３１３とウェブサーバ３１１の両方を具備しているが、ウェブサーバ３１１を具備しないように構成することも可能である。ウェブサーバ３１１を具備しないように構成する場合は、ウェブコンテンツをデバイス３０に提供しないことを除いては、前述した図３にて説明した動作と同様に動作する。
【００７１】
図４は、本発明の一実施の形態に係るアンチ−ウイルスエンジンの機能ブロック図である。
【００７２】
図４に示すように、本発明の一実施の形態に係るアンチ−ウイルスエンジンは、マネジャー１０２、１０４、１０６、ローディング部１０８、スキャニング部１１０、及び暗復号化部１１２を備える。
【００７３】
本発明の一実施の形態に係るマネジャーは、コマンドを解析し、解析結果に応じて、上述したローディング部１０８、スキャニング部１１０、及び暗復号化部１１２の動作を管理できる。
【００７４】
本発明の一実施の形態に係るマネジャーは、アンチ−ウイルスマネジャー１０２、コマンドマネジャー１０４、及び暗復号化マネジャー１０６を備える。ここで、コマンドマネジャー１０４は、アンチ−ウイルスエンジンが受信するコマンドを解析して、アンチ−ウイルスマネジャー１０２で管理するコマンドであるか、それとも暗復号化部マネジャー１０６で管理するコマンドであるかを判断できる。仮に、アンチ−ウイルスマネジャー１０２で管理するコマンドであると、受信したコマンドをアンチ−ウイルスマネジャー１０２に送信し、暗復号化部マネジャー１０６で管理するコマンドであると、暗復号化マネジャー１０６に送信する。
【００７５】
また、本発明の一実施の形態に係るマネジャーは、例えばＵＳＢプロトコル、ＩＳＯプロトコル、又はＳＤプロトコルのうち、少なくとも何れか一つのプロトコルを支援するインタフェース部を介してデバイス１０、２０、又は３０が有するＩ／Ｆドライバと通信できる。
【００７６】
本発明の一実施の形態に係るデバイス１０、２０、又は３０のＩ／Ｆドライバ上には、アンチ−ウイルスユーザインタフェースを提供するアプリケーションがインストールされることができ、このようなアプリケーションは、ユーザインタフェースを介してユーザから命令などを受け取って、インタフェース（Ｉ／Ｆ）ドライバを介して上述したアンチ−ウイルスマネジャー１０２に送信できる。
【００７７】
一方、本発明の他の実施の形態によれば、アンチ−ウイルスユーザインタフェースは、Ｉ／Ｆドライバ上にインストールされる別途のアプリケーションではなく、前述した実施の形態のようにスマートカードが有するアンチ−ウイルスアプリケーションによっても提供されることができる。
【００７８】
本発明の一実施の形態に係るアンチ−ウイルスマネジャー１０２は、ローディング部１０８とスキャニング部１１０との動作を管理できる。例えば、アンチ−ウイルスマネジャー１０２は、ローディング部１０８やスキャニング部１１０の動作が複数ある場合、作業日程を管理できる。
【００７９】
暗復号化マネジャー１０６は、暗復号化部１１２の動作を管理でき、例えば暗復号化作業の日程を管理できる。
【００８０】
ローディング部１０８は、ウイルスシグネチャーをメモリにロードする動作を行い、スキャニング部１１０は、メモリにローディングされたウイルスシグネチャーとスキャニング用データとを比較して、ウイルスの有無を判断できる。
【００８１】
暗復号化部１１２は、暗号化されたウイルスシグネチャーがメモリにロードされる前に復号化する動作を行うことができる。また、ウイルスシグネチャーを暗号化して格納することができる。
【００８２】
図４における図面番号１１４と表示された部分は、すべての構成要素を互いに接続すると示されているが、互いに機能的に関連のある構成要素同士を必要な場合にのみ互いに接続されると理解しなければならない。本発明の一実施の形態に係る図面番号１１４は、バス（ＢＵＳ）でありえ、このような場合、バスを制御する制御部（図示せず）が備えられて、機能的に相互関連した構成要素同士の間でのみ通信がなされることができる。
【００８３】
図５は、本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスエンジンが具現化された例を説明するための図である。
【００８４】
図５に示すように、本発明の一実施の形態に係るアンチ−ウイルスエンジンは、ＵＩＣＣプラットホーム上において動作するアプリケーションと共にインストールされることができる。
【００８５】
ＵＩＣＣプラットホーム上において動作するアプリケーションは、例えば、支払い（Ｐａｙｍｅｎｔ）、チケット発行（ｔｉｃｋｅｔｉｎｇ）、及び／又はＩＤ管理などのような機能を行うことができる。ここで、ＵＩＣＣは、３Ｇスタンダード（ＴＳ１０２２２１）に従って定義されたスマートカードを意味する。
【００８６】
図５に示す実施の形態は、あくまでも例示に過ぎず、本発明に係るアンチ−ウイルスエンジンは、本発明の思想から逸脱しない範囲でＵＩＣＣプラットホームでないスマートカードを支援する他のプラットホームでも具現化されうることはもちろんである。
【００８７】
図６は、本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスシステムが具現化されたスマートカードのボードを示した図である。
【００８８】
図６に示すように、本発明の一実施の形態に係るスマートカードボードは、デバイスとの通信を支援するインタフェース部とそれによる構成要素（ＩＳＯ７８１６、ＵＳＢ２．０、ＭＭＣ、ＤＭＡＣｏｎｔｒｏｌｌｅｒ等）、ＲＡＭ、ＲＯＭ、フラッシュメモリ、プロセッサ（ＣＰＵ）などを備えることができる。
【００８９】
本実施の形態において、ＮＯＲフラッシュは、上述した実施の形態において第１格納部１０５、２０５、３０５に対応し、ＮＡＮＤフラッシュは、第２格納部１０７、２０７、３０７に対応し、ＩＳＯ７８１６、ＵＳＢ２．０等は、デバイスとスマートカードとの間の通信を支援するインタフェース部に対応できる。
【００９０】
アンチ−ウイルスエンジンは、ＳＲＡＭのようなメモリにロードされて、ＣＰＵにより動作でき、メモリにロードされたアンチ−ウイルスエンジンは、ＮＡＮＤフラッシュに格納されたウイルスシグネチャーをＳＲＡＭメモリにロードする（ウイルスシグネチャーが暗号化されている場合には、ＳＲＡＭメモリにロードする前に復号化を行い、復号化したファイルをＮＡＮＤフラッシュに一時格納してからＳＲＡＭメモリにロードする）。
【００９１】
図６を参照し続けると、アンチ−ウイルスエンジン、ファイアウォール、アンチ−ウイルスエンジンアプリケーション、ファイアウォールアプリケーションなどは、例えばマスクＲＯＭにマスキングされて格納されるか、又はＮＯＲフラッシュに格納されていることができる。
【００９２】
図６において、ＴＯＲＮＡＤＯとＤＥＳ／Ｔ−ＤＥＳ／ＡＥＳは、それぞれハードウェアー的に構成された暗復号化モジュールであり、このような暗復号化モジュールを利用して暗復号化動作を行う暗復号化アプリケーションは、上述したように、ＭＡＳＫＲＯＭやＮＯＲフラッシュに格納されていることができる。暗復号化アプリケーションは、ハードウェア暗復号化モジュールを利用して暗復号化するデータをバス（ＢＵＳ）下に位置したＳＲＡＭに積載して、暗復号化動作を行うことができる。一方、本実施の形態において、暗復号化は、ハードウェアとソフトウェア（アプリケーション）により具現化されると説明したが、これは、例示に過ぎず、完全にソフトウェアのみで具現化されることも可能である。
【００９３】
図６のＳＲＡＭメモリにロードされてＣＰＵにより動作する構成要素は、上述したアンチ−ウイルスエンジンの他にも、アンチ−ウイルスアプリケーション、ファイアウォール、又はファイアウォールアプリケーションでありうる。
【００９４】
本発明の一実施の形態によれば、ＵＳＢプロトコルに従うインタフェース部を介して受信されるスキャニング用ファイルは、ＮＡＮＤフラッシュメモリに一時格納された後に、一定単位でＳＲＡＭメモリにロードされてスキャニング作業に使用されることができる。一方、これと異なり、ＵＳＢプロトコルに従うインタフェース部を介して受信されるスキャニング用ファイルは、直にＳＲＡＭメモリにロードされてスキャニング作業に使用されうることは、前の実施の形態にて説明したとおりである。
【００９５】
図７は、本発明の一実施の形態に係るスマートカードが装着されるデバイスの機能ブロック図である。
【００９６】
図７に示すように、本発明の一実施の形態に係るスマートカードが装着されるデバイスは、ユーザインタフェース（ＵＩ）アプリケーションとアンチ−ウイルスドライバを有したカーネル（Ｋｅｒｎｅｌ）を含む。
【００９７】
本発明の一実施の形態に係るアンチ−ウイルスＵＩアプリケーションは、デバイスのアンチ−ウイルスＵＳＢドライバ上において動作するようにインストールされることができる。このようなＵＩアプリケーションは、スマートカードにスキャニング用データを送信する際、予め設定された規則に従って送信できる。例えば、一定のサイズのスキャニング用データをスマートカードに送信できる。
【００９８】
本発明の一実施の形態に係るＵＩアプリケーションは、ユーザから受け取った各種設定情報（例：アンチ−ウイルスシステム設定情報、ファイアウォール設定情報）やスキャニング用データを送信するためのキュー（Ｑｕｅｕｅ）を含んでいる。
【００９９】
また、本発明の一実施の形態に係るＵＩアプリケーションは、ウイルスシグネチャーをアップデートするために、デバイスと接続した他のサーバ（アップデートサーバ）からアップデートするウイルスシグネチャーデータを受信して、スマートカードに送信できる。
【０１００】
一方、図７に示すアンチ−ウイルスＵＳＢドライバは、例示に過ぎず、本発明がこれに限定されるものではなく、ＩＳＯ通信プロトコルを支援するＩＳＯドライバや、ＳＤ通信プロトコルを支援するＳＤドライバのように、他のドライバを使用することももちろん可能である。
【０１０１】
図８は、本発明の他の実施の形態に係るスマートカードの機能ブロック図である。
【０１０２】
図８に示すように、ＵＩＣＣプラットホームに本発明の一実施の形態に係るスマートカードが具現化され、ＳＣＷＳ（ＳｍａｒｔＣａｒｄ Ｗｅｂ Ｓｅｒｖｅｒ）とファイアウォールがＴＣＰ／ＩＰ階層上にインストールされ、アンチ−ウイルスエンジンは、ＯＳ上にアプリケーションと共にインストールされていることが分かる。そして、ウイルスシグネチャーを格納するＤＢと設定情報などを格納するＤＢも、他の構成要素と相互作用するようインストールされる。前記ＳＣＷＳは、上述した実施の形態でのウェブサーバと同じ機能を行い、アンチ−ウイルスエンジンとファイアウォール、及びＤＢも、上述した実施の形態において詳細に説明したことがあるので、具体的な説明は省略する。
【０１０３】
本実施の形態では、ＳＣＷＳがＵＳＢプロトコルに従うインタフェースを介してＴＣＰ／ＩＰスタックを形成した状態でＨＴＴＰサーバとして構成された場合であるが、これとは異なって、ＮａｔｉｖｅＯＳやＪａｖａ（登録商標） Ｃａｒｄ ＯＳのようなＯＳ上で動作するように構成されることができる。一方、ＳＣＷＳがいかなる構成であっても、ファイアウォールは、ＵＳＢプロトコルに従うインタフェースを介して、ＴＣＰ／ＩＰスタック上で動作できる。
【０１０４】
このようなファイアウォール動作の設定は、ファイアウォール設定アプリケーションを介して行われることができる。例えば、ファイアウォール設定アプリケーションは、ユーザがファイアウォール設定情報を入力できるユーザインタフェースをデバイスを介して提供できる。一例として、そういうユーザインタフェースは、ウェブコンテンツに含まれてユーザに提供されることができる。
【０１０５】
シグネチャーＯＴＡプーリングアプリケーションは、ウイルスシグネチャーをＯＴＡを介して受信して、ウイルスシグネチャーＤＢに格納することができる。
【０１０６】
管理者アプリケーションは、アンチ−ウイルスファイアウォールに対する設定情報ＤＢを管理できる。
【０１０７】
図９は、本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスエンジンの構造図である。
【０１０８】
図９と図４に示すように、「Ａ」と表示した区間は、ウイルスシグネチャーやスキャニング用データを格納する格納部側の動作で、「Ｂ」と表示した区間は、ローディング部１０８で行われる動作で、「Ｃ」と表示した区間は、スキャニング部１１０で行われる動作を示したものである。図９での具体的な説明は、下の図１８の説明と共にする。
【０１０９】
図１０は、本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【０１１０】
図１０と図１の実施の形態を参照して、本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明すれば、アンチ−ウイルスアプリケーションがアンチ−ウイルス設定情報を読み取り（Ｓ１０１）、デバイス１０にスキャニング用データを送信してくれることを要請する（Ｓ１０３）。該要請には、スキャニング用データが格納されたディレクトリ及び／又はスキャニングするファイルの名称が含まれることができる。デバイス１０は、そういう要請に含まれたディレクトリとファイルの名称を利用して、スキャニングするファイルをスマートカード１００に送信する。
【０１１１】
一方、アンチ−ウイルスエンジン１０１は、ウイルスシグネチャーが暗号化されている場合（Ｓ１０７：Ｙ）には、復号化を行い（Ｓ１０９）、復号化したシグネチャーＤＢをメモリにロードする（Ｓ１１１）。
【０１１２】
スマートカード１００は、デバイス１０からスキャニング用データを受信し（Ｓ１０５）、受信したスキャニング用データとウイルスシグネチャーとを比較してスキャニング動作を行う（Ｓ１１３）。
【０１１３】
以後、スキャニング結果は、アンチ−ウイルスアプリケーションによりデバイス１０に通知されうる（Ｓ１１５）。
【０１１４】
上述した実施の形態において、ステップＳ１０７とＳ１０９は、選択的な動作であって、暗復号化を行わなくても良い。また、本スマートカード基盤のウイルススキャニング方法を図１の実施の形態を適用して説明したが、他の実施の形態（例えば、図２と図３）にも適用されうることはもちろんである。
【０１１５】
図１１は、本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法でのアンチ−ウイルスシステム構成を設定する過程を説明するためのフローチャートである。
【０１１６】
図１１と図２とを参照して、本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明すれば、デバイスのウェブブラウザが動作すると（Ｓ２０１）、アンチ−ウイルスアプリケーションは、アンチ−ウイルスシステム設定情報を入力できるユーザインタフェースをデバイス２０を介して提供できる（Ｓ２０３）。例えば、ユーザインタフェースは、ウェブコンテンツに含まれることができる。
【０１１７】
ユーザからデバイス２０と接続した入力装置を介して設定情報（スキャニングスケジュール、スキャニングディレクトリ、アップデートスケジュール等）を受け取ると（Ｓ２０５）、受け取った設定情報をアンチ−ウイルスアプリケーションがスマートカード２００に格納する（Ｓ２０７）。例えば、設定情報は、第１格納部２０５に格納されることができる。
【０１１８】
以後、設定情報に従って、アンチ−ウイルスシステムが動作できる（Ｓ２０９）。
【０１１９】
上述したように、スマートカード基盤のウイルススキャニング方法を図２の実施の形態を適用して説明したが、他の実施の形態（例えば、図３）にも適用されうることはもちろんである。
【０１２０】
図１２は、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【０１２１】
図１２と図１とを参照して、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明すれば、スマートカード１００がデバイス１０のＡＰＩを呼び出してスキャニング用ファイルを受信し（Ｓ３０１）、受信したスキャニング用ファイルが圧縮されていると（Ｓ３０３：Ｙ）、圧縮解除できる（Ｓ３０５）。以後、アンチ−ウイルスエンジン１０１は、受信したスキャニング用ファイルをメモリにロードし、ロードしたスキャニング用ファイルとウイルスシグネチャーとをマッチングさせることができる（Ｓ３０７）。
【０１２２】
以後、スキャニング結果は、デバイス１０に送信（Ｓ３０９）され、デバイス１０は、送信されたスキャニング結果をユーザに表示できる（Ｓ３１１）。
【０１２３】
上述したように、スマートカード基盤のウイルススキャニング方法を図１の実施の形態を適用して説明したが、他の実施の形態（例えば、図２や図３）にも適用されうることはもちろんである。
【０１２４】
図１３は、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【０１２５】
図１３と図１とを参照して、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明すれば、スマートカード１００がデバイス１０のＡＰＩを呼び出してスキャニング用ファイルを受信し（Ｓ４０１）、第２格納部１０７にスキャニング用ファイルを格納する（Ｓ４０３）。以後、受信したスキャニング用ファイルが圧縮されていると（Ｓ４０５：Ｙ）、圧縮解除できる（Ｓ４０７）。以後、アンチ−ウイルスエンジン１０１は、受信したスキャニング用ファイルを所定サイズずつメモリにロードし、ロードしたスキャニング用ファイルとウイルスシグネチャーとをマッチングさせることができる（Ｓ４０９）。
【０１２６】
以後、スキャニング結果は、アンチ−ウイルスエンジンによりデバイス１０に送信（Ｓ４１１）され、デバイス１０は、受信したスキャニング結果をユーザに表示できる（Ｓ４１３）。
【０１２７】
上述したように、スマートカード基盤のウイルススキャニング方法を図１の実施の形態を適用して説明したが、他の実施の形態（例えば、図２と図３）にも適用されうることはもちろんである。
【０１２８】
図１４は、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明するためのフローチャートである。
【０１２９】
図１４と図３とを参照して、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法を説明すると、スマートカード３００がデバイス３０のＡＰＩを呼び出してスキャニング用ファイルを受信し（Ｓ５０１）、受信したスキャニング用ファイルが圧縮されていると（Ｓ５０３：Ｙ）、圧縮解除できる（Ｓ５０５）。以後、アンチ−ウイルスエンジン３０１は、受信したスキャニング用ファイルを所定サイズずつメモリにロードし、ロードしたスキャニング用ファイルとウイルスシグネチャーとをマッチングさせ（Ｓ５０７）、スキャニング結果をスマートカードのアンチ−ウイルスアプリケーションに送信する（Ｓ５０９）。
【０１３０】
以後、アンチ−ウイルスアプリケーションは、スキャニング結果をデバイス３０に送信する（Ｓ５１１）。
【０１３１】
上述したように、スマートカード基盤のウイルススキャニング方法を図３を適用して説明したが、他の実施の形態（例えば、図１と図２）にも適用されうることはもちろんである。
【０１３２】
図１５は、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォール構成を設定する過程を説明するためのフローチャートである。
【０１３３】
図１５と図３とを参照して、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォール構成を設定する過程を説明すると、デバイス３０のウェブブラウザ３３がユーザにより動作すると（Ｓ６０１）、ファイアウォールアプリケーション３１５は、ファイアウォール設定情報入力のためのユーザインタフェースをデバイス３０に提供する（Ｓ６０３）。
【０１３４】
以後、ユーザからファイアウォール設定情報（例えば、ＩＰ Ａｄｄｒｅｓｓ、ｐｒｏｔｏｃｏｌ、ｐｏｒｔ、ａｌｌｏｗ／ｄｒｏｐなどに対する情報）を受け取ると（Ｓ６０５）、スマートカード３００がそういう情報を第１格納部３０５に格納する（Ｓ６０７）。ファイアウォール３１３は、第１格納部３０５に格納されたファイアウォール設定情報を利用してフィルタリング動作を行う（Ｓ６０９）。
【０１３５】
上述したように、スマートカード基盤のウイルススキャニング方法を図３を適用して説明したが、他の実施の形態（例えば、図１と図２）にも適用されうることはもちろんである。
【０１３６】
図１６は、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォールの動作を説明するためのフローチャートである。
【０１３７】
図１６と図３とを参照して、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォールの動作を説明すれば、デバイス３０でウェブブラウザが動作し（Ｓ７０１）、ユーザからウェブサーバのアドレス（以下、ＵＲＬ）を受け取ることができる（Ｓ７０３）。以後、スマートカード３００のファイアウォール３１３は、該当ウェブサーバがアクセス可能なサーバであるかどうかをファイアウォール設定情報を参照して判断し（Ｓ７０５）、アクセスが可能な場合は、（Ｓ７０７：Ｙ）、該当ウェブサーバに接続を許容する（Ｓ７０９）。一方、アクセスが可能でない（Ｓ７０７：Ｎ）と判断された場合は、ファイアウォール３１３は、ファイアウォールアプリケーション３１５に判断結果を送信する（Ｓ７１１）。以後、ファイアウォールアプリケーション３１５は、ユーザに判断結果をデバイス３０を介して表示する（Ｓ７１３）。
【０１３８】
図１７は、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォールの動作を説明するためのフローチャートである。
【０１３９】
図１７と図３とを参照して、本発明の他の実施の形態に係るスマートカード基盤のウイルススキャニング方法でのファイアウォールの動作を説明すれば、アンチ−ウイルスアプリケーションは、第１格納部３０５に格納されたアップデートスケジュールを読み取り（Ｓ８０１）、読み取ったスケジュールに従ってアンチ−ウイルスアプリケーションは、シグネチャーアップデートサーバに接続を試みる（Ｓ８０３）。例えば、ステップＳ８０３にて、アンチ−ウイルスアプリケーションは、アップデートサーバ（図示せず）のＵＲＬに対した情報をファイアウォール３１３に提供できる。
【０１４０】
ファイアウォール３１３は、アップデートサーバに対するアクセス可能性を判断し（Ｓ８０５）、アクセス可能と判断した場合（Ｓ８０７；例）、ファイアウォール３１３は、アンチ−ウイルスアプリケーションがアップデートサーバに接続することを許容する（Ｓ８０９）。一方、アクセス可能でないと判断した場合、ファイアウォール３１３は、アンチ−ウイルスアプリケーションに判断結果を送信（Ｓ８１１）し、アンチ−ウイルスアプリケーションは、ユーザに判断結果を表示する（Ｓ８１３）。一方、ファイアウォール３１３は、ログ記録を残すためにファイアウォールアプリケーション３１５にも判断結果を送信でき、ファイアウォールアプリケーション３１５は、判断記録をログとして記録する。
【０１４１】
図１８は、本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法におけるウイルススキャニングでのパターニング動作を説明するためのフローチャートで、図９は、本発明の一実施の形態に係るスマートカード基盤のアンチ−ウイルスエンジンの構造図であり、図１９は、図９と図１８の実施の形態を説明するための図である。
【０１４２】
図１８、図９、及び図４を参照して、本発明の一実施の形態に係るスマートカード基盤のウイルススキャニング方法でのウイルススキャニング動作を説明すれば、パターンデータをメモリ（ＳＲＡＭ）にロードし（Ｓ９０１）、マルチパターン構成プロセスがパターンＤＢ（ウイルスシグネチャー格納部）からマルチパターンデータを分離して構成し（Ｓ９０３）、データローディング部がマッチングするデータ（スキャニング用データ）をハッシュマッチャーに入力する（Ｓ９０５）。
【０１４３】
以後、位置「０」から「データの終わり」位置までデータマッチング動作を行い（Ｓ９０９）、仮に「データの終わり」位置であると（Ｓ９１１：Ｙ）、パターンがない（すなわち、マッチングされるものがない）と判断する（Ｓ９１３）。このような場合、ウイルスがスキャニング用データに存在しないと判断される。上述した動作は、ローディング部１０８で行われる動作であり、以下で説明する動作は、スキャニング部１１０で行われる動作である。
【０１４４】
ハッシュマッチャーは、「データの終わり」位置でないと（Ｓ９１１：Ｎ）、データ位置から決まった大きさ分だけ読んでハッシュに関数を適用してハッシュ値を求める（Ｓ９１５）。
【０１４５】
ハッシュマッチャーテーブルにハッシュ値がキー値として存在しないと（Ｓ９１７：Ｎ）、位置値が１増加し（Ｓ９３３）、再度ステップＳ９１１以後の動作が繰り返される。
【０１４６】
一方、ハッシュマッチャーは、ハッシュマッチャーテーブルにハッシュ値がキー値として存在しているかどうかを判断し、仮に存在すると（Ｓ９１７：Ｙ）、サブマッチャーは、サブマッチャーテーブルの比較結果が同じであるかどうかを判断し、仮に比較結果が異なると（Ｓ９１９：Ｎ）、ステップＳ９３３以後の動作が繰り返される。
【０１４７】
仮に、サブマッチャーテーブルの比較結果が同じであると（Ｓ９１９：Ｙ）、エグザクトパターンマッチャー（ＥｘａｃｔＰａｔｔｅｒｎ Ｍａｔｃｈｅｒ）は、サブマッチャーテーブルの結果が同じ、一（以下、「一つの」とする）パターンの全体が一致しているかどうかを検討する。しかしながら、仮に、一つのパターンの全体が一致しないと（Ｓ９２１：Ｎ）、ステップＳ９３３以後の動作が繰り返される。
【０１４８】
一方、エグザクトパターンマッチャーにおいて一つのパターンの全体が一致すると（Ｓ９２１：Ｙ）、サブパターンマトリックスに発見情報を記録する（Ｓ９２３）。フルパターンマッチャー（ＦｕｌｌＰａｔｔｅｒｎ Ｍａｔｃｈｅｒ）は、エグザクトパターンマッチャーを通過した、探索しなければならない全体パターンのサブパターンがすべて発見されたかどうかを判断する（Ｓ９２５）。
【０１４９】
仮に、一つのパターンのサブパターンがすべて発見されないと（Ｓ９２５：Ｎ）、ステップＳ９３３以後の動作が繰り返される。
【０１５０】
一方、一つのパターンに対するサブパターンがすべて発見されると（Ｓ９２５：Ｙ）、全体パターンが一致すると判断し（Ｓ９２７）、ウイルスパターンがあると判断できる（Ｓ９２７）。仮に、一つのパターンに対するサブパターンがすべて発見されないと（Ｓ９２５：Ｎ）、ステップＳ９３３以後の動作を繰り返す。
【０１５１】
以上、上述した動作において図１９に例示されるテーブルとＤＢとが使用されうるが、本願発明は、図１９に示すテーブルやＤＢにのみ限定されるものではないことを知っていなければならない。また、図１８の実施の形態は、前で説明したスマートカード基盤のアンチ−ウイルスシステムを適用して実施できることはもちろんである。
【０１５２】
また、上述した例示的実施の形態の装置は、各々バス、少なくとも一つのプロセッサ（例えば、中央処理装置、マイクロプロセッサー等）、メモリを含むことができる。ここで、バスは、前記装置が有する各々のユニットと接続され、プロセッサは、前記バスに接続されて上述した機能を行い、命令を実行する。また、メモリも前記バスと接続されて、命令、受信したメッセージ、及び生成されたメッセージを格納することができる。
【０１５３】
一方、本発明の実施の形態に係る方法は、多様なコンピュータ手段を介して行われることのできるプログラム命令形態で具現化されて、コンピュータ読み取り可能媒体に記録されることができる。前記コンピュータ読み取り可能媒体は、プログラム命令、データファイル、データ構造などを単独で又は組み合わせて含むことができる。前記媒体に記録されるプログラム命令は、本発明のために特別に設計され構成されたものであるか、又はコンピュータソフトウェア分野の当業者に公知されて使用可能なものでありうる。
【０１５４】
以上、本発明は、限定された実施の形態と図面により説明されたが、本発明は、上記の実施の形態に限定されるものではなく、本発明が属する分野における通常の知識を有した者であればこのような記載から多様な修正及び変形が可能である。したがって、本発明の範囲は、説明された実施の形態に限って決まってはならず、後述する特許請求の範囲だけでなく、この特許請求の範囲と均等なものによって決まらねばならない。
【符号の説明】
【０１５５】
１０、２０、３０ デバイス
１００、２００、３００ スマートカード
１１、２１、３１ インタフェース部
１０９、２０９、３０９ インタフェース部
２３、３３ ウェブブラウザ
２５、３５ プロキシサーバ
１０１、２０１、３０１ アンチ−ウイルスエンジン
１０３、２０３、３０３ アンチ−ウイルスアプリケーション部
１０５、２０５、３０５ 第１格納部
１０７、２０７、３０７ 第２格納部
２１１、３１１ ウェブサーバ
３１３ ファイアウォール
３１５ ファイアウォールアプリケーション部
１０２ アンチ−ウイルスマネジャー
１０４ コマンドマネジャー
１０６ 暗復号化マネジャー
１０８ ローディング部
１１０ スキャニング部
１１２ 暗復号化部
【図１】
0005415493.tif 000002
【図２】
0005415493.tif 000003
【図３】
0005415493.tif 000004
【図４】
0005415493.tif 000005
【図５】
0005415493.tif 000006
【図６】
0005415493.tif 000007
【図７】
0005415493.tif 000008
【図８】
0005415493.tif 000009
【図９】
0005415493.tif 000010
【図１０】
0005415493.tif 000011
【図１１】
0005415493.tif 000012
【図１２】
0005415493.tif 000013
【図１３】
0005415493.tif 000014
【図１４】
0005415493.tif 000015
【図１５】
0005415493.tif 000016
【図１６】
0005415493.tif 000017
【図１７】
0005415493.tif 000018
【図１８】
0005415493.tif 000019
【図１９】
0005415493.tif 000020