説明

パーソナルコンピュータインターネットセキュリティシステム

パーソナルコンピュータ20にインストール可能なソフトウェアアプリケーション100は、コンピュータの1次データファイルがインターネット14(外部データソース)から取り込まれた悪意のあるコード(例えばウィルス、ワーム及びトロイ)によるアクセスから防止する。マスターファイルは、全ての他のソフトウェアコード及び機能がそこから得られるイメージとしての機能を果たす。マスターイメージファイルのアクティブ化は2次オペレーティング環境(アイソレーションバブル)120を確立し、そこでブラウザ及びその他の所望のアプリケーションを含む2次オペレーティングシステム126がインストールされ、動かされる。コンピュータ全体(1次オペレーティングシステム)20と2次オペレーティングシステム126との間の通信のアクセス許可は、2次オペレーションシステムから発生するオペレーションから1次オペレーティングシステム20上のファイルへのアクセスを防止する。2次オペレーティングシステムのアクティブ化はインターネット(又はその他の外部データソース)への接続が可能にされる前に要求される。

【発明の詳細な説明】
【関連出願】
【0001】
本願は、2003年9月5日に出願された先の出願である米国仮特許出願第10/656,750号の優先権の利益を主張する。
【発明の分野】
【0002】
本発明は電気コンピュータ及びデジタル処理システムに対するサポートの分野におけるものである。より詳細には、本発明は、パーソナルタイプのコンピュータシステムのハードウェア、ソフトウェア及びデータを、外部データソースから生じる悪意のあるコンピュータコードによる破壊、不当な変更、又は不当なアクセスから保護するセキュリティソフトウェア及びプロセスに関係する。
【発明の背景】
【0003】
コンピュータシステムは、侵入者による攻撃にさらされており、当該侵入者は、システムにダウンロードされる悪意のあるコンピュータコードを利用して、コンピュータシステム上に常駐するデータ又はアプリケーションを盗み、又は、改竄し、その他においては、システムの整合性を侵すことがよく知られている。ネットワーク型及びスタンドアローン型の両者のコンピュータシステムが、このような侵入にさらされている。侵入は、典型的には、コンピュータシステムの制御ソフトウェアの一部分の内容にアクセスし、その内容を変更する悪意のあるコードによるものである。失われたか、又は侵されたデータと、このような侵入からの復旧のコストは、度を越えたものであり、壊滅的でさえある。したがって、この分野では、これらの攻撃に対する感染性を推定し、又は防止する技術を開発することが、非常に強く動機付けられ続けている。
【0004】
Helbig, Sr.の米国特許第6,578,140号は、侵入者の悪意のあるコードによる侵入からコンピュータシステムのセキュリティを高める方法及び装置の一例である。しかし、Helbigの技術は、その有用性を達成するためにコプロセッサ装置及びマルチ論理コントローラ回路を必要とするので、少なくとも部分的にハードウェア依存性がある。ハードウェア依存性のセキュリティ技術の別の例は、Policardの米国特許第6,578,140号に開示されている。Policardの技術は、CPUをもつ二つの別個のマザーボードと、二つの別個のオペレーティングシステムとにより構成されて単一ケースに収容されており、2台のCPUとオペレーティングは補助の及び/又は外部のハードウェア(例えば、プリンタ、モデム、モニタ及びキーボード)を共有する。しかし、この技術は、ある種の中央コンポーネントの重複を必要とし、この技術の実施に係るコストを相当に高める。一般に、ハードウェア駆動を必要とするか、又はハードウェア駆動であるソリューションは、その技術の実施に対してコストを高め、その技術を既存のコンピュータシステムに組み込むことを複雑化する可能性がある。
【0005】
ハードウェアをシステムに追加することを必要としない侵入問題に対するソフトウェア駆動のソリューションの利点が認識されて、この分野ではハードウェア非依存型コンピュータセキュリティ技術が開発されている。ハードウェア非依存型コンピュータシステム技術の例には、Whiteらの米国特許第6,526,488号がある。Whiteは、PCウィルスによって生じたコンピュータシステム上の情報へのアクセス及び改竄を制御するソフトウェア駆動の方法を開示している。Whiteの技術は、全ての記憶されたデータを、そのうちの少なくとも一つが「ライトリカバブル」パーティションである、パーティションに分割することによって機能する。「ライトリカバブル」パーティションに記憶されたデータへの書き込み又は変更を行うコマンドが発行されると、そのコマンドがその他において実行され、「ライトリカバブル」パーティションを変更して、新しいデータ又は変更されたデータが残りのセッションのためアクセスされる。しかし、この技術はこのようなパーティションを確立することを必要とし、既存データをそこへ移動し、「ライトリカバブル」パーティションに存在しないデータを保護しない。
【0006】
ソフトウェア駆動のセキュリティの別の例は、Touboulの米国特許第6,480,962号である。Touboulは、ランタイム中に悪意のあるダウンロード可能なファイルからクライアントコンピュータシステムを保護するシステム及び方法を記述する。悪意のあるダウンロード可能なファイルは、悪意のあるコンピュータコードを格納する外部データソース(例えば、インターネット)から取り込まれたデータである。Touboulの方法によれば、コンピュータシステムは、疑わしいアクティビティを定義するセキュリティルールのセットと、セキュリティルールの侵害の検出に応じて取られるべきセキュリティアクションのセットとを含む。Whiteは疑わしいアクションをシステム構成ファイルへの書き込みオペレーション、メモリ、又はプロセッサ時間の過剰使用などとして定義する。しかし、Touboulの技術は、「テーブル」又は「リスト」に依存する。アクションがリスト又はテーブルにおける疑わしいアクションの違反でない場合、そのアクションは阻止されない。さらに、悪意のないアクション、又はさもなければ適切なアクションが、疑わしいアクションとして見えるか、又は探知され、セキュリティルールの侵害として阻止される可能性がある。
【0007】
上記の技術のそれぞれは、それらの意図した目的を達成するためには有用であるが、この分野では、外部ソース(例えば、インターネット)からの悪意のあるコンピュータコードによる侵入の問題に対するより総合的なソリューションを提供するより代替的なコンピュータシステム技術への重大なニーズが今なお存在する。従って、従来のコンピュータシステムセキュリティ技術はかなりハードウェア依存性があったが、すなわち、有用性を達成するため既存のコンピュータシステムにコンポーネントの追加を必要としないソフトウェア駆動のコンピュータシステムセキュリティ技術をもつことがこの分野に有益であろう。その上、データベース(又はリスト若しくはテーブル)に依存せず、かつ、コンピュータ上の既存のデータ又はファイル構造の再区分を必要としないソフトウェア駆動のコンピュータシステムセキュリティ技術をもつことが有益であろう。
【発明の概要】
【0008】
本データセキュリティ技術は、外部データソースからパーソナルコンピュータ等にダウンロードされる悪意のあるコードの脅威可能性を絶つ。悪意のあるコードは、ウィルス、トロイ、ワーム、及びインターネット、ネットワーク、若しくは、外部データ装置(すなわち、フロッピードライブ、CD ROMディスクなど)のような外部データソースからコンピュータにダウンロードされるものを含む。本発明のソフトウェア技術のアプリケーションがインストールされたコンピュータは、現在知られている全てのハッカー侵入技術による侵入から完全に安全な状態を保つ。ファイル盗用、データ改竄、又はコンピュータ上で動く迷惑なアプリケーション(例えば、ウィルス)は存在し得ない。その上、これらの悪意のあるコードへの暴露から修復するための修復時間及び技術サービスのコストが必要とされない。
【0009】
本発明のソフトウェア技術は、ファイルスキャン、ウィルス定義パターン、巡回冗長検査(CRC)チェック、名前アドレス変換(NAT)、又は現在のデータベース駆動のセキュリティ技術の類似した戦略に依拠しない。むしろ、本発明のソフトウェア技術は、コンピュータのシステムアーキテクチャの基礎となり根底を成すある種の不変のハードウェア及びソフトウェアの通信関係を利用して、侵入阻止を保証する。本発明のソフトウェア技術はデータベース駆動でないので、悪意のあるコード定義の更新を必要としない。従って、新しい悪意のあるコード、又は既存の悪意のあるコードの変異に影響されない。さらに、ハッカー、サイバーテロリスト及びインターネット侵略者は、たとえ、ソースコード及び完全な設計仕様書を保有していても、本発明のソフトウェアが実行されているコンピュータシステムを突破できない。先と同様に、これは本発明のセキュリティ機構がデータベース依存でなく、コンピュータのハードウェアとオペレーティングシステムソフトウェアの本質的なアーキテクチャ関係から得られるためである。本発明のソフトウェア技術の導入は複雑でない。ユーザコンピュータがイントラネットネットワーク上にあるならば、殆どの場合に、本発明のソフトウェアの導入は、ユーザの既存のイントラネットネットワークの変更を必要としない。
【0010】
本パーソナルコンピュータインターネットセキュリティソフトウェアを備えるコンピュータシステムは、CPU、データ記憶装置(例えば、ハードドライブ)、一時記憶手段(例えば、RAM)、及びオペレーティングシステム(本明細書では、1次オペレーティングシステム、すなわち、POS、例えば、WINDOWS XP(登録商標))のようなパーソナルコンピュータの典型的な要素及び機構を含む。さらに、本発明のソフトウェア技術を備えるコンピュータシステムは、本発明を具現化するソフトウェアアプリケーション、及び外部データソースと有効に通信する少なくとも一つのI/Oコネクションを含む。典型的に、外部データソースはグローバルコンピュータネットワーク(すなわち、インターネット)である。しかし、イントラネット、ローカルエリアネットワーク及びワイドエリアネットワーク、並びに、別のコンピュータ、パーソナル型コンピュータ、又はワークステーション(例えば、ピアツーピア接続)、リムーバブルデータ記憶装置(すなわち、フロッピーディスク、CD−ROMディスク若しくはその他のデータ記憶媒体)のようなその他の外部データソースが本発明によって見込まれている。
【0011】
本発明のソフトウェアは、コンピュータ上に別個の、実質的に閉じられ、隔離された2次オペレーティング環境(SOE)を確立することにより、侵入防衛パーソナルコンピュータシステムを提供する。隔離されたオペレーティング環境内に含まれるのは、2次オペレーティングシステム(SOS)であり、これは、1次オペレーティングシステムと実質的に別々に機能し、隔離されたオペレーティング環境内でコンピュータオペレーションを制御する。隔離されたオペレーティング環境は、揮発性メモリ(RAM)と(データ記憶装置、例えば、ハードドライブ上の)データストレージの2次オペレーティングシステムへの割り当てを含む。外部データソースからデータへの全てのアクセス及び操作が発生するのは、隔離されたオペレーティング環境の隔離の範囲内である。本発明のソフトウェアは、必要に応じて1次オペレーティングシステムの動作を制限又は変更し、隔離されたオペレーティング環境への外部から到来するコードの隔離を2次オペレーティングシステムの制御下で実現するコーディングを含む。
【0012】
隔離されたオペレーティング環境は、2次オペレーティングシステムと共に、ブラウザ及び電子メールアプリケーションのようなSOSに関連したソフトウェアアプリケーションを含む。ユーザの希望に応じて、文書処理、表計算、ゲーム、及びその他のアプリケーションを含むその他のソフトウェアアプリケーションが、SOSの制御下で隔離されたオペレーティング環境内に包含され得る。これらのその他のソフトウェアアプリケーションの包含は、隔離されたオペレーティング環境のサイズ、2次オペレーティングシステムの設計パラメータ、及びユーザのコンピュータのシステム仕様だけによって制限される。
【0013】
本発明は、外部データソースから得られた悪意のあるコードによる侵入からパーソナルコンピュータ上の1次データを保護する方法を含む。一般に、この方法は、最初に本発明のソフトウェアを具現化するソフトウェアアプリケーションを対象となるコンピュータに組み込むステップを含む。次に、このソフトウェアアプリケーションが実行されて、隔離されたオペレーティング環境がそのコンピュータ上に最初に確立される。隔離されたオペレーティング環境は、2次オペレーティングシステムを含み、アクティブ化の準備ができている。続いて、外部データソースインターフェイスセッションを初期化することによって、(RAM内の)揮発性メモリ及び(データ記憶装置上の)一時データストレージの2次オペレーティングシステムへの割り当てを含む、ソフトウェアアプリケーションの更なる実行をアクティブ化する。隔離されたオペレーティング環境条件がセットされ、コンピュータの制御がSOS内で与えられると、外部データソースとの接続性が2次オペレーティングシステムの制御下で確立される。これは外部データソースとの全ての有効な通信を隔離されたオペレーティング環境内に収容された2次オペレーティングシステムに隔離し、外部データソースからの侵入、又はSOSの制御下で隔離されたオペレーティング環境において生じるその他のユーザ動作からコンピュータの1次オペレーティングシステムのデータ及びファイル構造を保護する。
【発明の詳細説明】
【0014】
ここで図面を参照すると、本発明の好ましい実施形態の詳細が図形的かつ概略的に示されている。図面を通じて類似した要素は類似した番号によって表現され、幾つかの類似した要素は異なる小文字添え字付きの類似した番号によって表現される。
【0015】
本パーソナルコンピュータインターネットセキュリティシステムは、ユーザのスタンドアローンのファイル又はパーソナルコンピュータを、インターネットのような外部データソースからダウンロードされたファイルに含まれる悪意のあるコードによって侵されることから保護し、インターネットから(例えば、「トロイ」によって)アクセスされることから保護する。本システム10は、図1に示されたPCのようなスタンドアローン型コンピュータ装置を備えるが、図2に示されたイントラネットのようなコンピュータネットワークに適合され得る。図1及び2に示されるように、インターネット14は、典型的にインターネットノード16を介してコンピュータ20によって(又はイントラネット18の場合には、インターネットサーバ21によって、図2を参照のこと)アクセスされる。コンピュータ20(又はイントラネット18)の構成に依存して、ノード16は、モデム、ネットワークカード、ルータ、及びコンピュータ20(又はイントラネット18)をインターネット14へ接続する類似のインターフェイスハードウェアのような装置又は装置群を表す。図2の実施例では、イントラネット20はインターネットサーバコンピュータ18を介してインターネット14とインターフェイスをとる。
【0016】
本発明のソフトウェア技術は、図3におけるパーソナルコンピュータ(PC)20のようなスタンドアローン型コンピュータを用いて実施することが意図されている。コンピュータ、すなわち、PC20は、如何なる構成或いは製品であってもよく、デスクトップ、ノート型、又はCPUとストレージとインターネットへの接続性を有するその他の装置が含まれる。図3に例示されるような好ましい簡単な実施形態では、本システム10は、コンピュータ20を備え、当該コンピュータ20には、いくつかの入力/出力(I/O)ポート22を介してキーボード、モニタ、及びプリンタのようなある種の周辺装置40が接続される。また、コンピュータには、入出力ポートを介して、インターネットノード16が接続される。ノード装置16は、当技術分野で公知であり、且つ、この目的を達成するためにそれが取り付けられるコンピュータ20の構成と互換性がある幾つかの装置のうち如何なるもの、例えば、モデム及びルータのようなものであってもよい。周辺装置40及びノード16は、図3の例では、コンピュータ20の外部に示されているが、これらの要素は、ある程度までコンピュータ20と同じ筐体に組み込まれてもよく、又は同じ筐体を共有することが意図されており、かつ、当業者に理解可能である。その他のコンピュータコンポーネントの構成及び機能と、それらの接続性及び通信相互関係は、この分野において典型的であり、当業者に知られている。インターネットノード16及びその他の周辺装置40の制御は、典型的に、それらが取り付けられたコンピュータ20を介して通常の方法で達成される。I/Oポート22に加えて、コンピュータ20は、その他の内部機構、並びに、中央処理ユニット(CPU)、一つ以上のデータ記憶装置26、揮発性メモリ(例えば、RAM)28、及びその他の内部機構及びコンポーネント30のようなPCに典型的なコンポーネントを備える。
【0017】
図4Aは本発明のソフトウェア技術を備えるスタンドアローン型PCタイプコンピュータ20のより詳細な説明図である。本例では、コンピュータとソフトウェアアプリケーションの組み合わせシステム10は、オフライン状態で示されている。すなわち、PCタイプコンピュータシステムは、ソフトウェアアプリケーションのインストール後に構成されるが、その初期実行前、又はインターネット14への接続を確立する前に構成される。図4Aに示されるように、オフライン状態では、内部及び外部のコンポーネントと機構の全ては、相互接続され、CPU24及びコンピュータの1次オペレーティングシステムの制御下にあるのが典型的である。さらに、組み合わせシステム10の隔離されたオペレーティング環境機構を定義するソフトウェアアプリケーション100は、コンピュータ20の記憶装置26にインストール/ロードされる。記憶装置は、図示されるようにハードドライブでもよく、補助ドライブ(例えば、図示されないフロッピー又はCDドライブ)、(EPROM、CMOSなどのような)チップ、カーネル、ファームウェア又はその他の記憶手段でもよい。当業者は、本発明に適した記憶手段を選択、実施し、記憶手段にマスターイメージファイルをインストールすることが可能である。
【0018】
さらに図4Aに表されるように、オフライン状態では、コンピュータ20は、インターネットとの接続性がなく、これは、CPU24からI/Oポート22を経由してノード16までのコネクションがないことによって示される。さらに、図4Aは、2次オペレーティング環境を定義するソフトウェアアプリケーション100がコンピュータ20上の記憶場所にインストールされるが、まだアクティブ化されていないこと(すなわち、CPU24とのアクティブ通信リンクがないこと)を示す。オフライン状態又は初期インストール状態において、コンピュータ20は、構成及び動作がそのタイプの典型的なコンピュータと実質的に類似する。
【0019】
再び図4Aに示すように、本発明のセキュリティソフトウェアシステムは、好ましくは、コンピュータ20のデータ記憶装置26にロード可能であるソフトウェアアプリケーション100において具現化される。好ましい一実施形態では、データ記憶装置26はコンピュータ20のハードドライブであった。しかし、データ記憶装置26はハードドライブ以外でもよく、現時点で公知の代替物及び将来に開発される代替物(例えば、USBデータ記憶装置)が、本発明での実施のために当業者によって容易に選択され得る。ソフトウェアアプリケーション100は、本発明の種々の機能及び動作を達成するため必要とされるのに応じて、複数のサブアプリケーション又はサブルーチン(100a〜100n)を有する。好ましい一実施形態では、ソフトウェアアプリケーション100はコンピュータのハードドライブ26にロードされたが、ソフトウェアアプリケーション100は、ソフトウェアをローディングするため、又はそうでなければコンピュータ上で実行するためソフトウェアを利用できるようにするため現在公知であるか、若しくは、開発されることが予想されるような方式のいずれかによってコンピュータ20にロードされ、又はコンピュータ20が利用できるようにされる。
【0020】
初期アクティブ化又は実行時に、ソフトウェアアプリケーション100は、コンピュータ20の1次オペレーティングシステムから分離した固有のメモリ及びデータ記憶割り当てを有するソフトウェア定義の隔離されたオペレーティング環境(SOE)を生成した。図4Bにより詳細に示されるように、初期アクティブ化時に、ソフトウェアアプリケーション100は、コンピュータ20の揮発性メモリ(RAM)28内に2次メモリパーティション120を割り当て、同様に、2次ストレージパーティション116を割り当てた。続けて、これらのメモリ120及びデータストレージ116の割り当てと、そこに記憶された命令は、隔離されたオペレーティング環境のバブル(bubble)内、すなわち、2次メモリ120及び2次ストレージ116の割り当ての組み合わせ空間内に、隔離された2次オペレーティングシステム(SOS)を複製し動かすためのアイソレーションバブルとして、隔離されたオペレーティング環境を構成する。図示された好ましい実施形態では、SOSはWINDOWS(登録商標)タイプのオペレーティングシステムであった。しかし、本明細書中の開示内容を考慮して、当業者は、コンピュータ20の動作プラットフォーム(例えば、UNIX、Macintoshなど)に応じて、その他のオペレーティングシステムを本技術と共に実施可能である。
【0021】
図4Bに例示されるように、本システム10のマスターイメージファイル100のアクティブ化時に、SOEを表す2次メモリパーティション120がコンピュータ20の揮発性メモリ28に作られ、仮想ドライブ(Vドライブ)すなわち2次データストレージパーティション116がストレージ26に作られる。この好ましい実施形態を実施する際に、SOS126は、2次メモリ、すなわち、RAMのSOEパーティション120と、ハードドライブストレージ26上の2次データパーティション(Vドライブ)116に作られた。RAMは本システムを実施する際に使用されるが、SOS126によって制御可能である同じような応答性と揮発性をもつメモリが本システム10において実施可能である。同様に、Vドライブ116は、例えば、その固有の記憶媒体を保有するか、又は固有の記憶媒体とすることによるように、代替手段によって実現してもよい。
【0022】
マスターイメージファイル100のアクティブ化は、Vドライブ116及び2次オペレーティング環境126を確立させ、コンピュータ20を「プレオンライン」状態に置く。この状態では、コンピュータ20は未だインターネット14に接続されないが、それらを介してインターネット14が相互作用すべきVドライブ116及び(SOSアプリケーションを用いてロードされた)SOE120は確立されている。SOS126は、オペレーティングシステム、及びSOS126での実施のために当業者によって選択可能であるブラウザのようなその他のソフトウェアアプリケーションを含む。SOE120内のSOS126の視覚表現は、モニタ48での表示のためCPU24を介してビデオ信号によって通信される。
【0023】
図解された好ましい実施形態において、2次オペレーティング環境120にロードされたSOS126は、2次データパーティション(Vドライブ)116と協働してSOE120に再構築された、現実のコンピュータの1次オペレーティングシステムの完全な複製を含む。例示された好ましい実施形態はコンピュータのオペレーティングシステムの完全なコピーを使用して実施されたが、効率上の理由から、ブラウザアプリケーションを動かすために必要なオペレーティングシステムの機構及び補助ソフトウェアアプリケーションだけがSOE120にロードされることも予想される。
【0024】
マスターイメージファイルアプリケーション100は、ストレージ26におけるVドライブの確立、揮発性メモリ28におけるSOE120の確立を達成し、SOE120内に2次すなわち仮想オペレーティングシステム126をロードし隔離するために必要とされるソフトウェア定義機構の全てを含む。この対策の予想外の効果は、その結果として、2次オペレーティング環境120においてSOS126の制御下で動作するブラウザアプリケーションが同様に隔離されることである。仮想SOSのブラウザ機能を厳密にSOE120に分離させることにより、現実のコンピュータ(及び1次オペレーティングシステム)20のCPU24とSOS126との間の唯一の信号通信は、ユーザのコンピュータ20のファイル構造ではなく周辺装置に向けられた、ビデオ、オーディオ及びプリンタ信号のような制御信号である。従って、周辺装置の信号が悪意のあるコードを伝搬するとしても、そのコードは周辺装置から伝わらず、ユーザのコンピュータ20のファイル構造に影響を与えない。
【0025】
図4Bに示されるように、プレオンライン状態では、マスターイメージファイルアプリケーション100とCPU24との間で機能する接続(両矢印)が確立される。これによって、SOE120がメモリ28に確立され、SOS126がSOE120にロード/インストールされる。さらに、マスターイメージファイル100の先のアクティブ化のときから未だ存在していないならば、データストレージパーティション(Vドライブ)116を記憶装置26上に確立させる。しかし、CPU24とインターネットノード16との間に機能する接続は未だ存在しない。Vドライブ116及びSOE120が確立され、SOS126がロードされると、ユーザは、自分がキーボード/マウス装置44及びコンピュータのモニタ48を介してコンピュータ20の現実の/1次オペレーティングシステムにアクセスするのと同様の方式で、SOS126にアクセス可能である。
【0026】
コンピュータ20がプレオンライン状態になると、ユーザは、コンピュータを「オンライン」状態に置くため、SOE120のアイソレーションからSOS126を介してインターネット14にアクセスする。オンライン状態では、図4Cに例示されるように、マスターイメージアプリケーションソフトウェア100は主な機能を完了し、実質的にCPU24へ直接的に接続されなくなる。しかし、通信は、I/Oポート22を通る接続(両矢印)によって示されるように、コンピュータ20とインターネットノード16との間に確立される。ブラウザ及び通信プロトコルのような一つ以上のSOSアプリケーション126は、接続を確立し、コンピュータ20がインターネット14と通信できるようにするため使用される。インターネットは、今度は、SOE120のアイソレーション内のSOS126を介してアクセスされる。
【0027】
SOE120で動くSOS126のビデオ表現は、1次OSのビデオディスプレイ54に積み重ねられたSOSデスクトップビデオオーバーレイ56として、モニタ48に表示される。図5を参照されたい。SOE120で動くSOS126はSOSビデオオーバーレイ56から制御される。
【0028】
表Iは本発明のソフトウェアの要件の全般的なアウトラインである。表IIは、他の教示内容及び本明細書に記載された図と組み合わせて、当業者が本発明を実施することを可能にするために十分な本発明のソフトウェアの要件の詳細なアウトラインである。さらに、当業者は、これらの教示内容に鑑みて、要件が記載される順序及びそれらのグループ分けは、本明細書に記載され、請求項に記載された本発明の範囲から逸脱することなく変形されることが理解できるであろう。
【0029】
表I
ソフトウェアの全般的な要件のアウトライン
1 要求される状態及びモード
1.1 インストール状態
1.2 立ち上げ状態
1.2.1 2次オペレーティング環境の初期化/確立
1.2.2 2次オペレーティングシステムの立ち上げ
1.3 動作モード
1.3.1 正常モード動作
1.3.2 セーフモード動作
1.3.3 異常モード動作:シャットダウンの原因になるエラー条件
1.4 シャットダウン
1.4.1 2次オペレーティングシステムのシャットダウン
1.4.2 2次オペレーティング環境のシャットダウン

2 2次オペレーティング環境(SOE)要件
2.1 2次オペレーティング環境条件の設定
2.1.1 SOSのためのメモリ(RAM)の領域の割り当て
2.1.2 CPUへの接続のオープン
2.1.3 外部データソース(インターネット)への接続のオープン
2.1.4 データ記憶装置(ハードドライブ)への接続のオープン
2.1.5 ビデオカードへの接続のオープン
2.1.6 サウンドカードへの接続のオープン
2.1.7 プリンタへの接続のオープン
2.1.8 キーボードへの接続のオープン
2.1.9 マウスへの接続のオープン
2.2 POSとSOSとの間のネットワークブリッジの形成
2.3 イントラネットアクセス許可の設定
2.4 インターネットアクセス許可の設定
2.5 ファイルアクセス許可の設定
2.6 ファイル共有の設定

3 2次オペレーティングシステム(SOS)のシステム仕様
3.1 2次オペレーティングシステム(SOS)プラットフォームアプリケーションの実行
3.2 SOSのインストール
3.2.1 プレインストール条件のチェック
3.2.1.1 POS互換性のチェック
3.2.1.2 プロセッサ互換性のチェック
3.2.1.3 十分なメモリ(RAM)のチェック
3.2.1.4 十分なデータストレージ(ハードディスク)空間のチェック
3.2.1.5 外部データソース(インターネット)条件のチェック
3.2.2 パーティションのチェック及び設定
3.2.2.1 SOS一時データストレージパーティションの作成
3.2.2.2 SOSユーザ保存データストレージパーティションの作成
3.2.2.3 SOSアプリケーションファイルのコピー
3.2.2.4 POSファイルの更新
3.2.3 許可の設定
3.2.3.1 プログラムレジストリエントリーの更新
3.2.3.2 イントラネット許可の設定
3.2.3.3 インターネット許可の設定
3.2.4 ファイルの復号化とインストール
3.2.5 ソフトウェアのアクティブ化
3.2.6 ショートカットの確立(オプション)
3.2.7 電子登録(オプション)
3.3 SOSの立ち上げ/初期化
3.3.1 SOSイメージファイルの新たなコピーの作成
3.3.2 メモリ(RAM)のSOSへの割り当て
3.3.3 SOSのメモリへのロード
3.3.4 データストレージ(ハードドライブ)パーティションとの接続の確立
3.3.4.1 SOSの一時データストレージパーティションへのリンク
3.3.4.2 SOSのユーザ保存データストレージパーティションへのリンク
3.3.4.3 SOSのPOSへの読み取り専用リンク
3.3.5 イントラネットアクセス及びアクティビティの一時停止
3.3.6 外部データソース(インターネット)接続の確立
3.4 SOSの実行
3.4.1 セーフモード動作
3.4.1.1 マスターファイルの更新/変更
3.4.1.2 POSへの制限アクセスの許可
3.4.2 正常モード動作
3.4.2.1 インターネットアクセスインターフェイスのオープン
3.4.2.2 ユーザ保存データストレージパーティションへのアクセスの確立
3.4.2.3 ユーザ保存データ/ファイルのユーザ保存パーティションへの書き込み
3.4.2.4 一時データストレージパーティションへのアクセスの確立
3.4.2.5 一時データストレージパーティションへの一時データ/ファイルの書き込み
3.4.2.6 POSパーティションへのアクセスの最大限度

4 SOS動作の終了とSOEのクローズ
4.1 SOSの異常終了(エラー条件)
4.2 SOS動作の正常終了とSOEのクローズ
4.2.1 インターネットからの切断
4.2.1.1 インターネットインターフェイスのクローズ
4.2.2 SOSパーティションからの切断
4.2.2.1 SOS一時データストレージパーティションからの切断
4.2.2.2 ユーザ保存データストレージパーティションからの切断
4.2.2.3 SOSに割り当てられたメモリ(RAM)の開放
4.2.2.4 SOS起動パーティションの一時停止
4.2.3 POSへのイントラネット接続の復元

5 SOE及びSOSのアンインストールコンポーネント(オプション)

【0030】
表II
2次オペレーティング環境及びシステム(SOS)のソフトウェア要件仕様

全般的な要件
全般的な要件は、本発明の技術の2次オペレーティング環境(SOE)及び2次オペレーティングシステム(SOS)のより多くの要件を特定するセクションに分割される。注:これらの要件はOSAを表すが、当業者は、本発明のソフトウェア技術を具現化するときに、全般的な要件の詳細がどのように実施されるかを選択することが意図されている。

1 要求される状態及びモード
このソフトウェアは、一般に以下の機能状態:インストール、立ち上げ、正常動作、セーフ動作、正常シャットダウン、及び異常シャットダウンを具現化する。
・インストール状態は、ソフトウェアアプリケーションがコンピュータにインストールされるか、又は常駐するが、コンピュータの1次ファイル、レジストリ、及びデータがそのインストールされたソフトウェアの存在によって影響を受けない条件を表す。
・立ち上げ状態は、コンピュータに常駐するソフトウェアアプリケーションが最初にアクティブ化されるか、又はインストール状態からアクティブ化される条件を表す。この状態では、2次オペレーティング環境が確立され、SOS及び関連したアプリケーションが2次オペレーティング環境にロードされる。
・正常動作状態は、ソフトウェアアプリケーションが立ち上げ状態を実行し完了した条件を表す。この状態では、インターネットのような外部データソースとのアクティブ通信セッションが開始され、持続される。
・正常シャットダウン状態は、アクティブ通信セッションが終了し、本発明のソフトウェア技術がインストール状態又は立ち上げ状態に戻る条件を表す。
・異常シャットダウン状態は、ソフトウェアの実行中の異常機能又は動作の発生時、又はSOS、若しくは、ソフトウェア動作が異常シャットダウン状態へのエントリーを要求されるときに当業者によって選択される関連したアプリケーションのその他のエラー条件時に、ソフトウェアが入るデフォルト状態を表す。異常シャットダウン状態へのエントリーの結果として、本発明のソフトウェア技術は、異常シャットダウン状態の原因になるエラー又は不良条件の性質に応じて、インストール状態又は立ち上げ状態に戻る。

1.1 インストール状態
インストール状態では、本発明のソフトウェアのマスターファイルはコンピュータのデータ記憶装置(例えば、ハードドライブ)に書き込まれる。インストール中に、ソフトウェアアプリケーションのマスターファイル(すなわち、インストールファイルを除くすべて)がデータ記憶装置にコピーされる。さらに、インストール中に、初期チェックが行われ、コンピュータが本ソフトウェアアプリケーションの最小システム要件を満たすこと、及びソフトウェアアプリケーションのすべてのコンポーネントファイルの完全なインストールがうまく達成されていることを確認する。
インストール状態又はモードでは、本発明のソフトウェアアプリケーションは、必要に応じて、RAM、データ記憶空間、オペレーティングシステムのバージョン、及びその他の条件の互換性について、1次オペレーティングシステムをチェックする。いずれかの条件が満たされないならば、ユーザに通知がなされ、インストールファイルが除去され、インストールが中止される。ソフトウェアアプリケーションは、1次オペレーティングシステムを介した外部データソース(インターネット)への接続を禁止する要求に応じて、1次オペレーティングシステムと2次オペレーティング環境/SOSの両方の許可及びレジストリエントリーを設定する。好ましくは、本ソフトウェアアプリケーションは、ショートカット(アイコン)を1次オペレーティングシステムのデスクトップ上のSOSに置く。
オプションとして、ソフトウェアはそのインストールを登録する。付加的なインストール状態オプションは、前のインストールをチェックし、現在のインストールのCD−ROMキーを確認し、ソフトウェアを電子登録する本ソフトウェアアプリケーションを含む。

1.2 立ち上げ状態
立ち上げ状態では、2次オペレーティング環境バブルが確立され、SOS及び関連したアプリケーションとファイルがその2次オペレーティング環境にロードされる。

1.2.1 2次オペレーティング環境の初期化/確立
初期化中に、2次オペレーティング環境(SOE)がメモリ及びストレージ空間の割り当てによって確立され、1次オペレーティングから隔離されたSOEバブルを形成するために許可が設定される。SOEはSOSが常駐する1次オペレーティングシステムの上に位置する隔離された中間環境(バブル)を提供する。2次オペレーティング環境はSOSがアクティブ化される前に完全に確立されなければならない。

1.2.2 2次オペレーティングシステムの立ち上げ
マスターイメージのコピーはSOE内に置かれる。マスターイメージのコピーはSOE内でSOSを確立するために実行される。

1.3 動作モード
好ましくは、SOSのため利用されるオペレーティングシステムは、正常動作モード及びセーフ動作モードの二つの動作モードで実行できる。本発明を実施するため当業者が適応することができるこのようなオペレーティングシステムの例は、種々のMicrosoft WINDOWS(登録商標)オペレーティングシステム製品、特に、WINDOWS 98(登録商標)以降を含む。両方のモードは2次オペレーティング環境バブル内で動く。

1.3.1 正常モード動作
正常動作モードでは、ユーザはPOS上に位置するファイルに読み出し専用アクセス件をもつ。インターネットへの接続はオプション的である。インターネットからダウンロードされたすべてのファイルはSOSパーティションに記憶される。

1.3.2 セーフモード動作
セーフ動作モードは、一般に、典型的な既成のオペレーティングシステム製品のセーフモード機構の機能性を有する。しかし、典型的な既成のオペレーティングシステム製品及び2次オペレーティング環境は、
・選択された、又はすべての外部データソースへのアクセス(特に読み出し又は受信アクセス)がセーフモードで禁止されること、及び
・ユーザが1次オペレーティングシステムに(例えば、ハードドライブに)記憶された選択されたファイルへのアクセス権(例えば、読み出し専用)を有すること
を提供するため必要に応じて変更される。
このモードは、1次オペレーティングシステムから2次オペレーティング環境に、読み出し専用アクセス下のSOSによるアクセスのために、所望の補助アプリケーションを転送又はロードするために使用される。このアクセスは拡張することができ、ストレージ内のマスターソフトウェアアプリケーションのセクション又はサブファイルの変更が、所望の補助アプリケーションを2次オペレーティング環境及びSOSの将来のアクティブ化において含むことを可能にする。オプションとして、2次オペレーティング環境及びSOSによって適切な許可を設定することによって、このモードを使用して、選択されたファイル、例えば、SOSパーティションからPOSハードウェアへのSOS転送ファイルに含まれる悪意のあるコードを収容する可能性がないファイルタイプを、SOSから1次オペレーティングシステムへ転送する(書き込む)ことができる。このモードでは、インターネット接続はない。

1.3.3 異常モード動作:シャットダウンの原因になるエラー条件
異常条件を遮断し、異常条件に作用する能力は、選択された既成のソフトウェアで供給されたものを超えて与えられない。

1.4 シャットダウン

1.4.1 2次オペレーティングシステムのシャットダウン
ユーザからのコマンド時、SOSはシャットダウンし、SOSの制御下で動くすべての関連したアプリケーションを閉じる。SOSによって開かれたすべてのハードウェア接続は閉じられる。

1.4.2 2次オペレーティング環境のシャットダウン
SOSのシャットダウン時、SOEは動作を停止し、すべてのウィンドウを閉じ、外部SOE接続を終了する。

2 2次オペレーティング環境(SOE)要件
SOEは1次オペレーティングシステムとSOSとの間に通信ブリッジを提供する。SOEはそのSOSを動かすための1次オペレーティングシステムと実質的に独立した2次オペレーティング環境(又はバブル)をさらに提供する。2次オペレーティング環境は、CEを含むWINDOWSオペレーティングシステム、BOCHS、又は2次オペレーティング環境バブル内での動作のため適応若しくは作成されたその他のオペレーティングシステムのようなSOSを動かすためのバブル環境を提供する。

2.1 2次オペレーティング環境条件の設定
2次オペレーティング環境に関連したソフトウェア又はマスターファイルの一部の実行は、2次オペレーティング環境を作成し設定する。SOEは、1次オペレーティング環境内で隔離された実質的に別個の環境「バブル」を提供し、その環境内では、別個のスタンドアローン型オペレーティングシステム−SOSをロードし実行する能力がある。標準的なインターフェイス又はエミュレータは、1次オペレーティング環境とSOSとの間の通信ブリッジを容易化するため利用され、SOSに必要な入力及び出力能力を与える。

2.1.1 SOSのためのメモリ(RAM)の領域の割り当て
SOEコードの実行は、SOSを動作させるために十分なバブル環境としてメモリ(RAMパーティション)の割り当てをもたらす。RAMパーティションサイズは、SOSと、そのSOSに関連した実行中のすべてのアプリケーションを動作させるために十分でなければならない。

2.1.2 CPUへの接続のオープン
選択されたSOE環境に依存して、CPUがエミュレートされるか、又はPOS CPUへの接続が行わなければならない。

2.1.3 外部データソース(インターネット)への接続のオープン
SOSはインターネットサーバ又はルータからのDCHPを受け取る。

2.1.4 データ記憶装置(ハードドライブ)への接続のオープン
最小限のTBD利用可能なディスク空間はSOEのインストール及び動作のために利用できる。この要件は選択され導入されたSOEの機能である。十分なディスク空間がオペレーティングシステム、一時的なファイル、及びユーザ保存ファイルを格納するため利用できる。これらのファイルはSOSソフトウェアによって定められたパーティションに置かれる。
以下の4個のハードドライブパーティションが開設される。
1.読み出し専用モードにおけるSOSイメージファイルパーティション。
2.読み出し書き込みモードにおけるSOSユーザ保存パーティション。
3.読み出し書き込みモードにおけるSOS一時パーティション。
4.読み出し専用モードにおけるPOSパーティション。

2.1.5 ビデオカードへの接続のオープン
ビデオカードは、SVGA、256色、640×480若しくは800×600であると仮定する。好ましくは、ビデオ用の標準SVGAドライバがエミュレートされる。当業者によって理解されるように、この分野の発展と共に、当業者はその他のビデオカード又はドライバが本発明において実施可能であることがわかる。

2.1.6 サウンドカードへの接続のオープン
好ましい一実施形態では、汎用サウンドドライバがSOS内のアプリケーションからサウンド出力を受け取るため使用される。ドライバは、次に、このサウンドデータをPOSへ経路制御し、POSにおいてそのサウンドデータはそのPOSに備わっているサウンドドライバによって解釈される。サウンドデータを解釈のためPOSへそのまま伝達するようなその他のサウンド処理オプションが当業者によって利用可能であり、選択可能である。

2.1.7 プリンタへの接続のオープン
プリンタへ向けられたすべての出力はプリントジョブとしてPOSへ転送される(フォーマットTBD−RAW又はASCIIテキストでもよい)。

2.1.8 キーボードへの接続のオープン
標準的なキーボード入力はSOSがPOSのアクティブウィンドウであるときに許可される。

2.1.9 マウスへの接続のオープン
標準的なマウス入力はSOSがPOSのアクティブウィンドウであるときに許可される。

2.2 POSとSOSとの間のネットワークブリッジの形成
ネットワークブリッジはSOSとPOSとの間に形成され、SOSはデフォルトIPアドレスが割り当てられる。

2.3 イントラネットアクセス許可の設定
ユーザはSOE内からのデフォルトゲートウェイに制限されたアクセス権を有する。さらに、POSは、SOSがアクティブである限り、SOSとの間のデータの受け渡しを除いて、イントラネットアクティビティの開始又は受信を阻止される。

2.4 インターネットアクセス許可の設定
ユーザはSOEからインターネットへの完全なアクセス権を有する。インターネットから受信された情報はユーザ保存パーティション及び一時パーティションに格納される。
すべての入力データは、IPアドレスとは無関係に、SOSへ経路制御され、すべての出力データは、IPアドレスとは無関係に、デフォルトゲートウェイへ経路制御される。

2.5 ファイルアクセス許可の設定
ユーザは、インターネットからSOS内にダウンロードされたファイルへの完全なアクセス権を有する。
ユーザはPOSに記憶されたファイルへのアクセス権を有する。読み出し専用アクセスは許可される。書き込みアクセスは許可されない。

2.6 ファイル共有の設定
SOSはユーザ保存パーティションに記憶されたファイルをPOSへ書き出す能力をもつ。ファイルは、悪意のあるコードのPOS環境への取り込みを最小限に抑えるような方式で書き出される。ファイルは、悪意のあるコードのPOSパーティションへの取り込みを防止するため、ファイル拡張子に基づいてフィルタリングされるか、又は害のないバージョンのデータタイプに再フォーマットされる。

3 2次オペレーティングシステム(SOS)のシステム仕様
SOSはユーザから見えるソフトウェアの部分である。このレイヤはインターネットにアクセスするため使用されるオペレーティングシステムを提供する。SOSはSOE内のレイヤであって、POSより上位且つ独立のレイヤに常駐する。

3.1 2次オペレーティングシステム(SOS)プラットフォームアプリケーションの実行
好ましい一実施形態では、SOSによって利用されるオペレーティングシステムは市販され、既成である。SOSと共にうまく実施されているオペレーティングシステムの実施例には、Windows 98、Windows CE、Windows XP及びLinixが含まれる。
SOS動作ファイルのマスターコピーはPOSに常駐する。SOSのマスターコピーは、SOSが正常モードで動いているときに、変更から保護される。200メガバイト(これは選択されたSOSオペレーティングシステムに基づいて変更される)の最小のディスク空間が、SOSマスターコピーのためにPOSにおいて利用可能である。200メガバイト(これは選択されたSOSオペレーティングシステムに基づいて変更される)の最小のディスク空間が、復号化後にSOSのオペレーショナルコピーのためにSOEにおいて利用可能である。
このSOSのオペレーショナルコピーは、POSに存在するときのSOSのマスターコピーのコピーである。

3.2 SOSのインストール
SOSソフトウェアイメージはプレインストールされたイメージとしてユーザに配布される。SOSインストールコンポーネントは、POS内のSOSのマスターコピーからSOSのオペレーショナルコピーをコピーする。SOSは2次オペレーティング環境(SOE)にインストールされる。
SOSインストールコンポーネントは、選択されたSOSに基づくTBDの通り、1次OS/レジストリの許可を設定する。典型的なセッティングはネットワーク許可、DLL登録などである。
SOSのインストールコンポーネントは、オペレーショナルSOSによる使用のために三つのパーティションを作成する。これらのパーティションは、SOSイメージパーティションと、ユーザ保存パーティションと、一時パーティションである。POSと、読み出し専用モードにおけるそのコンポーネント及びファイルのすべては、SOSによって第4のパーティションとしてみなされる。
SOSのインストールコンポーネントは、SOSのユーザ保存パーティション内にすべてのエラーメッセージ及びログファイルを保存する。
SOSインストールコンポーネントは、オペレーショナルSOSの使用のためにアイコンファイルを作成する。セーフモード用の一つのアイコンと通常モード用の第2のアイコンの2個のアイコンが存在する。
必要に応じて、SOSのインストールコンポーネントは、POSの再起動を許可して、インストールを完了し、SOSの適切な動作に必要なセッティングを提供する。

3.2.1 プレインストール条件のチェック
インストール条件はSOSがインストール可能になる前に確認される。インストール要件が満たされないならば、ユーザに通知がなされ、インストールは中止される。

3.2.1.1 POS互換性のチェック
SOE内で動作するSOSとの互換性についてPOSをチェックする。

3.2.1.2 プロセッサ互換性のチェック
インストールプログラムは最低限のプロセッサタイプをチェックする。プロセッサは少なくともPentium(登録商標) 3又は同等品である。エラー時、インストールプログラムはユーザにエラーを通知し、インストールを中止する。

3.2.1.3 十分なメモリ(RAM)のチェック
インストールプログラムは十分なRAMをチェックする。インストールのための最低限のRAM要件は約64メガバイト、又は当業者によって選択可能なその他の量である。エラー時、インストールプログラムはユーザにエラーを通知し、インストールを中止する。

3.2.1.4 十分なデータストレージ(ハードディスク)空間のチェック
インストールプログラムは十分な空きハードドライブ空間をチェックする。最低限のハードドライブ空間(選択されたSOSオペレーティングシステムに依存するTBD)。最低限のパーティションサイズは、SOSパーティション、ユーザ保存パーティション、及び一時パーティションを収容するために十分である。付加的な空間がユーザ保存パーティション及び一時パーティションの成長を可能にするために利用可能である。エラー時、インストールプログラムはユーザに通知し、インストールを中止する。

3.2.1.5 外部データソース(インターネット)条件のチェック
標準的なインターネット接続が許可される。これは、ダイアルアップ又はネットワーク接続のいずれでもよい。インターネット接続がネットワークベースであるならば、インストール中に決定されたデフォルトIPアドレスが使用される。ユーザがダイアルアップ接続でインターネットに接続するならば、ソフトウェアはPOS内のデフォルトダイアルアップネットワーク化セッティングからのセッティングを受け付ける。エラー時、インストールプログラムはユーザにエラーを通知し、インストールを中止する。

3.2.2 パーティションのチェック及び設定

3.2.2.1 SOS一時データストレージパーティションの作成
これはPOSハードドライブに常駐するファイルである。最初にSOSを作動させるとき、一時パーティションは内部ファイル割り当てテーブルを格納するために十分な大きさであればよい。当該ファイルは付加的なファイルを収容するために拡大縮小可能である。このパーティションはSOSが終了するときに削除される。このパーティションはSOSの立ち上げ毎に空白の一時パーティションの新たなコピーで置き換えられる。

3.2.2.2 SOSユーザ保存データストレージパーティションの作成
これはPOSハードドライブに常駐するファイルである。そのファイルは付加的なファイルを収容し、及び/又は既存のファイルを削除するために拡大縮小可能である。

3.2.2.3 SOSアプリケーションファイルのコピー
インストールプログラムは、SOSオペレーティングシステムファイルをハードドライブ上のPOSパーティションにユーザによって指定されたフォルダにコピーする。インストールプログラムは、これらのファイルのデフォルトパス及びファイル名を示唆する。ユーザはデフォルトパスを変更可能である。

3.2.2.4 POSファイルの更新
POS内の許可は、SOSアクセスを容易化し、イントラネット、インターネット及びファイルへのユーザアクセスを定義するために更新されなければならない。

3.2.3 許可の設定

3.2.3.1 プログラムレジストリエントリーの更新
DLL、EXE及びソフトウェアキーがPOSレジストリ及び/又は初期化ファイルに入力される。

3.2.3.2 イントラネット許可の設定
インストールプログラムはユーザイントラネット許可を設定する。セクション2.2.1 イントラネットアクセ許可を参照。

3.2.3.3 インターネット許可の設定
インストールプログラムはユーザインターネット許可を設定する。セクション2.2.2 インターネットアクセス許可を参照。

3.2.4 ファイルの復号化とインストール
インストールファイルが暗号化されているならば、それらのファイルはインストール中に復号化される。これを実現する好ましい手段はユーザに供給された固有のソフトウェアCDキーを使用することである。

3.2.5 ソフトウェアのアクティブ化(オプション)
CDキーのインストール及び検証が終了すると、ソフトウェアインストールが終了する。必要に応じて、自動再起動が開始される。再起動時(必要であるならば)、SOSソフトウェアは電子登録を介して自動的にアクティブ化される(セクション3.2.7を参照)。

3.2.6 ショートカットの確立(オプション)
当業者に知られているように、メニュー項目/ロゴを作成して、ユーザによる本発明のソフトウェアアプリケーションの始動及び/又はアクセスを容易化することができる。

3.2.7 電子登録(オプション)
当業者に知られているように、メニュー項目/ロゴを作成して、インターネット経由のユーザによる本発明のソフトウェアアプリケーションの登録を容易化することができる。

3.3 SOSの立ち上げ/初期化
SOS立ち上げコードは、すべての必要なパーティションの利用可能性を検証する。セクション 3.2.2を参照。
SOSマスターコピーはSOSイメージパーティションに書き込まれる。SOSはSOSイメージパーティションからアクティブ化される。
ユーザはSOSにログインされる。選択されたSOSが備えるデフォルトSOSログインが使用される。
ユーザ保存パーティションはSOSによってアクセス可能であり、ユーザ保存セッティングはSOSに取り込まれる。新たな、空白の一時データパーティションがSOSアクティブ化時に作成される。
SOSが正常モードでアクティブ化されるならば、インターネット接続は、選択されたSOSによって提供されたデフォルトウェブブラウザ及び電子メールプログラムを使用して確立される。
SOSがセーフモードでアクティブ化されるならば、インターネット接続は許可されない。

3.3.1 SOSイメージファイルの新たなコピーの作成
このパーティションはSOSが終了するときに削除される。このパーティションはSOSの立ち上げ毎にSOSオペレーティングシステムパーティションの新たなコピーで置き換えられる。

3.3.2 メモリ(RAM)のSOSへの割り当て
利用可能な空きRAM(セクション 2.1.1.1 SOSのためのメモリ(RAM)の領域の割り当てを参照)がSOSから利用できるように作成される。

3.3.3 SOSのメモリへのロード
SOSの新しいコピーはマスターSOSイメージフォルダから作成される。

3.3.4 データストレージ(ハードドライブ)パーティションとの接続の確立
ハードドライブパーティションへの接続はSOSの使用のために作成される。

3.3.4.1 SOSの一時データストレージパーティションへのリンク
新しい一時パーティションは読み出し書き込みモードで作成される。

3.3.4.2 SOSのユーザ保存データストレージパーティションへのリンク
ユーザ保存パーティションへのリンクは読み出し書き込みモードで作成される。

3.3.4.3 SOSのPOSへの読み取り専用リンク
正常モードでは、POSデータは読み出し専用モードでアクセス可能にされる。

3.3.5 イントラネットアクセス及びアクティビティの一時停止
イントラネットアクティビティ(デフォルトゲートウェイ以外)は許可されない。

3.3.6 外部データソース(インターネット)接続の確立
正常モードでは、インターネットへの接続は、インストールで決定されたセッティングを使用してオープンされる。
セーフモードでは、インターネット接続は許可されない。

3.4 SOSの実行
ユーザはSOSの動作のため2個のモードのうちの一方を選択することが許可される。

3.4.1 セーフモード動作
セーフモードでは、ユーザはインターネットへのアクセス権がない。

3.4.1.1 マスターファイルの変更
ユーザはSOSマスターファイルを変更可能である。許可された許可コンフィギュレーション変更には、選択された壁紙、背景、配色、スクリーンセーバー、画面解像度、及び色深度が含まれる。
ユーザ許可変更はマスターSOSファイルに書き込まれる。

3.4.1.2 POSへの制限アクセスの許可
ユーザはPOSハードドライブ上の非SOSファイルにアクセス可能である。ユーザは、SOSユーザ保存パーティションからPOSハードドライブ上のフォルダへファイルを移動する選択権がある。ユーザは、ファイルの感染の可能性及びPOSの改竄の可能性を警告される。注:ユーザがエクスポートを開始すると、ユーザ問い合わせ、拒絶、許可又は警告のような通告を送る。ファイル拡張子及び適切なアクションのテーブルが、ネットワークブリッジを越えたPOSへのファイルのエクスポートを許可する前にチェックされる。

3.4.2 正常モード動作
ユーザは、SOSが正常モードで動いているとき、インターネットへの完全なアクセス権がある。

3.4.2.1 インターネットアクセスインターフェイスのオープン
立ち上げ時、インターネットへの接続はインストール中に取得されたパラメータを使用してオープンされる。

3.4.2.2 ユーザ保存データストレージパーティションへのアクセスの確立
ユーザ保存パーティションは完全な読み出し書き込みアクセスでオープンされる。

3.4.2.3 全てのユーザ保存データのユーザ保存パーティションへの書き込み
インターネットから明示的にダウンロードされたデータはユーザ保存パーティションに保存される。

3.4.2.4 一時データストレージパーティションへのアクセスの確立
SOS一時データパーティションは完全な読み出し書き込みアクセスでオープンされる。

3.4.2.5 一時データストレージパーティションへの一時ファイルの書き込み
作業用データ又はファイルはSOS一時データパーティションに記憶される。

3.4.2.6 POSパーティションへのアクセスの最大限度
ユーザは、読み出し専用モードでSOSを使用するために非明示的にPOSハードドライブパーティション(ファイル及びフォルダ)へのアクセスが許可される。アクセス許可は、POS許可が変わらないようにSOSに設定される。

4 SOS動作の終了とSOEのクローズ

4.1 SOS及び/またはSOEの異常終了(エラー条件)
選択されたPOS、SOE及びSOSのエラー処理を超える付加的なエラー処理は提供されない。SOSマスターファイル及びSOS一時パーティションは立ち上げ時に上書きされるので、特殊な処理は異常終了時の一掃から必要とされない。

4.2 SOS動作の正常終了とSOEのクローズ

4.2.1 インターネットからの切断
インターネットへの接続は終了する。

4.2.1.1 インターネットインターフェイスのクローズ
インターネットにアクセスするために使用されるすべてのプログラム(ブラウザ、電子メールなど)はシャットダウンされる。

4.2.2 SOSパーティションからの切断

4.2.2.1 SOS一時データストレージパーティションからの切断
SOS一時データストレージパーティションは削除される。

4.2.2.2 ユーザ保存データストレージパーティションからの切断
オープンしているユーザ保存ファイルはユーザ保存パーティションに保存され、ユーザ保存パーティションはクローズされる。

4.2.2.3 SOSに割り当てられたメモリ(RAM)の開放
SOSに割り当てられたRAMは開放される。

4.2.2.4 SOS起動パーティションの一時停止
SOS起動ファイルはクローズされる。このパーティションはSOSの次のアクティブ化の際に上書きされることに注意すべきである。

4.2.3 POSへのイントラネット接続の復元
イントラネットへのPOS接続は正常動作に戻される。

5 SOE及びSOSのアンインストールコンポーネント(オプション)
アンインストールは、SOSのため独自にインストールされたSOE及びSOS、すべての関連したプログラム、ファイル、メニュー項目、並びに、ショートカットを、当業者に知られたいくつかの方式のうちのいずれかにより、1次オペレーティング環境から削除する。

【0031】
図8A〜8Gは表IIに記載されたソフトウェア要件の種々のセクションを説明するブロック図である。
【0032】
図6Aに例示されているように、オンライン条件が確立されると、インターネットへの安全なアクセスは、SOE120のアイソレーションにおいてSOS126の一つ以上のアプリケーション126a及び126bを実行することによって達成された。SOE120の隔離されたインターネットセッションの間に、外部データファイル130a−cは、図6Bに例示されるように、インターネット14からSOE120のメモリにダウンロードされた。インターネットセッション中にアクセスされ、ダウンロードされたファイル130a−cは、SOE120のメモリパーティションだけに存在することに注意すべきである。ダウンロードされたインターネットファイル130a−cは、SOE120の揮発性メモリ又はSOSデータパーティション116の外側ではコンピュータ20に決して存在しない。
【0033】
ダウンロードされたファイル130a−cのいずれかが悪意のあるコード(例えば、ウィルス、ワーム、トロイなど)を含むならば、それらが動作する環境はSOE120のSOS126の範囲内だけにあるか、又は2次データパーティション116のアイソレーションの範囲内だけにある。従って、図6に例示されるように、悪意のあるコードによって冒される可能性のあるファイルはSOE120内のファイルのみに限定される。よって、SOSデータパーティション116内のファイルを含めて、たとえSOSファイル126a及び126bが改竄されるとしても、これらの改竄されたファイルは、SOE120だけに存在するか、又はSOS126によってSOE120からオープンされる。その結果、SOE120の外側の現実のコンピュータ20上のファイルは改竄されない。
【0034】
上記の説明は多数の詳述を含むが、それらは発明の範囲の制限ではなく、むしろ、発明の一つ又は別の好ましい実施形態の例示として解釈されるべきである。多数のその他の変形が可能であり、このことは当業者に自明であろう。従って、発明の範囲は、単に実施形態によってではなく、請求項の範囲及びその均等物によって決定されるべきである。
【図面の簡単な説明】
【0035】
【図1】スタンドアローン型コンピュータとインターネットとの間の典型的な接続スキーム全体のブロック図である。
【図2】イントラネットとインターネットとの間の典型的な接続スキーム全体のブロック図である。
【図3】典型的なコンピュータのある種の内部コンポーネントの一般的な相互接続スキームのブロック図である。
【図4A】コンピュータのデータ記憶装置(ハードドライブ)にロードされた本発明を具現化するソフトウェアアプリケーションを備える典型的なPCタイプコンピュータシステムのある種の内部コンポーネントの相互接続スキームを示すブロック図である。
【図4B】ソフトウェアの初期実行時における典型的なPCタイプコンピュータのある種の内部コンポーネントの相互接続スキームを示し、隔離されたオペレーティング環境の確立とそのメモリ及びストレージコンポーネントを例示する本発明のブロック図である。
【図4C】コンピュータの揮発性メモリ内の2次オペレーティング環境を含む、コンピュータのインターネットへの接続の確立時の状態におけるシステムのコンピュータのある種の内部コンポーネントの相互接続スキームを示す本発明のブロック図である。
【図5】オペレーティングシステムオーバーレイがモニタ画面上に積み重ねて表示されたコンピュータモニタを示す図である。
【図6A】インターネットと接続した状態のコンピュータを示し、(感染した、又は感染していない)インターネットからダウンロードされたファイルの場所がコンピュータの揮発性メモリ内の仮想オペレーティングシステム環境に隔離されることを示す本発明のブロック図である。
【図6B】インターネットと接続した状態のコンピュータを示し、インターネットからダウンロードされた悪意のあるファイルの動作場所又は影響がコンピュータの揮発性メモリに収容された仮想オペレーティングシステム環境に隔離されることを示す本発明のブロック図である。
【図6C】インターネットと接続した状態のコンピュータを示し、本発明の「パージ」機能のアクティブ化時に、侵された仮想オペレーティングシステム環境が揮発性メモリ(RAM)から消去され、新しい仮想オペレーティングシステム環境がストレージ内のテンプレート/命令から確立されることを示す本発明のブロック図である。
【図7】インターネットとのイントラネットインターフェイスとして構成されたシステムのある種の内部コンポーネントの相互接続スキームを示しており、システムコンピュータがイントラネット用のインターネットサーバコンピュータとなっている本発明のブロック図である。
【図8A】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図8B】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図8C】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図8D】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図8E】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図8F】表IIのソフトウェア要件の種々のセクションを示すブロック図である。
【図8G】表IIのソフトウェア要件の種々のセクションを示すブロック図である。

【特許請求の範囲】
【請求項1】
侵入防衛コンピュータシステムであって、
CPUと、
データストレージ手段と、
メモリ手段と、
オペレーティングシステムと、
仮想マシンオペレーティングシステムと、
データソースと有効に通信する少なくとも一つの入出力接続と、
を備える、コンピュータシステム。
【請求項2】
前記データソースがグローバルコンピュータネットワークである、請求項1記載のコンピュータシステム。
【請求項3】
前記データソースがグローバルコンピュータネットワーク以外である、請求項1記載のコンピュータシステム。
【請求項4】
グローバルコンピュータネットワーク以外の前記データソースが、コンピュータワークステーション、パーソナル型のコンピュータ、コンピュータドック、ローカルエリアネットワーク、イントラネット、及びワイドエリアネットワークからなる群から選択される少なくとも一つのデータソースである、請求項3記載のコンピュータシステム。
【請求項5】
前記仮想マシンオペレーティングシステムが、メモリ内の仮想マシン環境とストレージ内の仮想ドライブとを画成するためのソフトウェアと、前記データソースとの有効な通信を前記仮想マシン環境及び前記仮想マシンドライブに制限する動作制御ソフトウェアと、を備える、請求項1記載の侵入防衛コンピュータシステム。
【請求項6】
外部データソースからの侵入からコンピュータシステムを保護する方法であって、
請求項1に記載された侵入防衛コンピュータシステムを用意するステップと、
外部データソースインターフェイスセッションを開始し、請求項1に記載された仮想マシンオペレーティングシステムをアクティブ化させ、メモリ内の仮想マシン環境及びストレージ内の仮想ドライブを画成するステップと、
前記仮想マシンオペレーティングシステムの制御下で前記外部データソースとの接続を確立して、前記外部データソースとの有効な通信を前記仮想マシン環境及び前記仮想ドライブに隔離し、前記コンピュータシステムを前記外部データソースからの侵入から保護するステップと、
を備える方法。
【請求項7】
パーソナルコンピュータにインストール可能なソフトウェアアプリケーションであって、
前記ソフトウェアが外部データソースからの悪意のあるコードによるアクセスから前記コンピュータの1次データファイルを保護し、前記ソフトウェアが、
隔離されたオペレーティング環境のためのコンピュータコードと、
前記隔離されたオペレーティング環境内で機能する2次オペレーティングシステムのためのコンピュータコードと、
を備えるソフトウェアアプリケーション。
【請求項8】
前記隔離されたオペレーティング環境のコンピュータコードが、POS許可を変更するPOS許可コードを含む、請求項7記載のソフトウェアアプリケーション。
【請求項9】
前記2次オペレーティングシステムのコンピュータコードが、POS外部データソースに関連したアクセス許可を変更するPOS許可コードを含む、請求項8記載のソフトウェアアプリケーション。
【請求項10】
前記2次オペレーティングシステムのコンピュータコードが、POS外部データソースに関連したアクセス許可を変更するPOS許可コードを含み、
前記外部データソースが、ネットワークノード、外部データ装置、及び入出力装置からなる群から選択された少なくとも一つのソースである、請求項9記載のソフトウェアアプリケーション。
【請求項11】
前記2次オペレーティングシステムのコンピュータコードが、POSインターネットに関連した許可を変更するPOS許可コードを含む、請求項8記載のソフトウェアアプリケーション。
【請求項12】
前記2次オペレーティングシステムのコンピュータコードが、POS Inet許可を変更するPOS許可コードを含む、請求項8記載のソフトウェアアプリケーション。
【請求項13】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含む、請求項7記載のソフトウェアアプリケーション。
【請求項14】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含み、
前記インストールコードが、前記ソフトウェアアプリケーションの現在のインストール条件をチェックする、請求項13記載のソフトウェアアプリケーション。
【請求項15】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含み、
前記インストールコードが、前記ソフトウェアアプリケーションの現在のインストール条件のチェックを考慮して必要に応じて前記ソフトウェアアプリケーションからのファイルをコピーする、請求項14記載のソフトウェアアプリケーション。
【請求項16】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境をチェックし設定するインストールコードを含み、
前記インストールコードが、前記ソフトウェアアプリケーションの現在のインストール条件のチェックを考慮して必要に応じてショートカットを確立する、請求項14記載のソフトウェアアプリケーション。
【請求項17】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境の立ち上げ要件をチェックし設定するコードを含む、請求項7記載のソフトウェアアプリケーション。
【請求項18】
前記隔離されたオペレーティング環境のコンピュータコードが、前記SOEファイルの「新しさ」と、揮発性メモリの前記SOEへの割り当てと、データストレージの前記SOEへの割り当てと、前記1次オペレーティングシステムのパーティション及び接続の読み出し専用条件と、イントラネットアクティビティの状態と、1次オペレーティングシステムパーティションへのユーザアクセスの読み出し専用条件とに関する、前記隔離されたオペレーティング環境の立ち上げ要件をチェックし設定するコードを含む、請求項17記載のソフトウェアアプリケーション。
【請求項19】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境のランタイム要件をチェックし設定するコードを含む、請求項7記載のソフトウェアアプリケーション。
【請求項20】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境のランタイム要件をチェックし設定して、少なくとも二つの実行モードを提供するコードを含む、請求項19記載のソフトウェアアプリケーション。
【請求項21】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境のランタイム要件をチェックし設定して、inetアクセスを含む実行モード及びinetアクセスを含まない実行モードを少なくとも提供するコードを含む、請求項19記載のソフトウェアアプリケーション。
【請求項22】
前記隔離されたオペレーティング環境のコンピュータコードが前記隔離されたオペレーティング環境の終了要件をチェックし設定するコードを含む、請求項7記載のソフトウェアアプリケーション。
【請求項23】
前記隔離されたオペレーティング環境のコンピュータコードが、前記inetからの(前記SOE)の切断、前記ノードインターフェイスのクローズ、前記SOEの揮発性メモリ割り当ての開放、前記一時データストレージ割り当てのフラッシュ、SOEファイル及びパーティションからの切断、SOE起動ファイルのリフレッシュ、並びに、イントラネット接続の復元を含む、前記隔離されたオペレーティング環境の終了要件をチェックし設定するコードを含む、請求項22記載のソフトウェアアプリケーション。
【請求項24】
前記隔離されたオペレーティング環境のコンピュータコードが、前記隔離されたオペレーティング環境の要件をチェックし設定するコードを含む、請求項7記載のソフトウェアアプリケーション。
【請求項25】
前記隔離されたオペレーティング環境のコンピュータコードが、前記SOEのための不揮発性メモリの領域への割り当て及び接続と、データストレージ空間への割り当て及び接続と、前記コンピュータのCPUへの接続の提供と、外部データソースノードへの接続と、前記コンピュータのビデオカードへの接続の提供と、前記コンピュータのサウンドカードへの接続の提供と、前記コンピュータのプリンタへの接続の提供と、前記コンピュータのマウス及びキーボードへの接続の提供と、前記SOEの前記2次オペレーティングシステムと前記コンピュータの前記1次オペレーティングシステムとの間のネットワークブリッジの形成とを含む、前記隔離されたオペレーティング環境の要件をチェックし設定するコードを含む、請求項7記載のソフトウェアアプリケーション。
【請求項26】
外部データソースから得られる悪意のあるコードからパーソナルコンピュータを保護する防衛方法であって、
前記パーソナルコンピュータにインストール可能なソフトウェアアプリケーションであって、前記コンピュータの1次データファイルを外部データソースからの悪意のあるコードによるアクセスから保護する該ソフトウェアアプリケーションをロードするステップと、
前記ソフトウェアアプリケーションを前記パーソナルコンピュータにインストールするステップであって、該ソフトウェアアプリケーションが2次オペレーティングシステムを含む隔離されたオペレーティング環境を画成し、該2次オペレーティングシステムは前記コンピュータ上の1次オペレーティングと連動し且つ別々に機能し、前記インストールされたアプリケーションが1次オペレーティングシステム許可コードを画成して、外部データソースに接続可能なノードへのアクセスを前記2次オペレーティングシステムの制御下で前記隔離されたオペレーティング環境に制限する、ステップと、
前記隔離されたオペレーティング環境内で前記ノードを介して外部データソースインターフェイスセッションを開始し、前記セッション中に揮発性メモリ空間及び一時データストレージ空間を前記2次オペレーティングシステムに割り当てるステップと、
前記2次オペレーティングシステムの制御下で前記ノードを介して前記外部データソースとの接続を確立して、前記外部データソースとの有効な通信を前記隔離されたオペレーティング環境に隔離し、前記外部データソースから得られる悪意のあるコードから前記パーソナルコンピュータを保護するステップと、
を備える防衛方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4A】
image rotate

【図4B】
image rotate

【図4C】
image rotate

【図5】
image rotate

【図6A】
image rotate

【図6B】
image rotate

【図6C】
image rotate

【図7】
image rotate

【図8A】
image rotate

【図8B】
image rotate

【図8C】
image rotate

【図8D】
image rotate

【図8E】
image rotate

【図8F】
image rotate

【図8G】
image rotate


【公表番号】特表2007−534039(P2007−534039A)
【公表日】平成19年11月22日(2007.11.22)
【国際特許分類】
【出願番号】特願2006−526049(P2006−526049)
【出願日】平成16年1月2日(2004.1.2)
【国際出願番号】PCT/US2004/000028
【国際公開番号】WO2005/027402
【国際公開日】平成17年3月24日(2005.3.24)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
2.UNIX
3.Macintosh
【出願人】(506076411)
【Fターム(参考)】