(57)【特許請求の範囲】
【請求項１】
多目的データの自動処理に適応されたコンピュータソフトウェアコンポーネントにおいて、
当該コンピュータソフトウェアコンポーネントが、異なるセキュリティレベル又は異なる責任限界を必要とする機能を実施し、且つ、
複数の仮想マシン（２１５）であって、各仮想マシンが、既定の１つのセキュリティレベル又は既定の１つの責任限界を必要とする少なくとも１つの機能を実行するようになっており、前記機能の少なくとも１つが、それを内部で実行する仮想マシンのパラメータに応じて適応されている、複数の仮想マシン（２１５）と、
該複数の仮想マシンの実行を制御するようになっているハイパーバイザ（２１０）と、
を含み、
前記複数の仮想マシンのうちの第１の仮想マシンと第２の仮想マシンとの間のデータ転送手段をさらに含み、該転送手段は、前記第２の仮想マシンのセキュリティレベルが前記第１の仮想マシンのセキュリティレベルよりも高い場合、転送されたデータをフィルタリングする（３３０、３３５）ようになっていることを特徴とする、コンピュータソフトウェアコンポーネント。
【請求項２】
前記ハイパーバイザが、前記複数の仮想マシンのうちの少なくとも１つの仮想マシンを認証する（３１０）ための認証手段を含む、請求項１に記載のソフトウェアコンポーネント。
【請求項３】
前記認証手段が、認証された前記少なくとも１つの仮想マシンの無欠性を確認する（３１５）ようになっている、請求項２に記載のソフトウェアコンポーネント。
【請求項４】
前記認証手段が、前記複数の仮想マシンのうちの少なくとも１つの別の仮想マシンに対する、認証された前記少なくとも１つの仮想マシンの隔離レベルを確認する（３２０）ようになっている、請求項２又は３に記載のソフトウェアコンポーネント。
【請求項５】
前記複数の仮想マシンのうちの少なくとも１つの仮想マシンによって処理されたデータの記憶手段をさらに含み、該記憶手段が前記処理されたデータをコンピュータの取外し可能なメモリー内に記憶する（３５５）ようになっている、請求項１〜４のいずれか一項に記載のソフトウェアコンポーネント。
【請求項６】
前記データ記憶手段が、前記複数の仮想マシンのうちの既定の閾値よりも低いセキュリティレベルを有する（３４０）仮想マシンによって実施される、請求項５に記載のソフトウェアコンポーネント。
【請求項７】
前記複数の仮想マシンのうちの少なくとも１つの仮想マシンによって処理された少なくとも１つのデータの信頼性レベルの制御手段（３４５）をさらに含み、前記処理された少なくとも１つのデータは、制御された後に初めてコンピュータ内にローカル記憶可能（３５０）である、請求項１〜６のいずれか一項に記載のソフトウェアコンポーネント。
【請求項８】
前記複数の仮想マシンのうちの少なくとも１つの仮想マシンを起動するために用いられるコンフィギュレーションデータが前記少なくとも１つの起動された仮想マシンの実行中に修正されない、請求項１〜７のいずれか一項に記載のソフトウェアコンポーネント。
【請求項９】
請求項１〜８のいずれか一項に記載のソフトウェアコンポーネントの各要素が実装されている状態のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理システム、特に航空機情報システムのデータ処理システムに関し、より詳細には、異なるセキュリティレベル又は責任限界を必要とする機能を実施する多目的データの自動処理用のソフトウェアコンポーネント及びデバイスに関する。
【背景技術】
【０００２】
旅客機の激突に関連する２００１年９月１１日の悲劇以来、セキュリティは航空機製造技術のきわめて重要な問題群となっている。この問題に応えるため、航空機メーカー及び航空会社は、航空機内のセキュリティを改善することを目的とした機能を開発し且つ内蔵してきた。
【０００３】
こうして、例えば、強化されたコックピット扉及び内部ビデオ監視システムが開発されてきた。同様に、搭載される情報システムは現在では破壊工作に対して保護されている。
【０００４】
その上、航空会社には、航空機の納入時に決定された航空機の要素のセキュリティレベルを維持するために技術的及び組織的な手段を実施する規則上の義務がある。この規則上の義務は物理的セキュリティのみを網羅しており、論理的セキュリティは網羅されていない。
【０００５】
しかしながら、この規則上の義務があるため、一部の航空会社は、航空機メーカーに対して、航空会社のオペレーションプロセス中にセキュリティ機能を組込むことができるようにするように依頼している。さらに、一部の航空会社は航空機メーカーに対し、航空機に特定的ではない市販の機材及びソフトウェアとの互換性をオペレーション機能とセキュリティ機能との組合せにもたせるように要請している。
【０００６】
一般に、ＳＴＡＤ（Ｓｙｓｔｅｍｅ  ｄｅ  Ｔｒａｉｔｅｍｅｎｔ  Ａｕｔｏｍａｔｉｓｅ  ｄｅ  Ｄｏｎｎｅｅｓ（データ自動処理システム）の頭字語）とも呼ばれるデータ自動処理システムは、航空学的環境において、オペレーション用及び／又は通信用ソフトウェアアプリケーションをホストするために、すなわち操縦スタッフ例えば操縦士又は副操縦士、技術者及びメンテナンスチームが自らの任務のいくつかのタスクを果たすことができるようにするためのツールボックスとして使用可能である。これらツールボックスはその他の用途にも使用可能である。詳細には、航空会社はツールボックス内にビジネスアプリケーション又はデスクトップアプリケーションをインストールする決定を行うことができる。これらツールボックスはセキュリティ機能ではなく、すなわちその役割は、セキュリティを確保することではなく、オペレーションタスクの遂行を可能にすることにある。
【０００７】
ＳＴＡＤ内で使用されているオペレーション用ソフトウェアアプリケーションが扱うデータは、ダウンロード、計算、ディスプレー及び／又は伝送可能である。先に記したセキュリティ上の制約のため、これらデータの機密性、無欠性及び／又は利用可能性に関するセキュリティに対するニーズが強くなっている。
【０００８】
しかしながら、セキュリティ目標を遵守しなければならない場合、感受性の高い機能及びデータと、市販のソフトウェア及び機材に基づき外部に向けて伝達できる機能性とを併存させることは困難である。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、上記に示された問題のうちの少なくとも１つを解決することを可能にする。
【課題を解決するための手段】
【００１０】
したがって、本発明の目的は、多目的データの自動処理に適応されたコンピュータソフトウェアコンポーネントであって、異なるセキュリティレベル又は異なる責任限界を必要とする機能を実施し、且つ、
複数の仮想マシンであって、各仮想マシンが、既定の１つのセキュリティレベル又は既定の１つの責任限界を必要とする少なくとも１つの機能を実行するようになっている、複数の仮想マシンと、
複数の仮想マシンの実行を制御するようになっているハイパーバイザと
を含むコンピュータソフトウェアコンポーネントにある。
【００１１】
こうして、本発明に係るソフトウェアコンポーネントは、航空機内で使用されるハードウェアプラットフォーム及び情報システムアーキテクチャとは独立して、同一マシン内で異なるセキュリティレベル及び異なる責任限界を有する機能を実施できるようにする。したがって、実施されるソフトウェアアプリケーションのエディターは、もはやオペレーティングシステムの進化に依存することなく、これらアプリケーションのライフサイクルを制御する。
【００１２】
こうして、ハードウェア互換性リストにしたがって、市販の携帯式ＳＴＡＤ上でソフトウェアコンポーネントは使用可能である。責任限界は明確に識別されるため、このソフトウェアコンポーネントはサプライヤ及びユーザーのソフトウェアアプリケーションを搭載することができる。このようなＳＴＡＤは航空機又はユーザーに帰属し得る。
【００１３】
本発明に係るソフトウェアコンポーネントを使用しても、携帯式か否かに拘わらず単一目的用機器に比べてメンテナンスの必要性が増大することはない。このソフトウェアコンポーネントは、オペレーションデータの無欠性を含む良好な分離レベル及び良好なセキュリティレベルを保証する。これは、使用される市販製品の信頼性の不足に対する相対的な独立性を保ちながら異なる機能間の資源の分配を制御できるようにする。
【００１４】
有利には、前記ハイパーバイザは、特に伝送されたデータの有効性を制御する目的で、前記複数の仮想マシンのうちの少なくとも１つの仮想マシンを認証するための認証手段を含む。同様に、前記認証手段は、好ましくは、認証された前記少なくとも１つの仮想マシンの無欠性を確認するようになっている。
【００１５】
さらに、前記認証手段は、有利には、特に他の仮想マシンに関して伝送されたデータの有効性を制御する目的で、前記複数の仮想マシンのうちの少なくとも１つの別の仮想マシンに対する、認証された前記少なくとも１つの仮想マシンの隔離レベルを確認するようになっている。
【００１６】
特定の一実施形態によると、ソフトウェアコンポーネントは、前記複数の仮想マシンのうちの少なくとも１つの仮想マシンによって処理されたデータの記憶手段をさらに含み、前記記憶手段は前記処理されたデータを前記コンピュータの取外し可能なメモリー内に記憶するようになっている。こうして、本発明に係るソフトウェアコンポーネントは、信頼性レベルが確かではないデータを、このソフトウェアコンポーネントを危険にさらすことなく記憶できるようにする。このような、前記データ記憶手段は、好ましくは、前記複数の仮想マシンのうちの既定の閾値よりも低いセキュリティレベルを有する仮想マシンによって実施される。
【００１７】
同様に特定の一実施形態によると、ソフトウェアコンポーネントは、前記複数の仮想マシンのうちの少なくとも１つの仮想マシンによって処理された少なくとも１つのデータの信頼性レベルの制御手段をさらに含み、前記処理された少なくとも１つのデータは、制御された後に初めて前記コンピュータ内にローカル記憶可能である。こうして、本発明に係るソフトウェアコンポーネントは、信頼性レベルが確かなデータのみをローカル記憶して情報漏洩を防止できるようにする。
【００１８】
同様に特定の一実施形態によると、ソフトウェアコンポーネントは、前記複数の仮想マシンのうちの第１の仮想マシンと第２の仮想マシンとの間のデータ転送手段をさらに含み、前記転送手段は、前記第２の仮想マシンのセキュリティレベルが前記第１の仮想マシンのセキュリティレベルよりも高い場合、交換されるデータを有効化する目的で、特にこれらのタイプ又はこれらのアクセスの必要性に応じて、転送されたデータをフィルタリングするようになっている。
【００１９】
同様に特定の一実施形態によると、前記複数の仮想マシンのうちの少なくとも１つの仮想マシンを起動するために用いられるコンフィギュレーションデータは、ソフトウェアコンポーネントのメンテナンスを容易にし、その安定した有効化済み状態からの再始動を可能にする目的で、前記少なくとも１つの起動された仮想マシンの実行中に修正されない。
【００２０】
本発明の目的は同様に、先に記されたものと類似の利点を有する先に記述されたソフトウェアコンポーネントの各要素の実施に適応された手段を含むデバイスにある。
【００２１】
本発明の他の利点、目的及び特徴は、添付図面に照らして、非限定的な例として提供される以下の詳細な説明から明らかになる。
【図面の簡単な説明】
【００２２】
【図１】本発明を実施する多目的データ自動処理システムを利用できる環境の一例を概略的に表わしている。
【図２】本発明に係る多目的データ自動処理システムのアーキテクチャの一例を示す。
【図３】マシン内で実行されるいくつかの機能の適応例を概略的に示す。
【図４】同じＳＴＡＤ上で実行されるべき機能に付随する危険性を分析するために実施されるいくつかのステップを概略的に示す。
【図５】仮想マシン内で、援用する機能に応じてＳＴＡＤ内で実施されるソフトウェアアプリケーションを割り当てるためのアルゴリズムの一例を概略的に示す。
【図６】本発明を少なくとも部分的に実装できるようにするデバイスの一例を示す。
【発明を実施するための形態】
【００２３】
本発明は特に、メンテナンス又は任務のために今日使用されている携帯式又は固定式の単一目的のデータ自動処理システム（ＳＴＡＤ）を、好ましくはセキュリティが確保された携帯式の唯一のＳＴＡＤに置換することができるようにする。
【００２４】
図１は、本発明を実施する多目的自動データ処理システムを使用できる環境１００の一例を概略的に表わす。この例によると、例えばフライト管理ソフトウェアアプリケーションを実行するために、航空機内で一名の搭乗員がＳＴＡＤ１０５を使用できる。
【００２５】
同じＳＴＡＤ１０５又は類似のＳＴＡＤ１１５は、メンテナンスチームが航空機１１０のメンテナンスデータにアクセスし且つ／又は航空機のデータ又はソフトウェアアプリケーションを更新するために利用され得る。
【００２６】
その上、例えばフライト準備のために、航空会社のオフィス１２５内で同じＳＴＡＤ又は類似のＳＴＡＤ１２０を利用することができる。類似の要領で、同じＳＴＡＤ１０５又は類似のＳＴＡＤ１３０を、その所有者が例えばホテルのネットワークアクセス１３５からデスクトップアプリケーション及びその電子メールにアクセスする目的で利用することができる。
【００２７】
ここで、図１上に示された実施例が、単なる例示目的でのみ提供されたものであることに留意されたい。これらは限定的な実施例ではない。
【００２８】
単独のＳＴＡＤ上で異なるセキュリティレベルニーズを有する機能を、各機能のセキュリティを危険にさらすことなく実施できるようにするために、ここでは複数の技術が組み合わされる。
【００２９】
ＳＴＡＤのオペレーションアプリケーション、デスクトップアプリケーション及びパーソナルアプリケーション、より一般的にはＳＴＡＤ内で実施される全ての機能は、こうして、セキュリティレベルニーズに応じ且つ好ましくは責任毎に、ＳＴＡＤ内で実施される複数の仮想マシン内にホストされる。
【００３０】
ここで、仮想マシンが、独自のコンフィギュレーション特性を有する実行環境を提供することが喚起される。換言すると、２つの仮想マシンを、独立した２つの物理的マシンとみなすことができる。各仮想マシンは、そのオペレーティングシステム、そのドライバ（英語ではｄｒｉｖｅｒと呼ばれる）、そのソフトウェアアプリケーション及びそのデータ管理・交換コンフィギュレーションを用いて実行される。
【００３１】
仮想化メカニズムにより、特にハイパーバイザを用いて実マシン上で複数の仮想マシンの実行が可能となる。
【００３２】
ハイパーバイザは、実マシンの資源の配分及び資源へのアクセス制御ルールの適用を担当する。仮想マシン間で配分される資源は、例えば、ＣＰＵ（英語でＣｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略称）演算能力、通信チャネル、ハードウェア及びソフトウェアの中断、入出力ポート、メモリー、クロック、フロンサイドバス、コントローラ及び／又は大容量メモリーなどである。本発明は、既定のルールに従って仮想マシンを管理するための個別の標準的なハイパーバイザの使用に基づく。
【００３３】
ここで実施される仮想化は、ハードウェア仮想化、例えばハイパーバイザが仮想マシンのリクエストを全て管理する完全な仮想化、又は一部のリクエストが仮想マシンによって直接管理される準仮想化である。
【００３４】
特定の一実施形態によると、実時間で適応される仮想化のソフトウェアツールが、性能及びセキュリティレベルの観点から見たそのメリットのために利用される。
【００３５】
その上、仮想化により、搭載システムについては、サーバー、スイッチ及び配線を含めた使用される情報処理ハードウェアの重量を最適化することが可能となり、同時に電力消費量の削減並びに配備手順及びメンテナンス手順の簡略化も可能となり、このことは航空機製造環境においてきわめて有利である。
【００３６】
図２は、異なるセキュリティレベルを有する環境において使用されるのに充分なセキュリティが確保された本発明に係るＳＴＡＤのアーキテクチャ例を示す。
【００３７】
図示されている通り、ＳＴＡＤ２００はここではハードウェア層２０５を含む。この層は、例えば英語ではｌａｐｔｏｐ又はｎｏｔｅｂｏｏｋとも呼ばれるポータブルパソコン、ＰＤＡ（英語でＰｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔの略称）とも呼ばれる携帯端末又はスマートホンの層に対応する。
【００３８】
ハードウェア層は信頼性の高いものでなくてはならないことから、ＴＰＭ（英語のＴｒｕｓｔｅｄ  Ｐｌａｔｆｏｒｍ  Ｍｏｄｕｌｅの略称）と呼ばれる認証モジュールを使用することで信頼性が改善されるＰＣタイプのオープンプラットフォームで構成され得る。これは、Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｇｒｏｕｐによって定義された暗号ハードウェアコンポーネントである。
【００３９】
ハードウェア層２０５は、ハイパーバイザを含むソフトウェア層２１０の実行を可能にする。この層は、相異なる複数の仮想マシン例えば、それぞれ２１５−１、２１５−２、２１５−３及び２１５−ｘと番号付けされた仮想マシンＭＶ１、ＭＶ２、ＭＶ３及びＭＶｘの実行を可能にする。
【００４０】
ここでは仮想マシン２１５−１である第１の仮想マシンは特別な役割及び権限を有している。これは、プラットフォームのメンテナンス及びコンフィギュレーションのためのアクセスとして役立つ管理者マシンである。このマシンはここではオペレーティングシステムＯＳ１を使用している。同様にこの実施例によると、仮想マシン２１５−１は、記憶スペースすなわち大容量メモリー、及びＩ／Ｏ（英語でＩｎｐｕｔ／Ｏｕｔｐｕｔの略称）と記された通信インターフェースを含む。
【００４１】
ここでは仮想マシン２１５−２である第２の仮想マシンは、最も感受性の高い情報システムすなわち航空機の情報システムにＳＴＡＤを接続することを可能にする。この仮想マシンに関係する表示は、例えばクライアント／サーバータイプの標準的なグラフィカルユーザーインターフェースに従ってＳＴＡＤのスクリーンに向かって又は航空機の特定スクリーンに向かって導かれ得る。
【００４２】
仮想マシン２１５−２は、ここではコックピットドッキングステーションタイプのリンクを介して航空機の情報システムとデータを交換できるようにする入出力インターフェース及びオペレーティングシステムＯＳ２を使用する。仮想マシン２１５−２は、オペレーションアプリケーションの実行を可能にする。この環境内で利用可能である周辺機器並びに所要のセキュリティレベルを保証するための管理者権限を精確に定義しておく必要がある。
【００４３】
ここでは仮想マシン２１５−３である第３の仮想マシンは、ここでは航空機の情報システムとは区別されるシステムである感受性の低い情報システムにＳＴＡＤを接続することを可能にしている。一例として、仮想マシン２１５−３は、ＳＴＡＤを運用する企業のイントラネット又はインターネットネットワーク、例えばホテルのＷｉＦｉアクセス端子にＳＴＡＤがアクセスできるようにする。
【００４４】
仮想マシン２１５−３に付随する危険性は、このマシンが情報漏洩源となる可能性のある環境に向かって開かれていることから、仮想マシン２１５−１及び２１５−２に比べてより高い。したがって、この仮想マシンは、英語でｍａｌｗａｒｅと呼ばれる破壊工作ソフトウェアのターゲットになり得る。さらに、この仮想マシン内で使用されるソフトウェアアプリケーション及びドライバは推測的に標準的ソフトウェアであると思われることから、これらは潜在的に公知のセキュリティホールをもっている。
【００４５】
その上、ＳＴＡＤの設計者及び／又は運用会社は、具体的ニーズに応えるために１つ以上の他の仮想マシン２１５−ｘの新規作成を決定することができる。一例を挙げると、仮想マシン２１５−ｘは、仮想マシン２１５−２のものと等価のセキュリティレベルを必要としているもののそのサプライヤが仮想マシン２１５−２内で実行されるアプリケーションのサプライヤとは異なっているソフトウェアアプリケーションの実行のために利用可能である。こうして、所要のセキュリティレベル及び責任に応じてアプリケーションの実行環境を切り離すことにより、単独のＳＴＡＤを使用することが可能である。
【００４６】
有利にも、実行レベルは、管理者権限へのアクセスが可能ではないような形でＳＴＡＤの起動時にユーザースペース内で制約を受けている。その上、接続バナーは好ましくは、ユーザーが仮想化層から退出するのを妨げるため非アクティブにされる。こうして、ユーザーは仮想マシンだけにアクセスすることになる。同様に有利にも、全ての起動キーシーケンスは非アクティブにされる。その上、ハードウェア仮想化機能性がＳＴＡＤのプロセッサー内に実装される場合、これらは期待されるセキュリティレベルを劣化させないような形で構成される。
【００４７】
ＳＴＡＤの起動時又はそのアクティブ化に際して、例えばスタンバイの後、ユーザーが認証される。このような認証がここではハイパーバイザによって行なわれる。仮想マシンへのアクセスはこの認証により左右される。こうして、例えば、操縦士及び副操縦士は、ＳＴＡＤを構成するために用いられる管理仮想マシンを除いて、ＳＴＡＤ上に実装された全ての仮想マシンにアクセスすることができ、一方メンテナンス技術者はこの管理仮想マシンにアクセスすることができる。仮想マシンをＳＴＡＤの起動時又はユーザーのリクエストに応えて自動的に始動させることができる。ユーザーのニーズに応じて、各仮想マシンを独立して起動し且つ停止させることができる。ユーザーは、例えばグラフィックインターフェースを介して標準的なメカニズムに従って１つの仮想マシンから別の仮想マシンへと移動することができる。
【００４８】
特定の一実施形態によると、仮想マシン内で実施される機能は、これらが実行される仮想マシンのセキュリティレベルなどのいくつかのパラメータに応じて適応される。
【００４９】
図３は、機能タイプに従った（ステップ３００）、これらパラメータに応じて仮想マシン内で実行されるいくつかの機能の適応の例を概略的に示している。
【００５０】
こうして、例えば、データ伝送を可能にする１つの通信機能について、仮想マシン又はその一部は、ＳＴＡＤの外部にあるいくつかのシステム、例えば航空機の情報システムに接続するために認証段階を通過する（ステップ３０５）。仮想マシンの始動及び／又はデータ交換の際にハイパーバイザにより実施されるこの認証段階には、以下のステップ：
標準的認証メカニズムに従った仮想マシンの認証（ステップ３１０）、
例えばオペレーティングシステム及び最終更新年月日などの複数のセキュリティ基準を制御することによる仮想マシンの無欠性の確認（ステップ３１５）、及び
実施された機能に応じた、他の仮想マシンに対するその仮想マシンの隔離レベルの確認（ステップ３２０）が含まれる。このステップにより、仮想マシンが航空機のシステムに接続されている場合、例えばユーザーインターフェース又はネットワークを介して、他のいずれの仮想マシンも、認証が要求されている仮想マシンと対話不能であることを確認することができる。あるいは、このステップは、既定の通信ルールの遵守を確認することから成っていてもよい。
【００５１】
こうして、データは、仮想マシンが外部システムに向かって誤ったデータを伝送することができないように、仮想マシンの認証後にのみ実際に伝送される（ステップ３２５）。
【００５２】
同様に、仮想マシン間のデータ転送も、所要のセキュリティレベルを保証するように制御される。実際、責任限界のニーズ又は異なるセキュリティレベルニーズのいずれかのために隔離されたかに拘わらず、一部の機能は、仮想マシン間のデータ移送ひいては通信チャネルのパラメータ化を必要とする可能性がある。
【００５３】
こうして、ソース仮想マシン（図３中ＭＶ*と記されている）のセキュリティレベルよりも高いセキュリティレベルを有する仮想マシンに向かって通過するデータを有効化できるようにするため、インポート機能が新規作成される。この機能の原理は特に、データをそのタイプに応じてフィルタリングし（ステップ３３０）、期待されるデータのみ（ステップ３３５）がオープン通信チャネルを通って通過する（ステップ３２５）ようにすることにある。しかしながら、ユーザーは、有効化、すなわち１つの仮想マシンのデータを、より高いセキュリティレベルをもつ別の仮想マシンに向かって効果的に転送することについての決定権を握っている。
【００５４】
ＳＴＡＤのメンテナンス作業を改善すべく、英語でｓｎａｐｓｈｏｔと呼ばれるスナップショットメカニズムが好ましくは使用される。
【００５５】
スナップショット機能により、所与の瞬間における仮想マシンに関するデータ全てを記憶することが可能となり、こうして仮想マシンは、その後、データがイメージの形で記憶された時の状態に戻れるように、再度起動されて再構成され得る。この機能をユーザーがアクティブにしてもよいし又は例えば毎週又は毎月などの既定の周期性に従って自動的に又は特定の事象に応じてアクティブにしてもよい。
【００５６】
さらに、ＳＴＡＤのセキュリティレベルを保証すべく、各々の仮想マシン内で、特殊なデータ書込み管理メカニズムが使用される。このメカニズムは、英語ではｃｏｐｙ−ｏｎ−ｗｒｉｔｅと呼ばれる書込みの際の画像コピー機能及びＳＴＡＤの大容量メモリー内での或る種のデータの書込み禁止機能に基づいている。
【００５７】
書込みの際にコピーされる画像の機能に応じて、仮想マシンがその起動の際に使用する全てのデータがコピーされ、このコピーのみが仮想マシンによって使用される。こうして、仮想マシンのその後の起動毎に、たとえ先行する起動のために使用されたデータがその後修正されていたとしてもそれと同じデータが使用される。
【００５８】
これら機能の組合せにより、ＳＴＡＤが標準的機器よりも多くのメンテナンスを必要とすることがないようにしながら、セキュリティレベルを保証することが可能になる。実際、仮想マシンに危険が及んだ場合でも、安定状態で作成されたスナップショットからそれを復元するだけで機能的システムに再び戻ることができる。
【００５９】
有利には、プラットフォームに危険が及ばないようにすることを目的として、仮想マシンのセキュリティレベルに応じて、必要なオペレーションだけがＳＴＡＤの大容量メモリー内へのデータ書込みを許可される（ステップ３４０）。例えば、ＳＴＡＤ内には、身元が明確に特定されたユーザーのデータ及びオペレーションデータのみを記憶することができる。さらに、仮想マシンのセキュリティレベルが高い場合、信頼性レベルが確認されているデータのみをＳＴＡＤ内に記憶することができる（ステップ３４５及び３５０）。このような確認は、例えばデータの無欠性又は由来を有効化すること又はこれらデータが生成された環境を確認することから成る。しかしながら、たとえこのようなデータをＳＴＡＤ内に記憶することができるとしても、データ回収ステップを回避しながらＳＴＡＤの交換を容易にすべく、ＳＤカード（英語のＤｉｇｉｔａｌ  Ｓｅｃｕｒｅの略称）のような又はＵＳＢメモリータイプの取外し可能な媒体内にこれらを記憶することが好ましい。信頼性レベルが確認されていないデータは、このような取外し可能な媒体の中に記憶され得る（ステップ３５５）。
【００６０】
例えば仮想マシンがインターネットにアクセスでき、ひいてはメッセージ、アプリケーション及びクッキー（英語では一般にｃｏｏｋｉｅと呼ばれる）を受けとることができる場合、又は周辺記憶機器などの周辺機器をＳＴＡＤに接続できる場合など、セキュリティレベルが低いすなわちセキュリティレベルが既定の閾値より低い仮想マシンからユーザーが獲得するデータについては、特別な処理が実施される。この場合、オペレーション上及びセキュリティ上の理由から、これらデータは、ＳＤカードのような又はＵＳＢメモリータイプの取外し可能な媒体上にしか記憶され得ない。
【００６１】
前述のように、ここで各々の仮想マシンは既定の１つのセキュリティレベルニーズに対応し、アプリケーション例えばオペレーションアプリケーション、デスクトップアプリケーション及びユーザーのパーソナルアプリケーションは、仮想マシンが援用する機能に応じてセキュリティレベルニーズ毎に複数の仮想マシンに配分されている。したがって、全体として充分なセキュリティレベルを得るためには、特に正しい用途、厳密に必要なドライバ及びＳＴＡＤの機能をサポートする通信手段を考慮に入れてハイパーバイザ及び仮想マシンを精巧に構成して、可能なかぎり攻撃面を削減し且つこうしてセキュリティレベルを劣化させないようにすることが重要である。
【００６２】
図４は、同じＳＴＡＤ上で実行しなければならない機能に付随する危険性を分析するために実施されるいくつかのステップを概略的に示している。これら危険性は、ＳＴＡＤ内に実装すべき仮想マシン及び使用される仮想マシン内でのこれら機能の配分を定義できるようにする。
【００６３】
この分析は特に、詳細には使用可能な通信インターフェース、使用されるオペレーティングシステム及び処理されるデータの由来を決定するために機能の実行パラメータを決定することからなる。これらパラメータは、機能を実施することができる仮想マシンのパラメータを特徴づけ且つセキュリティレベルの定義づけを可能にする。
【００６４】
例えば１つのセキュリティレベルが課されている場合、このセキュリティレベルを１つの機能に直接結びつけることも可能であるということに留意されたい。
【００６５】
第１のステップ（ステップ４００）は、各機能の危険性を評価することができるパラメータを決定するためにコンテクストを分析することを目的としている。
【００６６】
ここで危険性は、機密性、無欠性、利用可能性又は真偽性の喪失の場合に評価されることから、危険性を評価するために考慮され得るパラメータは特に以下のもの：
商業的活動との関係における情報の戦略的価値、
財産及び人の安全性との関係における情報の重大性、
規則上及び契約上の義務、
処理される情報の機密性、無欠性、真偽性及び利用可能性のオペレーション上の重要性、及び
利害関係者の期待及び認識並びにブランドイメージに対する影響である。
【００６７】
これらパラメータは、識別された各々の危険性についてのゾーンを定義する評価表を作成するために使用される。一例を挙げると、この評価表は、低、中、高の危険性に対応する３つのゾーンを含むことができる。特に実施すべき機能の危険性を識別することを可能にする各ゾーンに結びつけられた処理は、好ましくは、結果の比較及び再現性を可能にすべく予め定められている。換言すると、ステップ３００は、特定のニーズに応えるためにＳＴＡＤ内で実施されるべき機能の分析のコンテクストを作成することを可能にしている。
【００６８】
第２のステップ（ステップ４０５）では、危険性が識別される。ここで、保護すべき財産のリストを定義して責任を識別した後、潜在的な脅威並びにこれら脅威の媒介及びすでに実施された軽減手段が識別される。使用されるリストは、セキュリティレベルニーズについての決断を下すことができるように充分詳細なものでなくてはならないことに留意されたい。
【００６９】
次のステップ（ステップ４１０）では、以前に得た情報を公知の脆弱性と脆弱性の運用の場合における帰結のタイプ及びレベルと攻撃の確率とをかけ合わせることによって危険性を推定する。このステップにより、特に、演算コンテクストに応じて１つの危険性について考えられる帰結を評価し、１つの機能が受ける可能性のある危険性のリストを作成することができる。
【００７０】
最後に、次のステップ（ステップ４１５）では、先に作成された評価表及び付随する処理を用いて危険性レベルが各機能について評価される。得られた結果に応じて、例えば補足的制約を課すことで１つの機能に付随する危険性を削減するために、変形実施形態を用いて危険性の分析プロセスを再度行なうことを決定することができる（ステップ４００〜４１５の反復）。
【００７１】
ＳＴＡＤ内にホストされなくてはならない機能に適用される図４を参照して説明されたステップにより、各機能のセキュリティレベルニーズを定義することができる。これら結果は、場合によって責任基準と組み合わせて、同じ仮想マシン内にまとめられる機能を規定できるようにする。前述の通り、責任基準を使用することにより、ＳＴＡＤ内にその機能又はアプリケーションが実装される異なる介入者間の責任の限界を定義することが可能になる。例えば、各々が自らの部分に責任を負うように各介入者について１つの仮想マシンを定義することが可能である。
【００７２】
こうして、一例として、次のスキーマにしたがって４つの仮想マシンを使用することができる。
高セキュリティレベルニーズを有するアプリケーションを実行するための仮想マシンＦ１。この仮想マシンは、サプライヤ１の責任をフォローできるようにすべく他の仮想マシンから隔離される。
高セキュリティレベルニーズを有するアプリケーションを実行するための仮想マシンＦ２。この仮想マシンは、サプライヤ２の責任をフォローできるようにすべく他の仮想マシンから隔離される。
中セキュリティレベルニーズを有するアプリケーションを実行するための仮想マシンＦ３。
低セキュリティレベルニーズを有するアプリケーションを実行するための仮想マシンＦ４。
【００７３】
インストールの際にハイパーバイザによって新規作成された他の仮想マシンの管理に使用される管理者仮想マシンは純粋に技術的な用途を有し、オペレーション上の用途を有するものでないということに留意されたい。この仮想マシンを介して、特に他のマシンへのユーザーアクセス権が管理される。
【００７４】
図５は、援用する機能に応じて仮想マシンにＳＴＡＤ内で実施されるソフトウェアアプリケーションを配分するためのアルゴリズムの例を概略的に示している。
【００７５】
ＳＴＡＤ内で実施されるソフトウェアアプリケーションの指数を表わす変数ｉ、及び指数ｉを有するアプリケーションにより援用される機能の指数を表わす変数ｊは、１の値に初期化される（ステップ５００）。指数ｉを有するアプリケーションが援用する機能が決定される（ステップ５０５）。これら機能はここでは、データベース５１０内に表の形で記憶される。
【００７６】
ＢＮＳ（ｉ）と呼ばれるｉを指数とするアプリケーションのセキュリティレベルニーズはこのとき、ｊを指数とする機能のＢＮＳ（ｊ）と呼ばれるセキュリティレベルニーズであるものとして定義される（ステップ５１５）。
【００７７】
その後、ｉを指数とする機能が援用する機能の数に指数ｊの値が対応するか否かを決定するためにテストが行なわれる（ステップ５２０）。対応する場合、指数ｊは１だけ増分され（ステップ５２５）、ｊを指数とする機能のセキュリティレベルニーズ（ＢＮＳ（ｊ））が、指数をｉとするアプリケーションのセキュリティレベルニーズ（ＢＮＳ（ｉ））よりも大きいか否かを決定するために別のテストが行なわれる（ステップ５３０）。大きい場合、ｉを指数とするアプリケーションのセキュリティレベルニーズは、ｊを指数とする機能のセキュリティレベルニーズ（ＢＮＳ（ｊ））であるものとして定義される（ステップ５３５）。その後アルゴリズムはステップ５２０へと続く。
【００７８】
ｉを指数とする機能が援用する機能の数に指数ｊの値が対応する場合、ｉを指数とするアプリケーションは、セキュリティレベルがＢＮＳ（ｉ）に対応している仮想マシンに結びつけられる（ステップ５４０）。この情報はここで、データベース５４５の中に記憶される。
【００７９】
指数ｉの値はその後、全てのアプリケーションが仮想マシンに結びつけられたか否かを判定するためにＳＴＡＤによって実施されたアプリケーション数と比較される（ステップ５５０）。結びつけられた場合には、プロセスは終了する。そうでない場合には、指数ｉは１だけ増分され、先行のステップ（ステップ５０５〜５５０）が反復される。
【００８０】
前述の通り、特定のニーズに応じてハイパーバイザの内部に組み込むことができるようにすべく仮想マシンを互いに独立して新規作成することが可能である。その上、このような実施形態により、異なる介入者が自らのニーズに応じて自分のアプリケーションを組み込むことができるようになる。１つ又は複数の仮想マシンの責任を負うことで、各介入者はこうして機能セキュリティに関して保証を提供することができる。
【００８１】
こうして、先に記述したアルゴリズム及びＳＴＡＤのアーキテクチャを使用することによって、アプリケーションサプライヤは、自らのアプリケーションを組み込んだ１つ以上の仮想マシンを納入し、ＳＴＡＤ上で（仮想化に基づいて）推奨されるソフトウェアプラットフォームのインストール作業様式を伝達することができる。このＳＴＡＤは同様に、ハイパーバイザ及び１つ又は複数のプリインストールされた仮想マシンと共に供給されてもよい。
【００８２】
その上、前述の通り、クライアントはＵＳＢメモリー又はＳＤカードを用いて、ユーザーのプロフィール及びデータ、例えばメール識別子、インターネットナビゲータのブックマーク及びお気に入り並びに接続スクリプトを記憶することができる。このようにして、ＳＴＡＤは互換性があり、フリートの形で管理可能である。
【００８３】
有利にも、ＳＴＡＤが接続される可能性のある全ての航空機タイプ及び全ての用途について、共通ソフトウェアベースがＳＴＡＤフリート上にインストールされる。使用タイプ及び／又は航空機タイプに対応する１つ又は複数の仮想マシンが次にインストールされる。コンフィギュレーションの最後に、利用の際にＳＴＡＤのコンフィギュレーションを可能にすべく、１つ以上の基準画像が新規作成される。これら基準画像はさらに、技術者の手を借りることなくユーザーが復元できる。
【００８４】
一例としてここでは、Ｅｌｅｃｔｒｏｎｉｃ  Ｆｌｉｇｈｔ  Ｂａｇ（ＥＦＢ）という名で公知のツールボックスが考慮されている。これは、操縦士及び副操縦士が実施すべき任務を準備する基となるツールボックスである。ＥＦＢは、高いセキュリティレベルをもつアプリケーションではない。
【００８５】
本質的に、次のように定義された３つのクラスのＥＦＢが存在する。
クラス１：任務のデータは、地上からポータブル式ＳＴＡＤ内にロードされる。ＳＴＡＤは航空機内に持ち込まれるが、機内情報システムには接続されない。データは着陸後に初めて地上と交換される。
クラス２：これは１名の操縦士に専用の標準のポータブル式ＳＴＡＤである。このＳＴＡＤは、フライトの全段階にわたり地上特に航空会社及び空港並びに航空機の情報システムとデータを交換する。
クラス３：ＳＴＡＤはコックピットと一体化されており、高い耐空証明レベルが求められる極めて重要なシステムにアクセスすることができる。
【００８６】
したがって、クラス２のＥＦＢは、本発明に係るＳＴＡＤにより管理されうる。この場合、ＥＦＢのサプライヤは、オペレーションアプリケーション又はそのうちの一部をクライアントに納入する。サプライヤはクライアントに互換性あるシステムのリスト及びハイパーバイザの最小コンフィギュレーションを伝達し又はハイパーバイザ及びプリインストールされた仮想マシンと共にＳＴＡＤを納入する。
【００８７】
初期準備段階の間に、クライアントは、受け取ったオペレーションアプリケーション及びコンフィギュレーションデータを準備する。クライアントは同様に、例えばメールアプリケーションなどの企業の特定アプリケーションの使用を可能にする仮想マシンも準備する。
【００８８】
こうして、新規作成された仮想マシンを利用することにより、情報処理技術者は、ＳＴＡＤのハイパーバイザをインストールすることができ、こうしてこれにより、企業の情報処理手段、ＥＦＢの機能性及び場合によってはその他のものを利用することができるようになる。
【００８９】
ＳＴＡＤの互換性を保つために、ユーザーのデータはＳＴＡＤの内蔵ハードディスク上ではなく、好ましくは取外し可能なメモリーカード上、例えばＳＤタイプのカード上に記憶される。
【００９０】
使用中に、１つの仮想マシン上、例えば１つのインターネットサイトに接続された仮想マシン上で情報漏洩が検出された場合、ユーザーは、好ましくは技術者の手を借りることなく、直近に結びつけられた基準イメージを使用することにより仮想マシンを再起動することができる。
【００９１】
同様に、ＳＴＡＤのハードウェアが故障した場合、技術者はユーザーのメモリーカードを回収し、フリートの別のＳＴＡＤ内にそれを挿入する。技術者は、このＳＴＡＤをカスタマイズする必要もユーザーのデータをコピーする必要もない。
【００９２】
図６は、本発明の実施に適応されたハードウェアアーキテクチャの一実施例を示している。ここでは、デバイス６００は、通信用バス６０５を含み、これには以下のもの：
中央処理装置又はマイクロプロセッサー６１０（ＣＰＵ、英語でＣｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略称）、
本発明の実施に必要なプログラムを含み得る読取り専用メモリー６１５（ＲＯＭ、英語でＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの頭字語）、
前述のプログラムの実行中に新規作成されて修正される変数及びパラメータを記録するように適応されたレジスタを有するランダムアクセスメモリー又はキャッシュメモリー６２０（ＲＡＭ、英語でＲａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの頭字語）、及び
データを送受信するように適応された通信インターフェース６５０が接続されている。
【００９３】
デバイス６００は同様に、好ましくは以下の要素：
コマンドの表示などのデータを視覚化でき、且つ、キーボード及びマウス２３０又はタッチスクリーン若しくはリモコンなどの別のポインティング装置を用いて本発明に係るプログラムと対話できるユーザーとのグラフィックインターフェースとして役立つことのできるスクリーン６２５、
前述のプログラム及び本発明に係る処理済みデータ又は処理すべきデータを含むことができるハードディスク６３５、及び
メモリーカード６４５を収容し又は本発明に係る処理済みデータ若しくは処理すべきデータを読取り若しくは書込むように適応されたメモリーカードリーダー６４０も備えている。
【００９４】
通信バスは、デバイス６００内に含まれ又はそれに接続されている異なる要素間の通信及び相互運用を可能にする。バスの表現は限定されるものではなく、特に中央装置はデバイス６００の全要素に対して直接又はこのデバイス６００の別の要素を介して命令を伝達することができる。
【００９５】
プログラマブルデバイスが本発明に係るプロセスを実施できるようにする各プログラムの実行可能なコードは、例えばハードディスク６３５又は読出し専用メモリ６１５内に記憶され得る。
【００９６】
一変形形態によると、メモリーカード６４５は、データ、特に、検出された事象と要請され得るコマンドとの間の対応表と、デバイス６００によってひとたび読み出された時点でハードディスク６３５内に記憶される前述のプログラムの実行可能なコードとを収納することができる。
【００９７】
別の変形形態によると、前述のものと同じ要領で記憶されるように、プログラムの実行可能コードを少なくとも部分的にインターフェース６５０を介して受けとることができる。
【００９８】
より一般的には、１つ又は複数のプログラムを、実行前にデバイス６００の記憶手段の１つの中にロードすることができる。
【００９９】
中央装置６１０は、ハードディスク６３５若しくは読出し専用メモリー６１５又は前述の他の記憶要素内に記憶されている命令である本発明に係る１つ又は複数のプログラムのソフトウェアコードの一部又は命令の実行を指令し且つ誘導する。電源を入れた際に、例えばハードディスク６３５又は読出し専用メモリー６１５などの不揮発性メモリー内に記憶されている１つ又は複数のプログラムは、本発明の実施に必要な変数及びパラメータを記憶すべく、レジスタと同様に、そのとき本発明に係る１つ又は複数のプログラムの実行可能なコードを含むランダムアクセスメモリー６２０内に転送される。
【０１００】
当然のことながら、特定のニーズを満たすべく当業者であれば以上の記述に修正を加えることができる。
【図１】
0005646622.tif 000002
【図２】
0005646622.tif 000003
【図３】
0005646622.tif 000004
【図４】
0005646622.tif 000005
【図５】
0005646622.tif 000006
【図６】
0005646622.tif 000007