(57)【要約】【課題】本発明は、分散環境の安全通信認証方法及びシステムに関する。【解決手段】本発明の方法及びシステムを用いることによって、ＴＣＧリモート認証のプラットフォーム識別認証の態様における不利益を軽減し、プラットフォーム識別認証の方法を拡張し、三つの技術、すなわち、ゼロ知識証明、Ｋｅｒｂｅｒｏｓフレームワーク及び仮想ＴＰＭを組み合わせることによって、プラットフォーム情報の公表の回避、信頼できる第三者機関の障害の回避及び複雑さの回避のような現存する方法の態様の向上を行うことを主に意図した新たな認証方法を設計する。本発明の方法及びシステムを用いることによって、プライバシー露出の問題及び既存の分散システムのリモートサーバ間の相互の検証の効率の問題に対処することができる。【選択図】図３
2016519540.tif 000002
【特許請求の範囲】
【請求項１】
分散環境の安全通信認証方法であって、ユーザは、ゼロ知識証明法を用いて識別認証を実行し、
（１）ユーザによって、識別認証要求ＫＲＢ＿ＡＳ＿ＲＥＱを、Ｋｅｒｂｅｒｏｓサーバの中の認証サーバ（ＡＳ）に送信し、要求を受信した後、ＡＳによってユーザ識別子を検証するステップと、
（２）ユーザ識別認証をパスした後、ＡＳによって、前記ユーザ識別子に一致するチケット及び認証コードをユーザに送信し、前記チケットは、前記Ｋｅｒｂｅｒｏｓサーバ及びゼロ知識証明の組合せによって生成したＡＩＫ証明書を備えるステップと、
（３）前記ユーザが、リモート認証サーバを用いてリモート認証を行うことを必要とするとき、アプリケーションサーバとの通信を行うためのチケットを取得するために、前記チケット及び前記認証コードを用いることによって、チケット交付サーバ（ＴＧＳ）によるセッションをユーザによって実行するステップと、
（４）前記リモート認証サーバによる前記リモート認証を前記ユーザによって完了するステップと、
を備える分散環境の安全通信認証方法。
【請求項２】
ステップ（２）において、前記Ｋｅｒｂｅｒｏｓサーバ及びゼロ知識証明の組合せによってＡＩＫ証明書を生成する方法は、
１）前記識別認証要求ＫＲＢ＿ＡＳ＿ＲＥＱを前記ユーザによってカプセル化するステップと、
２）前記Ｋｅｒｂｅｒｏｓサーバの中の前記ＡＳがＫＲＢ＿ＡＳ＿ＲＥＱメッセージを受信した後及びＴＧＳのチケットを発行する前に、ＡＳによってユーザの識別子を認証し、信頼できるプラットフォームによって、信頼できるサードパーティによるゼロ知識プロトコル認証を行うステップと、
３）ＡＳからメッセージを受信した後、ユーザによって、ＫＲＢ＿ＴＧＳ＿ＲＥＱメッセージをＴＧＳに送信するステップと、
４）前記ＫＲＢ＿ＴＧＳ＿ＲＥＱメッセージの正当性の認証を成功した後に、前記ＫＲＢ＿ＴＧＳ＿ＲＥＰメッセージのアセンブルを前記ＴＧＳによって開始するステップと、
を備える請求項１に記載の分散環境の安全通信認証方法。
【請求項３】
ステップ１）において、前記識別認証要求ＫＲＢ＿ＡＳ＿ＲＥＱを前記ユーザによってカプセル化する際に、所定のブロックを以下のメッセージＥ（ＰＵＡＳ，ＫＣ，ＡＳ）||ｐｋ||ｖｋに置換し、ＫＣ，ＡＳをユーザによって生成し、ＡＳのセッション鍵を、ＡＳの公開鍵ＰＵＡＳを用いて暗号化し、メッセージは、
【数１】
2016519540.tif 000012
のフォーマットを有し、ｐｋ＝Ｅ（ＡＩＫｐｕｂ，ＫＥｐｕｂ）であり、ｅ１，ｅ２，．．．，ｅｋは、
【数２】
2016519540.tif 000013
の入力を用いてシステムによって選択したハッシュ関数の出力である請求項２に記載の分散環境の安全通信認証方法。
【請求項４】
ステップ２）において、ＡＳによってユーザの識別子を認証する方法は、１番目に、ｅ１，ｅ２，．．．，ｅｋを、前記ユーザと同一のアルゴリズムを用いて生成することと、２番目に、ＡＳによって、前記ユーザの識別子ｖ１，ｖ２，．．．，ｖｋの対応する検証情報をそれ自体のデータベースから取り出すことと、３番目に、ＡＳによって、送信されたＫＲＢ＿ＴＧＳ＿ＲＥＱメッセージが、以下の式
【数３】
2016519540.tif 000014
に一致するか否かを確認することと、
を備え、ユーザ識別認証をパスした後、前記信頼できるプラットフォームは、ｚｋ＝Ｅ（ＡＩＫｐｕｂ，ω）を用いることによって前記証明書を表し、ωは、承認証明書、プラットフォーム証明書、確認証明書及び検証証明書の集合を表し、前記承認証明書は、承認公開鍵を含まない請求項２に記載の分散環境の安全通信認証方法。
【請求項５】
ステップ３）において、前記ユーザは、認証コードＡｕｔｈｅｎｔｉｃａｔｏｒｃも送信し、このメッセージは、ユーザの識別子ＩＤ、ネットワークアドレス及びタイムスタンプを含み、ＴＧＳのセッション鍵を用いて暗号化され、前記セッション鍵は、ＡＳ情報交換の段階で取得されるＫｃ，ｔｇｓを表し、前記ＴＧＳのチケットの寿命と比較され、前記認証コードは、より短い寿命を有し、一度に限り使用できる請求項２，３又は４に記載の分散環境の安全通信認証方法。
【請求項６】
ステップ４）において、前記ＴＧＳによって前記ＫＲＢ＿ＴＧＳ＿ＲＥＱメッセージをアセンブルする方法は、
最初に、Ｋｅｒｂｅｒｏｓサーバによって、メッセージ及び受信したＴＧＳのチケットに基づいて、前記ユーザに送信されるアプリケーションサーバチケットの特性を決定するステップと、
次に、前記アプリケーションサーバに対するチケットを生成するために、ユーザパスワードデータベースから取り出した対応するアプリケーションサーバ鍵を用いて前記チケットを暗号化するステップと、
を備え、前記ＫＲＢ＿ＴＧＳ＿ＲＥＰメッセージの暗号文部分は、ＡＳメッセージ交換と同一のセッション鍵Ｋｃ，ｔｇｓを使用し、前記アプリケーションサーバのメッセージ交換で用いられるセッション鍵Ｋｃ，ｖは、ＴＧＳ情報交換の段階でも分散され、前記ユーザと前記アプリケーションサーバの両方が、対応するドメインから前記セッション鍵を取得することができ、
前記ＫＲＢ＿ＴＧＳ＿ＲＥＰメッセージは、次のフォーマット
【数４】
2016519540.tif 000015
を有し、
【数５】
2016519540.tif 000016
である請求項５に記載の分散環境の安全通信認証方法。
【請求項７】
分散環境の安全通信認証システムであって、
ＡＩＫ証明書認証を実行するために要求されるクライアントを表すユーザプラットフォームと、
認証サーバ（ＡＳ）及びチケット交付サーバ（ＴＧＳ）を有するＫｅｒｂｅｒｏｓサーバであって、前記認証サーバ（ＡＳ）は、前記ユーザプラットフォームによって提供される特性情報が安全弁内にあるか否かを確認し、ＴＧＳのチケット及びそれに関連するＡＩＫ証明書を署名して前記安全バルブ内にある前記ユーザプラットフォームに発行し、前記チケット交付サーバ（ＴＧＳ）は、前記ユーザプラットフォームによって保持されている前記ＴＧＳのチケットの有効期限が切れたか否かを確認し、合法なユーザプラットフォームに伝達アプリケーションサービスチケットを発行するＫｅｒｂｅｒｏｓサーバと、
アプリケーションサービスチケットを保持する前記ユーザプラットフォームと通信を行うときに前記ＡＩＫ証明書及び前記アプリケーションサービスチケットを確認し、これらが合法である場合には、前記ユーザプラットフォームとともにアプリケーションサービスを実行するリモート認証サーバと、
を備え、前記ユーザプラットフォーム、前記Ｋｅｒｂｅｒｏｓサーバ及び前記リモート認証サーバは、インターネットを介して互いに接続されている分散環境の安全通信認証システム。
【請求項８】
前記ユーザプラットフォームは、以下のモジュール：
配置されているユーザプラットフォームのシステム特性情報の計量値を記録するセキュリティチップＴＰＭ／ＴＣＭと、
認証プロセスに対して安全かつ信頼性のある実現プラットフォームを提供するＸＥＮバーチャルマシンと、
を有する請求項７に記載の分散環境の安全通信認証システム。
【請求項９】
前記セキュリティチップＴＰＭのＣＰＵにＩｎｔｅｌ−ＶＴ又はＡＭＤ−Ｖを設け、ＢＩＯＳは、ＴＧＣ仕様及び電力制御インタフェースをサポートし、同時に、オペレーティングシステムをロードするために、ＩＭＡ計量機能を有するリナックスシステムボートローダ（ＧＲＵＢ−ＩＭＡ）を必要とする請求項８に記載の分散環境の安全通信認証システム。
【請求項１０】
ＸＥＮバーチャルマシンは、三つのバーチャルドメインＤｏｍａｉｎ  ０，Ｄｏｍａｉｎ  Ｕ及びＨＶＭ−Ｄｏｍａｉｎを有し、前記ユーザプラットフォームに電源を投入した後、それ自体の信頼できる計量ルートを出発点として用いることによって、ＴＰＭは、先ず、ＢＩＯＳの他のコンポーネントのインテグリティを測定し、信頼できる暗号化モジュールのＰＣＲに計量値を格納し、選択した判断メカニズムに従って前記ＢＩＯＳのインテグリティを決定し、インテグリティが損なわれていない場合、前記ＢＩＯＳを実行し、ＩＰＬ／ＭＢＲのインテグリティを測定し、前記判断メカニズムに基づいて前記ＩＰＬ／ＭＢＲのインテグリティを決定し、前記ＩＰＬ／ＭＢＲのインテグリティが損なわれていない場合、ＭＢＲを実行し、その後、前記ＩＰＬ／ＭＢＲは、ＯＳカーネル計量及び負荷コンポーネントＧＲＵＢ−ＩＭＡのインテグリティを測定し、コンポーネントのインテグリティが損なわれていない場合、このコンポーネントは、ＯＳカーネルのインテグリティを測定し、それが改竄されていない場合、ＯＳカーネルを実行し、ブートを行った後、前記ＯＳカーネルは、Ｄｏｍａｉｎ  ０に入り、信頼できる関係をパスすることによって、同一のメカニズムに基づくＯＳサービスインテグリティを確認し、信頼されたルートが形成され、これによって、ブートされたシステムが信頼されることを保証する請求項７，８又は９に記載の分散環境の安全通信認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、コンピュータ情報セキュリティ技術分野に関し、特に、分散環境の安全通信認証方法及びシステムに関する。
【背景技術】
【０００２】
ビッグデータの時代の到来により、単一のサーバの処理速度及び機能は、情報処理に対する人々の時間ベースの要求に既に適合することができず、分散並列動作が必須となっている。しかしながら、未知のサーバから提供されるサービス及びリソースを用いるとともにそのセキュリティ状態を知らないとき、安全通信の相互接続を形成することができない。したがって、二つのサーバの間の通信の前に有効なセキュリティ認証を行うために安全かつ安定に実行する分散システムを保証することは非常に重要である。
【０００３】
既存のセキュリティプロトコルにおいて、セキュリティは、端末プラットフォームのオペレーティングシステムにとって重視すべき事項ではない。端末プラットフォームがオペレーティングシステムを起動及びロードするときに端末プラットフォームの要求に適合しているか否かは一般的には考慮されない。信頼できる端末プラットフォームが存在しない場合、信頼できるネットワーク及び信頼できるネットワーク接続に問い合わせることができない。
【０００４】
ＴＣＧ（Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｇｒｏｕｐ）は、この問題に対する技術サポートを提供するリモート認証プロセスにおける識別認証技術を提案している。ＴＣＧは、１９９９年にコンパック、ＨＰ，ＩＢＭ、インテル及びマイクロソフトによって発足したＴＣＰＡ（Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｐｌａｔｆｏｒｍ  Ａｌｌｉａｎｃｅ）である。ＴＣＧは、今日、１９０の会員数まで発展し、世界の全ての大陸の主要製造業者をカバーする。ＴＣＰＡは、コンピュータプラットフォームインフラからのセキュリティを向上させることに重点的に取り組み、２００１年１月に高信頼性コンピュータプラットフォーム標準仕様書をリリースしている。ＴＣＰＡは、２００３年３月にＴＣＧ（Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｇｒｏｕｐ）として再構成されている。その目的は、全システムのセキュリティを向上させるために計算及び通信システムにおいてハードウェアセキュリティモジュールサポートに基づく信頼できるコンピュータプラットフォームを広く用いることにある。
【０００５】
ＴＣＧ団体は、ＴＰＭ（Ｔｒｕｓｔｅｄ  Ｐｌａｔｆｏｒｍ  Ｍｏｄｕｌｅ）の規格をリリースしている。現在のところ、多数のセキュリティチップがこの規格に従っている。さらに、機密保持がハードウェアによって実現されるので、機密保持は、ＰＣ、特に、ポータブルＰＣの標準構成となりつつある。
【０００６】
ゼロ知識証明が、ゴールドワッサー等により１９８０年代に最初に提案されている。ゼロ知識証明は、検証者にあらゆる有用な情報を提供することなくある申立てが正しいと検証者に信じさせることを言及している。ゼロ知識証明は、必然的に二つ以上のパーティに関与するプロトコルであり、すなわち、タスクを完了するために、二つ以上のパーティによって一連の措置をとる必要がある。証明機関は、検証者に対する証明を行い、検証者が既に知っている又は所有しているあるメッセージを検証者に信じさせるが、認証プロセスは、認証されたメッセージについてのいかなる情報も検証者に漏らすことができない。多数の事実は、ゼロ知識証明が暗号作成法において非常に有用であることを証明している。ゼロ知識証明を検証に用いることができる場合、多数の問題を効率的な方法で解決することができる。
【０００７】
Ｋｅｒｂｅｒｏｓは、ネットワーク認証プロトコルである。その設計目標は、鍵システムを介してクライアント／サーバアプリケーションプログラムの強力な認証サービスを提供することである。認証プロセスは、ホストのアドレスに基づく信頼性を有することなく、ネットワーク上のホストの全ての物理的なセキュリティを必要とすることなく、ネットワーク上で送信されるデータパケットを任意に読み出し、変更し、かつ、データに挿入できると仮定すると、ホストオペレーションシステムの認証とは無関係に行われる。上述した場合には、Ｋｅｒｂｅｒｏｓは、信頼できる第三者機関の認証サービスとして用いられ、従来の暗号化技術（例えば、共有鍵）によって認証サービスを行う。特に、認証プロセスは、次のように行う。クライアントは、あるサーバの認証要求を認証サーバ（ＡＳ）に送り、その後、ＡＳは、クライアントの鍵を用いて、暗号化された証明書に応答する。証明書は、１）サーバ「チケット」と、２）（セッション鍵とも称される）一時的な暗号鍵とによって形成される。クライアントは、（サーバの鍵によって暗号化されたクライアントＩＤ及びセッション鍵を含む）チケットをサーバに送信する。（ここではクライアント及びサーバによって共有される）セッション鍵を、クライアント又はサーバを認証するために用いるだけでなく、通信パーティの間の後の通信のための暗号化サービスを提供するために又は独立したサブセッション鍵を交換することによって通信パーティに対する別の通信暗号化サービスを提供するために用いてもよい。
【０００８】
ここでの任意の従来技術の説明は、明示的又は暗示的であると理解すべきでない。ここでの内容は、周知であり、すなわち、出願日又はあらゆる主張の優先日の前の本分野の技術常識に属する。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来技術に存在する一つ以上の欠点に目を向けると、本発明の目的は、分散環境の安全通信認証方法及びシステムを提供することである。本発明の方法及びシステムを用いることによって、ＴＣＧリモート認証のプラットフォーム識別認証の態様における不利益を軽減し、プラットフォーム識別認証の方法を拡張し、三つの技術、すなわち、ゼロ知識証明、Ｋｅｒｂｅｒｏｓフレームワーク及び仮想ＴＰＭを組み合わせることによって、プラットフォーム情報の露出の回避、信頼できる第三者機関の障害の回避及び複雑さの回避のような現存する方法の態様の向上を行うことを主に意図した新たな認証方法を設計する。
【課題を解決するための手段】
【００１０】
上述した目的を達成するために、本発明によって用いられる技術的な解決は、分散環境の安全通信認証方法であって、ユーザは、ゼロ知識証明法を用いて識別認証を実行し、
（１）ユーザによって、識別認証要求ＫＲＢ＿ＡＳ＿ＲＥＱを、Ｋｅｒｂｅｒｏｓサーバの中の認証サーバ（ＡＳ）に送信し、要求を受信した後、ＡＳによってユーザ識別子を検証するステップと、
（２）ユーザ識別認証をパスした後、ＡＳによって、ユーザ識別子に一致するチケット及び認証コードをユーザに送信し、チケットは、Ｋｅｒｂｅｒｏｓサーバ及びゼロ知識証明の組合せによって生成したＡＩＫ証明書を備えるステップと、
（３）ユーザが、リモート認証サーバを用いてリモート認証を行うことを必要とするとき、アプリケーションサーバとの通信を行うためのチケットを取得するために、チケット及び認証コードを用いることによって、チケット交付サーバ（ＴＧＳ）によるセッションをユーザによって実行するステップと、
（４）リモート認証サーバによるリモート認証をユーザによって完了するステップと、
を備える分散環境の安全通信認証方法である。
【００１１】
分散環境の安全通信認証システムは、
ＡＩＫ証明書認証を実行するために要求されるクライアントを表すユーザプラットフォームと、
認証サーバ（ＡＳ）及びチケット交付サーバ（ＴＧＳ）を有するＫｅｒｂｅｒｏｓサーバであって、認証サーバ（ＡＳ）は、ユーザプラットフォームによって提供される特性情報が安全バルブ内にあるか否かを確認し、ＴＧＳのチケット及びそれに関連するＡＩＫ証明書を署名して安全バルブ内にあるユーザプラットフォームに発行し、チケット交付サーバ（ＴＧＳ）は、ユーザプラットフォームによって保持されているＴＧＳのチケットの有効期限が切れたか否かを確認し、合法なユーザプラットフォームに伝達アプリケーションサービスチケットを発行するＫｅｒｂｅｒｏｓサーバと、
アプリケーションサービスチケットを保持するユーザプラットフォームと通信を行うときにＡＩＫ証明書及びアプリケーションサービスチケットを確認し、これらが合法である場合には、ユーザプラットフォームとともにアプリケーションサービスを実行するリモート認証サーバと、
を備え、ユーザプラットフォーム、Ｋｅｒｂｅｒｏｓサーバ及びリモート認証サーバは、インターネットを介して互いに接続されている。
【発明の効果】
【００１２】
本発明の一つの効果は、本発明の方法及びシステムを用いることによって、プライバシー露出の問題及び既存の分散システムのリモートサーバ間の相互の検証の効率の問題に対処することができることにある。本発明の方法は、ゼロ知識証明、Ｋｅｒｂｅｒｏｓ技術及びバーチャルＴＰＭを組み合わせ、プラットフォームがＡＩＫ証明書を要求するときに、ゼロ知識証明の手法を使用し、ＫｅｒｂｅｒｏｓにおいてＡＳ及びＴＧＳに分割されるＴＴＰとしてＫｅｒｂｅｒｏｓを使用し、ＡＳは、ＡＫＩ認証を行い、したがって、一つのＴＰＭがＡＳ認証を一度だけ実行すればよい。ネットワークにアクセスする必要があるとき、アプリケーションサーバチケットがＴＧＳから要求され、リモート認証を実行することができ、したがって、ＴＴＰの負荷は、作業の分担及び共同によって軽減される。ｖＴＰＭアーキテクチャは、プラットフォームの構造として用いられる。モジュールの機能に関するセキュリティの分離は、バーチャル技術によって実現される。新たな識別認証法が確立される。プラットフォーム情報の露出の回避、信頼できる第三者機関の障害の回避及びリモート認証の複雑さの減少の目的が満たされる。
【図面の簡単な説明】
【００１３】
【図１】本発明によるシステムの構造図である。
【図２】本発明による方法のリモート認証のプロセスのＡＩＫ認証構造の例示的な構造図である。
【図３】本発明による方法のフローチャートである。
【図４】本発明による方法のＡＩＫ証明書生成プロトコルのフローチャートである。
【発明を実施するための形態】
【００１４】
本発明を、添付図面及び好適な実施の形態を参照しながら更に説明する。明示的に説明しない限り、これらの実施の形態で説明するコンポーネント及びステップの相対配置、数式及び数値が本発明の保護範囲を制限することを意図しないことに留意すべきである。
【００１５】
以後の少なくとも一つの実施の形態の説明は、実際には、一例に過ぎないことを意図し、決して本発明及びそのアプリケーション又はユーザに対する制限を行うことを意図しない。
【００１６】
従来技術における当業者によって既に知られた技術、方法及び装置を詳細に説明しないが、適切な場合には、これらの技術、方法及び装置を、特許された明細書の一部と見なすべきである。
【００１７】
ここで図示及び説明する全ての例において、あらゆる具体的な値は、一例に過ぎず、限定のために説明していない。したがって、実施の形態の他の例は、異なる値を有してもよい。
【００１８】
図１に示すように、分散環境の安全通信認証システムは、
ＡＩＫ証明書認証を実行するために要求されるクライアントを表すユーザプラットフォームと、
認証サーバ（ＡＳ）及びチケット交付サーバ（ＴＧＳ）を有するＫｅｒｂｅｒｏｓサーバであって、認証サーバ（ＡＳ）は、ユーザプラットフォームによって提供される特性情報が安全バルブ内にあるか否かを確認し、ＴＧＳのチケット及びそれに関連するＡＩＫ証明書を署名して安全バルブ内にあるユーザプラットフォームに発行し、チケット交付サーバ（ＴＧＳ）は、ユーザプラットフォームによって保持されているＴＧＳのチケットの有効期限が切れたか否かを確認し、合法なユーザプラットフォームに伝達アプリケーションサービスチケットを発行するＫｅｒｂｅｒｏｓサーバと、
アプリケーションサービスチケットを保持するユーザプラットフォームと通信を行うときにＡＩＫ証明書及びアプリケーションサービスチケットを確認し、これらが合法である場合には、ユーザプラットフォームとともにアプリケーションサービスを実行するリモート認証サーバと、
を備え、ユーザプラットフォーム、Ｋｅｒｂｅｒｏｓサーバ及びリモート認証サーバは、インターネットを介して互いに接続されている。
【００１９】
本実施の形態において、ユーザプラットフォームは、以下のモジュール：
配置されているユーザプラットフォームのシステム特性情報の計量値を記録するセキュリティチップＴＰＭ／ＴＣＭと、
認証プロセスに対して安全かつ信頼性のある実現プラットフォームを提供するＸＥＮバーチャルマシンと、
を有する。同一のプラットフォームを共有する作業負荷は、通常、さまざまな理由から独立性を保持する必要がある。異なる関心のために、競合するサービスを有するウェブサイトは、互いのデータにアクセスする必要があり、この結果、多くの危険な要因が生じる。さらに、悪質なソフトウェアは、これらのソフトウェアを正常に実行する共有されたハードウェア環境を破壊する。稼動中に仮想化がますます用いられるようになり、その結果、ソフトウェアの安全性に関して、更に厳しいインテグリティ及び作業の分担がますます必要となってくる。
【００２０】
図２において、ユーザプラットフォームの例示的な構造設計を示す。ｖＴＰＭ構造を構成するために、ユーザプラットフォームをセキュリティチップＴＰＭ／ＴＣＭに設ける必要があり、ＴＰＭを、ここでは一例として用いる。ＣＰＵは、Ｉｎｔｅｌ−ＶＴ又はＡＭＤ−Ｖを有する必要がある。ＢＩＯＳは、ＴＧＣ仕様及び電力制御インタフェースをサポートし、同時に、ＢＩＯＳは、オペレーティングシステムをロードするためにＩＭＡ計量機能を有するリナックス（登録商標）システムボートローダ（ＧＲＵＢ−ＩＭＡ）を必要とする。
【００２１】
ＸＥＮバーチャルマシンには、主に三つのバーチャルドメインが存在する。ユーザプラットフォームに電源を投入した後、それ自体の信頼できる計量ルートを出発点として用いることによって、ＴＰＭは、先ず、ＢＩＯＳの他のコンポーネントのインテグリティを測定し、信頼できる暗号化モジュールのＰＣＲに計量値を格納し、選択した判断メカニズムに従ってＢＩＯＳのインテグリティを決定し、インテグリティが損なわれていない場合、ＢＩＯＳを実行し、ＩＰＬ／ＭＢＲのインテグリティを測定し、判断メカニズムに従ってＩＰＬ／ＭＢＲのインテグリティを決定し、ＩＰＬ／ＭＢＲのインテグリティが損なわれていない場合、ＭＢＲを実行し、その後、ＩＰＬ／ＭＢＲは、ＯＳカーネル計量及び負荷コンポーネントＧＲＵＢ−ＩＭＡのインテグリティを測定し、コンポーネントのインテグリティが損なわれていない場合、このコンポーネントは、ＯＳカーネルのインテグリティを測定し、それが改竄されていない場合、ＯＳカーネルを実行する。ブートを行った後、ＯＳカーネルは、Ｄｏｍａｉｎ  ０に入り、信頼できる関係をパスすることによって、同一のメカニズムに基づくＯＳサービスインテグリティを確認し、信頼されたルートが形成され、これによって、ブートされたシステムが信頼されることを保証する。
【００２２】
Ｄｏｍａｉｎ  ０は、四つのセクションの内容：インストールされたＸＥＮパッチを有するＬｉｎｕｘ（登録商標）運用システムと、ＯＳ及びＴＰＭの通信のための駆動プログラムｔｐｍ＿ｔｉｓと、ＴＰＭ  Ｅｍｕｌａｔｏｒと、ＸＥＮのｖＴＰＭ管理機能モジュールとＴＰＭ  Ｅｍｕｌａｔｏｒとの通信に関与するｖＴＰＭ  Ｍａｎａｇｅｒと、を含む。
【００２３】
Ｄｏｍａｉｎ  Ｕは、半仮想化されたバーチャルドメインであり、主に、以下のセクションを含む。ＸＥＮの機能モジュールｖＴＰＭ。ＸＥＮバーチャルそれ自体はＴＰＭと情報をやりとりすることができないので、ｖＴＰＭは、ｖＴＰＭの方式を用いることによってＴＰＭ  Ｅｍｕｌａｔｏｒと情報をやりとりし、ＴＰＭ  Ｅｍｕｌａｔｏｒは、下層のＴＰＭハードウェアのデータを含み、外部とのデータのやり取りを行うＴＰＭハードウェアとしての役割を果たす。ＸＥＮとＴＰＭ  Ｅｍｕｌａｔｏｒとの間に通信ドライブプログラムｘｅｎ＿ｔｐｍｕが存在し、カーネルをコンパイルするときにドライブが追加される。ＩＡＩＫ  ｊＴＳＳは、Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ａｐｐｌｉｅｄ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ（ＩＡＩＫ）によりＪａｖａ（登録商標）言語において開発され、ＴＣＧ  Ｓｏｆｔｗａｒｅ  Ｓｔａｃｋ（ＴＳＳ）の実現であり、下層アプリケーションプログラムを用いてＴＰＭ及びＴＰＭ  Ｅｍｕｌａｔｏｒにアクセスするインタフェースを提供する。ｖＴＰＭは、ＸＥＮバーチャルマシンに、すなわち、Ｄｏｍａｉｎ  ０に位置するが、機能的には、ｖＴＰＭは、Ｄｏｍａｉｎ  ０のＴＰＭ  Ｅｍｕｌａｔｏｒと情報のやりとりを行うためのＤｏｍａｉｎ  Ｕプログラムのインタフェースであり、Ｄｏｍａｉｎ  Ｕの機能モジュールの実行の鍵であり、したがって、図２のＤｏｍａｉｎ  Ｕの領域において点線で円が描かれている。
【００２４】
ＨＭＶ−Ｄｏｍａｉｎは、完全に仮想化されたバーチャルドメインであり、主に以下のセッションを含む。ＴＣＧ仕様をサポートするＢＩＯＳ。信頼できるルートを形成するための計量機能を有するＯＳローダ。ＴＰＭ  Ｅｍｕｌａｔｏｒとデータのやりとりを行うバーチャルドメインに対するｖＴＰＭコンポーネント。同時に、全システムの測定結果を確認するとともにＯＳで実行するソフトウェアの測定を行うために、ＯＳは、カーネルコンパイルを行うときに、ＩＢＭによって作成されたＩＭＡコンポーネントをカーネル（Ｌｉｎｕｘ（登録商標）−ＩＭＡ）にコンパイルする。Ｌｉｎｕｘ（登録商標）−ＩＭＡは、ＴＰＭデータを確認するためにＴＰＭハードウェアと情報のやりとりを行う必要があり、ＴＰＭドライブｔｐｍ＿ｔｉｓをＯＳに要求する。ＴＰＭ及びＴＰＭ  Ｅｍｕｌａｔｏｒをプログラムするためにユーザによって用いられるソフトウェアＩＡＩＫｊＴＳＳ。Ｏｐｅｎ  Ｐｌａｔｆｏｒｍ  Ｔｒｕｓｔ  Ｓｅｒｖｉｓｅｓ（ＯｐｅｎＰＴＳ）は、ＴＣＧによって提案されており、Ｐｒｏｏｆ−ｏｆ−Ｃｏｎｃｅｐｔ（ＰｏＣ）及びＰｌａｔｆｏｒｍ  Ｔｒｕｓｔ  Ｓｅｒｖｉｃｅｓ（ＴＰＳ）に関連する実現に対して、リモートチャレンジャーによる信頼できる演算を実行するオープンソフトウェアに関連した他の信頼できる演算に協力する。
【００２５】
Ｄｏｍａｉｎ  ０は、各演算ドメインの間の通信の調整及び管理に関与する。ＴＰＭ  Ｅｍｕｌａｔｏｒをブートした後、ＴＰＭ  Ｅｍｕｌａｔｏｒは、待機状態に入り、ＴＰＭ  Ｅｍｕｌａｔｏｒと通信を行う相手を待機する。ｖＴＰＭ  Ｍａｎａｇｅｒは、ＴＰＭ  ＥｍｕｌａｔｏｒとｖＴＰＭとの間の通信を管理するために起動される。識別認証が要求されるとき、ユーザは、ＩＡＩＫｊＴＳＳを用いることによってＤｏｍａｉｎ  ＵにＴＰＭ命令を発し、識別認証に要求されるＴＰＭ識別子に関連するデータを準備する。ｖＴＰＭが命令を受けると、ｖＴＰＭは、Ｄｏｍａｉｎ  ０のｖＴＰＭ  Ｍａｎａｇｅｒと通信を行い、ｖＴＰＭがＴＰＭ  Ｅｍｕｌａｔｏｒを介してデータのやりとりを行うことを所望していることをｖＴＰＭ  Ｍａｎａｇｅｒに知らせる。ｖＴＰＭ  Ｍａｎａｇｅｒは、ＴＰＭ  Ｅｍｕｌａｔｏｒに命令を送る。ＴＰＭ  Ｅｍｕｌａｔｏｒが命令を受けると、ＴＰＭ  Ｅｍｕｌａｔｏｒは、下層のＴＰＭデータを呼び出す。データの準備ができると、ＴＰＭ  Ｅｍｕｌａｔｏｒは、逆順でＩＡＫＩｊＴＳＳにデータをフィードバックする。ＩＡＩＫｊＴＳＳは、全ての必要なデータを受信し、その後、識別認証要求をＡＳに送る。認証を完了した後、ＡＳは、ＡＩＫ証明書をＩＡＩＫｊＴＳＳに送信する。ＩＡＩＫｊＴＳＳが証明書を受信した後、ＩＡＩＫｊＴＳＳは、格納のためにＤｏｍａｉｎ  ０に証明書を送信する。ＨＭＶ−Ｄｏｍａｉｎは、Ｄｏｍａｉｎ  ０からＡＩＫ証明書を取り出し、ＴＣＧからのアプリケーションプログラムチケットを要求し、チケットを取得すると、リモート認証要求をリモート認証サーバに送信し、ＡＩＫ証明書と計量リストの両方を、リモート認証のためにリモート認証サーバに送信する。そのような実行方法は、各バーチャルドメインが他のバーチャルドメインと無関係にそれ自体の機能を実行することを要求し、したがって、セキュリティを向上させる。
【００２６】
図３に示すように、分散環境の安全通信認証方法を提供し、ユーザは、ゼロ知識証明法を用いて識別認証を実行し、分散環境の安全通信認証方法は、
ステップＳ１において、ユーザは、識別認証要求ＫＲＢ＿ＡＳ＿ＲＥＱを、Ｋｅｒｂｅｒｏｓサーバの中の認証サーバ（ＡＳ）に送信し、ＡＳが要求を受信した後、ＡＳは、ユーザ識別子を検証し、
ステップＳ２において、ユーザ識別認証をパスした後、ＡＳは、ユーザ識別子に一致するチケット及び認証コードをユーザに送信し、チケットは、Ｋｅｒｂｅｒｏｓサーバ及びゼロ知識証明の組合せによって生成したＡＩＫ証明書を備え、
ステップＳ３において、ユーザが、リモート認証サーバを用いてリモート認証を行うことを必要とするとき、ユーザは、アプリケーションサーバとの通信を行うためのチケットを取得するために、チケット及び認証コードを用いることによって、チケット交付サーバ（ＴＧＳ）によるセッションを実行し、
ステップＳ４において、ユーザは、リモート認証サーバによるリモート認証を完了する。
【００２７】
本実施の形態において、Ｋｅｒｂｅｒｏｓサーバ及びゼロ知識証明の組合せによってＡＩＫ証明書を生成するプロセスを、図４に示す。証明書生成プロセスは、以下の通りである。
【００２８】
（１）ユーザは識別認証要求ＫＲＢ＿ＡＳ＿ＲＥＱメッセージをカプセル化する。
ユーザは、所定のブロックを以下のメッセージＥ（ＰＵＡＳ，ＫＣ，ＡＳ）||ｐｋ||ｖｋに置換することを除いては元のＫｅｒｂｅｒｏｓプロトコルのＫＲＢ＿ＡＳ＿ＲＥＱメッセージと同一のＫＲＢ＿ＡＳ＿ＲＥＱメッセージをカプセル化する。この場合、ＫＣ及びＡＳをユーザによって生成し、ＡＳのセッション鍵を、ＡＳの公開鍵ＰＵＡＳによって暗号化し、メッセージは、
【００２９】
【数１】
2016519540.tif 000003
のフォーマットを有し、ｐｋ＝Ｅ（ＡＩＫｐｕｂ，ＫＥｐｕｂ）であり、ｅ１，ｅ２，．．．，ｅｋは、
【００３０】
【数２】
2016519540.tif 000004
の入力を用いてシステムによって選択したハッシュ関数の出力である。
したがって、中間者攻撃を有効に防止することができる。
【００３１】
ＫｅｒｂｅｒｏｓはＫＲＢ＿ＡＳ＿ＲＥＱメッセージを受信する。
ＡＳがＫＲＢ＿ＡＳ＿ＲＥＱメッセージを受信した後及びＴＧＳのチケットを発行する前に、ＡＳは、ユーザの識別子を認証する必要がある。信頼できるプラットフォームは、信頼できるサードパーティによるゼロ知識プロトコル認証を行う。１番目に、ｅ１，ｅ２，．．．，ｅｋを、ユーザと同一のアルゴリズムを用いることによって生成し、２番目に、ＡＳは、ユーザの識別子ｖ１，ｖ２，．．．，ｖｋの対応する検証情報をそれ自体のデータベースから取り出し、３番目に、ＡＳは、送信されたＫＲＢ＿ＴＧＳ＿ＲＥＱメッセージが、以下の式
【００３２】
【数３】
2016519540.tif 000005
に一致するか否かを確認する。
【００３３】
ユーザ識別認証をパスした後、信頼できるプラットフォームは、ｚｋ＝Ｅ（ＡＩＫｐｕｂ，ω）を用いることによって証明書を表し、ωは、承認証明書、プラットフォーム証明書、確認証明書及び検証証明書の集合を表し、承認証明書は、承認公開鍵を含まない。ｚｋ||ｖｋ’がＫｅｒｂｅｒｏｓに送信され、ｖｋ’は、
【００３４】
【数４】
2016519540.tif 000006
のような（式１）の出力である。すなわち、Ｆｅｉｇｅ−Ｆｉａｔ−Ｓｈａｍｉｒプロトコルが二度目に用いられる。証明書が有効である場合、セッション鍵ＫＣ，ＡＳを取得するためにＫＲＢ＿ＡＳ＿ＲＥＱメッセージを解読し、ＡＩＫ証明書ＡＩＫｃｅｒｔを生成するために、ＫＣ，ＡＳを用いてＡＩＫ公開鍵を暗号化し、ＫＲＢ＿ＡＳ＿ＲＥＰを生成するとともにそれを信頼できるプラットフォームに送信するために、ｐｋを用いて証明書を暗号化する。Ｋｅｒｂｅｒｏｓは、ＫＲＢ＿ＡＳ＿ＲＥＰメッセージを生成し、ＫＲＢ＿ＡＳ＿ＲＥＰメッセージの暗号文部分を、暗号化するユーザのパスワードを用いる代わりに、ＫＲＢ＿ＡＳ＿ＲＥＱメッセージの暗号文部分を解読することによって取得したセッション鍵ＫＣ，ＡＳを用いて暗号化する。このメッセージは、
【００３５】
【数５】
2016519540.tif 000007
（数２）
のフォーマットを有する。
メッセージをユーザに送信し、この場合、ＡＩＫ＝Ｅ（ｐｋ、ＡＩＫｃｅｒｔ）である。
【００３６】
（３）ユーザがＡＳからメッセージを受信した後、ユーザは、ＫＲＢ＿ＴＧＳ＿ＲＥＱメッセージをＴＧＳに送信する。メッセージは、要求されたＴＧＳチケットと、要求されたサービスの識別子ＩＤと、を含む。さらに、ユーザは、認証コードＡｕｔｈｅｎｔｉｃａｔｏｒｃも送信し、このメッセージは、ユーザの識別子ＩＤ、ネットワークアドレス及びタイムスタンプを含み、ＴＧＳのセッション鍵を用いることによって暗号化され、セッション鍵は、ＡＳ情報交換の段階で取得されるＫｃ，ｔｇｓを表す。ＴＧＳのチケットの寿命と比較すると、認証コードは、より短い寿命を有し、一度に限り使用できる。Ｎｏｕｎｃｅ２，Ｏｐｔｉｏｎｓ及びＴｉｍｅｓは、上記メッセージと同一機能を有する。メッセージは、
【００３７】
【数６】
2016519540.tif 000008
（式３）
のフォーマットでＫｅｒｂｅｒｏｓサーバのＴＧＳモジュールに送信される。この場合、
【００３８】
【数７】
2016519540.tif 000009
である。
【００３９】
４）ＫＲＢ＿ＴＧＳ＿ＲＥＱメッセージの正当性の認証を成功した後に、ＴＧＳは、ＫＲＢ＿ＴＧＳ＿ＲＥＰメッセージのアセンブルを開始する。このメッセージのフォーマットは、ＫＲＢ＿ＴＧＳ＿ＲＥＰメッセージ（式２）と同一である。最初に、Ｋｅｒｂｅｒｏｓサーバは、メッセージ（式３）及び受信したＴＧＳのチケットに基づいて、ユーザに送信されるアプリケーションサーバチケットの特性を決定し、アプリケーションサーバに対するチケットを生成するために、ユーザパスワードデータベースから取り出した対応するアプリケーションサーバ鍵を用いてチケットを暗号化する。ＫＲＢ＿ＴＧＳ＿ＲＥＰメッセージの暗号文部分は、ＡＳメッセージ交換と同一のセッション鍵Ｋｃ，ｔｇｓを使用し、アプリケーションサーバのメッセージ交換で用いられるセッション鍵Ｋｃ，ｖは、ＴＧＳ情報交換の段階でも分散され、ユーザとアプリケーションサーバの両方が、対応するドメインからセッション鍵を取得することができる。ＫＲＢ＿ＴＧＳ＿ＲＥＰメッセージは、次のフォーマット
【００４０】
【数８】
2016519540.tif 000010
を有し、この場合、
【００４１】
【数９】
2016519540.tif 000011
である。取得したチケット及び認証コードを用いることによって、リモート認証（ＲＡ）を接続することができる。クライアントは、現在用いられているＡＩＫによって署名されたＩＭＡ計量リスト及びＰＣＲ  １０値をサーバに送信する。ＲＡサーバは、チケット及び認証コードが信頼できるＫｅｒｂｅｒｏｓによって発行されたか否かについてのチケット及び認証コードの妥当性をチェックする。
【００４２】
本開示は、コンピュータ実行可能命令を組み込んだ一つ以上のコンピュータ可読媒体も提供する。コンピュータによって実行するときに、命令は、分散環境の安全通信認証方法を実行し、（１）ユーザは、識別認証要求ＫＲＢ＿ＡＳ＿ＲＥＱを、Ｋｅｒｂｅｒｏｓサーバの中の認証サーバ（ＡＳ）に送信し、ＡＳが要求を受信した後、ＡＳは、ユーザ識別子を検証することと、（２）ユーザ識別認証をパスした後、ＡＳは、ユーザ識別子に一致するチケット及び認証コードをユーザに送信し、チケットは、Ｋｅｒｂｅｒｏｓサーバ及びゼロ知識証明の組合せによって生成したＡＩＫ証明書を備えることと、（３）ユーザが、リモート認証サーバを用いてリモート認証を行うことを必要とするとき、ユーザは、アプリケーションサーバとの通信を行うためのチケットを取得するために、チケット及び認証コードを用いることによって、チケット交付サーバ（ＴＧＳ）によるセッションを実行することと、（４）ユーザは、リモート認証サーバによるリモート認証を完了することと、を備える。
【００４３】
本開示は、コンピュータ実行可能命令を組み込んだ一つ以上のコンピュータ可読媒体を有するコンピュータも提供する。コンピュータによって実行するときに、命令は、分散環境の安全通信認証方法を実行する。
【００４４】
典型的な動作環境
ここで説明するような計算装置は、所定の形態の一つ以上のプロセッサ若しくは処理装置、システム記憶装置又はコンピュータ可読媒体を含むハードウェアを有する。限定されない例として、コンピュータ可読媒体は、コンピュータ記憶媒体及び通信媒体を含む。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータのような情報を格納する任意の方法及び技術を用いることによって実現される揮発性及び不揮発性並びに着脱自在及び着脱自在でない媒体を含む。通信媒体は、一般的には、搬送波のような変調データ信号又は他の伝送メカニズムを用いることによってコンピュータ可読命令、データ構造、プログラムモジュール又は他のデータが組み込まれ、任意の情報輸送媒体を含む。上述した媒体の任意の組合せも、コンピュータ可読媒体の範囲内にある。
【００４５】
コンピュータは、一つ以上のリモートコンピュータを用いることができ、例えば、リモートコンピュータの論理を、動作するために、ネットワーク化された環境において接続する。本発明を、典型的なコンピュータシステム環境に関連して説明したが、本発明の各実施の形態を、他の多数の一般的な又は個人のコンピュータシステム環境又は形態で用いることができる。コンピュータシステム環境は、本発明の任意の態様の適用範囲又は機能に対して何らかの限定を加えることを意図しない。さらに、コンピュータ環境を、典型的な動作環境において示すように任意のコンポーネント又はその組合せの任意の依存関係又は要求が存在するものと解釈すべきでない。本発明の各態様に適切な周知のコンピュータシステム、環境及び／又は形態の例は、パーソナルコンピュータ、サーバコンピュータ、携帯端末又はラップトップ型コンピュータ、マルチプロセッサシステム、マイクロプロセッサを用いるシステム、セットトップボックス、プログラマブル家電製品、携帯電話、ネットワークＰＣ、マイクロコンピュータ、大規模コンピュータ、上述したシステム又は装置の何れかを含む分散コンピュータ環境等を含むが、それに限定されない。
【００４６】
本発明の実施の形態を、プログラムモジュールのような一つ以上の計算装置で実行されるコンピュータ実行可能命令の一般的状況に関連して説明することができる。コンピュータ実行可能命令を、一つ以上のコンピュータ実行可能コンポーネント又はモジュールとしてソフトウェアによって構成することができる。一般的には、プログラムモジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、及び、所定のタスクを実行又は特定の抽象データ型を実現するデータ構造を含むが、それに限定されない。本発明の態様を、任意の数のそのようなコンポーネント若しくはモジュール又はその機構を用いることによって実現することができる。例えば、本発明の態様は、図示するとともにここで説明した特定のコンピュータ実行可能命令又は特定のコンポーネント若しくはモジュールに限定されない。本発明の他の実施の形態は、図示するとともにここで説明した機能より多い又は少ない機能を有する異なるコンピュータ実行可能命令又はコンポーネントを含んでもよい。本発明の態様を、タスクが通信ネットワークリンクを介してリモート処理装置によって実行される分散コンピュータ環境で実現することができる。分散コンピュータ環境において、プログラムモジュールを、記憶装置を含むローカル及びリモートコンピュータ記憶媒体に配置することができる。
【００４７】
当業者は、本発明の方法及びシステムの記載がここに開示した特定の実施の形態のような実施の形態を限定しないことを理解すべきである。上記を、本発明の説明のために示したが、決して本発明を限定することを意図しない。当業者により本発明の技術的解決に由来する他の実現も、本発明による発明に関する新規の技術の範囲内にある。本発明の保護範囲は、次の特許請求の範囲及びその等価物によって規定される。
【図１】
2016519540.tif 000017
【図２】
2016519540.tif 000018
【図３】
2016519540.tif 000019
【図４】
2016519540.tif 000020
【国際調査報告】
2016519540.tif 000021
2016519540.tif 000022
2016519540.tif 000023
2016519540.tif 000024
2016519540.tif 000025
2016519540.tif 000026