【誤訳訂正書】
【提出日】平成27年5月22日(2015.5.22)
【誤訳訂正１】
【訂正対象書類名】明細書
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【発明の詳細な説明】
【発明の名称】サポートシステムにおけるセキュア通信の実行
【技術分野】
【０００１】
セキュア通信を適切に構成することは、多くの状況において困難である場合がある。例えば、セキュア通信プロトコル（例えば、セキュアなソケット層（ＳＳＬ）およびトランスポート層セキュリティ（ＬＬＳ）プロトコル）を、オペレーティングシステム内において構成することができる。オペレーティングシステム内においてプロトコルを構成するためには、認証機関からの証明および／またはセキュア通信のベースを形成する鍵対を構成する必要がある。このようなオペレーティングシステムの構成は困難であるばかりでなく、各プロトコル実行、オペレーティングシステムおよび／またはアプリケーションは、セキュア通信へのアクセスのために異なる構成要求（例えば、暗号機能）を持ち得る。異なる構成要求は実行するのが困難であるだけでなく、オペレーティングシステムまたはアプリケーションが適切に強化されていない場合、侵入者によるサーバの障害に起因して、証明および／または秘密鍵が損失する危険性が生じる。秘密鍵の損失が生じた場合、鍵が侵入者によって使用される可能性が生じるため、セキュア通信の暗号による恩恵における信頼性が失われる。
【背景技術】
【０００２】
オペレーティングシステム構成から暗号法の負荷を無くそうとする試みが行われてきた結果、いくつかのアプリケーションプログラミングインターフェースが得られている。例えば、鍵そのものをゲストオペレーティングシステムへ晒すことなく暗号プリミティブを露出させるために、公開鍵暗号標準ＰＫＣＳ＃１１が仮想マシン内において用いられている。しかし、この解決法の場合、ＰＫＣＳ＃１１を用いるための要求がソフトウェアによって異なるため、構成が困難になり得る。セキュア通信の利用を有効に簡略化するために多様な技術が用いられているものの、タスクの複雑性に起因して、用いられる技術の成功においてばらつきがある。
【図面の簡単な説明】
【０００３】
【図１】少なくとも１つの実施形態による、ゲストオペレーティングシステムに対するセキュア通信メッセージフローの一例を示す。
【図２】少なくとも１つの実施形態による、仮想化環境におけるセキュア通信をイネーブルするために用いられることが可能なプロセスの一例を示す。
【図３】少なくとも１つの実施形態による、仮想化環境においてセキュア通信を受信する際に用いることが可能なプロセスの一例を示す。
【図４】少なくとも１つの実施形態による、仮想化環境においてセキュア通信を送信する際に用いることが可能なプロセスの一例を示す。
【図５】少なくとも１つの実施形態による、セキュア通信のための仮想マシンを作成する際に用いることが可能なプロセスの一例を示す。
【図６】少なくとも１つの実施形態による、セキュア通信を構成する際に用いることが可能なウェブページの一例を示す。
【図７】少なくとも１つの実施形態による、サービスプロバイダ内におけるサポートシステムによる認証情報の転送および使用の一例を示す。
【図８】多様な実施形態を実行することが可能な環境を示す。
【発明を実施するための形態】
【０００４】
以下の記載において、多様な実施形態について説明する。説明目的のため、実施形態の深い理解のために、特定の構成および詳細について説明する。しかし、当業者にとっては、これらの実施形態は特定の詳細無しに実行することが可能であることが明らかであろう。さらに、周知の特徴については、実施形態の説明を不明瞭にしないために、省略または簡略化する場合がある。
【０００５】
本明細書中に記載および提案される技術は、ゲストオペレーティングシステムの代わりであるサポートシステムにおけるセキュア通信を実行するためのシステムおよび方法を含む。例えば、仮想化環境中のサポートシステム（例えば、ハイパーバイザ）は、ホスト上の１つ以上のゲストオペレーティングシステムのうちのゲストオペレーティングシステムの代わりに、通信について交渉、暗号化および復号化することができる。１つ以上のゲストオペレーティングシステムの通常の管理義務のうち最上位において、ハイパーバイザは、宛先コンピューティングシステムとゲストオペレーティングシステムとの間のメッセージも処理し得る。ハイパーバイザは、ゲストオペレーティングシステムを特定する認証情報を用いて、宛先コンピューティングシステムと共にセキュア通信チャンネルを生成および維持し得る。セキュア通信チャンネルが開いている間、ハイパーバイザは、関連付けられた鍵、秘密および他の状態情報を各セキュア通信セッションについて保存し得る。各入来通信または発出通信の経路設定を調査することにより、ハイパーバイザは、通信の処理に用いることが可能な状態（例えば、通信の暗号化または復号化）を整合させることができる。ハイパーバイザによるメッセージの処理により、セキュア通信をゲストオペレーティングシステムに対してトランスペアレントとすることができる。例えば、ゲストオペレーティングシステムは、ハイパーバイザによって取得されホストから出る前に暗号化される復号化メッセージを仮想ドライバを通じて送り得る。セキュア通信を提供することにより、ハイパーバイザは、ゲストオペレーティングシステムの秘密をゲストオペレーティングシステムの障害から保護し、また、ゲストオペレーティングシステムの構成の負荷を低減することができる。また、セキュア通信により、メッセージのインテグリティ、真正性および／または機密性の恩恵も得られる。
【０００６】
図１に示す環境１００の一例において、サポートシステム内におけるセキュア通信の実行を少なくとも１つの実施形態に従って行うことができる。物理的マシン１０４上のハイパーバイザ１０２は、ゲストオペレーティングシステム１０６にサービス提供し得る。ゲストオペレーティングシステム１０６は、他のコンピューティングデバイス（例えば、ラップトップ１０８、デスクトップ１１０およびモバイルデバイス１１２（例えば、携帯電話））とのメッセージの送受信を行い得る。例えば、図２〜図４は、セキュアメッセージの送信および／または受信に用いることが可能なプロセスの例示を示す。ハイパーバイザ１０２は、コンピューティングデバイス１０８、１１０および１１２とセキュアな接続について交渉し、各セキュアな接続と関連付けられた状態情報１１４を保存することができる。クリアテキストメッセージ１２０（またはゲストオペレーティングシステム１０６内において実行するより高レベルのアプリケーションによって暗号化されたメッセージ）は、ゲストオペレーティングシステム１０６によって送信され得、ハイパーバイザ１０２によって取得され得る。ハイパーバイザ１０２は、ゲストオペレーティングシステム１０６および宛先コンピューティングデバイスと関連付けられた状態情報１１４を用いて、セキュアメッセージ１２２をクリアテキストメッセージ１２０から作成し得る。その後、セキュアメッセージ１２２は、宛先コンピューティングデバイス１０８、１１０および１１２へと送られ得る。
【０００７】
入来セキュアメッセージも、ハイパーバイザによって処理され得る。入来セキュアメッセージ１２２がハイパーバイザによって調査されることにより、宛先ゲストオペレーティングシステムと、ソースコンピューティングデバイス１０８、１１０および１１２とが決定され得る。決定された宛先およびソースを用いて、その後、ハイパーバイザ１０２は、関連付けられた状態情報１１４を用いて、クリアテキストメッセージ１２０の作成および／またはセキュアメッセージ１２２のインテグリティの確認を行い得る。その後、クリアテキストメッセージ１２０がゲストオペレーティングシステム１０６へと送られ得る。
【０００８】
ハイパーバイザ１０２について、ゲストオペレーティングシステムのためのサポートシステムの一例として述べてきたが、他の構成も可能である（例えば、他のハードウェアおよび／またはソフトウェア実行）。ハイパーバイザは、ゲストオペレーティングシステムに対する仮想化サポートシステム（例えば、Ｘｅｎ（登録商標）システム中のＤｏｍ０、Ｈｙｐｅｒ−Ｖシステム中の親パーティション、および仮想化システムによって提供されるサービス）としてみなすことができる。一実施形態において、セキュリティコンポーネント（例えば、暗号プロセッサまたはハードウェアセキュリティモジュール（ＨＳＭ））を用いることができる。複数のゲストオペレーティングシステムが１０６がＨＳＭによってサポートされているかに応じて、ハイパーバイザは、ＨＳＭおよびゲストオペレーティングシステムとの通信を促進し得る。例えば、ハイパーバイザ１０２は、セキュアメッセージをゲストオペレーティングシステム宛先と共にＨＳＭへと経路設定し得る。その後、ＨＳＭから受信されたクリアテキストメッセージがハイパーバイザ１０２によって受信され、ゲストオペレーティングシステム１０６へと経路設定され得る。別の実施形態において、サポートシステムは、仮想化ドライバであり得る。仮想化ドライバにより、ハッシュメッセージ認証コード（ＨＭＡＣ）および暗号化の利用を通じて、セキュアな接続の恩恵を得ることができる（例えば、メッセージインテグリティ、真正性および機密性）。例えば、ゲストオペレーティングシステムによる仮想化ドライバの使用は、セキュアな接続の使用を示し得る。ドライバは、ＨＭＡＣおよび暗号化発出メッセージに署名し得る。ＨＭＡＣは、メッセージインテグリティおよび機関を証明することができる。なぜならば、メッセージに署名できるのは秘密鍵の所有者だけであり、署名によってもハッシュ関数を通じてメッセージのインテグリティが確認されるからである。暗号化された後は、メッセージの秘密が合理的に保持されているものとみなすことができる。別の実施形態において、サポートシステム（単数または複数）により、ゲストシステム（例えば、オペレーティングシステムがコンピュータシステムのハードウェア上において直接実行しているコンピュータシステム）のためのセキュア通信が可能になる。例えば、サポートシステムは、コンピューティングリソースであり得、他のコンピューティングリソースであり得るゲストシステムの代わりに、メッセージを受信する。コンピューティングシステムは、クリアテキストメッセージをゲストシステムから受信し、これらのメッセージをセキュアなプロトコルによって送信できるように処理する。受信されたメッセージを処理して、クリアテキストとして宛先ゲストシステムへと送る。１つの利点として、アクセスしている認証情報からゲストシステムを保護できる点がある。例えば、ユーザが認証情報へのアクセスを許可する設定を選択しない限り、ゲストシステムは認証情報へ直接アクセスすることはできない。いくつかの実施形態において、サービスプロバイダのみが認証情報へアクセスすることができ、ゲストシステムはアクセスすることができない。
【０００９】
クリアテキストメッセージは信頼境界を残さないため、少なくともいくつかの状況において、メッセージがセキュアであるかについて検討する必要があり得る。信頼境界は、全てのサブシステムが信頼性を有するシステムにより、定義され得る。クリアテキストメッセージは、物理的マシン境界においてまたはＨＳＭへの信頼性のある接続を介して作成されるため、クリアテキストメッセージは、信頼性のあるコンピューティングデバイス（例えば、ネットワークデバイス）の境界を残さない場合がある。ゲストオペレーティングシステムがサポートシステムよりもセキュアではないと見なされた場合（例えば、アプリケーションまたはシステムが常に展開している場合）、秘密は、実際はサポートシステムにおいてよりセキュアであるとみなされ得る。例えば、アプリケーションが脆弱性を持つ場合、この脆弱性を侵入者が利用して、ゲストオペレーティングシステム内へ侵入する場合がある。しかし、プライベート情報はハイパーバイザに保存されているため、侵入者はプライベート情報（例えば、秘密鍵）にアクセスすることはできない。なぜならば、プライベート情報は、ゲストオペレーティングシステムからはアクセスできないからである。いくつかの実施形態において、ゲストオペレーティングシステムにアクセスできるのは、ユーザのみであり得る。なぜならば、ハイパーバイザおよび他のコンピューティングリソースは、エンティティによって管理されている場合があるからである。エンティティが強化システムにおいてユーザよりも経験が長い場合、ユーザは、エンティティにプライベート情報およびセキュアな接続を管理してもらうことを望み得る。
【００１０】
セキュアな通信の責任をゲストオペレーティングシステムからサポートシステム（例えば、ハイパーバイザ）へと移した場合、いくつかの利点が実現され得る。例えば、セキュア通信のオペレーティングシステムへの依存性を無くすことができる。セキュア通信をハイパーバイザによって実行することにより、多様なバージョンおよびブランドのゲストオペレーティングシステムがセキュア通信を利用することが可能になる。セキュア通信プロトコルのバージョンは、ハイパーバイザにおいて更新することができ、ゲストオペレーティングシステムへの影響も低減する。セキュア通信構成の複雑性増加または矛盾の可能性をほとんど引き起こすことなく、ゲストオペレーティングシステムを更新することができる。サポートシステムにおける実行により、自動化がより実際的になり得る。ハイパーバイザの構成は複数のホスト上において類似しているため、ゲストオペレーティングシステム間の差が同じではない場合でも、自動化は、ハイパーバイザをターゲットとするだけでよい。セキュア通信の自動構成（例えば、ＳＳＬおよび／またはＴＬＳ）が望ましい。なぜならば、このような自動構成により、サーバ管理者は、サーバの手動での構成を自身で学ばなくて済む。アプリケーションプログラミングインターフェース（ＡＰＩ）自動化によるＳＳＬ／ＴＬＳのイネーブルおよび／または証明および他の秘密のリサイクルも、自動化によってイネーブルされ得る。自動化により、セキュア通信を最小の構成で開発者に対してよりトランスペアレントとすることができる。なぜならば、クリアテキストによって送られるメッセージは、（ゲストオペレーティングシステムではなく）サポートシステムによってセキュアされるからである。例えば、開発者は、通信チャンネル（例えば、ドライバ、アダプタ、ＩＰアドレスまたはゲストオペレーティングシステム上において視認可能なポート）を用いて通信してセキュア通信をリクエストせよと、アプリケーションに命令するだけでよい。サポートシステム（例えば、ハイパーバイザ）は、チャンネルを通じてメッセージを受信し、アプリケーションによって指定された宛先デバイスとのセキュア通信をゲストオペレーティングシステム上において実行することができる。セキュア通信機能をサポート層へ移すことによる他の利点を非限定的に挙げると、任意のアプリケーション特有の再構成または変更（暗号アジリティ）の必要無くプロトコルをその場で更新できる点、オペレーティングシステムまたはアプリケーション特有のサポートを必要とすることなく任意のハードウェア暗号加速を標準的方法でレバレッジできる点がある。
【００１１】
一実施形態において、図１に示すようなホストマシン上のハイパーバイザは、ゲストオペレーティングシステムの代わりに、セキュア通信プロセス２００を通じて通信をセキュアにし得る。プロセス２００のうち一部または全て（または本明細書中に記載の他の任意のプロセスまたはその変更例および／または組み合わせ）を、１つ以上のコンピュータシステムの制御下において行うことができる。これら１つ以上のコンピュータシステムは、実行可能な命令によって構成され、１つ以上のプロセッサ上において集合的に実行するか、ハードウェアによって集合的に実行するかまたはその組み合わせによって集合的に実行するコードとして実行することができる（例えば、実行可能な命令、１つ以上のコンピュータプログラムまたは１つ以上のアプリケーション）。コードは、コンピュータで読み出し可能な記憶媒体上に（例えば、１つ以上のプロセッサによって実行可能な複数の命令を含むコンピュータプログラムの形態で）保存することができる。コンピュータで読み出し可能な記憶媒体は、非一時的であり得る。
【００１２】
ハイパーバイザは、入来メッセージ２０１を受信し得る。メッセージがさらなるセキュリティ処理を必要とする場合（２０２）、ハイパーバイザは、リクエストをゲストオペレーティングシステムおよび外部コンピューティングシステムとのセキュア通信のリクエストとして受信し得る（２０３）。そうではない場合、ハイパーバイザは、メッセージを未処理のまま転送し得る（２２２）。ハイパーバイザは、ゲストオペレーティングシステムの代わりに、ゲストオペレーティングシステム認証情報（例えば、ＩＰアドレス、鍵および／または証明情報）を用いてセキュアなプロトコルについて交渉し得る（２０４）。プロトコルおよびその状態（例えば、交換鍵、秘密および他の状態データ）に関連する情報は、保存され得（２０６）、ゲストオペレーティングシステムと関連付けられ得る。その後、メッセージは、外部コンピューティングシステムおよび／またはゲストオペレーティングシステムからハイパーバイザにより受信され得る（２０８）。メッセージが入来する（２１０）と、ハイパーバイザは、ゲストオペレーティングシステム宛先および外部コンピューティングシステムソースを決定し得る（２１２）。宛先およびソースを用いて、ハイパーバイザは、状態情報およびゲストオペレーティングシステム認証情報を参照して、入来メッセージを復号化（２１４）および確認し得る。確認により、メッセージのインテグリティおよび真正性を確認することができる。その後、クリアテキストメッセージがゲストオペレーティングシステムへと送られ得る（２１６）。通信が完了する（２１８）と、ハイパーバイザは、外部コンピューティングシステムへの通信リンクを終了させ、関連付けられた状態情報を除去することにより、通信を終了させ得る（２２０）。そうではない場合（２１８）、システムは、より多数のメッセージを待機し得る（２０８）。
【００１３】
クリアテキスト発出メッセージがゲストオペレーティングシステムから受信される（２１０）と、ハイパーバイザは、ゲストオペレーティングシステムソースをメッセージの関連付けられた宛先と共に用いて、状態情報を取り出すことができる（２２４）。状態情報を用いて、ハイパーバイザは、ＨＭＡＣクリアテキスト発出メッセージの暗号化および／またはＨＭＡＣクリアテキスト発出メッセージへの署名を行い得る（２２６）。その後、暗号化発出メッセージは、宛先へと送られ得る（２２８）。通信が完了する（２１８）と、ハイパーバイザは、セッションを終了させ得る（２２０）。そうではない場合、ハイパーバイザは、次のメッセージを待機し得る（２０８）。
【００１４】
図２に示すプロセス２００において、いくつかの利点を得ることができる。新規の入来セキュア通信メッセージは、ゲストオペレーティングシステムにとってトランスペアレントとなり得る。新規入来通信により、ハイパーバイザは、宛先ゲストオペレーティングシステムに接触する必要無く、リクエストの発行元と交渉することができる。ハイパーバイザが交渉を完了した後、セキュアメッセージを発行元とゲストオペレーティングシステムとの間において送達することができる。複数のゲストオペレーティングシステムに対し、各ゲストオペレーティングシステムについての認証情報へのアクセスを有する単一のハイパーバイザによってサービス提供をすることも可能である。各ゲストオペレーティングシステムは、自身の認証情報を持ち得る（例えば、証明、ＩＰアドレス、鍵および他の個々の情報）。これらの認証情報は、ハイパーバイザによって制御される物理的ホストへ分解され得る。ハイパーバイザがゲストオペレーティングシステムと外界との間のゲートウェイとして機能するため、ハイパーバイザは、交渉に参加する外部システムによる構成または知識を必要とすることなく、ゲストオペレーティングシステムそれぞれの代わりに交渉することができる。例えば、入来通信は、ハードウェアインターフェースを通じて進入し得る。ハイパーバイザは、ハードウェアインターフェースからの通信を受信し、通信がセキュア通信であると決定し得る。ゲストオペレーティングシステムの認証情報を用いて、ハイパーバイザは、ゲストオペレーティングシステムの役割を担って、セキュアな接続を生成および維持することができる。ハイパーバイザが常にゲストオペレーティングシステムへのルートの一部となっているため、セキュアな接続を用いたコンピューティングデバイスは、ハイパーバイザがゲストオペレーティングシステムの代わりにメッセージを交渉およびセキュアにしていることを認識できない。
【００１５】
ハイパーバイザの構成は、発出および入来するセキュアな接続について選択肢を選択することを含み得る。一実施形態において、管理者は、セキュアにすべき通信を決定するための複数の選択肢中から選択することができる（例えば、全接続をセキュアにすること、セキュアなポートおよび非セキュアなポートを定義すること、メッセージをセキュアなものとして取り扱うべきかを自動検出すること、セキュアなＩＰアドレスおよび非セキュアなＩＰアドレスを定義すること、セキュアなアダプタおよび非セキュアなアダプタを定義すること）。例えば、ポート２２および８０上のネットワークトラフィックは非セキュアなものとして取り扱うが、ポート４４３上のトラフィックはセキュアにされ得る。別の実施形態において、ゲストオペレーティングシステムは、２つのＩＰアドレスを持ち得る。ＩＰアドレスのうち１つを用いて非セキュアメッセージを受信することができ、第２のアドレスは、セキュアな接続を形成および維持するようハイパーバイザに通知し得る。ハイパーバイザは、通信を明示的情報または暗示的情報によってセキュアにすべきか否かを決定し得る。一実施形態において、入来ネットワークトラフィックが暗示的に（例えば、検査により）定義され得る。例えば、入来トラフィックがプロトコル（例えば、ＳＳＬ／ＴＬＳ）を通じてセキュアにされたように見える場合、ハイパーバイザは、決定されたセキュアなプロトコルを用い得る。別の実施形態において、入来ネットワークトラフィックが明示的に定義され得る（例えば、指定されたポートまたはＩＰアドレス上のトラフィック）。
【００１６】
図３を参照して、コンピュータシステム（例えば、図１の物理的マシン１０４）によって実行することが可能なプロセスが図示される。一実施形態において、ホストマシン上のハイパーバイザは、受信プロセスを通じて受信されたセキュアメッセージを処理し得る（３００）。ハイパーバイザは、入来メッセージを受信し得る（３０２）。メッセージがセキュアメッセージではない場合（３０４）、およびメッセージがセキュア通信制御メッセージである場合（３０６）、セキュア通信制御プロセスに追随することができる。制御メッセージの例を挙げると、ハンドシェーキングまたは再交渉があり得る。ハイパーバイザ制御プロセスは、交渉においてゲストオペレーティングシステム認証情報を用いる宛先ゲストオペレーティングシステムを決定することができる（３０８）。状態情報と関連付けられる送信者が決定され得る（３１０）。決定された情報を用いて、ハイパーバイザは、ゲストオペレーティングシステムの代わりに、セキュアな接続についての変更または作成を送信者と共に交渉し得る（３１２）。新規状態情報および変更された状態情報を保存し、ゲストオペレーティングシステムおよび送信者と関連付けることができる（３１４）。別の例において、ハイパーバイザは、リクエストを傍受して、セキュアな接続を再確立することができる。保存された状態情報（例えば、セッション情報）を用いて、通信を再開することができる。
【００１７】
メッセージがセキュアなメッセージである場合（３０４）、ハイパーバイザは、ゲストオペレーティングシステム宛先の決定（３１６）および送信者情報の決定（３１８）を行うことにより、メッセージ受信プロセスを開始することができる。宛先および送信者情報を用いて、ハイパーバイザは、関連付けられた状態情報を検索することができる。状態情報を用いて、ハイパーバイザは、メッセージの復号化（３２０）および／または確認を行い得る。その後、復号化メッセージは、ゲストオペレーティングシステムへと送られ得る（３２２）。復号化（３２２）および／または確認が失敗した場合、ハイパーバイザは、失敗に応答し得る（別のメッセージをリクエストすること、失敗を報告すること、接続を終了することおよび／または接続を再交渉すること）。
【００１８】
メッセージがセキュアメッセージではないと決定された場合（３０４）、およびセキュア通信制御メッセージではないと決定された場合（３０６）、メッセージを非セキュアメッセージとして取り扱うことができる（３２４）。ユーザ設定に応じて、非セキュアメッセージを許可または非許可にすることができる。いくつかの実施形態において、全ての非セキュアメッセージが拒否され得る。他の実施形態において、非セキュアメッセージが、非セキュアメッセージ取り扱いプロセスへ付与され得る。例えば、ハイパーバイザは、ゲストオペレーティングシステム上の定義されたポートに対する全メッセージをセキュアにすることができ、他の定義されたポートは非セキュアメッセージを受信し得ると決定することができる。一実施形態において、規則をファイアウォールと協調させることにより、非セキュアメッセージルートを信頼性のあるネットワークの外部において遮断し、セキュアにされたメッセージはファイアウォールを通過することができる。
【００１９】
ここで図４を参照して、図４は、コンピュータシステム（例えば、図１の物理的マシン１０４）によって実行することが可能なプロセスを示す。図４に示すように、ホストマシン上のハイパーバイザは、ゲストオペレーティングシステムからメッセージを受信した場合、セキュアな送信プロセス（例えば、送信プロセス４００）を用い得る。ハイパーバイザは、発出メッセージをゲストオペレーティングシステムから受信し得る（４０２）。メッセージが現在のセキュアな接続の一部ではなく（４０６）、セキュアな接続を必要としている場合（４０８）、セキュアな接続について交渉することができる。例えば、セキュアな接続を確立または再交渉することが必要となり得る。ゲストオペレーティングシステムの認証情報を用いて、ゲストオペレーティングシステムの代わりに、ハイパーバイザがセキュアな接続について交渉することができる（４１０）。接続の状態は、セキュアな接続のゲストオペレーティングシステムおよび受信者と関連付けられたものとして保存され得る（４１２）。動作後にセキュアな接続を作成したか（４１２）または現在の接続を有する（４０６）場合、状態情報を用いて、受信されたメッセージを暗号化することができる（４１４）。その後、暗号化メッセージを受信者へ送ることができる（４１６）。いくつかの実施形態において、非セキュアメッセージが許可され得、現在のセキュアな接続は持たず（４０６）、セキュアな接続も不要である（４０８）。非セキュアメッセージは、ユーザ設定に従ってこのように処理され得る（４１８）。一実施形態において、全ての通信をセキュアにする必要がある。任意の非セキュア通信が落下しかつ／またはエラーを発生し得る。
【００２０】
ハイパーバイザは、メッセージの送信をセキュアにするかを決定し得る。ハイパーバイザは、セキュア通信の必要性を明示的または暗示的に決定し得る。例えば、接続が現在宛先コンピューティングシステムへ開かれている場合、当該宛先との通信は、セキュア通信を用いているものとして暗示的に推定される。別の例において、各入来メッセージを検査することにより、セキュアにみえるメッセージまたはセキュアにする必要があるメッセージがハイパーバイザによって処理され得る。いくつかの実施形態において、全ての発出通信がセキュアにされたと推定される。別の実施形態において、ゲストオペレーティングシステムは、新規のセキュア通信チャンネルをＡＰＩ呼を通じて宛先と共に開くようリクエストし得る。そうではない場合、通信は、通常の通信チャンネルを通じて行われ得る。他の実施形態において、ゲストオペレーティングシステムは、通信チャンネル（例えば、ドライバ、仮想アダプタ、ＩＰアドレスまたはポート）を用いることにより、セキュア通信を明示的に選択し得る。
【００２１】
よって、サポートシステム（例えば、ハイパーバイザ）は、複数のコンピューティングデバイスと、ホストマシン上の複数のゲストオペレーティングシステムとの間の接続をセキュアにし得る。セキュアな接続について、初期入来リクエストおよび初期発出リクエスト双方に対応することができる。ゲストオペレーティングシステムへ割り当てられた認証情報を用いて、サポートシステムは、セキュアな接続の生成および維持において、ゲストオペレーティングシステムの代わりに機能することができる。サポートシステムは、通信チャンネルを用いて、ゲストオペレーティングシステムそれぞれについて、セキュアにすべき通信または通過させるべき通信を決定することができる。一実施形態において、サポートシステムは、メッセージヘッダ（例えば、ＨＴＴＰヘッダ）を変更して、通信がセキュアな接続を通じて受信されたことを示すことができる。
【００２２】
ハイパーバイザは、制御面によって管理され得るデータ面内のホストシステム内に常駐し得る。変更についてのリクエストが、制御面によって受信され得、データ面中のコンピューティングリソース上において行われ得る。例えば、図５に示すように、ユーザは、コンピューティングリソース上のセキュア通信をイネーブルするよう、制御面にリクエストし得る。制御面は、ユーザからこのリクエストを受信し得る（５０２）。これに応答して、制御面は、鍵およびリクエストを生成し得、コンピューティングリソースについて証明を発行するようリクエストし得る（５０４）。証明情報は、取り付け、保存および必要な場合の使用のために、コンピューティングリソースのサポートシステム（例えば、ハイパーバイザ）へと送達され得る（５０６）。ユーザから提供された設定を用いて、セキュア通信がイネーブルされ得る（５０８）。
【００２３】
ユーザによって指定された構成が、複数のチャンネル（例えば、ＡＰＩ呼、アプリケーションおよびウェブサイト）を通じて受信され得る。サポートシステム中にセキュア通信を構成するためのウェブサイト６００の例を図６に示す。ウェブサイト６００は、ウェブブラウザ６０２によってアクセスされ得る。このウェブサイトは、現在の構成情報（例えば、サーバの名称６０４、現在の証明情報６０６および現在のセキュアなプロトコル構成情報６０８）を含み得る。値と交換でセキュア通信を追加してくださいとの申し出６１０が、ユーザへのサービスとして提供され得る。ユーザは、セキュア通信サービスを構成するために、複数の選択肢６１２から選択することができる。図示の実施形態において、ユーザは、複数の選択肢から、セキュアにすべき通信を選択することができる。これらの選択肢を挙げると、「常にセキュア通信を用いる」、「特定のポートのみをセキュア通信に用いる」、「セキュア通信を自動検出する」、「特定のＩＰアドレスをセキュア通信のためまたは仮想Ｅｔｈｅｒｎｅｔ（登録商標）アダプタによって用いる」などがある。所望であれば、ユーザは、メッセージ（例えば、ＨＴＴＰヘッダ）を変更することにより、通信がセキュアにされた旨の通知もリクエストし得る。その後、ユーザは、ボタンをクリックして、選択されたゲストオペレーティングシステム上のセキュア通信をイネーブルし得る（６１６）。図示の実施形態において、セキュア通信は、設定されている最中である。進捗インジケータ６１８は、自動設定プロセスの進捗を示し得、これにより、ハイパーバイザが選択されたゲストオペレーティングシステムの代わりに通信をセキュアにすることが可能になる。
【００２４】
ユーザがボタン６１６をクリックしてセキュア通信をイネーブルした後、制御面は、選択されたゲストオペレーティングシステムのためのセキュア通信を設定するプロセスを開始し得る。例えば、制御面は、ゲストオペレーティングシステムのためのセキュア通信を設定せよとのリクエストを受信し得る。制御面は、ゲストオペレーティングシステムの代わりに、公開／プライベート鍵対を生成し得る。ゲストオペレーティングシステムについての識別情報および公開鍵を用いて、制御面は、ゲストオペレーティングシステムへデジタル証明を発行せよとリクエストする。その後、制御面は、セキュア通信設定情報（例えば、デジタル証明、鍵および他のセキュアな情報）を信頼性のあるネットワークを通じてハイパーバイザへと送達し得る。ハイパーバイザは、ゲストオペレーティングシステムの代わりに、セキュア通信の作成に用いられるセキュアな設定情報を保存し得る。完了後、ハイパーバイザは、設定が完了した旨を制御面へ通知し得る。その後、制御面は、設定が完了し、セキュア通信をイネーブルすることができる旨をユーザに通知し得る。いくつかの実施形態において、このプロセスは、ボタン６１６のクリックによるさらなるユーザによる介入を必要とすることなく、実行され得る。他の実施形態において、ユーザは、介入することができる（例えば、ユーザのためにデジタル証明および／または鍵対情報を生成するのではなく、デジタル証明および／または鍵対情報をインポートする）。
【００２５】
サービスプロバイダ７１２は、サポートシステムのイネーブルを通じてセキュア通信をイネーブルして、ゲストシステム７０６および７２８との通信を傍受およびセキュアにすることができる。ゲストシステムの例を挙げると、物理的コンピュータシステムのハードウェア上において直接実行するオペレーティングシステムを含む物理的コンピュータシステムである。サービスプロバイダ認証情報の生成および使用（７００）の例を図７に示す。顧客は、コンピューティングリソース７０２を通じて、顧客によって維持されているゲストシステム７０６上のセキュア通信をイネーブルするようリクエストし得る。制御面内のサーバ７０４は、セキュア通信をイネーブルせよとのリクエストを受信し得、ゲストシステム７０６の認証情報７１０を生成せよとのリクエストを生成し得る。制御面は、コンピューティングリソースをデータ面（例えば、ゲストシステム７０６）内において管理し得る。認証情報生成器７０８は、認証情報７１０を生成および設定し得る。この認証情報生成は、有効なデジタル証明を得るための証明機関と接触することを含み得る。認証情報７１０を受信すると、サーバ７０４は、ゲストシステム７０６のセキュア通信を担当するサポートシステムへ認証情報を送り得る。一実施形態において、サポートシステムは、ネットワークデバイスであり得る（例えば、ネットワークに取り付けられたセキュリティコンポーネント７１８）。図７に示す実施形態において、ネットワークに取り付けられたセキュリティコンポーネント７１８はスイッチ７１６内に含まれるが、ネットワークに取り付けられたセキュリティコンポーネント７１８は、他の実施形態において独立型にしてもよい。ネットワークに取り付けられたセキュリティコンポーネント７１８は、認証情報７１０および構成を受信して、ゲストシステム７０６へ到着かつゲストシステム７０６から発出される通信をセキュアにし得る。例えば、入来セキュアメッセージ７２０は、ゲートウェイ７２１によってサービスプロバイダ７１２へと受信され得、内部ネットワーク７１４を通じてスイッチ７１６へと経路設定され得、これにより、セキュア通信サービスがゲストシステム７０６へと提供される。ネットワークに取り付けられたセキュリティコンポーネント７１８は、入来セキュアメッセージ７２０を復号化および／または確認し得、その結果、クリアテキストメッセージ７２２が得られる。その後、クリアテキストメッセージ７２２は、宛先ゲストシステム７０６へと送られ得る。ゲストシステム７０６からの発出メッセージは、ネットワークに取り付けられたセキュリティコンポーネント７１８によって傍受され得る。発出メッセージは、セキュアにされ（暗号化を含む）、その後内部ネットワーク７１４を通じてゲートウェイ７２１から送られ、インターネット７２４を通過して宛先システムに到着する。
【００２６】
図７に示す別の実施形態において、セキュリティコンポーネント７３０は、ホストコンピュータ７２８（例えば、高度ネットワークインターフェースカード（ＮＩＣ）またはセキュリティコプロセッシングハードウェア）中に常駐し得る。セキュリティコンポーネント７３０は、ホストコンピュータ７２８への入来通信を傍受し、入来セキュアメッセージ７２０を復号化することができる。復号化されたクリアテキストメッセージ７２２は、仮想化されていてもされていなくても、ホストコンピュータ７２８内のゲストシステムへと送られ得る。発出クリアテキスト通信も、傍受されてセキュアにされ（暗号化を含む）、その結果、セキュア通信が得られる。
【００２７】
本開示の例示的実施形態は、以下の記載を鑑みて説明することができる。
１．セキュア通信を提供するための、コンピュータで実行される方法であって、実行可能な命令と共に構成された１つ以上のコンピュータシステムによる制御下において、ゲストオペレーティングシステムと関連付けられた１組の認証情報をハイパーバイザによって受信することと、ゲストオペレーティングシステムの代わりであるハイパーバイザが１組の認証情報を用いて、コンピューティングデバイスとのセキュアな接続をセキュアなプロトコルによって確立することであって、ハイパーバイザは、セキュアな接続のローカルエンドポイントとして機能する、ことと、ゲストオペレーティングシステムからコンピューティングデバイスへの１つ以上の発出メッセージをハイパーバイザによって受信することと、ゲストオペレーティングシステムの代わりであるハイパーバイザが、セキュアなプロトコルおよび１組の認証情報を用いて、ゲストオペレーティングシステムからコンピューティングデバイスへの１つ以上の発出メッセージを暗号化することであって、１つ以上の発出メッセージは、１つ以上の発出暗号化メッセージとなる、ことと、ハイパーバイザがセキュアなプロトコルを用いて発出暗号化メッセージをコンピューティングデバイスへと送信することと、コンピューティングデバイスからの１つ以上の入来暗号化メッセージをハイパーバイザによって受信することと、ゲストオペレーティングシステムの代わりであるハイパーバイザにより、セキュアなプロトコルおよび１組の認証情報を用いて復号化を行って、コンピューティングデバイスからの１つ以上の入来暗号化メッセージを１つ以上の入来復号化メッセージとすることと、１つ以上の入来復号化メッセージをゲストオペレーティングシステムへと送信することと、を含む。
２．節１のコンピュータで実行される方法において、交渉することは、ゲストオペレーティングシステムおよびコンピューティングデバイスと関連付けられたものとしてプロトコル状態情報を保存することを含み、プロトコル状態情報は、ゲストオペレーティングシステムの識別情報およびコンピューティングデバイスを用いて取り出すことができ、プロトコル状態情報は、１つ以上の発出メッセージの暗号化時および１つ以上の暗号化入来メッセージの復号化時において用いられる。
３．節２のコンピュータで実行される方法において、復号化することは、１つ以上の暗号化入来メッセージを調査して、入来通信において参照されたコンピューティングデバイスおよびゲストオペレーティングシステムの識別情報を決定することと、ゲストオペレーティングシステムおよびコンピューティングデバイスの決定された識別情報を用いて、プロトコル状態情報を取り出すことと、取り出されたプロトコル状態情報を用いて、１つ以上の暗号化入来メッセージを復号化することとを含む。
４．節２のコンピュータで実行される方法において、暗号化は、ゲストオペレーティングシステムから１つ以上の発出メッセージを受信することであって、ゲストオペレーティングシステムは識別情報を有する、ことと、１つ以上の発出メッセージを調査して、１つ以上の発出メッセージにおいて参照されたコンピューティングデバイスの識別情報を決定することと、ゲストオペレーティングシステムおよびコンピューティングデバイスの識別情報を用いて、プロトコル状態情報を取り出すことと、取り出されたプロトコル状態情報を用いて、１つ以上の発出メッセージを暗号化することとを含む。
５．節１のコンピュータで実行される方法において、復号化することは、１つ以上の入来復号化メッセージをゲストオペレーティングシステムへと経路設定することであって、ゲストオペレーティングシステムは、ハイパーバイザによって管理される１組の２つ以上のゲストオペレーティングシステムに含まれる。
６．節１のコンピュータで実行される方法において、復号化することは、１つ以上の入来暗号化メッセージのインテグリティおよび真正性を確認した後、１つ以上の入来復号化メッセージをゲストオペレーティングシステムへ提供することを含む。
７．セキュア通信を提供するための、コンピュータで実行される方法であって、実行可能な命令と共に構成された１つ以上のコンピュータシステムによる制御下において、デバイスとのセキュアな接続について、ホストシステム上のゲストオペレーティングシステムへのリクエストをホストシステムのサポートシステムによって受信することであって、ホストシステムは、サポートシステムを有し、少なくとも１つのゲストオペレーティングシステムをホストするように構成される、ことと、ゲストオペレーティングシステムと関連付けられた１組の認証情報をサポートシステムによって受信することと、サポートシステムがゲストオペレーティングシステムの代わりに１組の認証情報を用いて、デバイスとのセキュアな接続を確立することであって、サポートシステムは、ゲストオペレーティングシステムの代わりにセキュアな接続のエンドポイントとして機能する、ことと、サポートシステムがゲストオペレーティングシステムとデバイスとの間の１つ以上の通信をセキュアな接続を介して送信することであって、サポートシステムは、１つ以上の通信を処理して、セキュアな接続をイネーブルする、こととを含む。
８．節７のコンピュータで実行される方法において、方法は、ホストシステム上の第２のゲストオペレーティングシステムに対する第２のデバイスとの第２のセキュアな接続についてのリクエストをホストシステムのサポートシステムによって受信することと、第２のゲストオペレーティングシステムと関連付けられた第２の１組の認証情報をサポートシステムによって取り出すことと、サポートシステムが第２のゲストオペレーティングシステムの代わりに第２の１組の認証情報を用いて、第２のデバイスとの第２のセキュアな接続を確立することであって、サポートシステムは、第２のゲストオペレーティングシステムの代わりに第２のセキュアな接続のエンドポイントとして機能する、ことと、サポートシステムから第２のセキュアな接続を介して第２のゲストオペレーティングシステムと第２のデバイスとの間の１つ以上の第２の通信を送信することとをさらに含む。
９．節７のコンピュータで実行される方法において、１組の認証情報を用いることは、サポートシステムがゲストオペレーティングシステムの代わりに１組の認証情報を保存することであって、１組の認証情報は、ゲストオペレーティングシステムにとって読み出し不可能である、ことをさらに含む。
１０．節７のコンピュータで実行される方法において、サポートシステムはハイパーバイザである。
１１．節７のコンピュータで実行される方法において、１つ以上の通信を送信することは、１つ以上の通信をセキュアなプロトコルを用いて暗号化することをさらに含む。
１２．節１１のコンピュータで実行される方法において、セキュアなプロトコルは、トランスポート層セキュリティである。
１３．節７のコンピュータで実行される方法において、サポートシステムは、ハードウェアセキュリティモジュールである。
１４．節７のコンピュータで実行される方法において、サポートシステムは、ホストシステム内の別個のプロセッサである。
１５．節７のコンピュータで実行される方法において、サポートシステムは、通信のうち少なくとも一部をセキュアな接続を介して暗号化する。
１６．セキュアな接続をイネーブルするためのコンピュータシステムであって、１つ以上のプロセッサと、１つ以上のプロセッサによって実行可能な命令を含むメモリであって、命令により、コンピュータシステムは、少なくとも以下を行う：１組のゲストシステムを有するサポートシステムが、１組のゲストシステムからゲストシステムへ方向付けられたセキュア通信を受信することと、サポートシステムが、セキュア通信が方向付けられた１組のゲストシステムからゲストシステムを選択することと、ホストシステムが選択されたゲストオペレーティングシステムの識別情報を示す１組の認証情報を用いて復号化メッセージを選択されたゲストオペレーティングシステムへ提供することであって、復号化メッセージはセキュア通信から作成され、認証情報は、選択されたゲストシステムにとって利用不可能である、こと。
１７．節１６のシステムにおいて、システムは、ハードウェアセキュリティモジュールをさらに含み、ハードウェアセキュリティモジュールは、１つ以上のプロセッサと通信し、ハードウェアセキュリティモジュールは、暗号化サービスおよび復号化サービスを１つ以上のプロセッサのうち少なくとも１つへ提供し、ハードウェアセキュリティモジュールは、メッセージの復号化のために、サポートシステムにとってアクセス可能である。
１８．節１６のシステムにおいて、サポートシステムは、ハードウェアセキュリティモジュールである。
１９．節１６のシステムにおいて、サポートシステムはネットワークデバイスであり、サポートシステムは、１つ以上のゲストシステムと、セキュア通信の受信元であるネットワークとの間に配置される。
２０．節１７のシステムにおいて、復号化メッセージを提供することは、セキュア通信をハードウェアセキュリティモジュールへ送信することと、復号化メッセージをハードウェアセキュリティモジュールから受信することとをさらに含む。
２１．節１６のシステムにおいて、復号化メッセージを提供することは、セキュア通信を第１の通信チャンネルを通じて受信することであって、第１のチャンネルを通じた受信により、サポートシステムはセキュア通信を復号化し、サポートシステムは、第１のチャンネルを通じて受信された通信を復号化するように構成される、ことと、第２の通信チャンネルを通じて受信された１つ以上の通信をゲストシステムへと送ることであって、サポートシステムは、第２のチャンネルを通じて受信された通信を通過するように構成される、こととをさらに含む。
２２．節１６のシステムにおいて、復号化メッセージを提供することは、復号化メッセージが以前暗号化された旨を示すように、復号化メッセージをを変更することをさらに含む。
２３．節１６のシステムにおいて、１組の認証情報は、ゲストオペレーティングシステムに割り当てられた秘密鍵を含む。
２４．１つ以上のコンピュータで読み出し可能な記憶媒体であって、記憶媒体上には、実行可能な命令が集合的に保存され、命令がコンピュータシステムの１つ以上のプロセッサによって実行されると、コンピュータシステムは、少なくとも以下を行う：ゲストシステムに対する、デバイスとのセキュアな接続についてのリクエストをサポートシステムが受信することと、ゲストシステムと関連付けられた１組の認証情報をサポートシステムが取り出すことであって、認証情報は、ゲストシステムによるアクセスから保護される、ことと、サポートシステムがゲストシステムの代わりに１組の認証情報を用いてデバイスとのセキュアな接続を確立することであって、サポートシステムは、ゲストシステムの代わりにセキュアな接続のエンドポイントとして機能する、ことと、サポートシステムがセキュアな接続を介してゲストシステムとデバイスとの間の１つ以上の通信を送ること。
２５．節２４のコンピュータで読み出し可能な記憶媒体において、媒体は命令をさらに含み、命令がコンピュータシステムの１つ以上のプロセッサによって実行されると、コンピュータシステムは、少なくとも以下を行う：ゲストシステムへセキュアな接続サービスを付加せよとのリクエストを受信することであって、サービスは、ゲストシステムの代わりに、サポートシステムを用いてセキュアな接続を管理する、ことと、ゲストシステムについての１組の認証情報の生成をリクエストすることと、サポートシステムが１組の認証情報を保存すること。
２６．節２５のコンピュータで読み出し可能な記憶媒体において、媒体は命令をさらに含み、コンピュータシステムの１つ以上のプロセッサによって命令が実行された場合、コンピュータシステムは、少なくとも以下を行う：セキュアな接続サービスを有料でゲストシステムへ追加するとの申し出をユーザへ送ることと、セキュアな接続サービスの付加の対価として料金をユーザから受領することであって、値の受領は、セキュアな接続サービスをゲストシステムへ付加せよとのリクエストを示す、こと。
２７．節２６のコンピュータで読み出し可能な記憶媒体において、サポートシステムは、ネットワークハードウェア、ネットワークカード、ドライバおよびハイパーバイザからなる群から選択される。
２８．節２４のコンピュータで読み出し可能な記憶媒体において、セキュアな接続についてのリクエストは、通信チャンネルの利用を通じて発生し、通信チャンネルを通じた接続は、セキュアにされるように構成される。
２９．節２８のコンピュータで読み出し可能な記憶媒体において、通信チャンネルは、ポート、仮想アダプタおよびソースＩＰアドレスからなる群から選択される。
３０．節２４のコンピュータで読み出し可能な記憶媒体において、サポートシステムは、ゲストシステムへ取り付けられたネットワークインターフェースカード内に埋設される。
【００２８】
図８は、多様な実施形態による態様を実行するための例示的環境８００の態様を示す。理解されるように、説明目的のためにウェブベースの環境を用いているが、多様な実施形態を実行するために適宜異なる環境も利用可能である。この環境は、電子クライアントデバイス８０２を含む。電子クライアントデバイス８０２は、リクエスト、メッセージまたは情報を適切なネットワーク８０４を介して送受信し、情報をデバイスのユーザへと搬送するように動作可能な任意の適切なデバイスを含み得る。このようなクライアントデバイスの例を挙げると、パーソナルコンピュータ、携帯電話、ハンドヘルドメッセージングデバイス、ラップトップコンピュータ、セットトップボックス、パーソナルデータアシスタント、電子ブックリーダなどがある。ネットワークは、任意の適切なネットワークを含み得る（例えば、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、または他の任意のそのようなネットワークまたはその組み合わせ）。このようなシステムに用いられるコンポーネントは、選択されたネットワークおよび／または環境の種類に少なくとも部分的に依存し得る。このようなネットワークを介した通信のためのプロトコルおよびコンポーネントは周知であり、本明細書中においては説明を控える。ネットワークを介した通信は、有線接続または無線接続ならびにその組み合わせによってイネーブルされ得る。この例において、ネットワークはインターネットを含む。なぜならば、環境は、リクエストの受信およびこの受信に応答してコンテンツ提供を行うウェブサーバ８０６を含むからである。しかし、他のネットワークの場合、類似の目的のための別のデバイスを用いることが当業者にとって明らかである。
【００２９】
例示的環境は、少なくとも１つのアプリケーションサーバ８０８およびデータ記憶部８１０を含む。いくつかのアプリケーションサーバ、層または他の要素、プロセスまたはコンポーネントを連鎖または構成し、タスク（例えば、適切なデータ記憶部からのデータ入手）を行うように相互作用することが可能であることが理解される。本明細書中において用いられる「データ記憶部」という用語は、データの保存、アクセスおよび取り出しが可能な任意のデバイスまたはデバイスの組み合わせを指す（例えば、任意の標準的環境、分散環境またはクラスター環境における任意の組み合わせおよび数のデータサーバ、データベース、データ記憶装置、およびデータ記憶媒体）。アプリケーションサーバは、データ記憶部と必要に応じて一体化してクライアントデバイスのための１つ以上のアプリケーションの態様を実行し、データアクセスおよびアプリケーションのための事業論理のほとんどを取り扱う任意の適切なハードウェアおよびソフトウェアを含み得る。アプリケーションサーバは、アクセス制御サービスをデータ記憶部と協調して提供し、コンテンツ（例えば、ユーザへ転送すべきテキスト、グラフィック、音声および／またはビデオ）を生成することができる。このコンテンツは、ウェブサーバにより、ＨＴＭＬ、ＸＭＬまたは本例においては別の適切なの構造化言語の形態でユーザへ提供され得る。全てのリクエストおよび応答ならびにクライアントデバイス８０２とアプリケーションサーバ８０８との間のコンテンツ送達の取り扱いは、ウェブサーバによって取り扱われ得る。ウェブサーバおよびアプリケーションサーバは不要であり、あくまで例示的なコンポーネントであることが理解される。なぜならば、本明細書中に記載される構造化コードは、本明細書中の別の箇所において述べた任意の適切なデバイスまたはホストマシン上において実行することが可能であるからである。
【００３０】
データ記憶部８１０は、いくつかの別個のデータ表、データベースまたは特定の態様に関連するデータを保存する他のデータ保存機構および媒体を含み得る。例えば、図示のデータ記憶部は、生成側のコンテンツを提供するために用いられ得る、生成データ８１２およびユーザ情報８１６を保存する機構を含む。また、データ記憶部がログデータ８１４を保存する機構を含む様子が図示されている。ログデータ８１４は、報告、分析または他のそのような目的に用いられ得る。データ記憶部中に保存される必要があり得る他の多数の態様があり得る（例えば、ページ画像情報のためのものおよび正しい情報へのアクセスのためのものであって、上記に羅列した機構のうち任意のものに適宜保存することができるかまたはデータ記憶部８１０中のさらなる機構中に保存することができるもの）ことが理解される。データ記憶部８１０は、自身と関連付けられた論理を通じて、アプリケーションサーバ８０８からの命令を受信し、これに応答してデータの入手、更新または処理を行うように動作可能である。一例において、ユーザは、特定の種類のアイテムについて、検索リクエストを提出し得る。この場合、データ記憶部は、ユーザ情報にアクセスしてユーザの識別情報を確認することができ、カタログ詳細情報にアクセスして、その種類のアイテムについての情報を入手することができる。その後、この情報は、（ユーザデバイス８０２上のブラウザを介してユーザが視認することが可能なウェブページ上の結果リスティング中の情報として）ユーザへと返送され得る。特定の対象アイテムについての情報は、専用ページ内において視認してもよいし、あるいはブラウザの窓内において視認してもよい。
【００３１】
各サーバは典型的には、一般的管理およびそのサーバの動作についての実行可能なプログラム命令を提供するオペレーティングシステムを含み、典型的には、命令を保存している、コンピュータで読み出し可能な記憶媒体を含む（例えば、ハードディスク、ランダムアクセスメモリ、リードオンリーメモリ）。これらの命令がサーバのプロセッサによって実行された場合、サーバは、意図される機能を行う。オペレーティングシステムの適切な実行およびサーバの一般的機能は公知であるかまたは市販されており、当業者であれば、特に本明細書中の開示内容を鑑みれば容易に実行することができる。
【００３２】
一実施形態における環境は、分散型コンピューティング環境であり、通信リンクを介して１つ以上のコンピュータネットワークまたは直接接続を用いて相互接続されたいくつかのコンピュータシステムおよびコンポーネントを用いる。しかし、当業者であれば、このようなシステムは、より少数またはより多数の図８に示すコンポーネントを有するシステムにおいても同様に機能することができることを理解する。よって、図８中のシステム８００の記載は本質的に例示的なものとしてとられるべきであり、本開示の範囲を制限するものではない。
【００３３】
多様な実施形態は、広範な多様な動作環境においてさらに実行することができる。これらの動作環境は、いくつかの場合において、多数のアプリケーションのうち任意のものを作動させるために用いることが可能な１つ以上のユーザコンピュータ、コンピューティングデバイスまたは処理デバイスを含み得る。ユーザまたはクライアントデバイスは、多数の汎用パーソナルコンピュータのうち任意のものを含み得る（例えば、標準オペレーティングシステムを実行するデスクトップまたはラップトップコンピュータ、ならびにモバイルソフトウェアを実行しかつ多数のネットワーキングプロトコルおよびメッセージングプロトコルをサポートすることが可能なセルラーデバイス、無線デバイスおよびハンドヘルドデバイス）。このようなシステムは、開発およびデータベース管理などの目的のための多様な市販のオペレーティングシステムおよび他の公知のアプリケーションのうち任意のものを実行する多数のワークステーションも含み得る。これらのデバイスは、他の電子デバイスも含み得る（例えば、ダミー端末、シンクライアント、ゲーミングシステム、およびネットワーク経由での通信が可能な他のデバイス）。
【００３４】
ほとんどの実施形態においては、多様な市販のプロトコル（例えば、ＴＣＰ／ＩＰ、ＯＳＩ、ＦＴＰ、ＵＰｎＰ、ＮＦＳ、ＣＩＦＳおよびＡｐｐｌｅＴａｌｋ）のうち任意のものを用いて通信をサポートする当業者にとって周知の少なくとも１つのネットワークが用いられる。ネットワークは、例えば、ローカルエリアネットワーク、広域ネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワークおよびこれらの任意の組み合わせであり得る。
【００３５】
ウェブサーバを用いる実施形態において、ウェブサーバは、多様なサーバまたはミッドティアアプリケーションのうち任意のものを実行し得る（例えば、ＨＴＴＰサーバ、ＦＴＰサーバ、ＣＧＩサーバ、データサーバ、Ｊａｖａサーバ、および事業アプリケーションサーバ）。サーバ（単数または複数）は、ユーザデバイスからのリクエストに応答して、例えば、任意のプログラミング言語（例えば、Ｊａｖａ（登録商標）、Ｃ、Ｃ＃またはＣ＋＋、または任意のスクリプト記述言語（例えば、Ｐｅｒｌ、Ｐｙｔｈｏｎ、またはＴＣＬ、ならびにこれらの組み合わせ））で記述された１つ以上のスクリプトまたはプログラムとして実行され得る１つ以上のウェブアプリケーションを実行することにより、プログラムまたはスクリプトを実行することもできる。サーバ（単数または複数）は、データベースサーバも含み得る（例を非限定的に挙げると、Ｏｒａｃｌｅ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）、Ｓｙｂａｓｅ（登録商標）およびＩＢＭ（登録商標）から市販されているもの）。
【００３６】
環境は、上記したような多様なデータ記憶部および他のメモリおよび記憶媒体を含み得る。これらは、多様な位置に常駐し得る（例えば、コンピュータのうち１つ以上に対してローカルな（かつ／または常駐する）記憶媒体またはネットワーク上のコンピュータのうち任意のものまたは全てから遠隔位置にあるもの）。特定の１組の実施形態において、情報は、当業者にとって周知のストレージエリアネットワーク（「ＳＡＮ」）中に常駐し得る。同様に、コンピュータ、サーバまたは他のネットワークデバイスに起因する機能を行うための任意の必要なファイルをローカルかつ／またはリモートに適宜保存することができる。システムがコンピュータ化されたデバイスを含む場合、そのようなデバイスはそれぞれ、バスを介して電気的に接続されたハードウェア要素を含み得、これらの要素は、例えば、少なくとも１つの中央処理装置（ＣＰＵ）、少なくとも１つの入力デバイス（例えば、マウス、キーボード、コントローラ、タッチスクリーン、またはキーパッド）、ならびに少なくとも１つの出力デバイス（例えば、表示デバイス、プリンタまたはスピーカ）を含み得る。このようなシステムは、１つ以上の記憶装置も含み得る（例えば、ディスクドライブ、光学記憶デバイスおよび固体記憶デバイス（例えば、ランダムアクセスメモリ（「ＲＡＭ」）またはリードオンリーメモリ（「ＲＯＭ」）、およびリムーバブル媒体デバイス、メモリカード、フラッシュカード）。
【００３７】
このようなデバイスは、コンピュータで読み出し可能な記憶媒体リーダー、通信デバイス（例えば、モデム、ネットワークカード（無線または有線）、赤外線通信デバイス）、および上述したようなワーキングメモリも含み得る。コンピュータで読み出し可能な記憶媒体リーダーは、コンピュータで読み出し可能な記憶媒体と接続することもできるし、あるいは、このような記憶媒体を受容するように構成することもできる。この記憶媒体は、リモート記憶装置、ローカル記憶装置、固定記憶装置および／またはコンピュータで読み出し可能な情報を一時的にかつ／またはより永続的に収容、保存、送信および取り出すためのリムーバブル記憶装置ならびに記憶媒体を示す。システムおよび多様なデバイスは典型的には、多数のソフトウェアアプリケーション、モジュール、サービスまたは少なくとも１つのワーキングメモリデバイス内に含まれる他の要素も含む（例えば、オペレーティングシステムおよびアプリケーションプログラム（例えば、クライアントアプリケーションまたはウェブブラウザ））。別の実施形態は、上記と異なる多数の変更例を含み得ることが理解される。例えば、カスタマイズされたハードウェアを用いてもよいし、かつ／または、特定の要素をハードウェア、ソフトウェア（例えば、ポータブルソフトウェア（例えば、アプレット））あるいは両方において実行してもよい。さらに、他のコンピューティングデバイス（例えば、ネットワーク入力／出力デバイス）への接続も利用可能である。
【００３８】
コードまたはコードの一部を収容する記憶媒体およびコンピュータで読み出し可能な媒体は、当該分野において公知のまたは利用される任意の適切な媒体を含み得る（例えば、記憶媒体および通信媒体（例を非限定的に挙げると、情報（例えば、コンピュータで読み出し可能な命令、データ構造、プログラムモジュールまたは他のデータ）の保存および／または送信のための任意の方法または技術で実行される揮発性媒体および不揮発性媒体、リムーバブル媒体および非リムーバブル媒体がある（例えば、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル汎用ディスク（ＤＶＤ）または他の光学記憶、磁気カセット、磁気テープ、磁気ディスク記憶または他の磁気記憶装置、あるいは所望の情報の保存に用いることができかつシステムデバイスによるアクセスが可能な他の任意の媒体））。本明細書中に記載の開示内容および教示内容に基づいて、当業者であれば、多様な実施形態を実行するための他の様態および／または方法が存在することを理解する。
【００３９】
よって、本明細書および図面は、限定的なものとしてではなく、例示的なものとしてみなされるべきである。しかし、本明細書および図面において、特許請求の範囲中に記載のような多様な実施形態のより広い意図および範囲から逸脱することなく、多様な変更例および改変例が可能であることが明らかである。
【００４０】
他の変更例が、本開示の意図の範囲内にある。よって、開示の技術は多様な変更例および代替的構造が可能であるものの、その特定の例示の実施形態を図面中に示し、詳細に上述してきた。しかし、特許請求の範囲を開示の特定の形態（単数または複数）に限定することは意図されておらず、逆に、本発明は、全ての変更例、代替的構造および添付の特許請求の範囲中に定義されるような多様な実施形態の意図および範囲内に収まる均等例を網羅することが理解される。
【００４１】
開示の実施形態を記述する文脈において（特に、以下の特許請求の範囲の文脈において）「ａ」および「ａｎ」および「ｔｈｅ」などの用語が用いられた場合、本明細書中に明記無き限りまたは文脈と矛盾しない限り、単数および複数双方を網羅するものとして解釈されるべきである。「ｃｏｍｐｒｉｓｉｎｇ」、「ｈａｖｉｎｇ」、「ｉｎｃｌｕｄｉｎｇ」および「ｃｏｎｔａｉｎｉｎｇ」などの用語は、他に明記無き限り、オープンエンドの用語として解釈されるべきである（すなわち、「〜を非限定的に含む」という意味の用語として解釈されるべきである）。「接続される」という用語は、途中に中断が有る場合でも、部分的または全体的に含まれるか、取り付けられるか、または共に接合されているものとして解釈されるべきである。本明細書中、値の範囲について言及する場合、本明細書中に他に明記無き限り、あくまで各別個の値が範囲内に収まることを個別に述べるための手短な方法を意図したものであり、各別個の値を本明細書中においてあたかも個々に言及しているかのように援用する。本明細書中に記載される全ての方法は、本明細書中に他に明記無き限りまたは文脈と明らかに矛盾しない限り、任意の適切な順序で行うことができる。本明細書中、任意の例および全ての例または例示的な言い回し（例えば、「例えば、など」）が用いられた場合、ひとえに多様な実施形態をより深く例示するために用いたものであり、他に明記無き限り、特許請求の範囲を限定するものではない。本明細書中、いかなる言い回しも、本発明の実行にとって必須の特許請求の範囲に記載されていない要素として解釈されるべきではない。
【００４２】
本発明者らが本発明を実行するための最適な態様を含む本開示の好適な実施形態について、本明細書中において記載してきた。当業者であれば、上記の記載を読めば、これらの好適な実施形態の変更例を理解する。本発明者らは、当業者がこのような変更例を適切に用いることを期待し、本発明者らは、本発明が本明細書中に具体的に記載した様態と異なる様態で実行されることが可能であることを意図する。よって、本発明は、特許請求の範囲に記載される内容について、適用可能な法律によって許される全ての改変例および均等例を含む。さらに、その全ての可能な変更例における上記の要素の任意の組み合わせは、本明細書中に他に明記無き限りまたは文脈と明らかに矛盾しない限り、本発明によって包含される。
【００４３】
本明細書中引用される全ての参考文献（例えば、公開文献、特許出願および特許）を、本明細書中全体において各参考文献が個々に具体的に記載されているかのように、ここに参考により援用する。
【誤訳訂正２】
【訂正対象書類名】特許請求の範囲
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
セキュア通信を提供するための、コンピュータで実行される方法であって、
実行可能な命令と共に構成された１つ以上のコンピュータシステムによる制御下において、
ホストシステムのサポートシステムが、前記ホストシステム上のゲストオペレーティングシステムに対する、デバイスとのセキュアな接続についてのリクエストを受信することであって、前記ホストシステムは、前記サポートシステムを有し、少なくとも１つのゲストオペレーティングシステムをホストするように構成されることと、
前記ゲストオペレーティングシステムと関連付けられた１組の認証情報を前記サポートシステムが受信することと、
前記サポートシステムが前記ゲストオペレーティングシステムの代わりに、前記１組の認証情報を用いて前記デバイスとのセキュアな接続を確立することであって、前記サポートシステムは、前記ゲストオペレーティングシステムの代わりに前記セキュアな接続のエンドポイントとして機能することと、
前記サポートシステムが前記セキュアな接続を介して前記ゲストオペレーティングシステムと前記デバイスとの間の１つ以上の通信を送信することであって、前記サポートシステムは、前記１つ以上の通信を処理して、前記セキュアな接続をイネーブルすることと
を含む、方法。
【請求項２】
前記ホストシステム上の第２のゲストオペレーティングシステムに対する第２のデバイスとの第２のセキュアな接続についてのリクエストを前記ホストシステムの前記サポートシステムが受信することと、
前記第２のゲストオペレーティングシステムと関連付けられた第２の１組の認証情報を前記サポートシステムが取り出すことと、
前記サポートシステムが前記第２のゲストオペレーティングシステムの代わりに、前記第２の１組の認証情報を用いて、前記第２のデバイスとの第２のセキュアな接続を確立することであって、前記サポートシステムは、前記第２のゲストオペレーティングシステムの代わりに前記第２のセキュアな接続のエンドポイントとして機能することと、
前記サポートシステムが前記第２のセキュアな接続を介して前記第２のゲストオペレーティングシステムと前記第２のデバイスとの間の１つ以上の第２の通信を送信することと
をさらに含む、請求項１に記載のコンピュータで実行される方法。
【請求項３】
前記１組の認証情報を用いることは、前記サポートシステムが前記ゲストオペレーティングシステムの代わりに、前記１組の認証情報を保存することをさらに含み、前記１組の認証情報は、前記ゲストオペレーティングシステムにとって読み出し不可能である、請求項１に記載のコンピュータで実行される方法。
【請求項４】
前記サポートシステムはハイパーバイザであり、前記ホストシステムに取り付けられたハードウェアセキュリティモジュールであるか、前記ホストシステムへ取り付けられたネットワークインターフェースカード内に埋設されるか、または前記ホストシステム内の別個のプロセッサである、請求項１に記載のコンピュータで実行される方法。
【請求項５】
１つ以上の通信を送信することは、前記１つ以上の通信をセキュアなプロトコルを用いて暗号化することをさらに含む、請求項１に記載のコンピュータで実行される方法。
【請求項６】
前記セキュアなプロトコルは、トランスポート層セキュリティである、請求項５に記載のコンピュータで実行される方法。
【請求項７】
セキュアな接続サービスを前記ホストシステム上の前記ゲストオペレーティングシステムに追加せよとのリクエストを受信し、前記ゲストオペレーティングシステムの代わりに、前記サポートシステムを用いてセキュアな接続を管理することと、
前記ゲストオペレーティングシステムと関連付けられた１組の認証情報をリクエストすることと、
前記サポートシステムが前記１組の認証情報を保存することと
をさらに含む、請求項１に記載のコンピュータで実行される方法。
【請求項８】
前記セキュアな接続サービスを前記ゲストオペレーティングシステムへ追加することについて料金を請求すること
をさらに含む、請求項７に記載のコンピュータで実行される方法。
【請求項９】
前記サポートシステムは、前記通信のうち少なくとも一部を前記セキュアな接続を介して暗号化する、請求項１に記載のコンピュータで実行される方法。
【請求項１０】
セキュアな接続をイネーブルするためのコンピュータシステムであって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサによって実行可能な命令を含むメモリであって、前記命令により、前記コンピュータシステムは、
１組のゲストシステムを有するサポートシステムが、前記１組のゲストシステム中の１つのゲストシステムへ方向付けられたセキュア通信を受信することと、
前記サポートシステムが、前記セキュア通信が方向付けられた前記１つのゲストシステムを、前記１組のゲストシステムから選択することと、
ホストシステムが前記選択されたゲストシステムの識別情報を示す１組の認証情報を用いて復号化メッセージを前記選択されたゲストシステムへ提供することであって、前記復号化メッセージは前記セキュア通信から作成され、前記認証情報は、前記選択されたゲストシステムにとって利用不可能であること
を少なくとも行う、
システム。
【請求項１１】
ハードウェアセキュリティモジュールをさらに含み、前記ハードウェアセキュリティモジュールは、前記１つ以上のプロセッサと通信し、前記ハードウェアセキュリティモジュールは、暗号化サービスおよび復号化サービスを前記１つ以上のプロセッサのうち少なくとも１つへ提供し、前記ハードウェアセキュリティモジュールは、前記メッセージの復号化のために、前記サポートシステムにアクセス可能である、請求項１０に記載のシステム。
【請求項１２】
前記サポートシステムはネットワークデバイスであり、前記サポートシステムは、前記１つ以上のゲストシステムと、前記セキュア通信の受信元であるネットワークとの間に配置される、請求項１０に記載のシステム。
【請求項１３】
復号化メッセージを提供することは、
前記セキュア通信を第１の通信チャンネルを通じて受信することであって、前記第１のチャンネルを通じた受信により、前記サポートシステムが前記セキュア通信を復号化し、前記サポートシステムは、前記第１のチャンネルを通じて受信された通信を復号化するように構成されることと、
第２のチャンネルを通じて受信された１つ以上の通信を前記１つのゲストシステムへと送ることであって、前記サポートシステムは、第２のチャンネルを通じて受信された通信を送るように構成されることと
をさらに含む、請求項１０に記載のシステム。
【請求項１４】
復号化メッセージを提供する前に、前記復号化メッセージがセキュアな接続を通して受信されたことを示すように前記復号化メッセージのヘッダを変更すること、をさらに含む、請求項１０に記載のシステム。
【請求項１５】
前記１組の認証情報は、前記ゲストシステムに割り当てられた秘密鍵を含む、請求項１０に記載のシステム。