(57)【要約】      （修正有）【課題】通信技術の分野と関係し、データ入力においてユーザが入力した情報内容のセキュリティ保護レベルを改善する方法及び装置を実現する。【解決手段】バーチャル・マシン・マネージャーが入力データを獲得するステップ１０１、暗号化されたデータを得るために、バーチャル・マシン・マネージャーが、一のセキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するステップ１０２、アプリケーション・インターフェースとサーバとの間において確立されたセキュリティ接続を通じて、バーチャル・マシン・マネージャーが、サーバーに対して暗号化されたデータを送信するステップ１０３、を具備する。【選択図】図１
2014235753.tif 000002
【特許請求の範囲】
【請求項１】
データを入力するための方法であって：
バーチャル・マシン・マネージャーが入力データを獲得するステップ；
暗号化されたデータを得るために、前記バーチャル・マシン・マネージャーが、一のセキュリティ接続についての暗号化ルールに従って、前記入力データの上で暗号化処理を実行するステップであって、前記セキュリティ接続は、アプリケーション・インターフェースとサーバとの間において確立され、データ伝送に使用される接続を指して言う、ステップ；および、
前記バーチャル・マシン・マネージャーが、サーバーに対して前記暗号化されたデータを送信するステップ、
を具備する方法。
【請求項２】
前記バーチャル・マシン・マネージャーが入力データを獲得する動作は、仮想入力装置を使用することによって、当該バーチャル・マシン・マネージャーが入力データを獲得する動作であって、前記仮想入力装置は物理的な入力装置と同じ機能を実装する、動作
を含んでいることを特徴とする請求項１記載の方法。
【請求項３】
前記仮想入力装置は第１の通常ゾーンおよび第１のセキュリティー・ゾーンを含んでおり、前記第１の通常ゾーンは暗号化処理を必要としない第２の入力データを獲得するために使用され、前記第１のセキュリティー・ゾーンはセキュリティ処理を必要とする第１の入力データを獲得するために使用され、
前記仮想入力装置を使用することによって、前記バーチャル・マシン・マネージャーが入力データを獲得する動作は：
前記バーチャル・マシン・マネージャーが、前記第１のセキュリティー・ゾーンを介して前記第１の入力データを獲得し、第１の通常ゾーンを介して第２の入力データを獲得する動作を含んでおり、
暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、前記入力データ上で前記暗号化処理を前記実行する動作は：
暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、前記第１の入力データ上で暗号化処理を実行する動作を含んでいる、
ことを特徴とする請求項２記載の方法。
【請求項４】
前記バーチャル・マシン・マネージャーが入力データを前記獲得する動作は：
前記バーチャル・マシン・マネージャーが物理的な入力装置を制御する動作；
前記バーチャル・マシン・マネージャーが、物理的な入力装置を使用して入力データを獲得する動作であって、入力データは、入力バッファ中においてバッファリングされる、動作；
を含み、
前記バーチャル・マシン・マネージャーが、物理的な入力装置を使用して、入力データを前記獲得する動作を実行した後に、前記バーチャル・マシン・マネージャーが、入力バッファの内容をクリアする動作をさらに含んでいる、
ことを特徴とする請求項１記載の方法。
【請求項５】
前記物理的な入力装置は、第２のセキュリティー・ゾーンおよび第２の通常ゾーンを含んでおり、前記第２の通常ゾーンはセキュリティ処理を必要としない第４の入力データを獲得するために使用され、前記第２のセキュリティー・ゾーンはセキュリティ処理を必要とする第３の入力データを獲得するために使用され、
前記バーチャル・マシン・マネージャーが、前記物理的な入力装置を使用して入力データを獲得する動作は：
前記バーチャル・マシン・マネージャーが、第２のセキュリティー・ゾーンを介して第３の入力データを獲得し、第２の通常ゾーンを介して第４の入力データを獲得する動作を含んでおり、
暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、入力データ上で前記暗号化処理を前記実行する動作は：
暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、前記第３の入力データ上で暗号化処理を実行する動作を含んでいる、
ことを特徴とする請求項４記載の方法。
【請求項６】
前記バーチャル・マシン・マネージャーが入力データを前記獲得する動作を実行した後に、前記バーチャル・マシン・マネージャーが、偽造された入力データを生成し、オペレーティング・システムに対して前記偽造された入力データを送信するステップをさらに含んでいる、
ことを特徴とする請求項１乃至請求項５の中のいずれか一項に記載された方法。
【請求項７】
暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行するのに先立って実行される動作は：
前記バーチャル・マシン・マネージャーが、サブミッション命令を受信する動作であって、前記サブミッション命令はデータ入力を終えるようにユーザに命じるために使用される命令である、動作；をさらに含んでおり、
暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、入力データ上で前記暗号化処理を前記実行する動作は：
前記サブミッション命令を受信した後において、暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作を含んでいる、
ことを特徴とする請求項１乃至請求項６の中のいずれか一項に記載された方法。
【請求項８】
前記バーチャル・マシン・マネージャーが入力データを前記獲得するのに先立って実行される動作として：
前記バーチャル・マシン・マネージャーが、トリガー命令を受信する動作であって、前記トリガー命令は、データ暗号化の処理を実行可能にするバーチャル・マシン・マネージャーを起動するために使用される命令である、動作をさらに含んでおり、
暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、入力データ上で前記暗号化処理を前記実行する動作は：
前記トリガー命令に応答する形で、暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作を含んでいる、
ことを特徴とする請求項１乃至請求項７の中のいずれか一項に記載された方法。
【請求項９】
前記バーチャル・マシン・マネージャーが、前記サーバーに対して暗号化されたデータを前記送信する動作は：
前記バーチャル・マシン・マネージャーが、前記サーバに対して、アプリケーション・インターフェースを使用して、前記セキュリティ接続の上で、暗号化されたデータを送信する動作を含んでいる、
ことを特徴とする請求項１乃至請求項８の中のいずれか一項に記載された方法。
【請求項１０】
前記セキュリティー接続は、ＳＳＬ（セキュアー・ソケット・レイヤー）接続を含んでおり、暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記セキュリティ接続についての暗号化ルールに従って、入力データ上で前記暗号化処理を前記実行する動作は：
暗号化されたデータを獲得するために、前記バーチャル・マシン・マネージャーが、前記ＳＳＬ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作を含んでいる、
ことを特徴とする請求項１乃至請求項９の中のいずれか一項に記載された方法。
【請求項１１】
入力データを獲得するように構成された獲得ユニット；
暗号化されたデータを獲得することを目的として、セキュリティ接続についての暗号化ルールに従って、前記獲得ユニットによって獲得された入力データの上で暗号化処理を実行するように構成された処理ユニットであって、前記セキュリティ接続は、アプリケーション・インターフェースとサーバとの間において確立され、データ伝送に使用される接続を指して言う、処理ユニット；および、
前記サーバに対して暗号化されたデータを送信するように構成された送受信機ユニット；
を具備するバーチャル・マシン・マネージャ。
【請求項１２】
前記獲得ユニットは仮想入力装置を使用することにより入力データを獲得するように構成され、このとき、仮想入力装置は物理的な入力装置と同じ機能を実装する、
ことを特徴とする請求項１１記載のバーチャル・マシン・マネージャ。
【請求項１３】
前記仮想入力装置は第１の通常ゾーンおよび第１のセキュリティー・ゾーンを含んでおり、前記第１の通常ゾーンは暗号化処理を必要としない第２の入力データを獲得するために使用され、前記第１のセキュリティー・ゾーンはセキュリティ処理を必要とする第１の入力データを獲得するために使用され、
前記獲得ユニットは、前記第１のセキュリティー・ゾーンを介して前記第１の入力データを獲得し、かつ前記第１の通常ゾーンを介して前記第２の入力データを獲得するように構成され、
暗号化されたデータを獲得するために、前記処理ユニットは、前記セキュリティ接続についての暗号化ルールに従って、前記第１の入力データ上で暗号化処理を実行するように構成される、
ことを特徴とする、請求項１２記載のバーチャル・マシン・マネージャ。
【請求項１４】
前記獲得ユニットは、物理的な入力装置を制御し、物理的な入力装置を使用することにより、入力データを獲得するように構成され、入力データは、入力バッファ中においてバッファリングされており、
前記処理ユニットは入力バッファの内容をクリアするようにさらに構成されている、
ことを特徴とする、請求項１１記載のバーチャル・マシン・マネージャ。
【請求項１５】
前記物理的な入力装置は、第２のセキュリティー・ゾーンおよび第２の通常ゾーンを含んでおり、前記第２の通常ゾーンは、セキュリティ処理を必要としない第４の入力データを獲得するために使用され、前記第２のセキュリティー・ゾーンはセキュリティ処理を必要とする第３の入力データを獲得するために使用され、
前記獲得ユニットは、前記第２のセキュリティー・ゾーンを介して前記第３の入力データを獲得し、前記第２の通常ゾーンを介して前記第４の入力データを獲得するように構成され、
前記処理ユニットは、暗号化されたデータを獲得するために、当該処理ユニットは、セキュリティ接続についての暗号化ルールに従って、当該第３の入力データ上で暗号化処理を実行するように構成されている、
ことを特徴とする、請求項１４記載のバーチャル・マシン・マネージャ。
【請求項１６】
前記処理ユニットは、偽造された入力データを生成し、オペレーティング・システムに対して前記偽造された入力データを送信するようにさらに構成される、
ことを特徴とする、請求項１１乃至請求項１５の中のいずれか一項に記載されたバーチャル・マシン・マネージャ。
【請求項１７】
前記送受信機ユニットは、サブミッション命令を受信するようにさらに構成され、前記サブミッション命令は、データ入力を終えるようにユーザに指示するために使用される命令であり、
前記処理ユニットは、前記送受信機ユニットが前記サブミッション命令を受信した後において、暗号化されたデータを獲得するために、前記セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行するように構成される、
ことを特徴とする、請求項１１乃至請求項１６の中のいずれか一項に記載されたバーチャル・マシン・マネージャ。
【請求項１８】
前記送受信機ユニットはトリガー命令を受信するようにさらに構成され、前記トリガー命令は、データ暗号化の実行を可能にするバーチャル・マシン・マネージャーを起動するために使用される命令であり、
前記処理ユニットは、前記送受信機ユニットによって受信された前記トリガー命令に応答する形で、暗号化されたデータを獲得するために、前記セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行するするように構成される、
ことを特徴とする、請求項１１乃至請求項１７の中のいずれか一項に記載されたバーチャル・マシン・マネージャ。
【請求項１９】
前記送受信機ユニットは、アプリケーション・インターフェースを使用することにより、セキュリティ接続上において暗号化されたデータをサーバーに対して送信するように構成される、
ことを特徴とする、請求項１１乃至請求項１８の中のいずれか一項に記載されたバーチャル・マシン・マネージャ。
【請求項２０】
ハードウェア層、ハードウェア層の上で実行されるバーチャル・マシン・マネージャー、および前記バーチャル・マシン・マネージャーの上で実行される少なくとも１個のバーチャル・マシンを含んでおり、
前記バーチャル・マシン・マネージャーは、請求項１１乃至請求項１９の中のいずれか一項に記載されたバーチャル・マシン・マネージャとして構成される、
ことを特徴とする、物理的なホスト・コンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信分野と関係し、特に、データを入力する方法と装置とに関係する。
【背景技術】
【０００２】
仮想マシン・マネージャー(仮想コンピューターのモニタ／マネージャー、バーチャル・マシン・マネージャー)は、ハードウェア層の上で直接実行することが可能であり、かつハードウェア資源を共有する多くのオペレーティング・システムを管理することができるソフトウェア層である。サーバがバーチャル・マシン・マネージャーを起動し、実行する場合、当該仮想マシン・マネージャーは多くのバーチャル・マシンを作成し、適切な数量のハードウェア資源（各バーチャル・マシンへ割り当てられるべきメモリ、ＣＰＵおよびディスク等）を割り当てることができる。
【０００３】
バーチャル・マシン・マネージャーは多くのバーチャル・マシン、およびバーチャル・マシンの各々の上において実行される互いに独立したオペレーティング・システムおよび互いに独立したミドルウェアを管理する。これを前提として、様々なアプリケーションは必要に応じて異なるバーチャル・マシン上で実行され、他のアプリケーションから分離された形で実行されることが可能である。このようにして、セキュリティ上安全な入力操作が実施されている期間内においては、セキュリティ上安全な入力操作を要求するアプリケーション又はそのようなアプリケーションを起動するオペレーティング・システムのためにだけ、セキュリティ保護機能を実行することが可能である。
【０００４】
セキュリティ保護機能を実施する過程において、少なくとも以下の問題が先行技術において存在することが当業者に知られている。すなわち、対応するセキュリティ処理および暗号化処理は、セキュリティ保護機能の実行期間中に、オペレーティング・システムが実行するので、オペレーティング・システムが攻撃され、それによって、入力情報のセキュリティ保護レベルを縮小する場合、ユーザによって入力操作された平文の（暗号化されていない）テキスト入力内容が得られるかも知れない。
【発明の概要】
【０００５】
本発明に係る実施例は入力情報のセキュリティ保護を改善することを目的として、データを入力するための方法と装置を開示する。
【０００６】
上述した目的を達成するために、本発明に係る実施例は以下の技術的解決法を採用する:
本発明に係る第１の技術的側面によれば、本発明に係る実施例は、データを入力するための方法を提供し、当該方法は、以下の処理ステップを含む:バーチャル・マシン・マネージャーが入力データを獲得するステップ；暗号化されたデータを得るために、当該バーチャル・マシン・マネージャーが、一のセキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行するステップであって、当該セキュリティ接続は、アプリケーション・インターフェースとサーバとの間において確立され、データ伝送に使用される接続を指して言う、ステップ；および、当該バーチャル・マシン・マネージャーが、サーバに対して当該暗号化されたデータを送信するステップ。
【０００７】
上述した第１の技術的側面に係る第１の可能な実装態様においては、当該バーチャル・マシン・マネージャーが入力データを獲得する動作は、仮想入力装置を使用することによって、当該バーチャル・マシン・マネージャーが入力データを獲得する動作であって、仮想入力装置は物理的な入力装置と同じ機能を実装する、動作を含んでいる。
【０００８】
上述した第１の技術的側面に係る第１の可能な実装態様を参照した上で、第１の技術的側面に係る第２の可能な実装態様においては、本発明に係る方法は、オペレーティング・システムによって提供される仮想入力装置用のインターフェースを使用して、一つの仮想入力装置を生成するステップをさらに含んでいる。
【０００９】
上述した第１の技術的側面に係る第１の可能な実装態様と第２の可能な実装態様を参照した上で、第１の技術的側面に係る第３の可能な実装態様においては、仮想入力装置は第１の通常ゾーンおよび第１のセキュリティー・ゾーンを含んでおり、第１の通常ゾーンは暗号化処理を必要としない第２の入力データを獲得するために使用され、また、第１のセキュリティー・ゾーンはセキュリティ処理を必要とする第１の入力データを獲得するために使用され、仮想入力装置を使用することによって、当該バーチャル・マシン・マネージャーが入力データを獲得する動作は、当該バーチャル・マシン・マネージャーが、当該第１のセキュリティー・ゾーンを介して当該第１の入力データを獲得し、第１の通常ゾーンを介して第２の入力データを獲得する動作を含んでおり、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作は、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、第１の入力データ上で暗号化処理を実行する動作を含んでいる。
【００１０】
上述した第１の技術的側面に係る第１の可能な実装態様から第３の可能な実装態様の中のいずれか一つの実装態様を参照した上で、第１の技術的側面に係る第４の可能な実装態様においては、仮想入力装置は、仮想的なキーボードを含んでいる。
【００１１】
上述した第１の技術的側面に係る第１の可能な実装態様を参照した上で、第１の技術的側面に係る第５の可能な実装態様においては、当該バーチャル・マシン・マネージャーが入力データを獲得する動作は、バーチャル・マシン・マネージャーが物理的な入力装置を制御する動作と、当該バーチャル・マシン・マネージャーが、物理的な入力装置を使用して入力データを獲得する動作であって、入力データは、入力バッファ中においてバッファリングされる、動作とを含み、そして、当該バーチャル・マシン・マネージャーが、物理的な入力装置を使用して、入力データを上記のように獲得する動作を実行した後に、本発明に係る方法は、当該バーチャル・マシン・マネージャーが、入力バッファの内容をクリアする動作をさらに含んでいる。
【００１２】
上述した第１の技術的側面に係る第５の可能な実装態様を参照した上で、第１の技術的側面に係る第６の可能な実装態様においては、物理的な入力装置は、第２のセキュリティー・ゾーンおよび第２の通常ゾーンを含んでおり、第２の通常ゾーンはセキュリティ処理を必要としない第４の入力データを獲得するために使用され、第２のセキュリティー・ゾーンはセキュリティ処理を必要とする第３の入力データを獲得するために使用され、当該バーチャル・マシン・マネージャーが、物理的な入力装置を使用して入力データを獲得する動作は、当該バーチャル・マシン・マネージャーが、第２のセキュリティー・ゾーンを介して第３の入力データを獲得し、第２の通常ゾーンを介して第４の入力データを獲得する動作を含んでおり、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作は、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、第３の入力データ上で暗号化処理を実行する動作を含んでいる。
【００１３】
上述した第１の技術的側面に係る第５の可能な実装態様または第６の可能な実装態様を参照した上で、第１の技術的側面に係る第７の可能な実装態様においては、物理的な入力装置は、物理的なキーボードを含んでいる。
【００１４】
上述した第１の技術的側面または上述した第１の技術的側面に係る第１の可能な実装態様から第７の可能な実装態様の中のいずれか一つの実装態様を参照した上で、第１の技術的側面に係る第８の可能な実装態様においては、当該バーチャル・マシン・マネージャーが入力データを上記のように獲得する動作を実行した後に、本発明に係る方法は、当該バーチャル・マシン・マネージャーが、偽造された入力データを生成し、オペレーティング・システムに対して当該偽造された入力データを送信するステップをさらに含んでいる。
【００１５】
上述した第１の技術的側面または上述した第１の技術的側面に係る第１の可能な実装態様から第８の可能な実装態様の中のいずれか一つの実装態様を参照した上で、第１の技術的側面に係る第９の可能な実装態様においては、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行するのに先立って実行される動作として、本発明に係る方法は、当該バーチャル・マシン・マネージャーが、サブミッション命令を受信する動作であって、当該サブミッション命令はデータ入力を終えるようにユーザに命じるために使用される命令である、動作をさらに含んでおり、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作は、当該サブミッション命令を受信した後において、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作を含んでいる。
【００１６】
上述した第１の技術的側面または上述した第１の技術的側面に係る第１の可能な実装態様から第９の可能な実装態様の中のいずれか一つの実装態様を参照した上で、第１の技術的側面に係る第１０の可能な実装態様においては、当該バーチャル・マシン・マネージャーが入力データを獲得するのに先立って実行される動作として、本発明に係る方法は、当該バーチャル・マシン・マネージャーが、トリガー命令を受信する動作であって、当該トリガー命令は、データ暗号化の処理を実行可能にするバーチャル・マシン・マネージャーを起動するために使用される命令である、動作をさらに含んでおり、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作は、当該トリガー命令に応答する形で、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作を含んでいる。
【００１７】
上述した第１の技術的側面または上述した第１の技術的側面に係る第１の可能な実装態様から第１０の可能な実装態様の中のいずれか一つの実装態様を参照した上で、第１の技術的側面に係る第１１の可能な実装態様においては、当該バーチャル・マシン・マネージャーが、当該サーバに対して暗号化されたデータを送信する動作は、当該バーチャル・マシン・マネージャーが、当該サーバに対して、アプリケーション・インターフェースを使用して、当該セキュリティ接続の上で、暗号化されたデータを送信する動作を含んでいる。
【００１８】
上述した第１の技術的側面または上述した第１の技術的側面に係る第１の可能な実装態様から第１１の可能な実装態様の中のいずれか一つの実装態様を参照した上で、第１の技術的側面に係る第１２の可能な実装態様においては、当該セキュリティー接続は、ＳＳＬ（セキュアー・ソケット・レイヤー）接続を含んでおり、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作は、暗号化されたデータを獲得するために、当該バーチャル・マシン・マネージャーが、上述したＳＳＬ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する動作を含んでいる。
【００１９】
本発明に係る第２の技術的側面によれば、本発明に係る実施例は、以下のものを含むバーチャル・マシン・マネージャーを提供する:入力データを獲得するように構成された獲得ユニット;暗号化されたデータを獲得することを目的として、当該バーチャル・マシン・マネージャーが、セキュリティ接続についての暗号化ルールに従って、当該獲得ユニットによって獲得された入力データの上で暗号化処理を実行するように構成された処理ユニットであって、当該セキュリティ接続は、アプリケーション・インターフェースとサーバとの間において確立され、データ伝送に使用される接続を指して言う、処理ユニット；および、当該サーバに対して暗号化されたデータを送信するように構成された送受信機ユニット。
【００２０】
上述した第２の技術的側面に係る第１の可能な実装態様においては、当該獲得ユニットを以下のように構成することをさらに含む。すなわち、当該獲得ユニットは仮想入力装置を使用することにより入力データを獲得するように特に構成され、このとき、仮想入力装置は物理的な入力装置と同じ機能を実装する。
【００２１】
上述した第２の技術的側面に係る第１の可能な実装態様を引用した上で、第２の技術的側面の第２の可能な実装態様においては、オペレーティング・システムによって提供される仮想入力装置用のインターフェースを使用することにより、仮想入力装置を生成するように構成された作成ユニットをさらに含んでいる。
【００２２】
上述した第２の技術的側面に係る第１の可能な実装態様または第２の可能な実装態様を引用した上で、第２の技術的側面の第３の可能な実装態様においては、仮想入力装置は第１の通常ゾーンおよび第１のセキュリティー・ゾーンを含んでおり、第１の通常ゾーンは暗号化処理を必要としない第２の入力データを獲得するために使用され、また、第１のセキュリティー・ゾーンはセキュリティ処理を必要とする第１の入力データを獲得するために使用され、当該獲得ユニットは、第１のセキュリティー・ゾーンを介して第１の入力データを獲得し、かつ第１の通常ゾーンを介して第２の入力データを獲得するように特に構成され、暗号化されたデータを獲得するために、当該処理ユニットは、セキュリティ接続についての暗号化ルールに従って、当該第１の入力データ上で暗号化処理を実行するように特に構成される。
【００２３】
上述した第２の技術的側面を引用した上で、第２の技術的側面の第４の可能な実装態様においては、当該獲得ユニットは、物理的な入力装置を制御し、物理的な入力装置を使用することにより、入力データを獲得するように特に構成され、このとき、入力データは、入力バッファ中においてバッファリングされており、また、処理ユニットは入力バッファの内容をクリアするようにさらに構成されている。
【００２４】
上述した第２の技術的側面に係る第４の可能な実装態様を引用した上で、第２の技術的側面の第５の可能な実装態様においては、物理的な入力装置は、第２のセキュリティー・ゾーンおよび第２の通常ゾーンを含んでおり、第２の通常ゾーンは、セキュリティ処理を必要としない第４の入力データを獲得するために使用され、第２のセキュリティー・ゾーンはセキュリティ処理を必要とする第３の入力データを獲得するために使用され、当該獲得ユニットは、第２のセキュリティー・ゾーンを介して第３の入力データを獲得し、かつ第２の通常ゾーンを介して第４の入力データを獲得するように特に構成され、当該処理ユニットは、暗号化されたデータを獲得するために、当該処理ユニットは、セキュリティ接続についての暗号化ルールに従って、当該第３の入力データ上で暗号化処理を実行するように特に構成されている。
【００２５】
上述した第２の技術的側面または上述した第２の技術的側面に係る第１の可能な実装態様から第５の可能な実装態様の中のいずれか一つを引用した上で、第２の技術的側面の第６の可能な実装態様においては、当該処理ユニットは、偽造された入力データを生成し、かつオペレーティング・システムに対して当該偽造された入力データを送信するようにさらに構成される。
【００２６】
上述した第２の技術的側面または上述した第２の技術的側面に係る第１の可能な実装態様から第６の可能な実装態様の中のいずれか一つを引用した上で、第２の技術的側面の第７の可能な実装態様においては、送受信機ユニットは、サブミッション命令を受信するようにさらに構成され、ここで、当該サブミッション命令は、データ入力を終えるようにユーザに指示するために使用される命令であり、当該処理ユニットは、送受信機ユニットが当該サブミッション命令を受信した後において、暗号化されたデータを獲得するために、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行するように特に構成される。
【００２７】
上述した第２の技術的側面または上述した第２の技術的側面に係る第１の可能な実装態様から第７の可能な実装態様の中のいずれか一つを引用した上で、第２の技術的側面の第８の可能な実装態様においては、送受信機ユニットはトリガー命令を受信するようにさらに構成され、ここで、当該トリガー命令は、データ暗号化の実行を可能にするバーチャル・マシン・マネージャーを起動するために使用される命令であり、当該処理ユニットは、送受信機ユニットによって受信されたトリガー命令に応答するように特に構成され、当該バーチャル・マシン・マネージャは、暗号化されたデータを獲得するために、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する。
【００２８】
上述した第２の技術的側面または上述した第２の技術的側面に係る第１の可能な実装態様から第８の可能な実装態様の中のいずれか一つを引用した上で、第２の技術的側面の第９の可能な実装態様においては、送受信機ユニットは、アプリケーション・インターフェースを使用することにより、セキュリティ接続上において暗号化されたデータをサーバーに対して送信するように特に構成されている。
【００２９】
上述した第２の技術的側面または上述した第２の技術的側面に係る第１の可能な実装態様から第９の可能な実装態様の中のいずれか一つを引用した上で、第２の技術的側面の第１０の可能な実装態様においては、セキュリティ接続はＳＳＬ（セキュアー・ソケット・レイヤー）接続を含んでおり、当該処理ユニットは、暗号化されたデータを獲得するために、上述したＳＳＬ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行するように特に構成されている。
【００３０】
第３の技術的側面によれば、本発明の実施例は物理的なホストを提供し、ここで、当該物理的なホストは、ハードウェア層、ハードウェア層の上で実行されるバーチャル・マシン・マネージャー（VMM）、およびバーチャル・マシン・マネージャー（VMM）の上で実行される少なくとも１個のバーチャル・マシンを含んでおり、ここで、当該バーチャル・マシン・マネージャーは、上述した実装態様において述べられていたバーチャル・マシン・マネージャーに相当する。
【００３１】
本発明に係る実施例はデータを入力するための方法と装置を開示する。入力データを獲得した後に、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行し、当該暗号化されたデータをサーバに対して送信する。このようにして、暗号化されたデータを獲得するために、ユーザによって入力されたデータに対して、バーチャル・マシン・マネージャー上で暗号化処理を実行することができ、続いて、暗号化されたデータは、当該サーバへと送信される。以上より、オペレーティング・システムは、ユーザによるデータ入力内容を暗号化処理する過程に関与する必要が無いことが理解されよう。すなわち、データの暗号化処理はオペレーティング・システムから見て透明な形で実行される。このようにして、オペレーティング・システムが攻撃されても、ユーザによる正確なデータ入力内容をセキュリティ攻撃者が獲得することはできないので、入力情報のセキュリティ保護レベルおよび信頼性を向上させるすることが可能となる。
【００３２】
本発明に係る実施例において開示される技術的解決法あるいは先行技術についてより明確に説明するために、下記の「図面の簡単な説明」の欄においては、本発明に係る実施例または先行技術について説明するのに必要な添付図面を簡潔に紹介する。当業者にとって明らかなとおり、以下の記述において説明される添付図面は、本発明の幾つかの実施例を単に例示しているだけであり、当業者は、格別の創造的工夫を要することなく、これらの添付図面に基づいてさらに別の実施例を図示したさらに別の図面を導出することも可能である。
【図面の簡単な説明】
【００３３】
【図１】本発明に係る実施例に従い、データを入力する方法を示す概略図。
【図２】本発明に係る実施例に従い、ＳＳＬ接続を確立する方法を示す概略図。
【図３】本発明に係る実施例に従い、ＳＳＬ接続を確立するためのさらに別の方法を示す概略図。
【図４】本発明に係る実施例に従い、データを入力するためのさらに別の方法を示す概略図。
【図５】本発明に係る実施例に従って構成されるバーチャル・マシン・マネージャーの概略的なブロック図。
【図６】本発明に係る実施例に従って構成されるさらに別のバーチャル・マシン・マネージャーの概略的なブロック図。
【図７】本発明に係る実施例に従って構成されるバーチャル・マシン・マネージャーの概略的な内部構造図。
【図８】本発明に係る実施例に従って構成される物理的なホストの概略的な内部構造図。
【発明を実施するための形態】
【００３４】
以下の記述は、本発明に係る実施例において開示される技術的解決法について、本発明に係る実施例に対応する添付図面を参照しながら、明確かつ完全に説明する。当業者にとって明らかなとおり、本明細書中に記述される実施例は、本発明に係る実施例の全てを網羅するものではなく、むしろ可能な実施例の一部を開示しているに過ぎない。本明細書に記載された実施例に基づいて、当業者が、格別の創造的工夫を要すること無しに得ることが可能なその他のあらゆるの実施例は、本発明の権利保護範囲内にあるものとされる。
【００３５】
本発明に係る実施例は、データを入力するための図１に示されるような方法を開示し、以下のステップを含む:
＜ステップ１０１＞バーチャル・マシン・マネージャーが入力データを獲得するステップ。
【００３６】
バーチャル・マシン・マネージャーが入力データを獲得する方法は本発明に係る装置において使用する個々の入力装置に応じて変化する。
【００３７】
具体的には、本発明に係る装置において使用する入力装置が仮想入力装置である場合、バーチャル・マシン・マネージャーが入力データを獲得する方法は特に以下のとおりである。すなわち、バーチャル・マシン・マネージャーは、仮想入力装置を使用することによって入力データを獲得する。
【００３８】
仮想入力装置は、物理的な入力装置と同じ機能を実装している。すなわち、バーチャル・マシン・マネージャーは、仮想入力装置を使用することによって、ユーザによるデータ入力内容を獲得することが可能である。仮想入力装置は、ユーザによってタップ操作された場所に従って、ユーザからのデータ入力内容を判定するように構成される。
【００３９】
すなわち、バーチャル・マシン・マネージャーによって生成された仮想入力装置の機能は、オペレーティング・システム上における仮想入力装置の機能と同じである。仮想入力装置を使用することによって、ユーザによってタッチ操作がされたそれぞれ異なる位置によって表わされるデータを獲得することができ、その結果、入力データ内容を獲得することが出来る。
【００４０】
さらに、仮想入力装置の使用により入力データ内容を獲得するのに先立って、バーチャル・マシン・マネージャーは、オペレーティング・システムによって提供される仮想入力装置用のインターフェースを使用することにより、仮想入力装置を生成することが可能である。
【００４１】
具体的には、バーチャル・マシン・マネージャーは、オペレーティング・システムによって提供される仮想入力装置用のインターフェースを使用することにより、オペレーティング・システム上における仮想入力装置と同一である仮想入力装置を生成することが可能である。
【００４２】
さらに別の方法を使用することにより、バーチャル・マシン・マネージャーは、さらに追加の仮想入力装置を生成することが可能である点に留意されたい。例えば、オペレーティング・システムを使用せずに、オペレーティング・システム上における仮想入力装置と同一である仮想入力装置を、バーチャル・マシン・マネージャー自身が生成する場合もあり得る。本発明においては、バーチャル・マシン・マネージャーが仮想入力装置を生成する方法は、上述した具体例だけに制限されてはいない。
【００４３】
さらに、仮想入力装置は仮想キーボードを含んでいる。
【００４４】
例示的に説明するならば、本発明に係る装置がタッチスクリーンを具備する装置である場合、本発明に係る装置における入力装置は仮想入力装置である。バーチャル・マシン・マネージャーは、オペレーティング・システム上の仮想キーボードと同様に機能する仮想キーボードを生成することが可能である。ユーザが、タッチ・スクリーン装置上においてデータを入力したならば、バーチャル・マシン・マネージャーは、仮想キーボードを使用することによって、タッチスクリーン装置上においてユーザがタップ操作した位置に対応するデータを獲得し、その結果として、入力データを獲得するすることが可能である。
【００４５】
さらに、仮想入力装置は第１の通常ゾーンおよび第１のセキュリティー・ゾーンを含んでおり、第１の通常ゾーンが暗号化処理を必要としない第２の入力データを獲得するために使用され、第１のセキュリティー・ゾーンは、セキュリティ処理を必要とする第１の入力データを獲得するために使用される。
【００４６】
この場合、バーチャル・マシン・マネージャーは第１のセキュリティー・ゾーンを介して第１の入力データを獲得し、バーチャル・マシン・マネージャーは第１の通常ゾーンを介して第２の入力データを獲得する。
【００４７】
具体的には、ユーザが入力したデータ入力内容の一部について暗号化処理を行なう必要があるので、ユーザが入力した当該データ入力内容は差別化されることが可能である。仮想入力装置は第１の通常ゾーンと第１のセキュリティー・ゾーンとに分割されることが可能である。ユーザによってタップ操作された位置が第１の通常ゾーンに相当する場合、バーチャル・マシン・マネージャーは第２の入力データを獲得することが可能であり、データの暗号化処理を行なう必要はなく、従来技術に従って実行する場合と同様に、通常の処理を実行する。ユーザによってタップ操作された位置が第１のセキュリティー・ゾーンに相当する場合、バーチャル・マシン・マネージャーは第１の入力データを獲得してもよく、データを暗号化処理する必要がある。
【００４８】
さらに、ユーザによってタップ操作された位置が仮想入力装置の外側のゾーンにある場合、バーチャル・マシン・マネージャーは、従来技術における処理動作と同様の態様で、ユーザがタップ操作した位置に対応する通常の処理動作を実行する。本明細書の以下の記述においては、その詳細は繰り返し記述されない。
【００４９】
上述した具体例において述べられているように、仮想キーボードはコントロールキー・ゾーンすなわち第１の通常ゾーンを含んでおり、さらにデータ・キー・ゾーンすなわち第１のセキュリティー・ゾーンを含んでいる。ユーザによってタップ操作された位置がコントロールキー・ゾーン内にある場合、バーチャル・マシン・マネージャーは対応するコントロール・データを獲得し、従来技術における処理動作の同様の態様でコントロール・データのための処理を実行することが可能である。例えば、ユーザがコントロールキー・ゾーンにおける「Caps  Lockキー」の位置をタップ操作すれば、バーチャル・マシン・マネージャーはコントロール・データ「Caps  Lock」を獲得し、この場合、バーチャル・マシン・マネージャーはオペレーティング・システムを使用することにより、「Caps  Lock」キーが押された場合の処理動作を実行する。ユーザによってタップ操作された位置がデータ・キー・ゾーン内にある場合、バーチャル・マシン・マネージャーは対応するデータ情報を獲得し、この場合、バーチャル・マシン・マネージャーは第１の入力データとしてデータ情報を使用することが可能である。例えば、ユーザがデータ・キー・ゾーン内にあるキー「Ａ」の位置をタップ操作すれば、バーチャル・マシン・マネージャーはユーザによるデータ内容「Ａ」の入力操作を捕捉し、それを第１の入力データとして使用してセキュリティ処理を実行する。
【００５０】
本発明に係るこの実施例において、入力データ上でセキュリティ処理を実行することは、入力データ上でステップ１０２における処理動作を実行すること、すなわち、入力データ上で暗号化処理を実行することを指す。
【００５１】
本発明に係る装置における入力装置が物理的な入力装置である場合、バーチャル・マシン・マネージャーが入力データを獲得するための方法は特に以下の動作ステップを具備する：バーチャル・マシン・マネージャーは物理的な入力装置を制御し、入力データが入力バッファ中においてバッファリングされている場合、バーチャル・マシン・マネージャーは物理的な入力装置を使用することにより入力データを獲得する。
【００５２】
さらに、物理的な入力装置は物理的なキーボードを含んでいる。
【００５３】
特に、本発明に係る装置における物理的な入力装置が物理的なキーボードである場合、バーチャル・マシン・マネージャーは物理的なキーボードを制御し、ユーザが物理的なキーボードを使用することにより入力操作を行なう際には、さらに入力データを獲得することが可能である。ユーザが物理的なキーボードを使用することにより入力操作を行なう際には、バーチャル・マシン・マネージャーが入力データを獲得するために、ユーザによるデータ入力内容は入力バッファ中においてバッファリングされる。
【００５４】
さらに、物理的な入力装置は第２のセキュリティー・ゾーンおよび第２の通常ゾーンを含んでいる。第２の通常ゾーンはセキュリティ処理を必要としない第４の入力データを獲得するために使用される。第２のセキュリティー・ゾーンはセキュリティ処理を必要とする第３の入力データを獲得するために使用される。
【００５５】
この場合、バーチャル・マシン・マネージャーは第２のセキュリティー・ゾーンを介して第３の入力データを獲得し、バーチャル・マシン・マネージャーは第２の通常ゾーンを介して第４の入力データを獲得する。
【００５６】
特に、ユーザがデータ入力内容の一部について暗号化処理を実行する必要があるので、ユーザによるデータ入力内容は差別化されることが可能である。物理的な入力装置は第２の通常ゾーンと第２のセキュリティー・ゾーンとに分割されることが可能である。ユーザが第２の通常ゾーンを介した入力操作を行ったならば、バーチャル・マシン・マネージャーは第４の入力データを獲得することが可能であり、暗号化処理を行なう必要なしに、従来技術において実行する場合と同様の態様で、通常の処理を実行することが可能である。ユーザが第２のセキュリティー・ゾーンを介した入力操作を行なったならば、バーチャル・マシン・マネージャーは第３の入力データを獲得することが可能であり、この場合はデータを暗号化処理する必要がある。
【００５７】
上述した具体例において述べられているように、物理的なキーボードはコントロールキー・ゾーンすなわち第２の通常ゾーンを含んでおり、データ・キー・ゾーンすなわち第２のセキュリティー・ゾーンを含んでいる。ユーザが物理的なキーボードのコントロール・ゾーンを介した入力操作を行なったならば、バーチャル・マシン・マネージャーは対応するコントロール・データを獲得し、従来技術において実行する場合と同様の態様で、コントロール・データについての処理を実行することが可能である。ユーザが物理的なキーボードのデータ・ゾーンを介した入力操作を行なったならば、バーチャル・マシン・マネージャーは対応するデータ情報を獲得し、この場合、バーチャル・マシン・マネージャーは第３の入力データとしてデータ情報を使用し、暗号化処理を実行することが可能である。
【００５８】
さらに、バーチャル・マシン・マネージャーが、物理的な入力装置を制御することにより入力データを獲得した後に、バーチャル・マシン・マネージャーは入力バッファの内容をクリアする。
【００５９】
特に、ユーザによって入力された入力データを獲得した後に、入力バッファを介して、バーチャル・マシン・マネージャーは入力バッファに保存された入力データをクリアする必要があり、その結果として、バーチャル・マシン・マネージャー以外の他のシステムが入力データを獲得することができず、それによって、入力データのセキュリティおよび信頼度が保証される。
【００６０】
＜ステップ１０２＞暗号化されたデータを得るために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する。
【００６１】
当該セキュリティ接続は、アプリケーション・インターフェースとサーバとの間において確立され、データ伝送に使用される接続を指して言う。
【００６２】
アプリケーション・インターフェースとサーバとの間においてセキュリティ接続が確立されている期間内において、確立済みのセキュリティ接続の上で安全な送信を行うために暗号化ルールを交渉することが可能であり、その結果として、獲得した入力データ上で暗号化処理を実行する際に、バーチャル・マシン・マネージャーが既に決定済みの暗号化ルールに従って暗号化処理を実行することが可能となるので、暗号化されたデータがサーバに送信される際に、当該サーバが暗号化処理されたデータを正確にパージングすることができることが保証されることに留意されたい。
【００６３】
特に、暗号化処理中にアプリケーション・インターフェースとサーバとの間においてセキュリティ接続が確立されているので、暗号化処理されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データを暗号化処理する必要があり、その結果として、サーバがデータを受け取った後に、サーバはデータを暗号化解除することができる。
【００６４】
さらに、ステップ１０１において、バーチャル・マシン・マネージャーによって獲得された入力データが、第１の入力データである場合には、暗号化処理されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データに対する暗号化処理を実行する。ステップ１０１においてバーチャル・マシン・マネージャーによって獲得された入力データが、第３の入力データである場合には、暗号化処理されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、第３の入力データに対する暗号化処理を実行する。
【００６５】
任意付加的に、当該セキュリティ接続は、ＳＳＬ（セキュアー・ソケット・レイヤー）接続を含んでいる。この場合、暗号化されたデータを獲得するために、セキュリティ接続についての暗号化ルールに従って入力データ上で実行可能な暗号化処理は、以下の暗号化処理を含んでいる：暗号化処理されたデータを獲得するために、ＳＳＬ接続についての暗号化ルールに従って、入力データに対する暗号化処理を実行する。
【００６６】
すなわち、ＳＳＬ接続がアプリケーション・インターフェースとサーバとの間において確立されたのに続いて、バーチャル・マシン・マネージャーは、ユーザによるデータ入力内容を獲得し、その後に、暗号化されたデータを獲得するためにアプリケーション・インターフェースとサーバとの間においてＳＳＬ接続のセッション・キーを使用することにより、入力データを暗号化処理する。
【００６７】
＜ステップ１０３＞バーチャル・マシン・マネージャーは、サーバに対して暗号化されたデータを送信する。
【００６８】
具体的には、入力データを暗号化処理した後に、バーチャル・マシン・マネージャーはサーバに対して暗号化されたデータを送信し、当該サーバが当該暗号化されたデータを受信した後に、当該サーバが、セキュリティ接続についての暗号化ルールに従って暗号化解除の処理を実行することによって、ユーザによって入力されたデータが獲得される。
【００６９】
さらに、バーチャル・マシン・マネージャーは、アプリケーション・インターフェースを使用することにより、暗号化処理されたデータを、セキュリティ接続上でサーバーへと送信することが可能である。
【００７０】
すなわち暗号化されたデータを得るために、ユーザによるデータ入力内容を暗号化した後に、バーチャル・マシン・マネージャーは、アプリケーション・インターフェースへと暗号化されたデータを送信し、続いて、当該アプリケーション・インターフェースは、セキュリティ接続を使用することにより、暗号化処理されたデータをサーバーに対して送信することが可能である。
【００７１】
さらに、当該アプリケーション・インターフェースとサーバーとの間においてＳＳＬ接続を確立している期間中において、ＳＳＬ接続を確立する過程は、以下の２種類の方法、すなわち、証明書を使用するクライアント、および証明書を使用しないクライアントに従って実行することが可能であり、上述した２種類の方法は、接続を確立するためのハンドシェイク通信手順における一方向の認証および２方向の認証にそれぞれ相当する。したがって、当該アプリケーション・インターフェースとサーバーとの間におけるＳＳＬ接続の確立も、２種類の方法、すなわち一方向の認証および２方向の認証に従って実行することが可能である。
【００７２】
図２に示されるように、ＳＳＬ接続が、一方向の認証方法に従って、アプリケーション・インターフェースとサーバーとの間において確立されるという場合には、本発明に係る特定の処理手順は以下のステップを含む。
【００７３】
＜ステップ２０１ａ＞当該アプリケーション・インターフェースは、ＳＳＬ接続を確立するための要求をサーバーに送信する。
【００７４】
ＳＳＬプロトコル（一種の暗号化アルゴリズム）のバージョン番号に関する情報および当該アプリケーション・インターフェースとサーバーとの間における通信のために必要とされるその他の情報は、ＳＳＬ接続の確立要求によって伝送される。
【００７５】
＜ステップ２０２ａ＞サーバーは、当該アプリケーション・インターフェースに対してサーバーの証明書を返信する。
【００７６】
当該サーバーの証明書は、サーバ証明書のシグネチャおよび公開鍵を含んでいる。
【００７７】
特に、当該アプリケーション・インターフェースによって送信されたＳＳＬ接続の確立要求を受け取った後に、サーバーは、ＳＳＬ接続に関してＳＳＬプロトコルのバージョン番号を表す情報を獲得し、当該ＳＳＬ接続は、当該アプリケーション・インターフェース、暗号化アルゴリズムの種別およびアプリケーション・インターフェースとサーバとの間における通信に必要なその他の情報を要求することに応じて確立される。サーバーは、自身のシグネチャと公開鍵とを含む証明書をアプリケーション・インターフェースへと送信し、その結果、アプリケーション・インターフェースは証明書を認証することが可能となる。
【００７８】
＜ステップ２０３ａ＞当該アプリケーション・インターフェースは、サーバーの証明書が有効な証明書であるか否かを、当該サーバーから返信された証明書によって検証する。
【００７９】
特に、サーバーから返信された証明書を受信した後に、当該アプリケーション・インターフェースは、証明書が期限切れになっているか否か、証明書は信頼されたＣＡセンター（公的認証機関）によって発行されているか否か、  証明書の中に含まれている公開鍵は、サーバ証明書の「発行人のデジタル署名」を正確に暗号化解除することができるか否か、または証明書上のドメイン名は、サーバーの実際のドメイン名と一致するか否か、などを検証する必要がある。証明書が上述した条件を全て満たすことが検証された場合、証明書は有効な証明書とみなされ、本発明に係る実行手順は、ステップ２０４ａに進む。証明書が上述した条件のうちのいずれか１つでも満たさないことが検証された場合、証明書は無効の証明書とみなされ、通信が中断される。
【００８０】
＜ステップ２０４ａ＞当該アプリケーション・インターフェースは、後続する通信において使用される対称な暗号化処理用のセッション・キーをランダムに生成し、サーバーの公開鍵を使用することにより、それを暗号化し、続いて、暗号化されたセッション・キーを当該サーバーへと送信する。
【００８１】
特に、サーバーによって送信された証明書が有効な証明書であることを検証した後に、当該アプリケーション・インターフェースは、対称な暗号化処理用のセッション・キーを生成し、証明書を使用することにより獲得したサーバーの公開鍵を使用して、当該セッション・キーを暗号化し、当該暗号化されたセッション・キーを当該サーバーへと送信し、その結果として、当該サーバーは当該セッション・キーを獲得することが可能となる。
【００８２】
＜ステップ２０５ａ＞サーバーはセッション・キーを受信し、自身の専用の秘密鍵を使用することにより、それを暗号化解除し、次に、当該サーバーは、現在のセッションに関するキーを取得する。
【００８３】
特に、暗号化されたセッション・キーを受信した後に、当該サーバーは、現在のセッションに関するキーを獲得するために、当該サーバーの秘密鍵を使用して、それを暗号化解除し、その後、引き続き送信される後続のデータを、当該キーを使用して暗号化する。このようにして、通信の両当事者は、セキュリティ的に安全である対称な接続を確立するための同一のセッション・キーを使用することができる。
【００８４】
図３に示すように、ＳＳＬ接続が２方向の認証方法に従って、アプリケーション・インターフェースとサーバーとの間において確立される場合には、本発明に係る特定の実行手順は、以下のステップを具備する。
【００８５】
＜ステップ２０１ｂ＞当該アプリケーション・インターフェースは、サーバへＳＳＬ接続を確立するための要求を送信する。
【００８６】
ＳＳＬプロトコルのバージョン番号を表す情報、暗号化アルゴリズムの種別およびアプリケーション・インターフェースとサーバーとの間における通信のために必要とされるその他の情報は、ＳＳＬ接続を確立するための要求によって伝送される。
【００８７】
＜ステップ２０２ｂ＞当該サーバーは、当該アプリケーション・インターフェースに対して当該サーバーの証明書を返信する。
【００８８】
当該サーバーの証明書はサーバ証明書のシグネチャおよび公開鍵を含んでいる。
【００８９】
＜ステップ２０３ｂ＞当該アプリケーション・インターフェースは、サーバーの証明書が有効な証明書であるか否かを、当該サーバーから返信された証明書によって検証する。
【００９０】
特に、サーバーから返信された証明書を受信した後に、当該アプリケーション・インターフェースは、証明書が期限切れになっているか否か、証明書は信頼されたＣＡセンター（公的認証機関）によって発行されているか否か、  証明書の中に含まれている公開鍵は、サーバー証明書の「発行人のデジタル署名」を正確に暗号化解除することができるか否か、または証明書上のドメイン名は、サーバーの実際のドメイン名と一致するか否か、などを検証する必要がある。証明書が上述した条件を全て満たすことが検証された場合、証明書は有効な証明書とみなされ、本発明に係る実行手順は、ステップ２０４ｂに進む。  証明書が上述した条件のうちのいずれか１つでも満たさないことが検証された場合、証明書は無効の証明書とみなされ、通信が中断される。
【００９１】
＜ステップ２０４ｂ＞当該アプリケーション・インターフェースは、後続する通信において使用される対称な暗号化処理用のセッション・キーをランダムに生成し、サーバーの公開鍵を使用することにより、それを暗号化し、続いて、暗号化されたセッション・キーと当該アプリケーション・インターフェースの証明書を当該サーバーに対して送信する。
【００９２】
当該アプリケーション・インターフェースの証明書は、アプリケーション・インターフェース証明書のシグネチャおよび公開鍵を含んでいる。
【００９３】
＜ステップ２０５ｂ＞サーバはセッション・キーを受信し、自身の専用の秘密鍵を使用することにより、それを暗号化解除し、当該アプリケーション・インターフェースの証明書が有効な証明書であるか否かを検証する。
【００９４】
特に、アプリケーション・インターフェースの証明書は有効な証明書であるか否かをサーバーによって検証するために、サーバーの証明書が有効な証明書であるか否かについての検証の結果を、当該アプリケーション・インターフェースが参照することが可能であり、その詳細は、本明細書中の以下の記述において繰り返し説明されない。
【００９５】
＜ステップ２０６ｂ＞当該サーバーは当該アプリケーション・インターフェースの公開鍵を使用することにより、暗号化解除されたセッション・キーを暗号化し、続いて、当該アプリケーション・インターフェースの公開鍵を使用して暗号化されたセッション・キーを、当該アプリケーション・インターフェースへと送信する。
【００９６】
特に、パージング処理によってセッション・キーを取得した後に、当該サーバーは当該アプリケーション・インターフェースの公開鍵を使用することにより得られたセッション・キーを暗号化処理し、このとき、当該公開鍵は、当該アプリケーション・インターフェースの証明書を使用することにより獲得され、当該アプリケーション・インターフェースの公開鍵を使用して暗号化されたセッション・キーを、当該アプリケーション・インターフェースへと送信し、当該アプリケーション・インターフェースは、当該セッション・キーが有効であるか否かをチェックすることが可能となる。
【００９７】
＜ステップ２０７ｂ＞当該アプリケーション・インターフェースは、セッション・キーを受信し、自身の専用の秘密鍵を使用することにより、それを暗号化解除し、セッション・キーの有効性をチェックする。
【００９８】
特に、サーバーから送信された暗号化済みのセッション・キーを受け取った後に、アプリケーション・インターフェースは、暗号化解除されたセッション・キーを獲得するために、その秘密鍵を使用して、当該暗号化済みのセッション・キーを暗号化解除し、当該暗号化解除されたセッション・キーがサーバーに送信されたセッション・キーと一致しているか否かをチェックする。それら２つのキーが一致している場合、セッション・キーは有効であるとみなされ、この場合、通信の両当事者は認証され、この同一のセッション・キーを使用することにより、セキュリティ接続を確立することができる。それら２つのキーが一致しない場合、それはセッション・キーが修正されたことを意味し、サーバーとの接続が中断される。
【００９９】
ＴＬＳ（トランスポート・レイヤー・セキュリティ）接続のようなさらに別の種類のセキュリティ接続が、アプリケーション・インターフェースとサーバーとの間において確立されることもまた可能であるが、本発明の実施態様はそれだけに限定はされないことに留意されたい。
【０１００】
アプリケーション・インターフェースとサーバーとの間におけるセキュリティ接続がさらに別の種類のセキュリティ接続である場合、その具体的な接続確立方法は上述した方法とは異なるものとなることに留意されたいが、本明細書中において、その具体的内容はやはり記述されない。
【０１０１】
バーチャル・マシン・マネージャーが入力データを獲得し、入力データ上で暗号化処理を実行するプロセスは、エージェント等のようなバーチャル・マシン・マネージャーのモジュールによって実装されるても良く、さらに、バーチャル・マシン・マネージャーのその他の構成部分によって実装されても良いが、本発明の実施態様はそれだけに限定はされないことに留意されたい。
【０１０２】
バーチャル・マシン・マネージャーがソフトウェア層であり、バーチャル・マシン・マネージャーだけでなくバーチャル・マシン・マネージャーを実行する全ての物理的なデバイスもまた本発明の権利保護範囲に含まれ得ることに留意されたい。すなわち、バーチャル・マシン・マネージャーを使用してデータを暗号化するために上述した方法を採用する全ての装置は、本発明の権利保護範囲の中に含まれるものとされる。
【０１０３】
本発明に係る実施例はデータを入力するための方法と装置を開示する。  入力データを獲得した後に、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行し、当該暗号化されたデータをサーバに対して送信する。このようにして、暗号化されたデータを獲得するために、ユーザにより入力されたデータに対して、バーチャル・マシン・マネージャー上で暗号化処理を実行することができ、  続いて、暗号化されたデータは、当該サーバへと送信される。以上より、オペレーティング・システムは、ユーザによるデータ入力内容を暗号化処理する過程に関与する必要が無いことが理解されよう。すなわち、データの暗号化処理はオペレーティング・システムから見て透明な形で実行される。このようにして、オペレーティング・システムが攻撃されても、ユーザによる正確なデータ入力内容をセキュリティ攻撃者が獲得することはできないので、入力情報のセキュリティ保護レベルおよび信頼性を向上させるすることが可能となる。
【０１０４】
本発明に係る実施例は、データを入力するための方法として、図４に示す方法を開示し、当該方法は以下のステップを含む：
＜ステップ３０１＞アプリケーション・インターフェースは、ユーザによって送信された制御命令を受信する。
【０１０５】
特に、セキュリティー的に安全な入力操作を実行可能にするべきであるか否かを決定した後に、ユーザはアプリケーション・インターフェースに対して制御命令を送信することが可能である。アプリケーション・インターフェースは、上述した制御命令に従って対応する処理を実行することが可能となる。セキュリティ的に安全な入力操作の実行を無効すべき旨を上述した制御命令が指示している場合には、当該アプリケーション・インターフェースは、当該バーチャル・マシン・マネージャーに対して、セキュリティー的に安全な入力操作を実行する必要が無い旨を通知し、その結果として、バーチャル・マシン・マネージャーは、暗号化処理を実行する必要がなくなり、従来技術において実行される処理動作と同様にして、受信した入力データのための処理を実行することが可能となる。
【０１０６】
当該アプリケーション・インターフェースは、ユーザがそのためにセキュリティー的に安全な入力操作を可能にする必要が生じたアプリケーションのためのプラグ・インとすることが可能であり、そのための一種のソフトウェア・インタフェースとなることに留意されたい。
【０１０７】
＜ステップ３０２＞セキュリティ的に安全な入力操作の実行を有効化すべき旨を上述した制御命令が指示する場合には、当該アプリケーション・インターフェースは、トリガー命令をバーチャル・マシン・マネージャーに対して送信する。バーチャル・マシン・マネージャーは当該トリガー命令を受信する。
【０１０８】
上述したトリガー命令は、データの暗号化処理を可能にするバーチャル・マシン・マネージャーを起動するために使用される命令である。
【０１０９】
特に、セキュリティ的に安全な入力操作の実行を有効化すべき旨を上述した制御命令が指示する場合には、当該アプリケーション・インターフェースは、バーチャル・マシン・マネージャーに対して、セキュリティ的に安全な入力処理を実行する必要がある旨を通知し、その結果として、当該アプリケーション・インターフェースは、バーチャル・マシン・マネージャーに対して当該トリガー命令を送信することにより、安全な入力処理をバーチャル・マシン・マネージャーに実行させるための契機とすることが可能となる。当該トリガー命令を受けた後に、当該バーチャル・マシン・マネージャは、ユーザによって引き続いて入力された後続のデータであって、対応するセキュリティ処理を実行する必要があるデータを獲得する。
【０１１０】
当該アプリケーション・インターフェースは、さらに別の方法に従ってセキュリティー的に安全な入力処理を実行するために、バーチャル・マシン・マネージャーを起動することもまた可能であるは、本発明の実施態様はそれだけに限定はされないことに留意されたい。
【０１１１】
＜ステップ３０３＞当該アプリケーション・インターフェースは、サーバーとのセキュリティ接続を確立する。
【０１１２】
特に、当該アプリケーション・インターフェースとサーバーの間におけるセキュリティ接続の確立のために、当該アプリケーション・インターフェースとサーバーの間におけるセキュリティ接続を確立するための具体的な方法として、ステップ１０３に関して上述した方法が参照され、その詳細内容は、本明細書中のここでの説明において再度記述されない。
【０１１３】
＜ステップ３０４＞バーチャル・マシン・マネージャーは入力データを獲得する。
【０１１４】
ステップ３０４における動作の詳細に関しては、ステップ１０１における動作が参照され、その詳細内容はここでは再度説明しない。
【０１１５】
＜ステップ３０５＞バーチャル・マシン・マネージャーは偽造された入力データを生成し、当該偽造された入力データをオペレーティング・システムに対して送信する。
【０１１６】
特に、ユーザによるデータ入力内容を捕捉した後に、アプリケーション・プログラムに関して正常な画面表示がされることを保証するために、バーチャル・マシン・マネージャーは偽造された入力データを生成し、当該偽造された入力データをオペレーティング・システムに対して送信し、その結果として、当該アプリケーション・プログラムを使用することにより、オペレーティング・システムは、当該偽造された入力データを画面表示することが可能となる。
【０１１７】
例えば、ユーザにより入力されたデータを捕捉した後に、アプリケーション・プログラムに関して正常な画面表示がされることを保証するために、バーチャル・マシン・マネージャーは偽造された入力データ「*」を生成し、当該偽造された入力データ「*」をオペレーティング・システムに対して送信し、その結果として、当該アプリケーション・プログラムを使用することにより、オペレーティング・システムは、当該偽造された入力データ「*」を画面表示することが可能となる。
【０１１８】
＜ステップ３０６＞当該アプリケーション・インターフェースは、ユーザから送信されたサブミッション命令を受信し、当該サブミッション命令をバーチャル・マシン・マネージャーへと送信する。バーチャル・マシン・マネージャーは当該サブミッション命令を受信する。
【０１１９】
当該サブミッション命令はデータ入力を終えるようにユーザに指示するために使用される命令である。
【０１２０】
特に、データを入力した後に、ユーザは、当該サブミッション命令を当該アプリケーション・インターフェースへと送信し、当該アプリケーション・インターフェースは、当該サブミッション命令を当該バーチャル・マシン・マネージャーへと送信する。当該サブミッション命令を受信した後に、当該バーチャル・マシン・マネージャーは、ユーザによって入力されたデータであって、セキュリティ処理を必要とするデータを獲得する。その結果、バーチャル・マシン・マネージャーは、入力データを獲得する動作を完了し、次の処理動作を実行することができる。
【０１２１】
＜ステップ３０７＞暗号化されたデータを得るために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行する。
【０１２２】
バーチャル・マシン・マネージャーがステップ３０２においてトリガー命令を受信した後に、このステップにおいて、トリガー命令に応じる形で、暗号化されたデータを得るために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行する必要がある。
【０１２３】
特に、サブミッション命令を受信した後に、暗号化されたデータを得るために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行する。暗号化されたデータを得るために、セキュリティ接続についての暗号化ルールに従って、バーチャル・マシン・マネージャーが入力データの上で暗号化処理を実行するために、ステップ１０２に関して上述した処理動作を参照して実行することが可能であり、その詳細内容は、本明細書中のここでの説明においては再度記述されない。
【０１２４】
＜ステップ３０８＞バーチャル・マシン・マネージャーは、暗号化されたデータをサーバーへと送信する。
【０１２５】
具体的には、バーチャル・マシン・マネージャーは、暗号化されたデータをアプリケーション・インターフェースへと送信し、当該アプリケーション・インターフェースは暗号化されたデータをサーバーへと送信することが可能である。この動作の詳細については、ステップ１０３を参照することが可能であり、その詳細はここでは繰り返し説明しない。
【０１２６】
本発明においては、ステップ３０３が実行される前に、、ステップ３０３が実行された後に、またはステップ３０３が実行されるのと同時に、ステップ３０４〜３０６を実行することが可能である。本発明に係るこの実施例においては、ステップ３０３およびステップ３０４〜３０６の実行順序は限定されていない。１つの例示的な状況だけが図において説明されている。
【０１２７】
本発明に係るこの実施例は、データを入力する方法を開示する。入力データを獲得した後に、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行し、当該暗号化されたデータをサーバに対して送信する。このようにして、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャー上でユーザにより入力されたデータのために暗号化処理を実行することができ、  続いて、暗号化されたデータは、当該サーバへと送信される。以上より、オペレーティング・システムは、ユーザによるデータ入力内容を暗号化処理する過程に関与する必要が無いことが理解されよう。すなわち、データの暗号化処理はオペレーティング・システムから見て透明な形で実行される。このようにして、オペレーティング・システムが攻撃されても、ユーザによる正確なデータ入力内容をセキュリティ攻撃者が獲得することはできないので、入力情報のセキュリティ保護レベルおよび信頼性を向上させるすることが可能となる。
【０１２８】
図５は、本発明に係る実施例に従うバーチャル・マシン・マネージャーの概略的な機能ブロック図である。図５に示すように、バーチャル・マシン・マネージャーは獲得ユニット４０１、処理ユニット４０２および送受信機ユニット４０３を含んでいる。
【０１２９】
獲得ユニット４０１は入力データを獲得するように構成される。
【０１３０】
この場合、獲得ユニット４０１は仮想入力装置を使用することにより、入力データを獲得するように特に構成されている。
【０１３１】
仮想入力装置は物理的な入力装置と同一の機能を実装する。当該仮想入力装置は、ユーザによってタップ操作された位置に従って、ユーザによって入力されたデータを決定するように構成されている。
【０１３２】
さらに、仮想入力装置は第１の通常ゾーンおよび第１のセキュリティー・ゾーンを含んでおり、第１の通常ゾーンは暗号化処理を必要としない第２の入力データを獲得するために使用され、第１のセキュリティー・ゾーンはセキュリティ処理を必要とする第１の入力データを獲得するために使用される。
【０１３３】
獲得ユニット４０１は、第１のセキュリティー・ゾーンを介して第１の入力データを獲得し、第１の通常ゾーンを介して第２の入力データを獲得するように特に構成されている。
【０１３４】
任意付加的に、仮想入力装置は仮想キーボードを含んでいる。
【０１３５】
あるいは、獲得ユニット４０１は、物理的な入力装置を制御し、かつ当該物理的な入力装置を使用することにより入力データを獲得するように特に構成されている。
【０１３６】
入力データは入力バッファ中においてバッファリングされる。
【０１３７】
さらに、物理的な入力装置は第２のセキュリティー・ゾーンおよび第２の通常ゾーンを含んでおり、第２の通常ゾーンはセキュリティ処理を必要としない第４の入力データを獲得するために使用され、第２のセキュリティー・ゾーンはセキュリティ処理を必要とする第３の入力データを獲得するために使用される。
【０１３８】
獲得ユニット４０１は、第２のセキュリティー・ゾーンを介して第３の入力データを獲得し、第２の通常ゾーンを介して第４の入力データを獲得するように特に構成されている。
【０１３９】
任意付加的に、物理的な入力装置は、物理的なキーボードを含んでいる。
【０１４０】
暗号化されたデータを得るために、処理ユニット４０２は、獲得ユニット４０１により獲得した入力データの上で、セキュリティ接続についての暗号化ルールに従って、暗号化処理を実行するように構成されている。
【０１４１】
当該セキュリティ接続は、アプリケーション・インターフェースとサーバとの間において確立され、データ伝送に使用される接続を指して言う。
【０１４２】
任意付加的に、セキュリティ接続はＳＳＬ（セキュアー・ソケット・レイヤー）接続を含んでいる。
【０１４３】
暗号化されたデータを得るために、処理ユニット４０２は、上述したＳＳＬ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するように特に構成されている。
【０１４４】
具体的には、獲得ユニット４０１が第１の入力データを獲得する場合には、暗号化されたデータを得るために、処理ユニット４０２は、セキュリティ接続についての暗号化ルールに従って、獲得ユニット４０１により獲得した第１の入力データの上で暗号化処理を実行するように特に構成されている。
【０１４５】
あるいは、獲得ユニット４０１が第３の入力データを獲得する場合には、暗号化されたデータを得るために、処理ユニット４０２は、セキュリティ接続についての暗号化ルールに従って、獲得ユニット４０１により獲得した第３の入力データの上で暗号化処理を実行するように特に構成されている。
【０１４６】
さらに、獲得ユニット４０１が、物理的な入力装置を制御し、かつ当該物理的な入力装置を使用することにより入力データを獲得するように特に構成されている場合には、処理ユニット４０２は、入力バッファの内容をクリアするようにさらに構成されます。
【０１４７】
送受信機ユニット４０３は、暗号化されたデータをサーバーへと送信するように構成されている。
【０１４８】
具体的には、送受信機ユニット４０３は、アプリケーション・インターフェースを使用することにより、セキュリティ接続の上で暗号化されたデータをサーバーへと送信するように特に構成されている。
【０１４９】
さらに、図６に示されるように、獲得ユニット４０１が仮想入力装置を使用することにより入力データを獲得した場合には、バーチャル・マシン・マネージャーは生成ユニット４０４をさらに含んでいる。生成ユニット４０４は、オペレーティング・システムによって提供される仮想入力装置用のインターフェースを使用して、仮想入力装置を生成するように特に構成されている。
【０１５０】
さらに、処理装置402は、偽造された入力データを生成し、かつ当該偽造された入力データをオペレーティング・システムに対して送信するようにさらに構成されている。
【０１５１】
送受信機ユニット４０３はサブミッション命令を受信するように構成されている。
【０１５２】
当該サブミッション命令は、データ入力を終えるようにユーザに指示するために使用される命令である。
【０１５３】
送受信機ユニット４０３が当該サブミッション命令を受信した後に、暗号化されたデータを得るために、処理ユニット４０２は、セキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するように特に構成されている。
【０１５４】
さらに、送受信機ユニット４０３は、トリガー命令を受信するようにさらに構成されている。
【０１５５】
当該トリガー命令は、データの暗号化処理を可能にするバーチャル・マシン・マネージャーを起動するために使用される命令である。
【０１５６】
この場合、処理ユニット４０２は、送受信機ユニット４０３によって受信したトリガー命令に応答する形で、暗号化されたデータを得るために、セキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するように特に構成されている。
【０１５７】
本発明に係るこの実施例はバーチャル・マシン・マネージャーを開示する。入力データを獲得した後に、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行し、当該暗号化されたデータをサーバに対して送信する。このようにして、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャー上でユーザにより入力されたデータのために暗号化処理を実行することができ、続いて、暗号化されたデータは、当該サーバへと送信される。以上より、オペレーティング・システムは、ユーザによるデータ入力内容を暗号化処理する過程に関与する必要が無いことが理解されよう。すなわち、データの暗号化処理はオペレーティング・システムから見て透明な形で実行される。このようにして、オペレーティング・システムが攻撃されても、ユーザによる正確なデータ入力内容をセキュリティ攻撃者が獲得することはできないので、入力情報のセキュリティ保護レベルおよび信頼性を向上させるすることが可能となる。
【０１５８】
本発明に係る実施例に従うバーチャル・マシン・マネージャーの概略的な内部構造図を図７に示す。図７に示されるように、バーチャル・マシン・マネージャーは送信機６０１、メモリ６０２および受信機６０３に加え、送信機６０１、受信機６０３およびメモリ６０２に接続されたプロセッサー６０４を含んでいる。
【０１５９】
メモリ６０２は、一群のプログラム・コードを格納し、プロセッサー６０４は、メモリ６０２中のプログラム・コードを起動するように構成されている。
具体的には、プロセッサー６０４は入力データを獲得するように構成されている。
【０１６０】
具体的には、プロセッサー６０４は、仮想入力装置を使用することにより、入力データを獲得するように特に構成されている。
【０１６１】
仮想入力装置は物理的な入力装置と同一の機能を実装する。
仮想入力装置は、ユーザによってタップ操作がされた位置に従って、ユーザにより入力されたデータを決定するように構成されている。
【０１６２】
さらに、仮想入力装置は第１の通常ゾーンおよび第１のセキュリティー・ゾーンを含んでおり、第１の通常ゾーンが暗号化処理を必要としない第２の入力データを獲得するために使用され、第１のセキュリティー・ゾーンがセキュリティ処理を必要とする第１の入力データを獲得するために使用される。
【０１６３】
プロセッサー６０４は、第１のセキュリティー・ゾーンを介して第１の入力データを獲得し、かつ第１の通常ゾーンを介して第２の入力データを獲得するように特に構成されている。
【０１６４】
任意付加的に、仮想入力装置は仮想キーボードを含んでいる。
【０１６５】
さらに、プロセッサー６０４は、オペレーティング・システムによって提供される仮想入力装置用のインターフェースを使用することにより、仮想入力装置を生成するようにさらに構成されている。
【０１６６】
あるいは、プロセッサー６０４は、物理的な入力装置を制御し、かつ当該物理的な入力装置を使用することにより、入力データを獲得するように特に構成されている。
【０１６７】
入力データは入力バッファ中においてバッファリングされる。
【０１６８】
さらに、物理的な入力装置は、第２のセキュリティー・ゾーンおよび第２の通常ゾーンを含んでおり、第２の通常ゾーンはセキュリティ処理を必要としない第４の入力データを獲得するために使用され、また、第２のセキュリティー・ゾーンはセキュリティ処理を必要とする第３の入力データを獲得するために使用される。
【０１６９】
プロセッサー６０４は、第２のセキュリティー・ゾーンを介して第３の入力データを獲得し、かつ第２の通常ゾーンを介して第４の入力データを獲得するように特に構成されている。
【０１７０】
任意付加的に、物理的な入力装置は物理的なキーボードを含んでいる。
【０１７１】
暗号化されたデータを得るために、プロセッサー６０４は、セキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するようにさらに構成されている。
【０１７２】
セキュリティ接続とは、アプリケーション・インターフェースとサーバとの間において確立され、データ伝送に使用される接続を指して言う。
【０１７３】
任意付加的に、セキュリティ接続はＳＳＬ（セキュアー・ソケット・レイヤー）接続を含んでいる。
【０１７４】
暗号化されたデータを得るために、プロセッサー６０４は、ＳＳＬ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するように特に構成されている。
【０１７５】
具体的には、第１の入力データが獲得されたという場合には、暗号化されたデータを得るために、プロセッサー６０４は、セキュリティ接続についての暗号化ルールに従って、上記のとおりに獲得した第１の入力データの上で暗号化処理を実行するように特に構成されている。
あるいは、第３の入力データが獲得されたという場合には、暗号化されたデータを得るために、プロセッサー６０４は、セキュリティ接続についての暗号化ルールに従って、上記のとおりに獲得した第３の入力データの上で暗号化処理を実行するように特に構成されている。
【０１７６】
さらに、プロセッサー６０４が物理的な入力装置を制御し、かつ当該物理的な入力装置を使用して入力データを獲得するように特に構成されている場合には、プロセッサー６０４は、入力バッファの内容をクリアするようにさらに構成されている。
【０１７７】
送信機６０１は、暗号化されたデータをサーバーへと送信するように構成されている。
【０１７８】
具体的には、送信機６０１は、アプリケーション・インターフェースを使用することにより、セキュリティ接続上で、暗号化されたデータをサーバへと送信するように特に構成されている。
【０１７９】
さらに、プロセッサー６０４は、偽造された入力データを生成するようにさらに構成されている。
【０１８０】
送信機６０１は、プロセッサー６０４によって生成された当該偽造された入力データを、オペレーティング・システムに対して送信するようにさらに構成されている。
【０１８１】
受信機６０３は、サブミッション命令を受信するように構成されている。
【０１８２】
当該サブミッション命令は、データ入力を終えるようにユーザに指示するために使用される命令である。
【０１８３】
受信機６０３が当該サブミッション命令を受信した後に、暗号化されたデータを得るために、プロセッサー６０４は、セキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するように特に構成されている。
【０１８４】
さらに、受信機６０３は、トリガー命令を受信するようにさらに構成されている。
【０１８５】
当該トリガー命令は、データの暗号化処理を可能にするバーチャル・マシン・マネージャーを起動するために使用される命令である。
【０１８６】
プロセッサー６０４は、受信機６０３によって受信されたトリガー命令に応答する形で、セキュリティ接続についての暗号化ルールに従って、入力データの上で暗号化処理を実行するように特に構成されている。
【０１８７】
本発明に係るこの実施例はバーチャル・マシン・マネージャーを開示する。入力データを獲得した後に、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行し、当該暗号化されたデータをサーバーに対して送信する。このようにして、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャー上でユーザにより入力されたデータのために暗号化処理を実行することができ、続いて、暗号化されたデータは、当該サーバーへと送信される。以上より、オペレーティング・システムは、ユーザによるデータ入力内容を暗号化処理する過程に関与する必要が無いことが理解されよう。すなわち、データの暗号化処理はオペレーティング・システムから見て透明な形で実行される。このようにして、オペレーティング・システムが攻撃されても、ユーザによる正確なデータ入力内容をセキュリティ攻撃者が獲得することはできないので、入力情報のセキュリティ保護レベルおよび信頼性を向上させるすることが可能となる。
【０１８８】
本発明に係る実施例は、図８に示す物理的なホストを開示し、当該物理的なホストは、ハードウェア層８０１、ハードウェア層８０１の上で実行されるＶＭＭ（仮想コンピューター・モニタ／マネージャー、バーチャル・マシン・マネージャー）８０２、およびＶＭＭ８０２の上で実行される少なくとも１個のバーチャル・マシン８０３を含んでいる。
【０１８９】
ＶＭＭ８０２は、本明細書中の上述した実施例において述べられていたバーチャル・マシン・マネージャーに相当する。
【０１９０】
本発明に係る実施例は、データを入力するための方法と装置とを開示する。入力データを獲得した後に、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャーは、セキュリティ接続についての暗号化ルールに従って、入力データ上で暗号化処理を実行し、当該暗号化されたデータをサーバーに対して送信する。このようにして、暗号化されたデータを獲得するために、バーチャル・マシン・マネージャー上でユーザにより入力されたデータのために暗号化処理を実行することができ、続いて、暗号化されたデータは、当該サーバーへと送信される。以上より、オペレーティング・システムは、ユーザによるデータ入力内容を暗号化処理する過程に関与する必要が無いことが理解されよう。すなわち、データの暗号化処理はオペレーティング・システムから見て透明な形で実行される。このようにして、オペレーティング・システムが攻撃されても、ユーザによる正確なデータ入力内容をセキュリティ攻撃者が獲得することはできないので、入力情報のセキュリティ保護レベルおよび信頼性を向上させるすることが可能となる。
【０１９１】
本発明に係る実施例が開示する技術的解決法は、本質的に又は部分的に従来技術に対する貢献を明示するものであり、当該技術的解決法は、コンピュータ・ソフトウェア製品として具現化することが可能である。そのようなコンピューター・ソフトウェア製品は、記憶媒体中に格納され、（パソコン、サーバ、ネットワーク装置などとすることが可能である）コンピューター装置に指示を与えるための幾つかの命令コードを含んでおり、当該コンピュータ装置は、本発明を実施するために本明細書中で記述された実施例の各々において述べられていた方法を構成する処理ステップの全て又は一部を実行するプロセッサを含んでいる。当該記憶媒体は、ＵＳＢフラッシュドライブ、着脱可能なハードディスク、読み出し専用メモリ（ＲＯＭ）、ランダム・アクセス・メモリー（ＲＡＭ）、磁気ディスクおよび光ディスクなどのように、プログラム・コードを格納することができる様々なメディアを含んでいる。
【０１９２】
本明細書中の上記説明は本発明について単に特定の実施例を例示しているだけであり、本発明の権利保護範囲を制限するようには意図されていない。本発明が開示する技術範囲内において当業者が容易に案出することが出来る任意の変形実施例や置換実施例は、本発明の権利保護範囲内にあるものとされる。したがって、本発明の権利保護範囲は本明細書に添付された特許請求の範囲の記載に従って解釈されるべきである。
【図１】
2014235753.tif 000003
【図２】
2014235753.tif 000004
【図３】
2014235753.tif 000005
【図４】
2014235753.tif 000006
【図５】
2014235753.tif 000007
【図６】
2014235753.tif 000008
【図７】
2014235753.tif 000009
【図８】
2014235753.tif 000010