(57)【要約】  パーソナルコンピュータ２０にインストール可能なソフトウェアアプリケーション１００は、コンピュータの１次データファイルがインターネット１４（外部データソース）から取り込まれた悪意のあるコード（例えばウィルス、ワーム及びトロイ）によるアクセスから防止する。マスターファイルは、全ての他のソフトウェアコード及び機能がそこから得られるイメージとしての機能を果たす。マスターイメージファイルのアクティブ化は２次オペレーティング環境（アイソレーションバブル）１２０を確立し、そこでブラウザ及びその他の所望のアプリケーションを含む２次オペレーティングシステム１２６がインストールされ、動かされる。コンピュータ全体（１次オペレーティングシステム）２０と２次オペレーティングシステム１２６との間の通信のアクセス許可は、２次オペレーションシステムから発生するオペレーションから１次オペレーティングシステム２０上のファイルへのアクセスを防止する。２次オペレーティングシステムのアクティブ化はインターネット（又はその他の外部データソース）への接続が可能にされる前に要求される。【選択図】図３
2007534039.tif 000002
【特許請求の範囲】
【請求項１】
侵入防衛コンピュータシステムであって、
ＣＰＵと、
データストレージ手段と、
メモリ手段と、
オペレーティングシステムと、
仮想マシンオペレーティングシステムと、
データソースと有効に通信する少なくとも一つの入出力接続と、
を備える、コンピュータシステム。
【請求項２】
前記データソースがグローバルコンピュータネットワークである、請求項１記載のコンピュータシステム。
【請求項３】
前記データソースがグローバルコンピュータネットワーク以外である、請求項１記載のコンピュータシステム。
【請求項４】
グローバルコンピュータネットワーク以外の前記データソースが、コンピュータワークステーション、パーソナル型のコンピュータ、コンピュータドック、ローカルエリアネットワーク、イントラネット、及びワイドエリアネットワークからなる群から選択される少なくとも一つのデータソースである、請求項３記載のコンピュータシステム。
【請求項５】
前記仮想マシンオペレーティングシステムが、メモリ内の仮想マシン環境とストレージ内の仮想ドライブとを画成するためのソフトウェアと、前記データソースとの有効な通信を前記仮想マシン環境及び前記仮想マシンドライブに制限する動作制御ソフトウェアと、を備える、請求項１記載の侵入防衛コンピュータシステム。
【請求項６】
外部データソースからの侵入からコンピュータシステムを保護する方法であって、
請求項１に記載された侵入防衛コンピュータシステムを用意するステップと、
外部データソースインターフェイスセッションを開始し、請求項１に記載された仮想マシンオペレーティングシステムをアクティブ化させ、メモリ内の仮想マシン環境及びストレージ内の仮想ドライブを画成するステップと、
前記仮想マシンオペレーティングシステムの制御下で前記外部データソースとの接続を確立して、前記外部データソースとの有効な通信を前記仮想マシン環境及び前記仮想ドライブに隔離し、前記コンピュータシステムを前記外部データソースからの侵入から保護するステップと、
を備える方法。
【請求項７】
パーソナルコンピュータにインストール可能なソフトウェアアプリケーションであって、
前記ソフトウェアが外部データソースからの悪意のあるコードによるアクセスから前記コンピュータの１次データファイルを保護し、前記ソフトウェアが、
隔離されたオペレーティング環境のためのコンピュータコードと、
前記隔離されたオペレーティング環境内で機能する２次オペレーティングシステムのためのコンピュータコードと、
を備えるソフトウェアアプリケーション。
【請求項８】
前記隔離されたオペレーティング環境のコンピュータコードが、ＰＯＳ許可を変更するＰＯＳ許可コードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項９】
前記２次オペレーティングシステムのコンピュータコードが、ＰＯＳ外部データソースに関連したアクセス許可を変更するＰＯＳ許可コードを含む、請求項８記載のソフトウェアアプリケーション。
【請求項１０】
前記２次オペレーティングシステムのコンピュータコードが、ＰＯＳ外部データソースに関連したアクセス許可を変更するＰＯＳ許可コードを含み、
前記外部データソースが、ネットワークノード、外部データ装置、及び入出力装置からなる群から選択された少なくとも一つのソースである、請求項９記載のソフトウェアアプリケーション。
【請求項１１】
前記２次オペレーティングシステムのコンピュータコードが、ＰＯＳインターネットに関連した許可を変更するＰＯＳ許可コードを含む、請求項８記載のソフトウェアアプリケーション。
【請求項１２】
前記２次オペレーティングシステムのコンピュータコードが、ＰＯＳ  Ｉｎｅｔ許可を変更するＰＯＳ許可コードを含む、請求項８記載のソフトウェアアプリケーション。
【請求項１３】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項１４】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含み、
前記インストールコードが、前記ソフトウェアアプリケーションの現在のインストール条件をチェックする、請求項１３記載のソフトウェアアプリケーション。
【請求項１５】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含み、
前記インストールコードが、前記ソフトウェアアプリケーションの現在のインストール条件のチェックを考慮して必要に応じて前記ソフトウェアアプリケーションからのファイルをコピーする、請求項１４記載のソフトウェアアプリケーション。
【請求項１６】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含み、
前記インストールコードが、前記ソフトウェアアプリケーションの現在のインストール条件のチェックを考慮して必要に応じてショートカットを確立する、請求項１４記載のソフトウェアアプリケーション。
【請求項１７】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境の立ち上げ要件をチェックし設定するコードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項１８】
前記隔離されたオペレーティング環境のコンピュータコードが、前記ＳＯＥファイルの「新しさ」と、揮発性メモリの前記ＳＯＥへの割り当てと、データストレージの前記ＳＯＥへの割り当てと、前記１次オペレーティングシステムのパーティション及び接続の読み出し専用条件と、イントラネットアクティビティの状態と、１次オペレーティングシステムパーティションへのユーザアクセスの読み出し専用条件とに関する、前記隔離されたオペレーティング環境の立ち上げ要件をチェックし設定するコードを含む、請求項１７記載のソフトウェアアプリケーション。
【請求項１９】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境のランタイム要件をチェックし設定するコードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項２０】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境のランタイム要件をチェックし設定して、少なくとも二つの実行モードを提供するコードを含む、請求項１９記載のソフトウェアアプリケーション。
【請求項２１】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境のランタイム要件をチェックし設定して、ｉｎｅｔアクセスを含む実行モード及びｉｎｅｔアクセスを含まない実行モードを少なくとも提供するコードを含む、請求項１９記載のソフトウェアアプリケーション。
【請求項２２】
前記隔離されたオペレーティング環境のコンピュータコードが前記隔離されたオペレーティング環境の終了要件をチェックし設定するコードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項２３】
前記隔離されたオペレーティング環境のコンピュータコードが、前記ｉｎｅｔからの（前記ＳＯＥ）の切断、前記ノードインターフェイスのクローズ、前記ＳＯＥの揮発性メモリ割り当ての開放、前記一時データストレージ割り当てのフラッシュ、ＳＯＥファイル及びパーティションからの切断、ＳＯＥ起動ファイルのリフレッシュ、並びに、イントラネット接続の復元を含む、前記隔離されたオペレーティング環境の終了要件をチェックし設定するコードを含む、請求項２２記載のソフトウェアアプリケーション。
【請求項２４】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境の要件をチェックし設定するコードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項２５】
前記隔離されたオペレーティング環境のコンピュータコードが、前記ＳＯＥのための不揮発性メモリの領域への割り当て及び接続と、データストレージ空間への割り当て及び接続と、前記コンピュータのＣＰＵへの接続の提供と、外部データソースノードへの接続と、前記コンピュータのビデオカードへの接続の提供と、前記コンピュータのサウンドカードへの接続の提供と、前記コンピュータのプリンタへの接続の提供と、前記コンピュータのマウス及びキーボードへの接続の提供と、前記ＳＯＥの前記２次オペレーティングシステムと前記コンピュータの前記１次オペレーティングシステムとの間のネットワークブリッジの形成とを含む、前記隔離されたオペレーティング環境の要件をチェックし設定するコードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項２６】
外部データソースから得られる悪意のあるコードからパーソナルコンピュータを保護する防衛方法であって、
前記パーソナルコンピュータにインストール可能なソフトウェアアプリケーションであって、前記コンピュータの１次データファイルを外部データソースからの悪意のあるコードによるアクセスから保護する該ソフトウェアアプリケーションをロードするステップと、
前記ソフトウェアアプリケーションを前記パーソナルコンピュータにインストールするステップであって、該ソフトウェアアプリケーションが２次オペレーティングシステムを含む隔離されたオペレーティング環境を画成し、該２次オペレーティングシステムは前記コンピュータ上の１次オペレーティングと連動し且つ別々に機能し、前記インストールされたアプリケーションが１次オペレーティングシステム許可コードを画成して、外部データソースに接続可能なノードへのアクセスを前記２次オペレーティングシステムの制御下で前記隔離されたオペレーティング環境に制限する、ステップと、
前記隔離されたオペレーティング環境内で前記ノードを介して外部データソースインターフェイスセッションを開始し、前記セッション中に揮発性メモリ空間及び一時データストレージ空間を前記２次オペレーティングシステムに割り当てるステップと、
前記２次オペレーティングシステムの制御下で前記ノードを介して前記外部データソースとの接続を確立して、前記外部データソースとの有効な通信を前記隔離されたオペレーティング環境に隔離し、前記外部データソースから得られる悪意のあるコードから前記パーソナルコンピュータを保護するステップと、
を備える防衛方法。
【発明の詳細な説明】
【関連出願】
【０００１】
本願は、２００３年９月５日に出願された先の出願である米国仮特許出願第１０／６５６，７５０号の優先権の利益を主張する。
【発明の分野】
【０００２】
本発明は電気コンピュータ及びデジタル処理システムに対するサポートの分野におけるものである。より詳細には、本発明は、パーソナルタイプのコンピュータシステムのハードウェア、ソフトウェア及びデータを、外部データソースから生じる悪意のあるコンピュータコードによる破壊、不当な変更、又は不当なアクセスから保護するセキュリティソフトウェア及びプロセスに関係する。
【発明の背景】
【０００３】
コンピュータシステムは、侵入者による攻撃にさらされており、当該侵入者は、システムにダウンロードされる悪意のあるコンピュータコードを利用して、コンピュータシステム上に常駐するデータ又はアプリケーションを盗み、又は、改竄し、その他においては、システムの整合性を侵すことがよく知られている。ネットワーク型及びスタンドアローン型の両者のコンピュータシステムが、このような侵入にさらされている。侵入は、典型的には、コンピュータシステムの制御ソフトウェアの一部分の内容にアクセスし、その内容を変更する悪意のあるコードによるものである。失われたか、又は侵されたデータと、このような侵入からの復旧のコストは、度を越えたものであり、壊滅的でさえある。したがって、この分野では、これらの攻撃に対する感染性を推定し、又は防止する技術を開発することが、非常に強く動機付けられ続けている。
【０００４】
Ｈｅｌｂｉｇ，  Ｓｒ．の米国特許第６，５７８，１４０号は、侵入者の悪意のあるコードによる侵入からコンピュータシステムのセキュリティを高める方法及び装置の一例である。しかし、Ｈｅｌｂｉｇの技術は、その有用性を達成するためにコプロセッサ装置及びマルチ論理コントローラ回路を必要とするので、少なくとも部分的にハードウェア依存性がある。ハードウェア依存性のセキュリティ技術の別の例は、Ｐｏｌｉｃａｒｄの米国特許第６，５７８，１４０号に開示されている。Ｐｏｌｉｃａｒｄの技術は、ＣＰＵをもつ二つの別個のマザーボードと、二つの別個のオペレーティングシステムとにより構成されて単一ケースに収容されており、２台のＣＰＵとオペレーティングは補助の及び／又は外部のハードウェア（例えば、プリンタ、モデム、モニタ及びキーボード）を共有する。しかし、この技術は、ある種の中央コンポーネントの重複を必要とし、この技術の実施に係るコストを相当に高める。一般に、ハードウェア駆動を必要とするか、又はハードウェア駆動であるソリューションは、その技術の実施に対してコストを高め、その技術を既存のコンピュータシステムに組み込むことを複雑化する可能性がある。
【０００５】
ハードウェアをシステムに追加することを必要としない侵入問題に対するソフトウェア駆動のソリューションの利点が認識されて、この分野ではハードウェア非依存型コンピュータセキュリティ技術が開発されている。ハードウェア非依存型コンピュータシステム技術の例には、Ｗｈｉｔｅらの米国特許第６，５２６，４８８号がある。Ｗｈｉｔｅは、ＰＣウィルスによって生じたコンピュータシステム上の情報へのアクセス及び改竄を制御するソフトウェア駆動の方法を開示している。Ｗｈｉｔｅの技術は、全ての記憶されたデータを、そのうちの少なくとも一つが「ライトリカバブル」パーティションである、パーティションに分割することによって機能する。「ライトリカバブル」パーティションに記憶されたデータへの書き込み又は変更を行うコマンドが発行されると、そのコマンドがその他において実行され、「ライトリカバブル」パーティションを変更して、新しいデータ又は変更されたデータが残りのセッションのためアクセスされる。しかし、この技術はこのようなパーティションを確立することを必要とし、既存データをそこへ移動し、「ライトリカバブル」パーティションに存在しないデータを保護しない。
【０００６】
ソフトウェア駆動のセキュリティの別の例は、Ｔｏｕｂｏｕｌの米国特許第６，４８０，９６２号である。Ｔｏｕｂｏｕｌは、ランタイム中に悪意のあるダウンロード可能なファイルからクライアントコンピュータシステムを保護するシステム及び方法を記述する。悪意のあるダウンロード可能なファイルは、悪意のあるコンピュータコードを格納する外部データソース（例えば、インターネット）から取り込まれたデータである。Ｔｏｕｂｏｕｌの方法によれば、コンピュータシステムは、疑わしいアクティビティを定義するセキュリティルールのセットと、セキュリティルールの侵害の検出に応じて取られるべきセキュリティアクションのセットとを含む。Ｗｈｉｔｅは疑わしいアクションをシステム構成ファイルへの書き込みオペレーション、メモリ、又はプロセッサ時間の過剰使用などとして定義する。しかし、Ｔｏｕｂｏｕｌの技術は、「テーブル」又は「リスト」に依存する。アクションがリスト又はテーブルにおける疑わしいアクションの違反でない場合、そのアクションは阻止されない。さらに、悪意のないアクション、又はさもなければ適切なアクションが、疑わしいアクションとして見えるか、又は探知され、セキュリティルールの侵害として阻止される可能性がある。
【０００７】
上記の技術のそれぞれは、それらの意図した目的を達成するためには有用であるが、この分野では、外部ソース（例えば、インターネット）からの悪意のあるコンピュータコードによる侵入の問題に対するより総合的なソリューションを提供するより代替的なコンピュータシステム技術への重大なニーズが今なお存在する。従って、従来のコンピュータシステムセキュリティ技術はかなりハードウェア依存性があったが、すなわち、有用性を達成するため既存のコンピュータシステムにコンポーネントの追加を必要としないソフトウェア駆動のコンピュータシステムセキュリティ技術をもつことがこの分野に有益であろう。その上、データベース（又はリスト若しくはテーブル）に依存せず、かつ、コンピュータ上の既存のデータ又はファイル構造の再区分を必要としないソフトウェア駆動のコンピュータシステムセキュリティ技術をもつことが有益であろう。
【発明の概要】
【０００８】
本データセキュリティ技術は、外部データソースからパーソナルコンピュータ等にダウンロードされる悪意のあるコードの脅威可能性を絶つ。悪意のあるコードは、ウィルス、トロイ、ワーム、及びインターネット、ネットワーク、若しくは、外部データ装置（すなわち、フロッピードライブ、ＣＤ  ＲＯＭディスクなど）のような外部データソースからコンピュータにダウンロードされるものを含む。本発明のソフトウェア技術のアプリケーションがインストールされたコンピュータは、現在知られている全てのハッカー侵入技術による侵入から完全に安全な状態を保つ。ファイル盗用、データ改竄、又はコンピュータ上で動く迷惑なアプリケーション（例えば、ウィルス）は存在し得ない。その上、これらの悪意のあるコードへの暴露から修復するための修復時間及び技術サービスのコストが必要とされない。
【０００９】
本発明のソフトウェア技術は、ファイルスキャン、ウィルス定義パターン、巡回冗長検査（ＣＲＣ）チェック、名前アドレス変換（ＮＡＴ）、又は現在のデータベース駆動のセキュリティ技術の類似した戦略に依拠しない。むしろ、本発明のソフトウェア技術は、コンピュータのシステムアーキテクチャの基礎となり根底を成すある種の不変のハードウェア及びソフトウェアの通信関係を利用して、侵入阻止を保証する。本発明のソフトウェア技術はデータベース駆動でないので、悪意のあるコード定義の更新を必要としない。従って、新しい悪意のあるコード、又は既存の悪意のあるコードの変異に影響されない。さらに、ハッカー、サイバーテロリスト及びインターネット侵略者は、たとえ、ソースコード及び完全な設計仕様書を保有していても、本発明のソフトウェアが実行されているコンピュータシステムを突破できない。先と同様に、これは本発明のセキュリティ機構がデータベース依存でなく、コンピュータのハードウェアとオペレーティングシステムソフトウェアの本質的なアーキテクチャ関係から得られるためである。本発明のソフトウェア技術の導入は複雑でない。ユーザコンピュータがイントラネットネットワーク上にあるならば、殆どの場合に、本発明のソフトウェアの導入は、ユーザの既存のイントラネットネットワークの変更を必要としない。
【００１０】
本パーソナルコンピュータインターネットセキュリティソフトウェアを備えるコンピュータシステムは、ＣＰＵ、データ記憶装置（例えば、ハードドライブ）、一時記憶手段（例えば、ＲＡＭ）、及びオペレーティングシステム（本明細書では、１次オペレーティングシステム、すなわち、ＰＯＳ、例えば、ＷＩＮＤＯＷＳ  ＸＰ（登録商標））のようなパーソナルコンピュータの典型的な要素及び機構を含む。さらに、本発明のソフトウェア技術を備えるコンピュータシステムは、本発明を具現化するソフトウェアアプリケーション、及び外部データソースと有効に通信する少なくとも一つのＩ／Ｏコネクションを含む。典型的に、外部データソースはグローバルコンピュータネットワーク（すなわち、インターネット）である。しかし、イントラネット、ローカルエリアネットワーク及びワイドエリアネットワーク、並びに、別のコンピュータ、パーソナル型コンピュータ、又はワークステーション（例えば、ピアツーピア接続）、リムーバブルデータ記憶装置（すなわち、フロッピーディスク、ＣＤ−ＲＯＭディスク若しくはその他のデータ記憶媒体）のようなその他の外部データソースが本発明によって見込まれている。
【００１１】
本発明のソフトウェアは、コンピュータ上に別個の、実質的に閉じられ、隔離された２次オペレーティング環境（ＳＯＥ）を確立することにより、侵入防衛パーソナルコンピュータシステムを提供する。隔離されたオペレーティング環境内に含まれるのは、２次オペレーティングシステム（ＳＯＳ）であり、これは、１次オペレーティングシステムと実質的に別々に機能し、隔離されたオペレーティング環境内でコンピュータオペレーションを制御する。隔離されたオペレーティング環境は、揮発性メモリ（ＲＡＭ）と（データ記憶装置、例えば、ハードドライブ上の）データストレージの２次オペレーティングシステムへの割り当てを含む。外部データソースからデータへの全てのアクセス及び操作が発生するのは、隔離されたオペレーティング環境の隔離の範囲内である。本発明のソフトウェアは、必要に応じて１次オペレーティングシステムの動作を制限又は変更し、隔離されたオペレーティング環境への外部から到来するコードの隔離を２次オペレーティングシステムの制御下で実現するコーディングを含む。
【００１２】
隔離されたオペレーティング環境は、２次オペレーティングシステムと共に、ブラウザ及び電子メールアプリケーションのようなＳＯＳに関連したソフトウェアアプリケーションを含む。ユーザの希望に応じて、文書処理、表計算、ゲーム、及びその他のアプリケーションを含むその他のソフトウェアアプリケーションが、ＳＯＳの制御下で隔離されたオペレーティング環境内に包含され得る。これらのその他のソフトウェアアプリケーションの包含は、隔離されたオペレーティング環境のサイズ、２次オペレーティングシステムの設計パラメータ、及びユーザのコンピュータのシステム仕様だけによって制限される。
【００１３】
本発明は、外部データソースから得られた悪意のあるコードによる侵入からパーソナルコンピュータ上の１次データを保護する方法を含む。一般に、この方法は、最初に本発明のソフトウェアを具現化するソフトウェアアプリケーションを対象となるコンピュータに組み込むステップを含む。次に、このソフトウェアアプリケーションが実行されて、隔離されたオペレーティング環境がそのコンピュータ上に最初に確立される。隔離されたオペレーティング環境は、２次オペレーティングシステムを含み、アクティブ化の準備ができている。続いて、外部データソースインターフェイスセッションを初期化することによって、（ＲＡＭ内の）揮発性メモリ及び（データ記憶装置上の）一時データストレージの２次オペレーティングシステムへの割り当てを含む、ソフトウェアアプリケーションの更なる実行をアクティブ化する。隔離されたオペレーティング環境条件がセットされ、コンピュータの制御がＳＯＳ内で与えられると、外部データソースとの接続性が２次オペレーティングシステムの制御下で確立される。これは外部データソースとの全ての有効な通信を隔離されたオペレーティング環境内に収容された２次オペレーティングシステムに隔離し、外部データソースからの侵入、又はＳＯＳの制御下で隔離されたオペレーティング環境において生じるその他のユーザ動作からコンピュータの１次オペレーティングシステムのデータ及びファイル構造を保護する。
【発明の詳細説明】
【００１４】
ここで図面を参照すると、本発明の好ましい実施形態の詳細が図形的かつ概略的に示されている。図面を通じて類似した要素は類似した番号によって表現され、幾つかの類似した要素は異なる小文字添え字付きの類似した番号によって表現される。
【００１５】
本パーソナルコンピュータインターネットセキュリティシステムは、ユーザのスタンドアローンのファイル又はパーソナルコンピュータを、インターネットのような外部データソースからダウンロードされたファイルに含まれる悪意のあるコードによって侵されることから保護し、インターネットから（例えば、「トロイ」によって）アクセスされることから保護する。本システム１０は、図１に示されたＰＣのようなスタンドアローン型コンピュータ装置を備えるが、図２に示されたイントラネットのようなコンピュータネットワークに適合され得る。図１及び２に示されるように、インターネット１４は、典型的にインターネットノード１６を介してコンピュータ２０によって（又はイントラネット１８の場合には、インターネットサーバ２１によって、図２を参照のこと）アクセスされる。コンピュータ２０（又はイントラネット１８）の構成に依存して、ノード１６は、モデム、ネットワークカード、ルータ、及びコンピュータ２０（又はイントラネット１８）をインターネット１４へ接続する類似のインターフェイスハードウェアのような装置又は装置群を表す。図２の実施例では、イントラネット２０はインターネットサーバコンピュータ１８を介してインターネット１４とインターフェイスをとる。
【００１６】
本発明のソフトウェア技術は、図３におけるパーソナルコンピュータ（ＰＣ）２０のようなスタンドアローン型コンピュータを用いて実施することが意図されている。コンピュータ、すなわち、ＰＣ２０は、如何なる構成或いは製品であってもよく、デスクトップ、ノート型、又はＣＰＵとストレージとインターネットへの接続性を有するその他の装置が含まれる。図３に例示されるような好ましい簡単な実施形態では、本システム１０は、コンピュータ２０を備え、当該コンピュータ２０には、いくつかの入力／出力（Ｉ／Ｏ）ポート２２を介してキーボード、モニタ、及びプリンタのようなある種の周辺装置４０が接続される。また、コンピュータには、入出力ポートを介して、インターネットノード１６が接続される。ノード装置１６は、当技術分野で公知であり、且つ、この目的を達成するためにそれが取り付けられるコンピュータ２０の構成と互換性がある幾つかの装置のうち如何なるもの、例えば、モデム及びルータのようなものであってもよい。周辺装置４０及びノード１６は、図３の例では、コンピュータ２０の外部に示されているが、これらの要素は、ある程度までコンピュータ２０と同じ筐体に組み込まれてもよく、又は同じ筐体を共有することが意図されており、かつ、当業者に理解可能である。その他のコンピュータコンポーネントの構成及び機能と、それらの接続性及び通信相互関係は、この分野において典型的であり、当業者に知られている。インターネットノード１６及びその他の周辺装置４０の制御は、典型的に、それらが取り付けられたコンピュータ２０を介して通常の方法で達成される。Ｉ／Ｏポート２２に加えて、コンピュータ２０は、その他の内部機構、並びに、中央処理ユニット（ＣＰＵ）、一つ以上のデータ記憶装置２６、揮発性メモリ（例えば、ＲＡＭ）２８、及びその他の内部機構及びコンポーネント３０のようなＰＣに典型的なコンポーネントを備える。
【００１７】
図４Ａは本発明のソフトウェア技術を備えるスタンドアローン型ＰＣタイプコンピュータ２０のより詳細な説明図である。本例では、コンピュータとソフトウェアアプリケーションの組み合わせシステム１０は、オフライン状態で示されている。すなわち、ＰＣタイプコンピュータシステムは、ソフトウェアアプリケーションのインストール後に構成されるが、その初期実行前、又はインターネット１４への接続を確立する前に構成される。図４Ａに示されるように、オフライン状態では、内部及び外部のコンポーネントと機構の全ては、相互接続され、ＣＰＵ２４及びコンピュータの１次オペレーティングシステムの制御下にあるのが典型的である。さらに、組み合わせシステム１０の隔離されたオペレーティング環境機構を定義するソフトウェアアプリケーション１００は、コンピュータ２０の記憶装置２６にインストール／ロードされる。記憶装置は、図示されるようにハードドライブでもよく、補助ドライブ（例えば、図示されないフロッピー又はＣＤドライブ）、（ＥＰＲＯＭ、ＣＭＯＳなどのような）チップ、カーネル、ファームウェア又はその他の記憶手段でもよい。当業者は、本発明に適した記憶手段を選択、実施し、記憶手段にマスターイメージファイルをインストールすることが可能である。
【００１８】
さらに図４Ａに表されるように、オフライン状態では、コンピュータ２０は、インターネットとの接続性がなく、これは、ＣＰＵ２４からＩ／Ｏポート２２を経由してノード１６までのコネクションがないことによって示される。さらに、図４Ａは、２次オペレーティング環境を定義するソフトウェアアプリケーション１００がコンピュータ２０上の記憶場所にインストールされるが、まだアクティブ化されていないこと（すなわち、ＣＰＵ２４とのアクティブ通信リンクがないこと）を示す。オフライン状態又は初期インストール状態において、コンピュータ２０は、構成及び動作がそのタイプの典型的なコンピュータと実質的に類似する。
【００１９】
再び図４Ａに示すように、本発明のセキュリティソフトウェアシステムは、好ましくは、コンピュータ２０のデータ記憶装置２６にロード可能であるソフトウェアアプリケーション１００において具現化される。好ましい一実施形態では、データ記憶装置２６はコンピュータ２０のハードドライブであった。しかし、データ記憶装置２６はハードドライブ以外でもよく、現時点で公知の代替物及び将来に開発される代替物（例えば、ＵＳＢデータ記憶装置）が、本発明での実施のために当業者によって容易に選択され得る。ソフトウェアアプリケーション１００は、本発明の種々の機能及び動作を達成するため必要とされるのに応じて、複数のサブアプリケーション又はサブルーチン（１００ａ〜１００ｎ）を有する。好ましい一実施形態では、ソフトウェアアプリケーション１００はコンピュータのハードドライブ２６にロードされたが、ソフトウェアアプリケーション１００は、ソフトウェアをローディングするため、又はそうでなければコンピュータ上で実行するためソフトウェアを利用できるようにするため現在公知であるか、若しくは、開発されることが予想されるような方式のいずれかによってコンピュータ２０にロードされ、又はコンピュータ２０が利用できるようにされる。
【００２０】
初期アクティブ化又は実行時に、ソフトウェアアプリケーション１００は、コンピュータ２０の１次オペレーティングシステムから分離した固有のメモリ及びデータ記憶割り当てを有するソフトウェア定義の隔離されたオペレーティング環境（ＳＯＥ）を生成した。図４Ｂにより詳細に示されるように、初期アクティブ化時に、ソフトウェアアプリケーション１００は、コンピュータ２０の揮発性メモリ（ＲＡＭ）２８内に２次メモリパーティション１２０を割り当て、同様に、２次ストレージパーティション１１６を割り当てた。続けて、これらのメモリ１２０及びデータストレージ１１６の割り当てと、そこに記憶された命令は、隔離されたオペレーティング環境のバブル(bubble)内、すなわち、２次メモリ１２０及び２次ストレージ１１６の割り当ての組み合わせ空間内に、隔離された２次オペレーティングシステム（ＳＯＳ）を複製し動かすためのアイソレーションバブルとして、隔離されたオペレーティング環境を構成する。図示された好ましい実施形態では、ＳＯＳはＷＩＮＤＯＷＳ（登録商標）タイプのオペレーティングシステムであった。しかし、本明細書中の開示内容を考慮して、当業者は、コンピュータ２０の動作プラットフォーム（例えば、ＵＮＩＸ、Ｍａｃｉｎｔｏｓｈなど）に応じて、その他のオペレーティングシステムを本技術と共に実施可能である。
【００２１】
図４Ｂに例示されるように、本システム１０のマスターイメージファイル１００のアクティブ化時に、ＳＯＥを表す２次メモリパーティション１２０がコンピュータ２０の揮発性メモリ２８に作られ、仮想ドライブ（Ｖドライブ）すなわち２次データストレージパーティション１１６がストレージ２６に作られる。この好ましい実施形態を実施する際に、ＳＯＳ１２６は、２次メモリ、すなわち、ＲＡＭのＳＯＥパーティション１２０と、ハードドライブストレージ２６上の２次データパーティション（Ｖドライブ）１１６に作られた。ＲＡＭは本システムを実施する際に使用されるが、ＳＯＳ１２６によって制御可能である同じような応答性と揮発性をもつメモリが本システム１０において実施可能である。同様に、Ｖドライブ１１６は、例えば、その固有の記憶媒体を保有するか、又は固有の記憶媒体とすることによるように、代替手段によって実現してもよい。
【００２２】
マスターイメージファイル１００のアクティブ化は、Ｖドライブ１１６及び２次オペレーティング環境１２６を確立させ、コンピュータ２０を「プレオンライン」状態に置く。この状態では、コンピュータ２０は未だインターネット１４に接続されないが、それらを介してインターネット１４が相互作用すべきＶドライブ１１６及び（ＳＯＳアプリケーションを用いてロードされた）ＳＯＥ１２０は確立されている。ＳＯＳ１２６は、オペレーティングシステム、及びＳＯＳ１２６での実施のために当業者によって選択可能であるブラウザのようなその他のソフトウェアアプリケーションを含む。ＳＯＥ１２０内のＳＯＳ１２６の視覚表現は、モニタ４８での表示のためＣＰＵ２４を介してビデオ信号によって通信される。
【００２３】
図解された好ましい実施形態において、２次オペレーティング環境１２０にロードされたＳＯＳ１２６は、２次データパーティション（Ｖドライブ）１１６と協働してＳＯＥ１２０に再構築された、現実のコンピュータの１次オペレーティングシステムの完全な複製を含む。例示された好ましい実施形態はコンピュータのオペレーティングシステムの完全なコピーを使用して実施されたが、効率上の理由から、ブラウザアプリケーションを動かすために必要なオペレーティングシステムの機構及び補助ソフトウェアアプリケーションだけがＳＯＥ１２０にロードされることも予想される。
【００２４】
マスターイメージファイルアプリケーション１００は、ストレージ２６におけるＶドライブの確立、揮発性メモリ２８におけるＳＯＥ１２０の確立を達成し、ＳＯＥ１２０内に２次すなわち仮想オペレーティングシステム１２６をロードし隔離するために必要とされるソフトウェア定義機構の全てを含む。この対策の予想外の効果は、その結果として、２次オペレーティング環境１２０においてＳＯＳ１２６の制御下で動作するブラウザアプリケーションが同様に隔離されることである。仮想ＳＯＳのブラウザ機能を厳密にＳＯＥ１２０に分離させることにより、現実のコンピュータ（及び１次オペレーティングシステム）２０のＣＰＵ２４とＳＯＳ１２６との間の唯一の信号通信は、ユーザのコンピュータ２０のファイル構造ではなく周辺装置に向けられた、ビデオ、オーディオ及びプリンタ信号のような制御信号である。従って、周辺装置の信号が悪意のあるコードを伝搬するとしても、そのコードは周辺装置から伝わらず、ユーザのコンピュータ２０のファイル構造に影響を与えない。
【００２５】
図４Ｂに示されるように、プレオンライン状態では、マスターイメージファイルアプリケーション１００とＣＰＵ２４との間で機能する接続（両矢印）が確立される。これによって、ＳＯＥ１２０がメモリ２８に確立され、ＳＯＳ１２６がＳＯＥ１２０にロード／インストールされる。さらに、マスターイメージファイル１００の先のアクティブ化のときから未だ存在していないならば、データストレージパーティション（Ｖドライブ）１１６を記憶装置２６上に確立させる。しかし、ＣＰＵ２４とインターネットノード１６との間に機能する接続は未だ存在しない。Ｖドライブ１１６及びＳＯＥ１２０が確立され、ＳＯＳ１２６がロードされると、ユーザは、自分がキーボード／マウス装置４４及びコンピュータのモニタ４８を介してコンピュータ２０の現実の／１次オペレーティングシステムにアクセスするのと同様の方式で、ＳＯＳ１２６にアクセス可能である。
【００２６】
コンピュータ２０がプレオンライン状態になると、ユーザは、コンピュータを「オンライン」状態に置くため、ＳＯＥ１２０のアイソレーションからＳＯＳ１２６を介してインターネット１４にアクセスする。オンライン状態では、図４Ｃに例示されるように、マスターイメージアプリケーションソフトウェア１００は主な機能を完了し、実質的にＣＰＵ２４へ直接的に接続されなくなる。しかし、通信は、Ｉ／Ｏポート２２を通る接続（両矢印）によって示されるように、コンピュータ２０とインターネットノード１６との間に確立される。ブラウザ及び通信プロトコルのような一つ以上のＳＯＳアプリケーション１２６は、接続を確立し、コンピュータ２０がインターネット１４と通信できるようにするため使用される。インターネットは、今度は、ＳＯＥ１２０のアイソレーション内のＳＯＳ１２６を介してアクセスされる。
【００２７】
ＳＯＥ１２０で動くＳＯＳ１２６のビデオ表現は、１次ＯＳのビデオディスプレイ５４に積み重ねられたＳＯＳデスクトップビデオオーバーレイ５６として、モニタ４８に表示される。図５を参照されたい。ＳＯＥ１２０で動くＳＯＳ１２６はＳＯＳビデオオーバーレイ５６から制御される。
【００２８】
表Iは本発明のソフトウェアの要件の全般的なアウトラインである。表IIは、他の教示内容及び本明細書に記載された図と組み合わせて、当業者が本発明を実施することを可能にするために十分な本発明のソフトウェアの要件の詳細なアウトラインである。さらに、当業者は、これらの教示内容に鑑みて、要件が記載される順序及びそれらのグループ分けは、本明細書に記載され、請求項に記載された本発明の範囲から逸脱することなく変形されることが理解できるであろう。
【００２９】
表Ｉ
ソフトウェアの全般的な要件のアウトライン
１  要求される状態及びモード
１．１  インストール状態
１．２  立ち上げ状態
１．２．１  ２次オペレーティング環境の初期化／確立
１．２．２  ２次オペレーティングシステムの立ち上げ
１．３  動作モード
１．３．１  正常モード動作
１．３．２  セーフモード動作
１．３．３  異常モード動作：シャットダウンの原因になるエラー条件
１．４  シャットダウン
１．４．１  ２次オペレーティングシステムのシャットダウン
１．４．２  ２次オペレーティング環境のシャットダウン
２  ２次オペレーティング環境（ＳＯＥ）要件
２．１  ２次オペレーティング環境条件の設定
２．１．１  ＳＯＳのためのメモリ（ＲＡＭ）の領域の割り当て
２．１．２  ＣＰＵへの接続のオープン
２．１．３  外部データソース（インターネット）への接続のオープン
２．１．４  データ記憶装置（ハードドライブ）への接続のオープン
２．１．５  ビデオカードへの接続のオープン
２．１．６  サウンドカードへの接続のオープン
２．１．７  プリンタへの接続のオープン
２．１．８  キーボードへの接続のオープン
２．１．９  マウスへの接続のオープン
２．２  ＰＯＳとＳＯＳとの間のネットワークブリッジの形成
２．３  イントラネットアクセス許可の設定
２．４  インターネットアクセス許可の設定
２．５  ファイルアクセス許可の設定
２．６  ファイル共有の設定
３  ２次オペレーティングシステム（ＳＯＳ）のシステム仕様
３．１  ２次オペレーティングシステム（ＳＯＳ）プラットフォームアプリケーションの実行
３．２  ＳＯＳのインストール
３．２．１  プレインストール条件のチェック
３．２．１．１  ＰＯＳ互換性のチェック
３．２．１．２  プロセッサ互換性のチェック
３．２．１．３  十分なメモリ（ＲＡＭ）のチェック
３．２．１．４  十分なデータストレージ（ハードディスク）空間のチェック
３．２．１．５  外部データソース（インターネット）条件のチェック
３．２．２  パーティションのチェック及び設定
３．２．２．１  ＳＯＳ一時データストレージパーティションの作成
３．２．２．２  ＳＯＳユーザ保存データストレージパーティションの作成
３．２．２．３  ＳＯＳアプリケーションファイルのコピー
３．２．２．４  ＰＯＳファイルの更新
３．２．３  許可の設定
３．２．３．１  プログラムレジストリエントリーの更新
３．２．３．２  イントラネット許可の設定
３．２．３．３  インターネット許可の設定
３．２．４  ファイルの復号化とインストール
３．２．５  ソフトウェアのアクティブ化
３．２．６  ショートカットの確立（オプション）
３．２．７  電子登録（オプション）
３．３  ＳＯＳの立ち上げ／初期化
３．３．１  ＳＯＳイメージファイルの新たなコピーの作成
３．３．２  メモリ（ＲＡＭ）のＳＯＳへの割り当て
３．３．３  ＳＯＳのメモリへのロード
３．３．４  データストレージ（ハードドライブ）パーティションとの接続の確立
３．３．４．１  ＳＯＳの一時データストレージパーティションへのリンク
３．３．４．２  ＳＯＳのユーザ保存データストレージパーティションへのリンク
３．３．４．３  ＳＯＳのＰＯＳへの読み取り専用リンク
３．３．５  イントラネットアクセス及びアクティビティの一時停止
３．３．６  外部データソース（インターネット）接続の確立
３．４  ＳＯＳの実行
３．４．１  セーフモード動作
３．４．１．１  マスターファイルの更新／変更
３．４．１．２  ＰＯＳへの制限アクセスの許可
３．４．２  正常モード動作
３．４．２．１  インターネットアクセスインターフェイスのオープン
３．４．２．２  ユーザ保存データストレージパーティションへのアクセスの確立
３．４．２．３  ユーザ保存データ／ファイルのユーザ保存パーティションへの書き込み
３．４．２．４  一時データストレージパーティションへのアクセスの確立
３．４．２．５  一時データストレージパーティションへの一時データ／ファイルの書き込み
３．４．２．６  ＰＯＳパーティションへのアクセスの最大限度
４  ＳＯＳ動作の終了とＳＯＥのクローズ
４．１  ＳＯＳの異常終了（エラー条件）
４．２  ＳＯＳ動作の正常終了とＳＯＥのクローズ
４．２．１  インターネットからの切断
４．２．１．１  インターネットインターフェイスのクローズ
４．２．２  ＳＯＳパーティションからの切断
４．２．２．１  ＳＯＳ一時データストレージパーティションからの切断
４．２．２．２  ユーザ保存データストレージパーティションからの切断
４．２．２．３  ＳＯＳに割り当てられたメモリ（ＲＡＭ）の開放
４．２．２．４  ＳＯＳ起動パーティションの一時停止
４．２．３  ＰＯＳへのイントラネット接続の復元
５  ＳＯＥ及びＳＯＳのアンインストールコンポーネント（オプション）
【００３０】
表II
２次オペレーティング環境及びシステム（ＳＯＳ）のソフトウェア要件仕様
全般的な要件
全般的な要件は、本発明の技術の２次オペレーティング環境（ＳＯＥ）及び２次オペレーティングシステム（ＳＯＳ）のより多くの要件を特定するセクションに分割される。注：これらの要件はＯＳＡを表すが、当業者は、本発明のソフトウェア技術を具現化するときに、全般的な要件の詳細がどのように実施されるかを選択することが意図されている。
１  要求される状態及びモード
このソフトウェアは、一般に以下の機能状態：インストール、立ち上げ、正常動作、セーフ動作、正常シャットダウン、及び異常シャットダウンを具現化する。
・インストール状態は、ソフトウェアアプリケーションがコンピュータにインストールされるか、又は常駐するが、コンピュータの１次ファイル、レジストリ、及びデータがそのインストールされたソフトウェアの存在によって影響を受けない条件を表す。
・立ち上げ状態は、コンピュータに常駐するソフトウェアアプリケーションが最初にアクティブ化されるか、又はインストール状態からアクティブ化される条件を表す。この状態では、２次オペレーティング環境が確立され、ＳＯＳ及び関連したアプリケーションが２次オペレーティング環境にロードされる。
・正常動作状態は、ソフトウェアアプリケーションが立ち上げ状態を実行し完了した条件を表す。この状態では、インターネットのような外部データソースとのアクティブ通信セッションが開始され、持続される。
・正常シャットダウン状態は、アクティブ通信セッションが終了し、本発明のソフトウェア技術がインストール状態又は立ち上げ状態に戻る条件を表す。
・異常シャットダウン状態は、ソフトウェアの実行中の異常機能又は動作の発生時、又はＳＯＳ、若しくは、ソフトウェア動作が異常シャットダウン状態へのエントリーを要求されるときに当業者によって選択される関連したアプリケーションのその他のエラー条件時に、ソフトウェアが入るデフォルト状態を表す。異常シャットダウン状態へのエントリーの結果として、本発明のソフトウェア技術は、異常シャットダウン状態の原因になるエラー又は不良条件の性質に応じて、インストール状態又は立ち上げ状態に戻る。
１．１  インストール状態
インストール状態では、本発明のソフトウェアのマスターファイルはコンピュータのデータ記憶装置（例えば、ハードドライブ）に書き込まれる。インストール中に、ソフトウェアアプリケーションのマスターファイル（すなわち、インストールファイルを除くすべて）がデータ記憶装置にコピーされる。さらに、インストール中に、初期チェックが行われ、コンピュータが本ソフトウェアアプリケーションの最小システム要件を満たすこと、及びソフトウェアアプリケーションのすべてのコンポーネントファイルの完全なインストールがうまく達成されていることを確認する。
インストール状態又はモードでは、本発明のソフトウェアアプリケーションは、必要に応じて、ＲＡＭ、データ記憶空間、オペレーティングシステムのバージョン、及びその他の条件の互換性について、１次オペレーティングシステムをチェックする。いずれかの条件が満たされないならば、ユーザに通知がなされ、インストールファイルが除去され、インストールが中止される。ソフトウェアアプリケーションは、１次オペレーティングシステムを介した外部データソース（インターネット）への接続を禁止する要求に応じて、１次オペレーティングシステムと２次オペレーティング環境／ＳＯＳの両方の許可及びレジストリエントリーを設定する。好ましくは、本ソフトウェアアプリケーションは、ショートカット（アイコン）を１次オペレーティングシステムのデスクトップ上のＳＯＳに置く。
オプションとして、ソフトウェアはそのインストールを登録する。付加的なインストール状態オプションは、前のインストールをチェックし、現在のインストールのＣＤ−ＲＯＭキーを確認し、ソフトウェアを電子登録する本ソフトウェアアプリケーションを含む。
１．２  立ち上げ状態
立ち上げ状態では、２次オペレーティング環境バブルが確立され、ＳＯＳ及び関連したアプリケーションとファイルがその２次オペレーティング環境にロードされる。
１．２．１  ２次オペレーティング環境の初期化／確立
初期化中に、２次オペレーティング環境（ＳＯＥ）がメモリ及びストレージ空間の割り当てによって確立され、１次オペレーティングから隔離されたＳＯＥバブルを形成するために許可が設定される。ＳＯＥはＳＯＳが常駐する１次オペレーティングシステムの上に位置する隔離された中間環境（バブル）を提供する。２次オペレーティング環境はＳＯＳがアクティブ化される前に完全に確立されなければならない。
１．２．２  ２次オペレーティングシステムの立ち上げ
マスターイメージのコピーはＳＯＥ内に置かれる。マスターイメージのコピーはＳＯＥ内でＳＯＳを確立するために実行される。
１．３  動作モード
好ましくは、ＳＯＳのため利用されるオペレーティングシステムは、正常動作モード及びセーフ動作モードの二つの動作モードで実行できる。本発明を実施するため当業者が適応することができるこのようなオペレーティングシステムの例は、種々のＭｉｃｒｏｓｏｆｔ  ＷＩＮＤＯＷＳ（登録商標）オペレーティングシステム製品、特に、ＷＩＮＤＯＷＳ  ９８（登録商標）以降を含む。両方のモードは２次オペレーティング環境バブル内で動く。
１．３．１  正常モード動作
正常動作モードでは、ユーザはＰＯＳ上に位置するファイルに読み出し専用アクセス件をもつ。インターネットへの接続はオプション的である。インターネットからダウンロードされたすべてのファイルはＳＯＳパーティションに記憶される。
１．３．２  セーフモード動作
セーフ動作モードは、一般に、典型的な既成のオペレーティングシステム製品のセーフモード機構の機能性を有する。しかし、典型的な既成のオペレーティングシステム製品及び２次オペレーティング環境は、
・選択された、又はすべての外部データソースへのアクセス（特に読み出し又は受信アクセス）がセーフモードで禁止されること、及び
・ユーザが１次オペレーティングシステムに（例えば、ハードドライブに）記憶された選択されたファイルへのアクセス権（例えば、読み出し専用）を有すること
を提供するため必要に応じて変更される。
このモードは、１次オペレーティングシステムから２次オペレーティング環境に、読み出し専用アクセス下のＳＯＳによるアクセスのために、所望の補助アプリケーションを転送又はロードするために使用される。このアクセスは拡張することができ、ストレージ内のマスターソフトウェアアプリケーションのセクション又はサブファイルの変更が、所望の補助アプリケーションを２次オペレーティング環境及びＳＯＳの将来のアクティブ化において含むことを可能にする。オプションとして、２次オペレーティング環境及びＳＯＳによって適切な許可を設定することによって、このモードを使用して、選択されたファイル、例えば、ＳＯＳパーティションからＰＯＳハードウェアへのＳＯＳ転送ファイルに含まれる悪意のあるコードを収容する可能性がないファイルタイプを、ＳＯＳから１次オペレーティングシステムへ転送する（書き込む）ことができる。このモードでは、インターネット接続はない。
１．３．３  異常モード動作：シャットダウンの原因になるエラー条件
異常条件を遮断し、異常条件に作用する能力は、選択された既成のソフトウェアで供給されたものを超えて与えられない。
１．４  シャットダウン
１．４．１  ２次オペレーティングシステムのシャットダウン
ユーザからのコマンド時、ＳＯＳはシャットダウンし、ＳＯＳの制御下で動くすべての関連したアプリケーションを閉じる。ＳＯＳによって開かれたすべてのハードウェア接続は閉じられる。
１．４．２  ２次オペレーティング環境のシャットダウン
ＳＯＳのシャットダウン時、ＳＯＥは動作を停止し、すべてのウィンドウを閉じ、外部ＳＯＥ接続を終了する。
２  ２次オペレーティング環境（ＳＯＥ）要件
ＳＯＥは１次オペレーティングシステムとＳＯＳとの間に通信ブリッジを提供する。ＳＯＥはそのＳＯＳを動かすための１次オペレーティングシステムと実質的に独立した２次オペレーティング環境（又はバブル）をさらに提供する。２次オペレーティング環境は、ＣＥを含むＷＩＮＤＯＷＳオペレーティングシステム、ＢＯＣＨＳ、又は２次オペレーティング環境バブル内での動作のため適応若しくは作成されたその他のオペレーティングシステムのようなＳＯＳを動かすためのバブル環境を提供する。
２．１  ２次オペレーティング環境条件の設定
２次オペレーティング環境に関連したソフトウェア又はマスターファイルの一部の実行は、２次オペレーティング環境を作成し設定する。ＳＯＥは、１次オペレーティング環境内で隔離された実質的に別個の環境「バブル」を提供し、その環境内では、別個のスタンドアローン型オペレーティングシステム−ＳＯＳをロードし実行する能力がある。標準的なインターフェイス又はエミュレータは、１次オペレーティング環境とＳＯＳとの間の通信ブリッジを容易化するため利用され、ＳＯＳに必要な入力及び出力能力を与える。
２．１．１  ＳＯＳのためのメモリ（ＲＡＭ）の領域の割り当て
ＳＯＥコードの実行は、ＳＯＳを動作させるために十分なバブル環境としてメモリ（ＲＡＭパーティション）の割り当てをもたらす。ＲＡＭパーティションサイズは、ＳＯＳと、そのＳＯＳに関連した実行中のすべてのアプリケーションを動作させるために十分でなければならない。
２．１．２  ＣＰＵへの接続のオープン
選択されたＳＯＥ環境に依存して、ＣＰＵがエミュレートされるか、又はＰＯＳ  ＣＰＵへの接続が行わなければならない。
２．１．３  外部データソース（インターネット）への接続のオープン
ＳＯＳはインターネットサーバ又はルータからのＤＣＨＰを受け取る。
２．１．４  データ記憶装置（ハードドライブ）への接続のオープン
最小限のＴＢＤ利用可能なディスク空間はＳＯＥのインストール及び動作のために利用できる。この要件は選択され導入されたＳＯＥの機能である。十分なディスク空間がオペレーティングシステム、一時的なファイル、及びユーザ保存ファイルを格納するため利用できる。これらのファイルはＳＯＳソフトウェアによって定められたパーティションに置かれる。
以下の４個のハードドライブパーティションが開設される。
１．読み出し専用モードにおけるＳＯＳイメージファイルパーティション。
２．読み出し書き込みモードにおけるＳＯＳユーザ保存パーティション。
３．読み出し書き込みモードにおけるＳＯＳ一時パーティション。
４．読み出し専用モードにおけるＰＯＳパーティション。
２．１．５  ビデオカードへの接続のオープン
ビデオカードは、ＳＶＧＡ、２５６色、６４０×４８０若しくは８００×６００であると仮定する。好ましくは、ビデオ用の標準ＳＶＧＡドライバがエミュレートされる。当業者によって理解されるように、この分野の発展と共に、当業者はその他のビデオカード又はドライバが本発明において実施可能であることがわかる。
２．１．６  サウンドカードへの接続のオープン
好ましい一実施形態では、汎用サウンドドライバがＳＯＳ内のアプリケーションからサウンド出力を受け取るため使用される。ドライバは、次に、このサウンドデータをＰＯＳへ経路制御し、ＰＯＳにおいてそのサウンドデータはそのＰＯＳに備わっているサウンドドライバによって解釈される。サウンドデータを解釈のためＰＯＳへそのまま伝達するようなその他のサウンド処理オプションが当業者によって利用可能であり、選択可能である。
２．１．７  プリンタへの接続のオープン
プリンタへ向けられたすべての出力はプリントジョブとしてＰＯＳへ転送される（フォーマットＴＢＤ−ＲＡＷ又はＡＳＣＩＩテキストでもよい）。
２．１．８  キーボードへの接続のオープン
標準的なキーボード入力はＳＯＳがＰＯＳのアクティブウィンドウであるときに許可される。
２．１．９  マウスへの接続のオープン
標準的なマウス入力はＳＯＳがＰＯＳのアクティブウィンドウであるときに許可される。
２．２  ＰＯＳとＳＯＳとの間のネットワークブリッジの形成
ネットワークブリッジはＳＯＳとＰＯＳとの間に形成され、ＳＯＳはデフォルトＩＰアドレスが割り当てられる。
２．３  イントラネットアクセス許可の設定
ユーザはＳＯＥ内からのデフォルトゲートウェイに制限されたアクセス権を有する。さらに、ＰＯＳは、ＳＯＳがアクティブである限り、ＳＯＳとの間のデータの受け渡しを除いて、イントラネットアクティビティの開始又は受信を阻止される。
２．４  インターネットアクセス許可の設定
ユーザはＳＯＥからインターネットへの完全なアクセス権を有する。インターネットから受信された情報はユーザ保存パーティション及び一時パーティションに格納される。
すべての入力データは、ＩＰアドレスとは無関係に、ＳＯＳへ経路制御され、すべての出力データは、ＩＰアドレスとは無関係に、デフォルトゲートウェイへ経路制御される。
２．５  ファイルアクセス許可の設定
ユーザは、インターネットからＳＯＳ内にダウンロードされたファイルへの完全なアクセス権を有する。
ユーザはＰＯＳに記憶されたファイルへのアクセス権を有する。読み出し専用アクセスは許可される。書き込みアクセスは許可されない。
２．６  ファイル共有の設定
ＳＯＳはユーザ保存パーティションに記憶されたファイルをＰＯＳへ書き出す能力をもつ。ファイルは、悪意のあるコードのＰＯＳ環境への取り込みを最小限に抑えるような方式で書き出される。ファイルは、悪意のあるコードのＰＯＳパーティションへの取り込みを防止するため、ファイル拡張子に基づいてフィルタリングされるか、又は害のないバージョンのデータタイプに再フォーマットされる。
３  ２次オペレーティングシステム（ＳＯＳ）のシステム仕様
ＳＯＳはユーザから見えるソフトウェアの部分である。このレイヤはインターネットにアクセスするため使用されるオペレーティングシステムを提供する。ＳＯＳはＳＯＥ内のレイヤであって、ＰＯＳより上位且つ独立のレイヤに常駐する。
３．１  ２次オペレーティングシステム（ＳＯＳ）プラットフォームアプリケーションの実行
好ましい一実施形態では、ＳＯＳによって利用されるオペレーティングシステムは市販され、既成である。ＳＯＳと共にうまく実施されているオペレーティングシステムの実施例には、Ｗｉｎｄｏｗｓ  ９８、Ｗｉｎｄｏｗｓ  ＣＥ、Ｗｉｎｄｏｗｓ  ＸＰ及びＬｉｎｉｘが含まれる。
ＳＯＳ動作ファイルのマスターコピーはＰＯＳに常駐する。ＳＯＳのマスターコピーは、ＳＯＳが正常モードで動いているときに、変更から保護される。２００メガバイト（これは選択されたＳＯＳオペレーティングシステムに基づいて変更される）の最小のディスク空間が、ＳＯＳマスターコピーのためにＰＯＳにおいて利用可能である。２００メガバイト（これは選択されたＳＯＳオペレーティングシステムに基づいて変更される）の最小のディスク空間が、復号化後にＳＯＳのオペレーショナルコピーのためにＳＯＥにおいて利用可能である。
このＳＯＳのオペレーショナルコピーは、ＰＯＳに存在するときのＳＯＳのマスターコピーのコピーである。
３．２  ＳＯＳのインストール
ＳＯＳソフトウェアイメージはプレインストールされたイメージとしてユーザに配布される。ＳＯＳインストールコンポーネントは、ＰＯＳ内のＳＯＳのマスターコピーからＳＯＳのオペレーショナルコピーをコピーする。ＳＯＳは２次オペレーティング環境（ＳＯＥ）にインストールされる。
ＳＯＳインストールコンポーネントは、選択されたＳＯＳに基づくＴＢＤの通り、１次ＯＳ／レジストリの許可を設定する。典型的なセッティングはネットワーク許可、ＤＬＬ登録などである。
ＳＯＳのインストールコンポーネントは、オペレーショナルＳＯＳによる使用のために三つのパーティションを作成する。これらのパーティションは、ＳＯＳイメージパーティションと、ユーザ保存パーティションと、一時パーティションである。ＰＯＳと、読み出し専用モードにおけるそのコンポーネント及びファイルのすべては、ＳＯＳによって第４のパーティションとしてみなされる。
ＳＯＳのインストールコンポーネントは、ＳＯＳのユーザ保存パーティション内にすべてのエラーメッセージ及びログファイルを保存する。
ＳＯＳインストールコンポーネントは、オペレーショナルＳＯＳの使用のためにアイコンファイルを作成する。セーフモード用の一つのアイコンと通常モード用の第２のアイコンの２個のアイコンが存在する。
必要に応じて、ＳＯＳのインストールコンポーネントは、ＰＯＳの再起動を許可して、インストールを完了し、ＳＯＳの適切な動作に必要なセッティングを提供する。
３．２．１  プレインストール条件のチェック
インストール条件はＳＯＳがインストール可能になる前に確認される。インストール要件が満たされないならば、ユーザに通知がなされ、インストールは中止される。
３．２．１．１  ＰＯＳ互換性のチェック
ＳＯＥ内で動作するＳＯＳとの互換性についてＰＯＳをチェックする。
３．２．１．２  プロセッサ互換性のチェック
インストールプログラムは最低限のプロセッサタイプをチェックする。プロセッサは少なくともＰｅｎｔｉｕｍ（登録商標）  ３又は同等品である。エラー時、インストールプログラムはユーザにエラーを通知し、インストールを中止する。
３．２．１．３  十分なメモリ（ＲＡＭ）のチェック
インストールプログラムは十分なＲＡＭをチェックする。インストールのための最低限のＲＡＭ要件は約６４メガバイト、又は当業者によって選択可能なその他の量である。エラー時、インストールプログラムはユーザにエラーを通知し、インストールを中止する。
３．２．１．４  十分なデータストレージ（ハードディスク）空間のチェック
インストールプログラムは十分な空きハードドライブ空間をチェックする。最低限のハードドライブ空間（選択されたＳＯＳオペレーティングシステムに依存するＴＢＤ）。最低限のパーティションサイズは、ＳＯＳパーティション、ユーザ保存パーティション、及び一時パーティションを収容するために十分である。付加的な空間がユーザ保存パーティション及び一時パーティションの成長を可能にするために利用可能である。エラー時、インストールプログラムはユーザに通知し、インストールを中止する。
３．２．１．５  外部データソース（インターネット）条件のチェック
標準的なインターネット接続が許可される。これは、ダイアルアップ又はネットワーク接続のいずれでもよい。インターネット接続がネットワークベースであるならば、インストール中に決定されたデフォルトＩＰアドレスが使用される。ユーザがダイアルアップ接続でインターネットに接続するならば、ソフトウェアはＰＯＳ内のデフォルトダイアルアップネットワーク化セッティングからのセッティングを受け付ける。エラー時、インストールプログラムはユーザにエラーを通知し、インストールを中止する。
３．２．２  パーティションのチェック及び設定
３．２．２．１  ＳＯＳ一時データストレージパーティションの作成
これはＰＯＳハードドライブに常駐するファイルである。最初にＳＯＳを作動させるとき、一時パーティションは内部ファイル割り当てテーブルを格納するために十分な大きさであればよい。当該ファイルは付加的なファイルを収容するために拡大縮小可能である。このパーティションはＳＯＳが終了するときに削除される。このパーティションはＳＯＳの立ち上げ毎に空白の一時パーティションの新たなコピーで置き換えられる。
３．２．２．２  ＳＯＳユーザ保存データストレージパーティションの作成
これはＰＯＳハードドライブに常駐するファイルである。そのファイルは付加的なファイルを収容し、及び／又は既存のファイルを削除するために拡大縮小可能である。
３．２．２．３  ＳＯＳアプリケーションファイルのコピー
インストールプログラムは、ＳＯＳオペレーティングシステムファイルをハードドライブ上のＰＯＳパーティションにユーザによって指定されたフォルダにコピーする。インストールプログラムは、これらのファイルのデフォルトパス及びファイル名を示唆する。ユーザはデフォルトパスを変更可能である。
３．２．２．４  ＰＯＳファイルの更新
ＰＯＳ内の許可は、ＳＯＳアクセスを容易化し、イントラネット、インターネット及びファイルへのユーザアクセスを定義するために更新されなければならない。
３．２．３  許可の設定
３．２．３．１  プログラムレジストリエントリーの更新
ＤＬＬ、ＥＸＥ及びソフトウェアキーがＰＯＳレジストリ及び／又は初期化ファイルに入力される。
３．２．３．２  イントラネット許可の設定
インストールプログラムはユーザイントラネット許可を設定する。セクション２．２．１  イントラネットアクセ許可を参照。
３．２．３．３  インターネット許可の設定
インストールプログラムはユーザインターネット許可を設定する。セクション２．２．２  インターネットアクセス許可を参照。
３．２．４  ファイルの復号化とインストール
インストールファイルが暗号化されているならば、それらのファイルはインストール中に復号化される。これを実現する好ましい手段はユーザに供給された固有のソフトウェアＣＤキーを使用することである。
３．２．５  ソフトウェアのアクティブ化（オプション）
ＣＤキーのインストール及び検証が終了すると、ソフトウェアインストールが終了する。必要に応じて、自動再起動が開始される。再起動時（必要であるならば）、ＳＯＳソフトウェアは電子登録を介して自動的にアクティブ化される（セクション３．２．７を参照）。
３．２．６  ショートカットの確立（オプション）
当業者に知られているように、メニュー項目／ロゴを作成して、ユーザによる本発明のソフトウェアアプリケーションの始動及び／又はアクセスを容易化することができる。
３．２．７  電子登録（オプション）
当業者に知られているように、メニュー項目／ロゴを作成して、インターネット経由のユーザによる本発明のソフトウェアアプリケーションの登録を容易化することができる。
３．３  ＳＯＳの立ち上げ／初期化
ＳＯＳ立ち上げコードは、すべての必要なパーティションの利用可能性を検証する。セクション  ３．２．２を参照。
ＳＯＳマスターコピーはＳＯＳイメージパーティションに書き込まれる。ＳＯＳはＳＯＳイメージパーティションからアクティブ化される。
ユーザはＳＯＳにログインされる。選択されたＳＯＳが備えるデフォルトＳＯＳログインが使用される。
ユーザ保存パーティションはＳＯＳによってアクセス可能であり、ユーザ保存セッティングはＳＯＳに取り込まれる。新たな、空白の一時データパーティションがＳＯＳアクティブ化時に作成される。
ＳＯＳが正常モードでアクティブ化されるならば、インターネット接続は、選択されたＳＯＳによって提供されたデフォルトウェブブラウザ及び電子メールプログラムを使用して確立される。
ＳＯＳがセーフモードでアクティブ化されるならば、インターネット接続は許可されない。
３．３．１  ＳＯＳイメージファイルの新たなコピーの作成
このパーティションはＳＯＳが終了するときに削除される。このパーティションはＳＯＳの立ち上げ毎にＳＯＳオペレーティングシステムパーティションの新たなコピーで置き換えられる。
３．３．２  メモリ（ＲＡＭ）のＳＯＳへの割り当て
利用可能な空きＲＡＭ（セクション  ２．１．１．１  ＳＯＳのためのメモリ（ＲＡＭ）の領域の割り当てを参照）がＳＯＳから利用できるように作成される。
３．３．３  ＳＯＳのメモリへのロード
ＳＯＳの新しいコピーはマスターＳＯＳイメージフォルダから作成される。
３．３．４  データストレージ（ハードドライブ）パーティションとの接続の確立
ハードドライブパーティションへの接続はＳＯＳの使用のために作成される。
３．３．４．１  ＳＯＳの一時データストレージパーティションへのリンク
新しい一時パーティションは読み出し書き込みモードで作成される。
３．３．４．２  ＳＯＳのユーザ保存データストレージパーティションへのリンク
ユーザ保存パーティションへのリンクは読み出し書き込みモードで作成される。
３．３．４．３  ＳＯＳのＰＯＳへの読み取り専用リンク
正常モードでは、ＰＯＳデータは読み出し専用モードでアクセス可能にされる。
３．３．５  イントラネットアクセス及びアクティビティの一時停止
イントラネットアクティビティ（デフォルトゲートウェイ以外）は許可されない。
３．３．６  外部データソース（インターネット）接続の確立
正常モードでは、インターネットへの接続は、インストールで決定されたセッティングを使用してオープンされる。
セーフモードでは、インターネット接続は許可されない。
３．４  ＳＯＳの実行
ユーザはＳＯＳの動作のため２個のモードのうちの一方を選択することが許可される。
３．４．１  セーフモード動作
セーフモードでは、ユーザはインターネットへのアクセス権がない。
３．４．１．１  マスターファイルの変更
ユーザはＳＯＳマスターファイルを変更可能である。許可された許可コンフィギュレーション変更には、選択された壁紙、背景、配色、スクリーンセーバー、画面解像度、及び色深度が含まれる。
ユーザ許可変更はマスターＳＯＳファイルに書き込まれる。
３．４．１．２  ＰＯＳへの制限アクセスの許可
ユーザはＰＯＳハードドライブ上の非ＳＯＳファイルにアクセス可能である。ユーザは、ＳＯＳユーザ保存パーティションからＰＯＳハードドライブ上のフォルダへファイルを移動する選択権がある。ユーザは、ファイルの感染の可能性及びＰＯＳの改竄の可能性を警告される。注：ユーザがエクスポートを開始すると、ユーザ問い合わせ、拒絶、許可又は警告のような通告を送る。ファイル拡張子及び適切なアクションのテーブルが、ネットワークブリッジを越えたＰＯＳへのファイルのエクスポートを許可する前にチェックされる。
３．４．２  正常モード動作
ユーザは、ＳＯＳが正常モードで動いているとき、インターネットへの完全なアクセス権がある。
３．４．２．１  インターネットアクセスインターフェイスのオープン
立ち上げ時、インターネットへの接続はインストール中に取得されたパラメータを使用してオープンされる。
３．４．２．２  ユーザ保存データストレージパーティションへのアクセスの確立
ユーザ保存パーティションは完全な読み出し書き込みアクセスでオープンされる。
３．４．２．３  全てのユーザ保存データのユーザ保存パーティションへの書き込み
インターネットから明示的にダウンロードされたデータはユーザ保存パーティションに保存される。
３．４．２．４  一時データストレージパーティションへのアクセスの確立
ＳＯＳ一時データパーティションは完全な読み出し書き込みアクセスでオープンされる。
３．４．２．５  一時データストレージパーティションへの一時ファイルの書き込み
作業用データ又はファイルはＳＯＳ一時データパーティションに記憶される。
３．４．２．６  ＰＯＳパーティションへのアクセスの最大限度
ユーザは、読み出し専用モードでＳＯＳを使用するために非明示的にＰＯＳハードドライブパーティション（ファイル及びフォルダ）へのアクセスが許可される。アクセス許可は、ＰＯＳ許可が変わらないようにＳＯＳに設定される。
４  ＳＯＳ動作の終了とＳＯＥのクローズ
４．１  ＳＯＳ及び／またはＳＯＥの異常終了（エラー条件）
選択されたＰＯＳ、ＳＯＥ及びＳＯＳのエラー処理を超える付加的なエラー処理は提供されない。ＳＯＳマスターファイル及びＳＯＳ一時パーティションは立ち上げ時に上書きされるので、特殊な処理は異常終了時の一掃から必要とされない。
４．２  ＳＯＳ動作の正常終了とＳＯＥのクローズ
４．２．１  インターネットからの切断
インターネットへの接続は終了する。
４．２．１．１  インターネットインターフェイスのクローズ
インターネットにアクセスするために使用されるすべてのプログラム（ブラウザ、電子メールなど）はシャットダウンされる。
４．２．２  ＳＯＳパーティションからの切断
４．２．２．１  ＳＯＳ一時データストレージパーティションからの切断
ＳＯＳ一時データストレージパーティションは削除される。
４．２．２．２  ユーザ保存データストレージパーティションからの切断
オープンしているユーザ保存ファイルはユーザ保存パーティションに保存され、ユーザ保存パーティションはクローズされる。
４．２．２．３  ＳＯＳに割り当てられたメモリ（ＲＡＭ）の開放
ＳＯＳに割り当てられたＲＡＭは開放される。
４．２．２．４  ＳＯＳ起動パーティションの一時停止
ＳＯＳ起動ファイルはクローズされる。このパーティションはＳＯＳの次のアクティブ化の際に上書きされることに注意すべきである。
４．２．３  ＰＯＳへのイントラネット接続の復元
イントラネットへのＰＯＳ接続は正常動作に戻される。
５  ＳＯＥ及びＳＯＳのアンインストールコンポーネント（オプション）
アンインストールは、ＳＯＳのため独自にインストールされたＳＯＥ及びＳＯＳ、すべての関連したプログラム、ファイル、メニュー項目、並びに、ショートカットを、当業者に知られたいくつかの方式のうちのいずれかにより、１次オペレーティング環境から削除する。
【００３１】
図８Ａ〜８Ｇは表IIに記載されたソフトウェア要件の種々のセクションを説明するブロック図である。
【００３２】
図６Ａに例示されているように、オンライン条件が確立されると、インターネットへの安全なアクセスは、ＳＯＥ１２０のアイソレーションにおいてＳＯＳ１２６の一つ以上のアプリケーション１２６ａ及び１２６ｂを実行することによって達成された。ＳＯＥ１２０の隔離されたインターネットセッションの間に、外部データファイル１３０ａ−ｃは、図６Ｂに例示されるように、インターネット１４からＳＯＥ１２０のメモリにダウンロードされた。インターネットセッション中にアクセスされ、ダウンロードされたファイル１３０ａ−ｃは、ＳＯＥ１２０のメモリパーティションだけに存在することに注意すべきである。ダウンロードされたインターネットファイル１３０ａ−ｃは、ＳＯＥ１２０の揮発性メモリ又はＳＯＳデータパーティション１１６の外側ではコンピュータ２０に決して存在しない。
【００３３】
ダウンロードされたファイル１３０ａ−ｃのいずれかが悪意のあるコード（例えば、ウィルス、ワーム、トロイなど）を含むならば、それらが動作する環境はＳＯＥ１２０のＳＯＳ１２６の範囲内だけにあるか、又は２次データパーティション１１６のアイソレーションの範囲内だけにある。従って、図６に例示されるように、悪意のあるコードによって冒される可能性のあるファイルはＳＯＥ１２０内のファイルのみに限定される。よって、ＳＯＳデータパーティション１１６内のファイルを含めて、たとえＳＯＳファイル１２６ａ及び１２６ｂが改竄されるとしても、これらの改竄されたファイルは、ＳＯＥ１２０だけに存在するか、又はＳＯＳ１２６によってＳＯＥ１２０からオープンされる。その結果、ＳＯＥ１２０の外側の現実のコンピュータ２０上のファイルは改竄されない。
【００３４】
上記の説明は多数の詳述を含むが、それらは発明の範囲の制限ではなく、むしろ、発明の一つ又は別の好ましい実施形態の例示として解釈されるべきである。多数のその他の変形が可能であり、このことは当業者に自明であろう。従って、発明の範囲は、単に実施形態によってではなく、請求項の範囲及びその均等物によって決定されるべきである。
【図面の簡単な説明】
【００３５】
【図１】スタンドアローン型コンピュータとインターネットとの間の典型的な接続スキーム全体のブロック図である。
【図２】イントラネットとインターネットとの間の典型的な接続スキーム全体のブロック図である。
【図３】典型的なコンピュータのある種の内部コンポーネントの一般的な相互接続スキームのブロック図である。
【図４Ａ】コンピュータのデータ記憶装置（ハードドライブ）にロードされた本発明を具現化するソフトウェアアプリケーションを備える典型的なＰＣタイプコンピュータシステムのある種の内部コンポーネントの相互接続スキームを示すブロック図である。
【図４Ｂ】ソフトウェアの初期実行時における典型的なＰＣタイプコンピュータのある種の内部コンポーネントの相互接続スキームを示し、隔離されたオペレーティング環境の確立とそのメモリ及びストレージコンポーネントを例示する本発明のブロック図である。
【図４Ｃ】コンピュータの揮発性メモリ内の２次オペレーティング環境を含む、コンピュータのインターネットへの接続の確立時の状態におけるシステムのコンピュータのある種の内部コンポーネントの相互接続スキームを示す本発明のブロック図である。
【図５】オペレーティングシステムオーバーレイがモニタ画面上に積み重ねて表示されたコンピュータモニタを示す図である。
【図６Ａ】インターネットと接続した状態のコンピュータを示し、（感染した、又は感染していない）インターネットからダウンロードされたファイルの場所がコンピュータの揮発性メモリ内の仮想オペレーティングシステム環境に隔離されることを示す本発明のブロック図である。
【図６Ｂ】インターネットと接続した状態のコンピュータを示し、インターネットからダウンロードされた悪意のあるファイルの動作場所又は影響がコンピュータの揮発性メモリに収容された仮想オペレーティングシステム環境に隔離されることを示す本発明のブロック図である。
【図６Ｃ】インターネットと接続した状態のコンピュータを示し、本発明の「パージ」機能のアクティブ化時に、侵された仮想オペレーティングシステム環境が揮発性メモリ（ＲＡＭ）から消去され、新しい仮想オペレーティングシステム環境がストレージ内のテンプレート／命令から確立されることを示す本発明のブロック図である。
【図７】インターネットとのイントラネットインターフェイスとして構成されたシステムのある種の内部コンポーネントの相互接続スキームを示しており、システムコンピュータがイントラネット用のインターネットサーバコンピュータとなっている本発明のブロック図である。
【図８Ａ】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図８Ｂ】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図８Ｃ】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図８Ｄ】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図８Ｅ】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図８Ｆ】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図８Ｇ】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図１】
2007534039.tif 000003
【図２】
2007534039.tif 000004
【図３】
2007534039.tif 000005
【図４Ａ】
2007534039.tif 000006
【図４Ｂ】
2007534039.tif 000007
【図４Ｃ】
2007534039.tif 000008
【図５】
2007534039.tif 000009
【図６Ａ】
2007534039.tif 000010
【図６Ｂ】
2007534039.tif 000011
【図６Ｃ】
2007534039.tif 000012
【図７】
2007534039.tif 000013
【図８Ａ】
2007534039.tif 000014
【図８Ｂ】
2007534039.tif 000015
【図８Ｃ】
2007534039.tif 000016
【図８Ｄ】
2007534039.tif 000017
【図８Ｅ】
2007534039.tif 000018
【図８Ｆ】
2007534039.tif 000019
【図８Ｇ】
2007534039.tif 000020
【手続補正書】
【提出日】平成18年5月2日(2006.5.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
侵入防衛パーソナルコンピュータシステムであって、
中央処理装置と、
データストレージ手段と、
メモリ手段と、
１次オペレーティングシステムと、
前記１次オペレーティングシステムから分離して機能する、隔離された２次オペレーティング環境を提供し、該パーソナルコンピュータシステムの動作を前記隔離された２次オペレーティング環境内で制御する仮想マシンオペレーティングシステムと、
外部データソースと有効に通信する少なくとも一つの入出力接続と、
を備え、
該パーソナルコンピュータシステムは、前記外部データソースからダウンロードされるファイルに含まれる悪意のあるコードから保護される、
コンピュータシステム。
【請求項２】
前記外部データソースがグローバルコンピュータネットワークである、請求項１記載のコンピュータシステム。
【請求項３】
前記外部データソースが、コンピュータワークステーション、パーソナル型のコンピュータ、コンピュータドック、ローカルエリアネットワーク、イントラネット、及びワイドエリアネットワークからなる群から選択される少なくとも一つの外部データソースである、請求項１記載のコンピュータシステム。
【請求項４】
前記仮想マシンオペレーティングシステムが、メモリ内の仮想マシン環境とストレージ内の仮想ドライブとを画成するためのソフトウェアと、前記外部データソースとの有効な通信を前記仮想マシン環境及び前記仮想マシンドライブに制限する動作制御ソフトウェアと、を備える、請求項１記載のコンピュータシステム。
【請求項５】
外部データソースからの侵入からパーソナルコンピュータシステムを保護する方法であって、
請求項１に記載された侵入防衛パーソナルコンピュータシステムを用意するステップと、
外部データソースインターフェイスセッションを開始するステップであって、前記外部データソースインターフェイスセッションを開始することによって、請求項１に記載された仮想マシンオペレーティングシステムをアクティブ化させ、メモリ内の仮想マシン環境及びストレージ内の仮想ドライブを画成するステップと、
前記仮想マシンオペレーティングシステムの制御下で前記外部データソースとの接続を確立して、前記外部データソースとの有効な通信を前記仮想マシン環境及び前記仮想ドライブに隔離し、前記コンピュータシステムを前記外部データソースからの侵入から保護するステップと、
を備える方法。
【請求項６】
実行可能な命令としてコンピュータ読み取り可能な媒体に記録され、且つパーソナルコンピュータにインストール可能なソフトウェアアプリケーションであって、
隔離されたオペレーティング環境のための実行可能な命令と、
前記パーソナルコンピュータ上の前記隔離されたオペレーティング環境内で機能する２次オペレーティングシステムのための実行可能な命令と、
を備え、
前記パーソナルコンピュータの１次データファイルが前記外部データソースからの悪意あるコードによってアクセスされることが防止される
ソフトウェアアプリケーション。
【請求項７】
前記隔離されたオペレーティング環境の実行可能な命令は、１次オペレーティングシステム（ＰＯＳ）許可を変更するＰＯＳ許可コードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項８】
前記２次オペレーティングシステムの実行可能な命令は、１次オペレーティングシステム（ＰＯＳ）外部データソースに関連したアクセス許可を変更するＰＯＳ許可コードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項９】
前記外部データソースが、ネットワークノード、外部データ装置、及び入出力装置からなる群から選択された少なくとも一つのソースである、請求項８記載のソフトウェアアプリケーション。
【請求項１０】
前記２次オペレーティングシステムの実行可能な命令は、１次オペレーティングシステム（ＰＯＳ）インターネットに関連した許可を変更するＰＯＳ許可コードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項１１】
前記２次オペレーティングシステムの実行可能な命令は、１次オペレーティングシステム（ＰＯＳ） ｉｎｅｔ許可を変更するＰＯＳ許可コードを含む、請求項７記載のソフトウェアアプリケーション。
【請求項１２】
前記隔離されたオペレーティング環境の実行可能な命令は、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項１３】
前記隔離されたオペレーティング環境の実行可能な命令は、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含み、
前記インストールコードが、前記ソフトウェアアプリケーションの現在のインストール条件をチェックする、請求項１２記載のソフトウェアアプリケーション。
【請求項１４】
前記インストールコードが、前記ソフトウェアアプリケーションの前記現在のインストール条件のチェックを考慮して必要に応じて前記ソフトウェアアプリケーションからのファイルをコピーする、請求項１３記載のソフトウェアアプリケーション。
【請求項１５】
前記インストールコードが、前記ソフトウェアアプリケーションの前記現在のインストール条件のチェックを考慮して必要に応じてショートカットを確立する、請求項１３記載のソフトウェアアプリケーション。
【請求項１６】
前記隔離されたオペレーティング環境の実行可能な命令は、前記隔離されたオペレーティング環境の立ち上げ要件をチェックし設定するコードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項１７】
前記隔離されたオペレーティング環境の立ち上げ要件は、前記２次オペレーティング環境（ＳＯＥ）ファイルの「新しさ」と、揮発性メモリの前記ＳＯＥへの割り当てと、データストレージの前記ＳＯＥへの割り当てと、前記１次オペレーティングシステムのパーティション及び接続の読み出し専用条件と、イントラネットアクティビティの状態と、１次オペレーティングシステムパーティションへのユーザアクセスの読み出し専用条件とを含む、請求項１６記載のソフトウェアアプリケーション。
【請求項１８】
前記隔離されたオペレーティング環境の実行可能な命令は、前記隔離されたオペレーティング環境のランタイム要件をチェックし設定するコードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項１９】
前記隔離されたオペレーティング環境のランタイム要件は、少なくとも二つの実行モードを提供するために設定される、請求項１８記載のソフトウェアアプリケーション。
【請求項２０】
前記隔離されたオペレーティング環境のランタイム要件は、ｉｎｅｔアクセスを含む実行モード及びｉｎｅｔアクセスを含まない実行モードを少なくとも提供するために設定される、請求項１８記載のソフトウェアアプリケーション。
【請求項２１】
前記隔離されたオペレーティング環境の実行可能な命令は、前記隔離されたオペレーティング環境の終了要件をチェックし設定するコードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項２２】
前記隔離されたオペレーティング環境の実行可能な命令は、ｉｎｅｔからの２次オペレーティング環境（ＳＯＥ）の切断、ノードインターフェイスのクローズ、ＳＯＥの揮発性メモリ割り当ての開放、一時データストレージ割り当てのフラッシュ、ＳＯＥファイル及びパーティションからの切断、ＳＯＥ起動ファイルのリフレッシュ、並びに、イントラネット接続の復元を含む、前記隔離されたオペレーティング環境の終了要件をチェックし設定するコードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項２３】
前記隔離されたオペレーティング環境の実行可能な命令は、前記隔離されたオペレーティング環境の要件をチェックし設定するコードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項２４】
前記隔離されたオペレーティング環境の実行可能な命令は、２次オペレーティング環境（ＳＯＥ）のための不揮発性メモリの領域への割り当て及び接続と、データストレージ空間への割り当て及び接続と、前記パーソナルコンピュータの中央処理装置への接続の提供と、外部データソースノードへの接続と、前記コンピュータのビデオカードへの接続の提供と、前記コンピュータのサウンドカードへの接続の提供と、前記コンピュータのプリンタへの接続の提供と、前記コンピュータのマウス及びキーボードへの接続の提供と、前記ＳＯＥの前記２次オペレーティングシステムと前記コンピュータの前記１次オペレーティングシステムとの間のネットワークブリッジの形成とを含む、前記隔離されたオペレーティング環境の要件をチェックし設定するコードを含む、請求項６記載のソフトウェアアプリケーション。
【請求項２５】
外部データソースから得られる悪意のあるコードからパーソナルコンピュータを保護する防衛方法であって、
前記パーソナルコンピュータにインストール可能なソフトウェアアプリケーションをロードするステップであって、該ソフトウェアアプリケーションは前記パーソナルコンピュータの１次データファイルを外部データソースからの悪意のあるコードによるアクセスから保護する、ステップと、
前記ソフトウェアアプリケーションを前記パーソナルコンピュータにインストールするステップであって、該ソフトウェアアプリケーションが２次オペレーティングシステムを含む隔離されたオペレーティング環境を画成し、該２次オペレーティングシステムは前記パーソナルコンピュータ上の１次オペレーティングシステムと連動し且つ別々に機能し、前記インストールされたアプリケーションが１次オペレーティングシステム許可コードを画成して、前記外部データソースに接続可能なノードへのアクセスを前記２次オペレーティングシステムの制御下で前記隔離されたオペレーティング環境に制限する、ステップと、
前記隔離されたオペレーティング環境内で前記ノードを介して外部データソースインターフェイスセッションを開始し、前記セッション中に揮発性メモリ空間及び一時データストレージ空間を前記２次オペレーティングシステムに割り当てるステップと、
前記２次オペレーティングシステムの制御下で前記ノードを介して前記外部データソースとの接続を確立して、前記外部データソースとの有効な通信を前記隔離されたオペレーティング環境に隔離し、前記外部データソースから得られる悪意のあるコードから前記パーソナルコンピュータを保護するステップと、
を備える防衛方法。
【国際調査報告】
2007534039.tif 000021
2007534039.tif 000022