(57)【要約】  複数のクライアントに供する電子ネットワークの遠隔保守を実行するシステムは、中央サーバ、第１の仮想機械を収容する第１のクライアントシステム、第１のクライアントシステムと関連する受信機を有し得る。中央サーバは、複数のクライアントシステムに配信するために、利用可能な更新されたソフトウェアモジュールのリストをブロードキャストし得る。第１のクライアントシステムは、複数のノードを含み得る。複数の処理リソースの各々は、個々の関連するコンピュータ可読メモリに格納された対応する処理命令セットを有する。受信機は、中央サーバによりブロードキャストされたリストを受信するよう動作し得る（１２４）。第１の仮想機械は、第１のクライアントシステムの複数の処理リソースの同一性に少なくとも部分的に基づき、受信したリストにある任意の更新されたソフトウェアモジュールを要求するか否かを決定するよう動作し得る（１２６）。受信機は、第１の仮想機械により要求された更新されたソフトウェアモジュールを受信するよう動作し得る（１３０）。第１の仮想機械は、クライアントシステムに配信された任意の更新されたソフトウェアモジュールをインストールするよう動作し得る（１３２）。
2013522793.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアントに供する電子ネットワークの遠隔保守を実行するシステムであって、
前記複数のクライアントに配信するために利用可能な更新されたソフトウェアモジュールのリストをブロードキャストする中央サーバ、
複数の処理リソースを有する第１のクライアントシステムであって、前記複数の処理リソースの各々は個々の関連するコンピュータ可読メモリに格納された対応する処理命令セットを有する、第１のクライアントシステム、
前記第１のクライアントシステムと関連する受信機であって、前記受信機は前記中央サーバによりブロードキャストされたリストを受信するよう動作する、受信機、
前記第１のクライアントシステムにより収容される第１の仮想機械であって、前記第１のクライアントシステムの前記複数の処理リソースの同一性に少なくとも部分的に基づき、前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定するよう動作する、第１の仮想機械、
を有し、
前記受信機は、前記第１の仮想機械により要求された更新されたソフトウェアモジュールを受信するよう動作し、
前記第１の仮想機械は、前記クライアントシステムに配信された更新されたソフトウェアモジュールをインストールするよう動作する、システム。
【請求項２】
前記クライアントシステムは自動車と関連するFlexRayシステムを有する、請求項１に記載のシステム。
【請求項３】
前記クライアントシステムに配信するために利用可能な更新されたソフトウェアモジュールの前記リストは、利用可能な更新されたソフトウェアモジュールの各々の対応するＵＲＬ（uniform  resource  locator）を有する、請求項１に記載のシステム。
【請求項４】
前記中央サーバはデータセンタを有する、請求項１に記載のシステム。
【請求項５】
前記クライアントシステムは自動車と関連するFlexRayシステムを有し、前記第１の仮想機械は、前記自動車の製造元、型及び年に少なくとも部分的に基づき前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定する、請求項１に記載のシステム。
【請求項６】
前記第１の仮想機械は、前記クライアントに配信するために利用可能な更新されたソフトウェアモジュールの前記リストから更新されたソフトウェアモジュールを要求するために、無線を介して前記電子ネットワークに接続するよう動作する、請求項１に記載のシステム。
【請求項７】
複数のクライアントに供するよう構成された電子ネットワークにおいて遠隔保守を実行するシステムであって、
第１の仮想機械を動作させる複数の処理リソースを有するクライアントであって、前記複数の処理リソースの各々は、個々の関連するコンピュータ可読メモリに格納された対応する処理命令セットを有する、クライアント、
前記電子ネットワークと関連するサーバのセットであって、前記サーバのセットは、要求に応じて前記クライアントシステムに更新されたソフトウェアモジュールを配信するよう動作する、サーバのセット、
前記サーバのセットから前記クライアントへ配信するために利用可能な更新されたソフトウェアモジュールのリストを識別する無線信号を送信するブロードキャストモジュール、
前記クライアントシステムと関連する受信機であって、更新されたソフトウェアモジュールの前記リストを受信し、該リストを前記第１の仮想機械へ送信する、受信機、
を有し、
前記第１の仮想機械は、前記クライアントシステムの前記複数の処理リソースの同一性に少なくとも部分的に基づき、前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定するよう動作し、
前記第１の仮想機械は、前記サーバのセットのうちの１つから更新されたソフトウェアモジュールを要求するよう動作し、
前記受信機は、前記サーバのセットのうちの前記１つから前記第１の仮想機械により要求された更新されたソフトウェアモジュールを受信するよう動作し、
前記第１の仮想機械は、前記クライアントシステムに配信された更新されたソフトウェアモジュールをインストールするよう動作する、システム。
【請求項８】
前記サーバのセットから前記クライアントに配信するために利用可能な更新されたソフトウェアモジュールの前記リストは、前記サーバのセットの各々の対応するＵＲＬ（uniform  resource  locator）を有する、請求項７に記載のシステム。
【請求項９】
前記クライアントシステムは自動車と関連するFlexRayシステムを有する、請求項７に記載のシステム。
【請求項１０】
前記クライアントシステムに配信するために利用可能な更新されたソフトウェアモジュールの前記リストは、利用可能な更新されたソフトウェアモジュールの各々の対応するＵＲＬ（uniform  resource  locator）を有する、請求項７に記載のシステム。
【請求項１１】
前記中央サーバはデータセンタを有する、請求項７に記載のシステム。
【請求項１２】
前記クライアントシステムは自動車と関連するFlexRayシステムを有し、前記第１の仮想機械は、前記自動車の製造元、型及び年に少なくとも部分的に基づき前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定する、請求項７に記載のシステム。
【請求項１３】
前記第１の仮想機械は、前記クライアントに配信するために利用可能な更新されたソフトウェアモジュールの前記リストから更新されたソフトウェアモジュールを要求するために、無線を介して前記電子ネットワークに接続するよう動作する、請求項７に記載のシステム。
【請求項１４】
複数のクライアントに供する電子ネットワークにより供されるクライアントシステムにおいて遠隔保守を実行する方法であって、
前記複数のクライアントシステムに配信するために利用可能な更新されたソフトウェアモジュールのリストを受信するステップ、
前記クライアントシステムと関連する複数の処理リソースの同一性に少なくとも部分的に基づき、前記リストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定するステップ、
更新されたソフトウェアモジュールを要求するステップ、
前記要求した更新されたソフトウェアモジュールを受信するステップ、
前記受信した更新されたソフトウェアモジュールを前記クライアントシステムにインストールするステップ、を有する方法。
【請求項１５】
前記クライアントシステムは自動車と関連するFlexRayシステムを有する、請求項１４に記載の方法。
【請求項１６】
前記複数のクライアントシステムに配信するために利用可能な前記更新されたソフトウェアモジュールは、複数のサーバに収容される、請求項１４に記載の方法。
【請求項１７】
前記複数のクライアントシステムに配信するために利用可能な前記更新されたソフトウェアモジュールは、複数のサーバに収容され、配信するために利用可能な更新されたソフトウェアモジュールの前記リストは、配信のために利用可能な前記更新されたソフトウェアモジュールの各々の対応するＵＲＬ（uniform  resource  locator）を有する、請求項１４に記載の方法。
【請求項１８】
複数のクライアントシステムに配信するために利用可能な更新されたソフトウェアモジュールの前記リストは、データセンタを含む中央サーバによりブロードキャストされる、請求項１４に記載の方法。
【請求項１９】
前記クライアントシステムは自動車と関連するFlexRayシステムを有し、仮想機械は、前記自動車の製造元、型及び年に少なくとも部分的に基づき前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定する、請求項１４に記載の方法。
【請求項２０】
前記クライアントシステムに配信するために利用可能な更新されたソフトウェアモジュールの前記リストから更新されたソフトウェアモジュールを要求するために、無線を介して前記電子ネットワークに接続するステップ、を更に有する請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して情報交換に関し、より詳細には、安全性及びセキュリティの向上した情報処理システムの遠隔保守のための方法及びシステムに関する。
【背景技術】
【０００２】
分散通信ネットワークは、非公開のイントラネットから安全でないインターネットまで種々のシステムを含む。任意の通信ネットワークにおいて、電子コンテンツはネットワーク内のある点から別の点へと流れる。電子コンテンツは、この文脈では、電子文書、実行ファイル、データファイル等を含み得る。幾つかの通信ネットワークでは、電子コンテンツへのアクセスは、制限でき、及び／又は特定のユーザ及び／又はクライアントに限定できる。例えばユーザ名とパスワードの組合せ、公開鍵／秘密鍵の組合せ及び／又は生体認証のような、電子コンテンツへのアクセスを得ようとするユーザの同一性を検証する幾つかの方法が存在する。幾つかのネットワークでは、中央サーバは、電子コンテンツを要求側のユーザ及び／又はクライアントに配信する前に、このような方法を用い得る。
【０００３】
サービスプロバイダとクライアントとの間のソフトウェア交換は、交換されるデータの内容及びセキュリティを認証することにより改善できる。認証のための幾つかのシステムは、種々の理由から実装が困難である。例えば、オペレーティングシステム内のスキャニングエージェントやレポートエージェントを保護することは困難である。
【０００４】
別の例として、クライアントシステムのサイズは、サイズにより、スキャンを完了するため及び／又はレポートを送信するために非常に長い時間を必要とする。別の例として、幾つかのシステムは、生体センサとレポートエージェントとの間の安全なコネクションを提供できない。改良された認証方法及びシステムは、サービスプロバイダとクライアントとの間のソフトウェア交換のセキュリティ、速度及び／又は効率を向上できる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本開示は、前述の方法及びシステムに関連する欠点及び問題の少なくとも一部を実質的に除去又は低減する、電子コンテンツを配信する方法及びシステムを提供する。
【課題を解決するための手段】
【０００６】
一実施形態によると、複数のクライアントに供する電子ネットワークの遠隔保守を実行するシステムは、中央サーバ、第１の仮想機械を収容する第１のクライアントシステム、第１のクライアントシステムと関連する受信機を有し得る。中央サーバは、複数のクライアントシステムに配信するために、利用可能な更新されたソフトウェアモジュールのリストをブロードキャストし得る。第１のクライアントシステムは、複数のノードを含み得る。複数の処理リソースの各々は、個々の関連するコンピュータ可読メモリに格納された対応する処理命令セットを有する。受信機は、中央サーバによりブロードキャストされたリストを受信するよう動作し得る。第１の仮想機械は、第１のクライアントシステムの複数のノードの同一性に少なくとも部分的に基づき、受信したリストにある更新されたソフトウェアモジュールを要求するか否かを決定するよう動作し得る。受信機は、第１の仮想機械により要求された更新されたソフトウェアモジュールを受信するよう動作し得る。第１の仮想機械は、クライアントシステムに配信された更新されたソフトウェアモジュールをインストールするよう動作し得る。
【０００７】
別の実施形態によると、複数のクライアントに供する電子ネットワークにおいて遠隔保守を実行するシステムは、クライアントシステム、サーバのセット、ブロードキャストモジュール、クライアントシステムと関連する受信機、クライアントシステムにより動作される第１の仮想機械を有し得る。クライアントは、第１の仮想機械を動作させる複数の処理リソースを有する。複数の処理リソースの各々は、個々の関連するコンピュータ可読メモリに格納された対応する処理命令セットを有し得る。サーバのセットは、電子ネットワークと関連し得る。サーバのセットは、要求に応じて、クライアントシステムに更新されたソフトウェアモジュールを配信するよう動作し得る。ブロードキャストモジュールは、サーバのセットからクライアントに配信するために、利用可能な更新されたソフトウェアモジュールのリストを識別する無線信号を送信し得る。受信機は、更新されたソフトウェアモジュールのリストを受信し、該リストを第１の仮想機械へ送信するよう動作し得る。第１の仮想機械は、クライアントシステムの複数の処理リソースの同一性に少なくとも部分的に基づき、受信したリストにある更新されたソフトウェアモジュールを要求するか否かを決定するよう動作し得る。第１の仮想機械は、サーバのセットのうちの１つから更新されたソフトウェアモジュールを要求するよう動作し得る。受信機は、サーバのセットのうちの１つから第１の仮想機械により要求された更新されたソフトウェアモジュールを受信するよう動作し得る。第１の仮想機械は、クライアントシステムに配信された更新されたソフトウェアモジュールをインストールするよう動作し得る。
【０００８】
別の実施形態によると、複数のクライアントに供する電子ネットワークにより供されるクライアントシステムにおいて遠隔保守を実行する方法は、更新されたソフトウェアモジュールのリストを受信するステップ、更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定するステップ、更新されたソフトウェアモジュールを要求するステップ、要求した更新されたソフトウェアモジュールを受信するステップ、受信した更新されたソフトウェアモジュールをクライアントシステムにインストールするステップ、を有し得る。リストは、複数のクライアントシステムに配信するために、利用可能な更新されたソフトウェアモジュールを識別し得る。更新されたソフトウェアモジュールを要求することに関する決定は、クライアントシステムに関連する複数の処理リソースの同一性に少なくとも部分的に基づき得る。
【０００９】
本開示の特定の実施形態の技術的利点は、両クライアントをサーバに接続することなく、クライアント間の電子コンテンツの直接転送を可能にする方法を提供することを含む。方法は、個々のクライアントの特性に基づき転送をチェック及び／又は認証するステップを含み得る。方法は、電子コンテンツがサーバから配信された後に、電子コンテンツの転送をトラッキング及び／又はトレースするステップを含み得る。他の技術的利点は、添付の図面、説明及び特許請求の範囲から当業者に直ちに明らかである。さらに、特定の利点が以上に列挙されたが、種々の実施形態は列挙された利点の全て、一部を含んでもよく、又は含まなくてもよい。
【図面の簡単な説明】
【００１０】
【図１】本開示の教示による、クライアントシステムと外部データセンタとを含む例示的な通信ネットワークを示す。
【図２】本開示の教示による、例示的なクライアントシステムと外部データセンタとを含む例示的な通信ネットワークを示す。
【図３】本開示の教示による、クライアントシステムの詳細を含む例示的な通信ネットワークを示す。
【図４】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【図５】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【図６】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【図７】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【図８】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【図９】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【図１０】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【図１１】安全性及びセキュリティの向上した情報処理システムの遠隔保守のための種々の方法を表現したフローチャートを示す。
【発明を実施するための形態】
【００１１】
好適な実施形態及びそれらの利点は、図１乃至図１１を参照することにより良好に理解される。図中の同様の番号は同様の及び対応する部分を示すために用いられている。図１は、本開示の教示による例示的な電子ネットワーク１の簡略化した表現を示す。電子ネットワーク１は、データセンタ１０及びクライアントシステム２０を含み得る。電子ネットワーク１の幾つかの実施形態は、多数のクライアント及びそれらの個々のクライアントシステムを含み得る。図１−３では、明確化のため、単一のクライアント及びそのクライアントシステム２０が示され議論される。
【００１２】
データセンタ１０は、種々のクライアント及び／又はクライアントシステム２０に保守を提供するよう構成され得る。このような保守は、ソフトウェア及び／又はファームウェアのアップデート及び／又は状態の管理を含み得る。多くのクライアントシステム２０を有する複雑な電子ネットワークでは、電子コンテンツの種々のクライアントシステム２０への配信の管理は、レポートが認証され及び／又は検証されなければならない場合、一層困難になる。
【００１３】
本開示の目的のため、「電子コンテンツ」、「コンテンツ」、「ソフトウェア」及び／又は「ソフトウェアアップデート」は、任意のファイル、複数のファイル、オブジェクトコード、実行コード、データレコード、又は電子ネットワークのクライアントがアクセスを望み得る任意の他の電子的に記録されたデータ構造を含む。説明に役立つ例は、テキストファイル、スプレッドシート、電子メール、医療レポート、画像及び他の電子データ、並びにウェブページ、プライベートネットワーク、文書処理プログラム、ファイル管理システム及び他のプログラムを含み得る。さらに、「クライアント」は、エンドユーザとして活動する人、又はパーソナルコンピュータ、キオスク若しくはモバイルコンピュータ装置のような、通信ネットワークにアクセスするためにこのような人により用いられる１又は複数の装置を表し得る。
【００１４】
Trusted  Computing及びTrustCubeは、クライアントシステム２０に関する保証されたレポートをサービスプロバイダ（例えば、データセンタ１０）に提供できる。保証されたレポートは、クライアントシステム２０に関連するスキャン及び／又はレポートエージェントを保護するときに問題を生じ得る。さらに、スキャンを完了し大容量の関連するレポートを送信するために必要な時間は、非常に大きい。別の例として、クライアントシステム２０及びそのレポートエージェントに生体センサを実装することは困難である。
【００１５】
本発明の幾つかの実施形態では、仮想機械（ＶＭ）技術と信頼できるコンピューティング技術との組合せが、他の方法に勝る利点をもたらす。例えば、レポートを生成するという限られた目的のために、最小限のオペレーティングシステム（ＯＳ）を有する第１のＶＭを用いることは、クライアントシステム２０の残りの部分に外部アクセスに対する保護を与えることができる。別の例として、第１のＶＭはより少数のファイルを用い、これらのファイルは小さいので、データセンタ１０へ送られるレポートのサイズが削減できる。利点は、ハードディスクパーティション内の個々のファイルの代わりに、仮想ハードディスクイメージ及び仮想メモリイメージを用いることにより増大され得る。別の例として、限られた目的のＯＳは、同じファイル及び／又はメモリイメージを繰り返し用い、これらのファイル及びイメージに対する変更は廃棄及び／又は削除できる。
【００１６】
幾つかの実施形態では、ＶＭ技術は、ファイル記憶技術（例えば、ｍｂｏｘ）と組合せることができる。例えば、ファイルは、単一のファイル内に平文で格納できる。このような技術は、テキスト処理ツールがコンテンツで直ちに用いられるようにする。
【００１７】
仮想機械マネジャ（ＶＭＭ）は、種々のＶＭを生成し、実行し、監視し及び／又は終了させることができる。ＶＭＭは、ＶＭ間の割り込み及び／又は誤りを阻止し、及び／又はアプリケーションのハードウェア装置及び／又はインストールされたソフトウェアに対して有するアクセスを制御するよう機能できる。ＶＭＭは、アプリケーション及び／又はＶＭが実行される種々のスレッド間の時間を共有することにより、プロセッサのマルチタスクを管理できる。ＶＭＭの使用は、上述のＶＭの機能を拡張できる。
【００１８】
別の例として、生体センサは、別個のＶＭを用いて組み込まれ、ＶＭＭを通じて第１のＶＭに接続できる。データセンタ１０は、保証されたレポート技術を生体データと組み合わせて用い、クライアントシステム２０の状態及び／又は生体データの信頼性を評価できる。
【００１９】
データセンタ１０は、プロセッサ１２、記憶リソース１４及び通信バス１６を有し得る。プロセッサ１２は、プログラム命令を解釈し及び／若しくは実行し、並びに／又はデータを処理する任意のシステム、装置又は機器を有してもよく、限定ではなくマイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、又はプログラム命令を解釈し及び／若しくは実行し並びに／又はデータを処理するよう構成された任意の他のデジタル若しくはアナログ回路を有してもよい。幾つかの実施形態では、プロセッサ１０４は、プログラム命令を解釈し及び／又は実行し、及び／又は記憶リソース１４及び／若しくはデータセンタ１０の別のコンポーネント内に格納されたデータを処理してもよい。
【００２０】
データセンタ１０は、セキュリティポリシ及び認証属性を管理する信頼できる専用サーバを表し得る。データセンタ１０は、クライアントシステム２０が電子コンテンツ及び／又はソフトウェアへのアクセスを許可される前に満たさなければならない属性値のセットを定める多数のポリシを含むデータベースを有することができる。データセンタ１０は、クライアントシステム２０からの属性レポートを受信し、クライアントシステム２０と関連する１又は複数の属性を識別できる。属性を認証した後に、データセンタ１０は、要求されたサービスをクライアントシステム２０に提供するか否かを決定できる。このような属性レポート及び認証の適用は、「ポリシに基づく管理」としても表される。コンテキストデータは、物理的位置（例えば、ＩＰアドレス）、要求側の機械にインストールされた特定のソフトウェア（例えば、厳しいウイルス駆除ソフトウェア）、生体識別子、又はクライアントシステム２０の任意の他の適切なコンテキスト属性のようなクライアントシステム２０を表すデータを有してもよい。
【００２１】
記憶リソース１４は、プロセッサ１２に通信可能に結合され、プログラム命令又はデータをある期間の間保持するよう動作可能な任意のシステム、装置又は機器を有してもよい（例えば、コンピュータ可読媒体）。記憶リソース１４は、ＲＡＭ（random  access  memory）、ＥＥＰＲＯＭ（electrically  erasable  programmable  read-only  memory）、ＰＣＭＣＩＡカード、フラッシュメモリ、磁気記憶装置、光磁気記憶装置、又は任意の適切な選択肢、及び／又は揮発性メモリ若しくは記憶リソース１２への電力がオフに切り替えられた後にデータを保持する不揮発性メモリのアレイを有してもよい。
【００２２】
記憶リソース１４は、制御ロジックを含む、ハードウェア及びソフトウェアの任意の組合せを有してもよい。例えば、記憶リソース１４は、医療レコードのような文書の集中型レポジトリを有してもよい。別の例として、記憶リソース１４は、特定のアプリケーション、ソフトウェア又はネットワークを介した他の媒体へのアクセスを提供するアプリケーションサービスプロバイダを表してもよい。このようなアプリケーション、ソフトウェア又は媒体は、特に、文書リーダ、ウェブブラウザ又は文書編集ソフトウェアを含んでもよい。別の例として、記憶リソース１４は、オンラインでネットワーク接続されたウェブサイト又は電子メールプロバイダと関連してもよい。
【００２３】
説明を明確にするために、図１は、プロセッサ１２及び記憶リソース１４を別個のコンポーネントとして示す。幾つかの実施形態では、プロセッサ１２及び記憶ユニット１４は、コンピュータ可読媒体に格納され１又は複数のコンピュータ及び／又はサーバと関連する１又は複数のプロセッサにより実行可能なスタンドアロン型ソフトウェアプログラムを有してもよい。しかしながら、プロセッサ１２及び記憶ユニット１４は、大規模ソフトウェアプログラムのコンポーネント又はサブルーチンを有し、コンピュータ可読媒体及び／又は所望の機能を実行するよう構成されたハードウェア若しくはソフトウェアモジュールにハードコピーされてもよい。
【００２４】
通信バス１６は、データセンタ１０とネットワーク１８との間のインタフェースとして機能する任意の適切なシステム、機器又は装置であってもよい。
【００２５】
通信バス１６は、データセンタ１０にネットワーク１８を介して、ネットワーク１８に関する以下の議論で列挙される全ての送信プロトコル及び／又は標準を含むがそれらに限定されない任意の適切な送信プロトコル及び／又は標準を用いて通信させる。幾つかの実施形態では、ネットワーク１８は、閉じられたネットワークであってもよい（例えば、ネットワーク１８は許可されたクライアントによってのみアクセス可能である）。
【００２６】
図示されたように、ネットワーク１８は、音声及び／又はビデオ通信信号、データ及び／又はメッセージを送信可能な任意のネットワークを有してもよい。幾つかの例は、無線アクセスネットワーク、公衆交換電話網（ＰＳＴＮ）、公衆又は私設データネットワーク、ローカルエリアネットワーク（ＬＡＮ）、都市域ネットワーク（ＭＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット、有線若しくは無線ネットワーク、企業イントラネット若しくはこれらの任意の組合せのようなローカル、地域若しくはグローバル通信若しくはコンピュータネットワークのうちの全て又は一部を含んでもよい。
【００２７】
動作中、ネットワーク１８は、ネットワーク１８に結合されたコンポーネント間の接続を、任意の適切な通信プロトコルを用いて提供できる。上述の通信機能を実現するために、ネットワーク１８は、ルータ、ハブ、スイッチ、ゲートウェイ、呼制御装置、及び／又は任意の他の適切なコンポーネントを任意の適切な形式又は構成で有してもよい。また、ネットワーク１８は、パケット、セル、フレーム、セグメント又は他のデータ部分の形式で情報を通信するよう構成された任意のハードウェア及び／又はソフトウェアを有してもよい。ネットワーク１８は、単一のネットワークとして示されるが、通信ネットワーク１８は、任意の数又は構成のネットワークを有してもよい。さらに、通信ネットワーク１の特定の実施形態は、任意の数又は構成のネットワーク１８を有してもよい。
【００２８】
幾つかの実施形態では、ネットワーク１８は、仮想プライベートネットワーク（ＶＰＮ）を有してもよい。ＶＰＮは、開放型及び／又は公衆ネットワークに勝るセキュリティを提供する。一般に、ＶＰＮは、仲介ネットワーク（例えば、ＬＡＮ又はＷＡＮ）を共有する他の装置からデータが秘密に及び／又はセキュアに保たれるように、データ転送を分離及び／又はカプセル化する。動作中、ＶＰＮは、複数のクライアント２０が、直接に及び／又はプライベートに接続されているかのように、データセンタ１０と相互作用できるようにする。
【００２９】
クライアント２０は、データセンタ１０により少なくとも部分的に維持される任意のシステム及び／又は電子ネットワーク１のコンポーネントを有してもよい。クライアント２０は、複数のプロセッサ、関連ソフトウェア及び／又はファームウェア、センサ等を有してもよい。例えば、クライアント２０は、自動車及びその内部ネットワークを有してもよい。別の例として、クライアント２０は、プロセッサ及びソフトウェア識別モジュール（ＳＩＭ）カードを備えた携帯電話機を有してもよい。本開示の文脈では、クライアント２０は、特定の実施形態に関して記載されるが、教示がそれらに限定されることはない。幾つかの実施形態では、クライアント２０と関連する種々のプロセッサ及び記憶リソースは、複数のベンダ及び／又はサービスプロバイダにより提供されてもよい。これらの実施形態では、種々のプロセッサ及びそれらの関連するソフトウェア及び／又はファームウェアの保守は、複数のベンダ及び／又はサービスプロバイダに渡りデータを調整する必要性により達成できる。クライアントシステム２０全体への自由なアクセスを認めるのではなく、本開示の教示は、仮想部分が種々のリソースを互いに分離することを可能にする。
【００３０】
クライアント２０は、データセンタ１０との無線通信のための機能を含むコンピュータ及び／又はコンピュータ装置を有してもよい。例えば、クライアント２０は、デスクトップコンピュータ、ラップトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、スマートフォン、セルラ若しくはモバイルフォン、車内若しくは車外ナビゲーションシステム及び／又はモバイルゲーム装置を有してもよい。クライアント２０は、１又は複数のクライアントアプリケーション（例えば、ウェブブラウザ、テキストエディタ、等）を動作させてもよい。
【００３１】
図１は、処理モジュール２１、複数のＶＭ２２、ＶＭＭ２４、信頼できるプラットフォームモジュール（trusted  platform  module：ＴＰＭ）２６、リソースリスト２８、クライアントネットワークシステム３０、ノード３２及びＧＰＳインタフェース４０を含む例示的なクライアントシステム２０を示す。幾つかの実施形態は、複数のＶＭ２２を生成し、ＶＭＭ２４を用いてそれらの間を流れる情報を制御することにより、ＶＭ２２のセキュリティを向上できる。
【００３２】
クライアントシステム２０は、図１に示された簡略化されたネットワークシステム３０よりもかなり複雑であってもよい。例えば、自動車は、幾つかの例では数百個のプロセッサである複数のプロセッサを含むクライアントネットワークシステム３０（例えば、FlexRay）を有してもよい。図１では、ノード３２は、単一のプロセッサ及び／又はクライアントネットワークシステム３０と関連する別のリソースを表す。
【００３３】
ＶＭ２２は、クライアントネットワークシステム３０及び／又はクライアントネットワークシステム３０と関連する単一のプロセスに対応する仮想機械を有してもよい。複数のＶＭ２２は、複数のオペレーティングシステム（ＯＳ）を実行できる。このような構成では、各ＶＭ２２は、ＶＭＭ２４を通じてクライアントシステム２０及び／又は処理モジュール２１のリソースを処理するために必要な、単一の目的のＯＳ及び時間共有を用いることができる。
【００３４】
信頼できるプラットフォームモジュール２６は、暗号鍵を生成するよう構成されたリソース（例えば、ハードウェア疑似乱数生成器）を含んでもよい。幾つかの実施形態では、ＴＰＭ２６は、遠隔認証及び／又はシールドされた記憶装置を有してもよい。幾つかの実施形態では、ＴＰＭ２６は、製造中にプロセッサチップに割り当てられ焼き付けられたユニーク且つ秘密のＲＳＡ鍵を備えた少なくとも１つの専用プロセッサを有する。ＴＰＭ２６におけるユニークなＲＳＡ鍵の使用は、データセンタ１０が、クライアントシステム２０が本当にクライアントであることを検証することを可能にする。
【００３５】
例えば、ＴＰＭ２６は、クライアントシステム２０のハードウェア及びソフトウェア設定の要約を含むハッシュ鍵を用いることができる。ハッシュ鍵は、クライアントシステム２０が、任意の入来するソフトウェアパッケージ及び／又はアップデートをテストしてそれらが変更されていないことを検証出来るようにする。検証方法の一例は、プロセッサの製造中にプロセッサにユニークなＴＰＭの推奨鍵及び／又はその推奨鍵に関連する別の信頼できる鍵に基づく結合、暗号化を含む。検証方法の別の例は、ＴＰＭ２６の状態に対して追加の状態要件を課すシーリングを含む。
【００３６】
リソースリスト２８は、エンティティのリスト及び／又はレジスタを有してもよい。幾つかの実施形態では、リソースリスト２８は、アクセスを許可されたエンティティ及び／又は認定のホワイトリストを含んでもよい。ホワイトリストは、ＴＰＭ２６がクライアントシステム２０へのアクセスを許可できる任意のデータセンタ１０のエンティティを含んでもよい。幾つかの実施形態では、リソースリスト２８は、アクセスを拒否されるエンティティのブラックリストを含んでもよい。
【００３７】
クライアントネットワーク３０は、特定のクライアント内のネットワークシステムを有してもよく、複数のプロセッサ及び／又は記憶リソースを含む。例えば、クライアントネットワーク３０は、自動車と関連するFlexRayネットワークシステムを含んでもよい。FlexRayは、自動車システム内の多数のプロセッサを管理するために開発されたネットワーク通信プロトコルの特定の実施形態である。別の例として、制領域ネットワーク（controller-area  network：ＣＡＮ又はＣＡＮ−ｂｕｓ）は、マイクロコントローラ及び装置がホストコンピュータなしで互いに通信できるように設計された通信プロトコル標準の特定の実施形態である。更なる例は、ＴＴＰ（time  triggered  protocol）及びＡＦＤＸ（avionics  full-duplex  switched  ethernet）を含む。
【００３８】
クライアントシステム２０内のノード３２は、クライアントシステム２０の任意の特定のリソースを有してもよい。例えば、ノード３２は、プロセッサ及び／又はそららと関連するソフトウェア、ファームウェア及び／又はプロセッサに関する処理命令を有してもよい。例えば、自動車は、複数のＣＰＵを含む非常に複雑なネットワークシステムを有し得る。各ＣＰＵは、ベンダにより供給された自身の動作のためのソフトウェア及び／又はファームウェアを有し得る。クライアントネットワーク３０は、クライアントシステム２０内の各ノード３２と関連するソフトウェア及び／又はファームウェアのバージョン及び／又はアップデートの状態の管理を含む、各ノード３２の動作及び／又は保守を担ってもよい。
【００３９】
ＧＰＳインタフェース４０は、ＧＰＳ（Global  Positioning  System）との任意のインタフェースを有してもよい。ＧＰＳは、信頼できる位置及び時間情報を提供する宇宙ベースの全地球的航法衛星システムを有する。ＧＰＳは、誰でも及び／又はＧＰＳ受信機を備えた任意のシステムによりアクセス可能である。特定の及び正確な位置及び／又は次管情報の使用は、クライアント処理モジュール２１が、情報の要求、ダウンロード及び／又は他のコンテンツを管理することを可能にする。
【００４０】
図２は、本開示の教示による、例示的なクライアントシステム２０と外部データセンタ１０ａ及び１０ｂとを含む例示的な通信ネットワークを示す。データセンタ１０は、クライアントシステム２０によりアクセス可能な任意の外部データベースを含み得る。説明のみを目的として、一例であるクライアントシステム２０は、図２に関して説明される。図２では、クライアントシステム２０は、移動体ナビゲーションシステムを有する。本開示の教示は、任意の適切なクライアントシステム２０で用いることができる。
【００４１】
通信ネットワーク２は、インターネット４２、外部データセンタ１０、及びクライアント移動体ナビゲーションシステム２０を含み得る。クライアントシステム２０は、プライベート基盤４４（例えば、ユーザ宅内の家庭用インターネット接続）を通じてインターネット４２と通信できる。データセンタ１０ａ及び１０ｂは、ネットワーク１８を通じてクライアントシステム２０と通信できる。ネットワーク１８は、本開示で記載されるようなセキュアな通信を提供できる。
【００４２】
データセンタ１０ａは、クライアントシステム２０内で有用な電子コンテンツのデータベースを含み得る。例えば、クライアントシステム２０が移動体ナビゲーションシステムを含む場合、データセンタ１０ｂは、地図、ユーザのために更新されたインタフェース、及び移動体ナビゲーションシステムに関連する他のコンテンツを有してもよい。データセンタ１０ａは、ＩＳＰを介してインターネット４２とも通信できる。
【００４３】
データセンタ１０ｂは、移動体ナビゲーションシステム２０の動作に関連するファームウェア、保守及びソフトウェアを収容するデータベースを有してもよい。例えば、データセンタ１０ｂは、移動体ナビゲーションシステム２０内の各プロセッサに最新バージョンのファームウェアのリストを提供できる。
【００４４】
クライアントシステム２０は、モジュール２１内で幾つかのＶＭ２２を動作させ、各々別個のデータソースと接続させる。例えば、ＶＭ２２は、インターネット４２との相互作用のための汎用ブラウザ及び／又はウェブＯＳを有してもよい。別の例として、ＶＭ２２ｂ及び２２ｃは、それぞれデータセンタ１０ａ及び１０ｂとの相互作用のためのプライベートアプリケーション及び仮想ＯＳを有してもよい。別の例として、ＶＭ２２ｄは、ユーザの自動車３２内の種々のシステムとの相互作用のためのプライベートアプリケーション及び仮想ＯＳを有してもよい。
【００４５】
各ＶＭ２２は、ＶＭＭ２４を通じて別のＶＭ２２と通信するだけでもよい。
【００４６】
ＶＭＭ２４は、ＴＰＭと協力してこれらの通信を管理し、各ＶＭ２２のセキュリティを向上できる。例えば、インターネット４２から受信したコンテンツは、本願明細書に記載された種々の方法のうちの任意のものによりＶＭＭ２４により認可されない限り、ノード３２にインストールしてはならない。
【００４７】
図３は、本開示の教示による、クライアントシステム２０の詳細を含む例示的な通信ネットワーク２の詳細を示す。図３は、ＶＭＭ２４が各ＶＭ２２の環境管理を担うことを示す。各ＶＭ２２は、ＯＳ４６により動作される関連アプリケーション４４を含んでもよい。ＶＭＭ２４は、種々のＶＭ２２に適切に記憶リソース４８を提供できる。ＶＭＭ２４は、各ＶＭ２２と関連して１又は複数のプログラム５０を動作できる。ＶＭＭ２４は、ＴＰＭ２６及び／又はリソースリスト２８と協力して、暗号化、検証鍵、ホワイトリスト及び／又はブラックリストを提供できる。
【００４８】
図４は、本開示の特定の実施形態による、複数のクライアントシステム２０に供するよう構成された電子ネットワークにおける遠隔保守を実行する例示的な方法６０のフローチャートを示す。方法６０は、複数のステップを含み、データセンタ１０及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。方法６０は、６２で開始する。幾つかの実施形態では、クライアントシステム２０は、自動車及び／又は自動車と関連するFlexRayシステムを有してもよい。
【００４９】
ステップ６４は、クライアントシステム内の種々のプロセッサ及びリソースと関連するソフトウェアのデータベースを有するデータセンタ１０を動作させるステップを含み得る。例えば、ステップ６４は、クライアントシステム２０と関連するプロセッサのリスト、並びにクライアントシステム２０のプロセッサによる使用のために提供される任意の現在のソフトウェア及び／又はファームウェアを保守するステップを含み得る。
【００５０】
ステップ６６は、クライアントシステム２０の処理モジュール２１により収容される第１の仮想機械２２ｂと通信するステップを含み得る。第１の仮想機械２２ｂは、データセンタ１０と関連する第１のデータセットを処理できる。第１の仮想機械２２ｂは、上述のようにＶＭＭ２４により管理できる。第１の仮想機械２２ｂは、データセンタ１０により保守されるプロセッサ及びそれらの関連するソフトウェア及び／又はファームウェアのリストを監視するよう構成されてもよい。
【００５１】
ステップ６８は、第１の仮想機械２２ｂからの要求を受信して、クライアントシステム２０に配信するめにソフトウェアアップデートを識別するステップを含み得る。例えば、データセンタ１０は、このような要求を第１の仮想機械２２ｂからネットワーク１８を通じて受信できる。
【００５２】
ステップ７０は、クライアントシステム２０の同一性を検証する認証処理を実行するステップを含み得る。認証処理は、上述の検証処理のうちの任意のものを有してもよい。幾つかの実施形態では、認証処理は、１又は複数の生体指標を受信し、テストし、及び／又は検証するステップを含んでもよい。幾つかの実施形態では、データセンタ１０は、クライアントシステム２０の同一性を検証する認証処理を実行してもよい。
【００５３】
ステップ７２は、ネットワーク１８を用いて、識別されたソフトウェアアップデートを第１の仮想機械２２ｂへ送信するステップを含み得る。ネットワーク１８は、上述のような閉じられたネットワークであってもよい。幾つかの実施形態では、データセンタ１０は、ステップ７２を実行してもよい。幾つかの実施形態では、識別されたソフトウェアアップデートは、無線で送信されてもよい。
【００５４】
ステップ７４は、クライアントシステムと関連する第２の仮想機械２２ｃを用いて、識別されたソフトウェアアップデートをクライアントシステム２０にインストールするために、第１の仮想機械２２ｂを認証するステップを有し得る。幾つかの実施形態では、データセンタ１０は、ステップ７４を実行してもよい。他の実施形態では、ＶＭＭ２６は、ステップ７４を実行してもよい。方法６０は、７６で終了する。
【００５５】
方法６０は、第１の仮想機械２２ｂ及び第２の仮想機械２２ｃがＶＭＭ２４を通じて通信するクライアントシステム２０で有用である。ＶＭＭ２４の使用は、データセンタ１０による直接アクセスからクライアントシステム２０を保護でき、及び／又はその他の場合にはクライアントシステム２０のコンポーネントのセキュリティを向上できる。方法６０の幾つかの実施形態では、第１の仮想機械２２ｂは、クライアントシステム２０がソフトウェアアップデートのインストールに成功したかを第２の仮想機械２２ｃに問い合わせてもよい。
【００５６】
多数のノード３２を有するクライアントシステム２０では、従来の保守方法は、クライアントシステム２０が安全な保守位置で供されることを要求する。無線送信及び／又は他の無線のシステムによる遠隔保守は、これらの従来の方法の下ではセキュリティを低減してしまう。
【００５７】
これに対し、方法６０を用いる電子ネットワーク１は、セキュリティを低減することなく、遠隔保守の使用を可能にできる。電子ネットワーク１の特定の実施形態は、種々のＶＭ２２間のデータ交換がＶＭＭ２４により動作され及び／又は制御される場合、ＶＭＭ２４でＶＭ２２を管理することにより、任意の特定のＶＭ２２のセキュリティを向上できる。
【００５８】
図５は、本開示の特定の実施形態による、クライアントシステム２０がリモートサーバに要求しリモートサーバからソフトウェアアップデートを受信する例示的な方法８０のフローチャートを示す。方法８０は、複数のステップを含み、クライアントシステム２０のプロセッサモジュール２１及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。幾つかの実施形態では、クライアントシステム２０は、自動車及び／又は自動車と関連するFlexRayシステムを有してもよい。方法８０は、８２で開始する。
【００５９】
ステップ８４は、クライアントシステム２０と関連する２つのＶＭ２２を収容するステップを含み得る。第１のＶＭ２２ｂは、クライアントシステム２０と関連する第１のデータセットを処理できる。第２のＶＭ２２ｂは、外部データセンタ１０と関連する第２のデータセットを処理できる。
【００６０】
ステップ８６は、２つの仮想機械２２間の通信を管理するよう構成されたＶＭＭ２４を動作させるステップを含み得る。ＶＭＭ２４の使用は、データセンタ１０による直接アクセスからクライアントシステム２０を保護でき、及び／又はその他の場合にはクライアントシステム２０のコンポーネントのセキュリティを向上できる。
【００６１】
ステップ８８は、第１のデータセットが第２のデータセットと比較して古いと認識するステップを含み得る。ステップ８８は、ＶＭ２２により実行できる。例えば、第２のＶＭ２２は、任意のプロセッサ及び／又はそれらの個々のソフトウェア及び／又はファームウェアの状態、バージョン及び／又は設定を調べるために、第１のＶＭ２２ｄに問い合わせてもよい。例えば、第２のＶＭ２２ｂは、特定のプロセッサ及び／又はそれらの個々のソフトウェア及び／又はファームウェアの状態、バージョン及び／又は設定をデータセンタ１０内の更新されたデータと比較してもよい。
【００６２】
ステップ９０は、クライアントシステム２０に配信するために、ソフトウェアアップデートを識別するステップを含み得る。ステップ９０は、ＶＭ２２、データセンタ１０及び／又は電子ネットワーク１の他のコンポーネントにより実行できる。幾つかの実施形態では、ＶＭ２２は、セキュアな機構を介して（例えば、ＴＰＭ／ＴＮＣを介して）、クライアントシステム２０に関連するデータをデータセンタ１０へ送信してもよい。
【００６３】
ステップ９２は、データセンタ１０の同一性を検証する認証処理を実行するステップを含み得る。認証処理は、上述の検証処理のうちの任意のものを有してもよい。幾つかの実施形態では、認証処理は、１又は複数の生体指標を受信し、テストし、及び／又は検証するステップを含んでもよい。幾つかの実施形態では、クライアントシステム２０は、ＶＭ２２ｂ、ＴＰＭ２６及び／又はリソースリスト２８を用いて、データセンタ１０の同一性を検証する認証処理を実行してもよい。
【００６４】
ステップ９４は、外部データセンタ１０からの識別されたソフトウェアアップデートを要求するステップを含み得る。幾つかの実施形態では、第２のＶＭ２２ｂは、ステップ９４を実行してもよい。識別されたソフトウェアアップデートは、クライアントシステム２０の１又は複数のノード３２（例えば、ＣＰＵ）に関連する種々のソフトウェア及び／又はファームウェアを有してもよい。
【００６５】
ステップ９６は、外部データセンタ１０からクライアントシステム２０への識別されたソフトウェアアップデートを受信するステップを含み得る。幾つかの実施形態では、第２のＶＭ２２ｂは、ステップ９６を実行してもよい。識別されたソフトウェアアップデートは、ネットワーク１８を介して送信されてもよい。幾つかの実施形態では、ＶＭＭ２４は、ステップ９８を実行する前に、受信したソフトウェアアップデートの完全性をチェックしてもよい。
【００６６】
ステップ９８は、第１の仮想機械２２ｂを通じて、送信されたソフトウェアアップデートをクライアントシステム２０にインストールするステップを含み得る。方法８０の幾つかの実施形態では、第２の仮想機械２２ｂは、クライアントシステム２０がソフトウェアアップデートのインストールに成功したかを第１の仮想機械２２ｃに問い合わせてもよい。幾つかの実施形態では、クライアントシステム２０は、ソフトウェアアップデートの受信及び／又はインストールのログを生成及び／又は維持してもよい。幾つかの実施形態では、データセンタ１０は、ソフトウェアアップデートの受信及び／又はインストールのログを生成及び／又は維持してもよい。このログはタイムスタンプを有してもよい。
【００６７】
方法８０は、９９で終了する。
【００６８】
多数のノード３２を有するクライアントシステム２０では、従来の保守方法は、クライアントシステム２０が安全な保守位置で供されることを要求する。無線送信及び／又は他の無線のシステムによる遠隔保守は、これらの従来の方法の下ではセキュリティを低減してしまう。
【００６９】
これに対し、方法８０を用いる電子ネットワーク１は、セキュリティを低減することなく、遠隔保守の使用を可能にできる。電子ネットワーク１の特定の実施形態は、種々のＶＭ２２間のデータ交換がＶＭＭ２４により動作され及び／又は制御される場合、ＶＭＭ２４でＶＭ２２を管理することにより、任意の特定のＶＭ２２のセキュリティを向上できる。
【００７０】
図６は、本開示の特定の実施形態による、電子ネットワークにより供されるクライアントシステムで遠隔保守を実行する例示的な方法１００のフローチャートを示す。方法１００は、複数のステップを含み、データセンタ１０及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。幾つかの実施形態では、クライアントシステム２０は、自動車及び／又は自動車と関連するFlexRayシステムを有してもよい。方法１００は、１０２で開始する。
【００７１】
ステップ１０４は、クライアントシステムのノード３２のリストを対応する処理命令セットに相関させる情報を含むデータベースを維持するステップを含み得る。データセンタ１０は、単独で又は他のリソースと共にステップ１０４を実行してもよい。例えば、個々が、新しい情報が利用可能になったときにデータベースの更新に対して責任を持ってもよい。別の例として、クライアントシステムのノード３２と関連する種々のベンダ及び／又は供給業者が、更新されたソフトウェア及び／又はファームウェアパッケージをデータセンタ１０へ電子的に配信してもよい。
【００７２】
ステップ１０６は、ソフトウェアアップデートの要求を受信するステップを含み得る。この要求は、特定のクライアントシステム２０に対応する識別子及び特定の処理命令セットを有する。データセンタ１０は、ステップ１０６を実行してもよい。データセンタは、ネットワーク１８を介して要求を受信できる。
【００７３】
ステップ１０８は、クライアントシステムのノード３２に関連する情報及び関連するノード３２に相関する対応する処理命令セットを読み出すために、データベースにアクセスするステップを含み得る。データセンタ１０は、受信した要求に基づき、ステップ１０８を実行してもよい。
【００７４】
ステップ１１０は、要求されたソフトウェアアップデートのインストールの結果として生じるノード３２及び対応する処理命令の組合せをシミュレートする計算を実行するステップを含み得る。データセンタ１０は、ステップ１１０を実行してもよい。
【００７５】
方法１００は、１１２で終了する。
【００７６】
幾つかの実施形態では、クライアントシステム２０は、複数のノード３２（例えば、ＣＰＵ及び／又は処理リソース）を含む複雑なネットワークシステムを有してもよい。各ノード３２は、ベンダにより供給された関連ソフトウェア及び／又はファームウェアを有し得る。任意の特定のノード３２が更新されたソフトウェア及び／又はファームウェアを自身の対応するベンダから受信すると、ソフトウェア及び／又はファームウェアの新しい組合せがクライアントシステム２０に対して存在する。可能な組合せの数は非常に大きくなり得る。ソフトウェア及び／又はファームウェアの動作不能な及び／又は不適切な組合せは、クライアントシステム２０の動作に影響を与え得る。幾つかの実施形態では、データセンタ１０は、ノード３２のデータベース及びそれらの対応するソフトウェアを保持してもよい。
【００７７】
方法１００は、データセンタ１０及び／又は電子ネットワーク１の更なるコンポーネントが、任意の電子コンテンツをクライアントシステム２０に配信する前に、ノード３２及び／又はそれらの関連するソフトウェア及び／又はファームウェアの提案された組合せをシミュレートできるようにし得る。提案された組合せを動作上の完全性、互換性及び／又は他の適切な水準についてテストすることは、クライアントシステム２０の信頼性及び／又は安定性を向上できる。
【００７８】
図７は、本開示の特定の実施形態による、複数のクライアント２０に供する電子ネットワーク１により供されるクライアントシステム２０で遠隔保守を実行する例示的な方法１２０のフローチャートを示す。方法１２０は、複数のステップを含み、クライアントシステム２０及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。幾つかの実施形態では、クライアントシステム２０は、自動車及び／又は自動車と関連するFlexRayシステムを有してもよい。方法１２０は、１２２で開始する。
【００７９】
ステップ１２４は、複数のクライアントシステム２０に配信するために、利用可能な更新されたソフトウェアモジュールのリストを受信するステップを含み得る。更新されたソフトウェアモジュールは、複数のサーバに収容され得る。ステップ１２４は、クライアントシステム２０により実行できる。例えば、第１のＶＭ２２ｂは、データセンタ１０にリストを問い合わせ、次にそのリストを受信できる。
【００８０】
ステップ１２６は、クライアントシステム２０と関連する複数のノード３２の同一性に少なくとも部分的に基づき、リストにある任意の更新されたソフトウェアモジュールを要求するか否かを決定するステップを含み得る。幾つかの実施形態では、第１のＶＭ２２ｂは、クライアントシステム２０内のプロセッサのリストを検討し、そのリストを利用可能なモジュールのリストと比較する。例えば、クライアントシステム２０が自動車及び／又は自動車と関連するFlexRayシステムである場合、第１のＶＭ２２ｂは、その自動車の製造元、モデル及び／又は年に基づきアップデートを要求するか否かを決定してもよい。
【００８１】
ステップ１２８は、更新されたソフトウェアモジュールを要求するステップを含み得る。幾つかの実施形態では、ステップ１２８は無線及び／又は遠隔通信であってもよい。クライアントシステム２０は、ステップ１２８を実行できる。例えば、第１のＶＭ２２ｂは、データセンタ１０から更新されたソフトウェアモジュールを要求してもよい。
【００８２】
ステップ１３０は、要求された更新されたソフトウェアモジュールを受信するステップを含み得る。幾つかの実施形態では、更新されたソフトウェアモジュールは、複数のサーバに収容され得る。このような実施形態では、クライアントシステム２０は、要求したモジュールを、要求したモジュールを収容している特定のサーバから受信できる。このような実施形態では、更新されたソフトウェアモジュールのリストは、各モジュールの位置を特定するＵＲＬ（uniform  resource  locator）を有してもよい。
【００８３】
ステップ１３２は、受信した更新されたソフトウェアモジュールをクライアントシステムにインストールするステップを含み得る。更新されたソフトウェアモジュールは、無線で及び／又は別の遠隔通信システムで配信されてもよい。
【００８４】
方法１２０は、１３４で終了する。
【００８５】
図８は、本開示の特定の実施形態による、複数のクライアントシステム２０に供するよう構成された電子ネットワーク１における遠隔保守を実行する例示的な方法１４０のフローチャートを示す。方法１４０は、複数のステップを含み、データセンタ１０及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。幾つかの実施形態では、クライアントシステム２０は、携帯電話機を有してもよい。方法１４０は、１４２で開始する。
【００８６】
ステップ１４４は、クライアントシステム内の種々のノード３２と関連するソフトウェアのデータベースを有するデータセンタ１０を動作させるステップを含み得る。クライアントシステム２０が携帯電話機を有する実施形態では、ノード３２は、種々のＳＩＭ（software  identifier  module）を有してもよい。データセンタ１０は、ステップ１４４を実行してもよい。
【００８７】
ステップ１４６は、クライアントシステム２０により収容される第１の仮想機械２２ｂと通信するステップを含み得る。第１の仮想機械２２ｂは、データセンタ１０と関連する第１のデータセットを処理できる。例えば、第１の仮想機械２２ｂは、クライアントシステム２０の種々のノード３２に関連する種々の設定、改訂番号等にアクセスするよう構成できる。データセンタ１０は、ネットワーク１８を用いてステップ１４６を実行してもよい。データセンタ１０は、第１のＶＭ２２ｂと関連するデータセットを、現在のバージョン及び／又は更新状態及びフラグのリストと比較し、同一性の変化をフラグで示してもよい。
【００８８】
ステップ１４８は、第１の仮想機械２２ｂがクライアントシステム２０内の種々のノード３２のうちの１つに配信するめにソフトウェアアップデートを識別することの要求を受信するステップを含み得る。例えば、第１のＶＭ２２ｂは、携帯電話機内の特定のＳＩＭのソフトウェアアップデートを要求してもよい。データセンタ１０は、ステップ１４８を実行してもよい。
【００８９】
ステップ１５０は、クライアントシステム２０の同一性を検証する認証処理を実行するステップを含み得る。データセンタ１０は、ステップ１５０を実行してもよい。認証処理は、上述の検証処理のうちの任意のものを有してもよい。幾つかの実施形態では、認証処理は、１又は複数の生体指標を受信し、テストし、及び／又は検証するステップを含んでもよい。幾つかの実施形態では、クライアントシステム２０は、ＶＭ２２ｂ、ＴＰＭ２６及び／又はリソースリスト２８を用いて、データセンタ１０の同一性を検証する認証処理を実行してもよい。
【００９０】
ステップ１５２は、ネットワークを用いて、識別されたソフトウェアアップデートを第１の仮想機械２２ｂへ送信するステップを含み得る。幾つかの実施形態では、データセンタ１０は、ネットワーク１８を介して識別されたソフトウェアを送信してもよい。幾つかの実施形態では、ステップ１５２は、無線で及び／又は無線により識別されたソフトウェアアップデートを送信することにより実行できる。
【００９１】
ステップ１５４は、種々のノード３２のうちの１つと関連する第２のＶＭ２２ｃを用いて、受信されたソフトウェアアップデートをクライアントシステム２０にインストールするために、第１のＶＭ２２ｂを認証するステップを有し得る。第１のＶＭ２２ｂ及び第２のＶＭ２２ｃは、ＶＭＭ２４を通じて通信できる。幾つかの実施形態では、クライアントシステム２０は、データセンタ１０から受け付ける前に、受信されるソフトウェアの完全性及び／又は安全性を検証する認証処理を実行してもよい。方法１４０は、１５６で終了する。認証は、受信されるソフトウェアアップデートのインストールの前及び／又は後に生じてもよい。
【００９２】
幾つかの実施形態では、第１のＶＭ２２ｂは、クライアントシステム２０がソフトウェアアップデートを受信したかを検証するために、第２のＶＭ２２ｃに問い合わせてもよい。幾つかのクライアントシステム２０では、複数のノード３２の各々は、ユニークなオペレーティングシステムで動作してもよい。例えば、複数のＳＩＭカードを有する携帯電話機では、各ＳＩＭカードは、それ自身のＯＳで動作してもよい。複数のＳＩＭカード間及び／又はクライアントシステム２０の種々のＶＭ間のデータ交換は、変化に富むＯＳのために複雑になり得る。幾つかの実施形態では、特定のＳＩＭカードは、別のＳＩＭカード及びそのＯＳと比較して低いレベルのセキュリティ要件を有してもよい。このような実施形態では、従来の保守は、クライアントシステム２０がセキュアな保守位置で供されることを要求する。
【００９３】
方法１４０及び本開示の教示を用いることにより、クライアントシステム２０の保守を無線で及び／又は無線により可能にする。ＶＭＭ２４を通じて接続された複数のＶＭ２２を備えたクライアントシステムでは、データセンタ１０とクライアントシステム２０との間のデータ交換は、ＴＰＭ２６によりサポートされ、セキュリティ及び／又は信頼性の向上をもたらす。
【００９４】
図９は、本開示の特定の実施形態による、クライアントシステム２０がリモートサーバ１０に要求しリモートサーバ１０からソフトウェアアップデートを受信する例示的な方法１６０のフローチャートを示す。方法１６０は、複数のステップを含み、クライアントシステム２０及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。幾つかの実施形態では、クライアントシステム２０は、携帯電話機を有してもよい。ノード３２は、ＳＩＭ（subscriber  identity  module）カードを有してもよい。
【００９５】
方法１６０は、１６２で開始する。
【００９６】
ステップ１４４は、クライアントシステム２０と関連する２つの仮想機械２２を収容するステップを含み得る。第１のＶＭ２２ｂは、外部データセンタ１０と関連する第１のデータセットを処理できる。第２のＶＭ２２ｃは、クライアントシステム２０内のノード３２と関連する第２のデータセットを処理できる。第１のＶＭ２２ｂ及び第２のＶＭ２２ｃは、ＶＭＭ２４を通じて通信し、種々のＶＭ２２のデータの完全性及び／又は信頼性を維持する。
【００９７】
ステップ１４６は、２つのＶＭ２２間の通信を管理するよう構成されたＶＭＭ２４を動作させるステップを含み得る。クライアントシステム２０は、ＴＰＭ２６と共にステップ１４６を実行できる。
【００９８】
ステップ１４８は、第１のデータセットが第２のデータセットと比較して同一性を欠くと認識するステップを含み得る。データセンタ１０、ＶＭ２２ｂ若しくは２２ｃ、及び／又はＶＭＭ２４は、ステップ１４８を実行できる。
【００９９】
ステップ１５０は、ノード３２に配信するためにソフトウェアアップデートを特定するステップを含み得る。このソフトウェアアップデートは、第１のデータセットと第２のデータセットとの間の同一性を復旧するよう構成される。
【０１００】
ステップ１５２は、クライアントシステムの同一性を検証し、データセンタ１０の同一性及び／又は特定されたソフトウェアアップデートの信頼性及び／又は安全性を検証する認証処理を実行するステップを含み得る。電子ネットワークの任意の部分は、認証処理を実行できる。例えば、ＶＭｍ２４は、ＴＰＭ２６と共に動作し、ソフトウェアパッケージ及び／又はデータセンタ１０の同一性を検証してもよい。
【０１０１】
ステップ１５４は、外部データセンタ１０からの識別されたソフトウェアアップデートを要求するステップを含み得る。第１のＶＭ２２ｂは、ステップ１５４を実行してもよい。
【０１０２】
ステップ１５６は、外部データセンタ１０から第１のＶＭ２２ｂへの識別されたソフトウェアアップデートを受信するステップを含み得る。
【０１０３】
ステップ１５８は、第２のＶＭ２２ｃを通じて、送信されたソフトウェアアップデートをノード３２にインストールするステップを含み得る。幾つかの実施形態では、第１のＶＭ２２ｂは、ノード３２がソフトウェアアップデートを受信したかを検証するために、第２のＶＭ２２ｃに問い合わせてもよい。
【０１０４】
幾つかのクライアントシステム２０では、複数のノード３２の各々は、ユニークなオペレーティングシステムで動作してもよい。例えば、複数のＳＩＭカードを有する携帯電話機では、各ＳＩＭカードは、それ自身のＯＳで動作してもよい。複数のＳＩＭカード間及び／又はクライアントシステム２０の種々のＶＭ間のデータ交換は、変化に富むＯＳのために複雑になり得る。幾つかの実施形態では、特定のＳＩＭカードは、別のＳＩＭカード及びそのＯＳと比較して低いレベルのセキュリティ要件を有してもよい。このような実施形態では、従来の保守は、クライアントシステム２０がセキュアな保守位置で供されることを要求する。
【０１０５】
方法１６０及び本開示の教示を用いることにより、クライアントシステム２０の保守を無線で及び／又は無線により可能にする。ＶＭＭ２４を通じて接続された複数のＶＭ２２を備えたクライアントシステムでは、データセンタ１０とクライアントシステム２０との間のデータ交換は、ＴＰＭ２６によりサポートされ、セキュリティ及び／又は信頼性の向上をもたらす。
【０１０６】
図１０は、本開示の特定の実施形態による、電子ソフトウェアコードの完全性を検証する例示的な方法１８２のフローチャートを示す。方法１８２は、複数のステップを含み、クライアントシステム２０及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。方法１８２は、１８４で開始する。
【０１０７】
ステップ１８６は、複数の暗号鍵をクライアントシステム２０に提供するステップを含み得る。複数の暗号鍵の各々は、対応する時間係数に相関される。時間係数は、少なくとも部分的に、制御因子及びソフトウェアコードパケットの配信時に生成されたタイムスタンプ、ソフトウェアコードパケットの更新タイミング、又はクライアントと関連する信頼できるプロトコルモジュールの更新タイミングに依存し得る。
【０１０８】
ステップ１８８は、ソフトウェアコードパケットに関連する時間係数に基づく複数の暗号鍵のうちの１つを用いて、ソフトウェアコードパケットを暗号化するステップを有し得る。
【０１０９】
ステップ１９０は、クライアントシステム２０に暗号化されたソフトウェアコードパケットを配信するステップを含み得る。
【０１１０】
ステップ１９２は、クライアント２０がソフトウェアコードパケットを受信した時間に相関する時間係数に基づく復号鍵を選択するようクライアント２０に通知するステップを有し得る。方法１８２は、１９４で終了する。
【０１１１】
従来のソフトウェアコードの完全性は、電子署名（例えば、ＰＫＩ（public  key  infrastructure）認証方法）を用いて調べられていた。しかしながら、電子署名の使用は、本開示の方法と比べて信頼性が低い。例えば、電子署名は、署名が無効になる有効期限を組み込み得る。電子署名の検証処理が実行される前及び／又は後に、コードを置き換える及び／又は変更することが可能である。
【０１１２】
本開示の教示によると、コードの完全性は、更新タイミング／鍵の制御を含むことにより有意に改善できる。暗号鍵は、時間係数に基づき変更できる。例えば、時間係数は、少なくとも部分的に、電子コンテンツの送信及び／又は配信に関連するタイムスタンプに依存し得る。別の例として、時間係数は、少なくとも部分的に、ＴＰＭ２６及び／又はＶＭ２２の更新タイミングに依存し得る。いずれの場合も、時間係数は、予め合意した制御因子ａに依存してもよい。複数の暗号鍵は、ＴＰＭ２６と関連するリソースリスト２８により格納されてもよい。適切な暗号鍵を用い、ＴＰＭ２６は、電子コンテンツの電子署名データを用いてその電子コンテンツの有効期限を調べてもよい。
【０１１３】
図１１は、本開示の特定の実施形態による、電子ソフトウェアコードの完全性を検証する例示的な方法２００のフローチャートを示す。方法２００は、複数のステップを含み、クライアントシステム２０及び／又は他のリソースを含む電子ネットワーク１の種々のコンポーネントにより実行できる。方法２００は、２０２で開始する。
【０１１４】
本開示の教示によると、コードの完全性は、更新タイミング／鍵の制御を含むことにより有意に改善できる。暗号鍵は、時間係数に基づき変更できる。例えば、時間係数は、少なくとも部分的に、電子コンテンツの送信及び／又は配信に関連するタイムスタンプに依存し得る。別の例として、時間係数は、少なくとも部分的に、ＴＰＭ２６及び／又はＶＭ２２の更新タイミングに依存し得る。いずれの場合も、時間係数は、予め合意した制御因子ａに依存してもよい。複数の暗号鍵は、ＴＰＭ２６と関連するリソースリスト２８により格納されてもよい。適切な暗号鍵を用い、ＴＰＭ２６は、電子コンテンツの電子署名データを用いてその電子コンテンツの有効期限を調べてもよい。
【０１１５】
ステップ２０４は、データセンタ１０からの暗号鍵のリストを格納するステップを含み得る。各暗号鍵は、対応する時間係数に相関される。リストは、ＴＰＭ２４により及び／又はＴＰＭ２４と関連する記憶リソースにより格納され得る。
【０１１６】
ステップ２０６は、データセンタ１０からの暗号化されたソフトウェアコードパケットを受信するステップを含み得る。幾つかの実施形態では、電子署名も受信されてよい
ステップ２０８は、時間係数に基づく暗号鍵を選択するステップを含み得る。幾つかの実施形態では、ＴＰＭ２４は、暗号化されたソフトウェアパケットと共に配信された電子署名をチェックしてもよい。
【０１１７】
方法２００は、２１０で終了する。
【０１１８】
図４乃至図１１は、方法６０、８０、１００、１２０、１４０、１６０、１８４及び２００で行われる特定数のステップを示すが、種々の方法は、示されたステップより多くの又は少ないステップで実行されてもよい。本願明細書に開示された方法及びシステムを用い、電子コンテンツへの安全なアクセスの維持に関連する特定の問題を改善し、低減し又は除去できる。例えば、本願明細書に開示された方法及びシステムは、クライアントシステムの遠隔保守を実行する電子ネットワークのセキュリティ及び／又は信頼性を向上できる。
【０１１９】
本開示は幾つかの実施形態と共に記載されたが、種々の変化及び変更を当業者に提案できる。本発明は、添付の特許請求の範囲に包含される全ての変化及び変更を包含する。本開示の教示は、当業者が考え得る、本願明細書に記載された例である実施形態の全ての変更、代替、変形、選択肢、及び修正を包含する。
【０１２０】
特定の実施形態では、１又は複数のウェブページは、ネットワークシステム及び／又はネットワークサービスに関連付けられる。特定の実施形態は、任意の種類のネットワークのアドレス可能なリソース又はウェブサイトにより収容される構造化文書の読み出し及び／又はレンダリングを含み得る。さらに、本願明細書で用いられるように、「ユーザ」は、個人、グループ及び／又は企業体（例えば、ビジネス及び第三者のアプリケーション）を含み得る。
【図１】
2013522793.tif 000003
【図２】
2013522793.tif 000004
【図３】
2013522793.tif 000005
【図４】
2013522793.tif 000006
【図５】
2013522793.tif 000007
【図６】
2013522793.tif 000008
【図７】
2013522793.tif 000009
【図８】
2013522793.tif 000010
【図９】
2013522793.tif 000011
【図１０】
2013522793.tif 000012
【図１１】
2013522793.tif 000013
【手続補正書】
【提出日】平成25年2月5日(2013.2.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のクライアントに供する電子ネットワークの遠隔保守を実行するシステムであって、
前記複数のクライアントに配信するために利用可能な更新されたソフトウェアモジュールのリストをブロードキャストする中央サーバ、
複数の処理リソースを有する第１のクライアントシステムであって、前記複数の処理リソースの各々は個々の関連するコンピュータ可読メモリに格納された対応する処理命令セットを有する、第１のクライアントシステム、
前記第１のクライアントシステムと関連する受信機であって、前記受信機は前記中央サーバによりブロードキャストされたリストを受信するよう動作する、受信機、
前記第１のクライアントシステムにより収容される第１の仮想機械であって、前記第１のクライアントシステムの前記複数の処理リソースの同一性に少なくとも部分的に基づき、前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定するよう動作する、第１の仮想機械、
を有し、
前記受信機は、前記第１の仮想機械により要求された更新されたソフトウェアモジュールを受信するよう動作し、
前記第１の仮想機械は、前記クライアントシステムに配信された更新されたソフトウェアモジュールをインストールするよう動作する、システム。
【請求項２】
前記クライアントシステムは自動車と関連するFlexRayシステムを有する、請求項１に記載のシステム。
【請求項３】
前記クライアントシステムに配信するために利用可能な更新されたソフトウェアモジュールの前記リストは、利用可能な更新されたソフトウェアモジュールの各々の対応するＵＲＬ（uniform  resource  locator）を有する、請求項１に記載のシステム。
【請求項４】
前記中央サーバはデータセンタを有する、請求項１に記載のシステム。
【請求項５】
前記クライアントシステムは自動車と関連するFlexRayシステムを有し、前記第１の仮想機械は、前記自動車の製造元、型及び年に少なくとも部分的に基づき前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定する、請求項１に記載のシステム。
【請求項６】
前記第１の仮想機械は、前記クライアントに配信するために利用可能な更新されたソフトウェアモジュールの前記リストから更新されたソフトウェアモジュールを要求するために、無線を介して前記電子ネットワークに接続するよう動作する、請求項１に記載のシステム。
【請求項７】
複数のクライアントに供するよう構成された電子ネットワークにおいて遠隔保守を実行するシステムであって、
第１の仮想機械を動作させる複数の処理リソースを有するクライアントであって、前記複数の処理リソースの各々は、個々の関連するコンピュータ可読メモリに格納された対応する処理命令セットを有する、クライアント、
前記電子ネットワークと関連するサーバのセットであって、前記サーバのセットは、要求に応じて前記クライアントシステムに更新されたソフトウェアモジュールを配信するよう動作する、サーバのセット、
前記サーバのセットから前記クライアントへ配信するために利用可能な更新されたソフトウェアモジュールのリストを識別する無線信号を送信するブロードキャストモジュール、
前記クライアントシステムと関連する受信機であって、更新されたソフトウェアモジュールの前記リストを受信し、該リストを前記第１の仮想機械へ送信する、受信機、
を有し、
前記第１の仮想機械は、前記クライアントシステムの前記複数の処理リソースの同一性に少なくとも部分的に基づき、前記受信したリストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定するよう動作し、
前記第１の仮想機械は、前記サーバのセットのうちの１つから更新されたソフトウェアモジュールを要求するよう動作し、
前記受信機は、前記サーバのセットのうちの前記１つから前記第１の仮想機械により要求された更新されたソフトウェアモジュールを受信するよう動作し、
前記第１の仮想機械は、前記クライアントシステムに配信された更新されたソフトウェアモジュールをインストールするよう動作する、システム。
【請求項８】
複数のクライアントに供する電子ネットワークにより供されるクライアントシステムにおいて遠隔保守を実行する方法であって、
前記複数のクライアントシステムに配信するために利用可能な更新されたソフトウェアモジュールのリストを受信するステップ、
前記クライアントシステムと関連する複数の処理リソースの同一性に少なくとも部分的に基づき、前記リストにある前記更新されたソフトウェアモジュールのうちのいずれかを要求するか否かを決定するステップ、
更新されたソフトウェアモジュールを要求するステップ、
前記要求した更新されたソフトウェアモジュールを受信するステップ、
前記受信した更新されたソフトウェアモジュールを前記クライアントシステムにインストールするステップ、を有する方法。
【国際調査報告】
2013522793.tif 000014
2013522793.tif 000015
2013522793.tif 000016