説明

全交換セッションセキュリティ

全電子メールおよびコラボレーションソフトウェア(たとえばExchangeブランドサーバ)セッションセキュリティのためのプロトコル。例として、同じ団体の中にある、または複数の団体にまたがっている2つのサーバ間のトラフィックを安全にすることは、電子データおよび通信のプライバシを維持するのに決定的に重要である。たとえば、2つのExchangeブランドサーバ間の通信を安全にすることは、電子メールで秘密情報を日常的に送受信する個人および団体には特に有用である。受信側(サーバ)は送信側(クライアント)が情報を送信するのを認可することが重要であり、送信側は受信側が無許可の情報開示を防止するための情報を受信するのを認可すべきである。本明細書で開示された新規のシステムおよび/またはプロトコルは、同じ団体の中にあるのと、異種の団体にまたがっているのと、いずれの2つのサーバ間にも、相互に認証され、認可され、暗号化されたチャネルを提供することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、セッションセキュリティに関する。より詳細には、本発明は、全電子メールおよびコラボレーションソフトウェアのセッションセキュリティのためのプロトコルに関する。
【背景技術】
【0002】
2つのメールサーバ間のトラフィックを安全にすることは、電子データおよび通信のプライバシを維持するために決定的に重要である。たとえば、2つのExchangeブランドサーバ間の通信を安全にすることは、電子メールで秘密情報を日常的に送受信する個人および団体には特に有用であり得る。従来のSSL/TLSアプローチを使用することは、非常に複雑な証明書ベースの公開鍵インフラストラクチャ(PKI)を配備することを必要とする。このことは、メールサーバ、たとえばExchangeブランドサーバの多くのユーザのためにSMTP(simple mail transfer protocol)トラフィックを安全にすべくSSL/TLSを使用するのに非常に大きな障害であることが分かっている。
【0003】
認証は、コンピュータシステムにログオン中のユーザの識別を検証するプロセス、または送信されたメッセージの保全性を検証するプロセスを参照することができる。多くの場合、認証プロセスを容易にするために認証トークンが利用される。たとえば、認証トークンは、認可されたユーザに渡され、電子メッセージの将来のアクセスおよび/または送信のためにユーザによって所有し保持されることができる。
【0004】
1つの一般的なネットワーク認証は、ケルベロス(Kerberos)認証プロトコルである。この特定のプロトコルは、安全でないネットワークを介して通信する個人が非常に安全なやり方で互いに自分の身元(identity)を証明することができるようにする。ケルベロス認証プロトコルは、送信データの保全性を保証する上に、盗聴および/または再生攻撃の防止を容易にする。通常、ケルベロスプロトコルは、ユーザとサービスの両方がそれぞれの身元を検証することを要求することにより相互認証が提供されるクライアント−サーバモデルで利用される。
【発明の開示】
【発明が解決しようとする課題】
【0005】
下記は、本発明のいくつかの態様の基本的な理解を提供するために、本発明の簡略化された要約を提示する。この要約は、本発明の広範囲の概要ではない。この要約は、本発明の主要な/決定的に重要な構成要素を識別すること、または本発明の範囲を定義することを意図するものではない。この要約の唯一の目的は、後ほど提示されるより詳細な説明の序として簡略化された形で本発明のいくつかの概念を提示することである。
【0006】
本明細書で開示され添付の特許請求の範囲に記載された本発明は、その一態様において、全電子メールおよびコラボレーションソフトウェア(たとえばExchangeブランドサーバ)セッションセキュリティのためのプロトコルを備える。例として、同じ団体の中にある、または複数の団体にまたがっている2つのサーバ間のトラフィックを保証することは、しばしば、非常に問題が多い。したがって、従来のSSL/TLSアプローチは、非常に複雑な証明書ベースの公開鍵インフラストラクチャ(PKI)を配備することを必要とする。このことは、Exchangeブランドサーバなどのメールサーバの多くのユーザのためにSMTPトラフィックを安全にすべくSSL/TLSを使用するのに非常に大きな障害であることが分かっている。さらに、Exchangeブランドサーバのセキュリティ要件は、相互「認証」だけでなく、相互「認可」をも必要とする。
【0007】
当然のことながら、2つのExchangeブランドサーバ間では、クライアントの役割とサーバの役割に事実上違いはない−−両方とも同等のパーティである。言い換えれば、ちょうど、受信側(サーバ)が、送信側(クライアント)が情報を送信するのを認可することが重要であるのと同様に、送信側は、受信側が情報開示を防止するための情報を受信するのを認可すべきである。この双方向セキュリティプロトコルは、従来のシステムでは不可能であった。
【課題を解決するための手段】
【0008】
本明細書で開示される新規のシステムおよび/またはプロトコルは、その一態様において、同じ森(たとえば団体)の中にあるのと、異種の森にまたがっているのと、いずれの2つのサーバ、たとえばExchangeブランドサーバ間にも、相互に認証され、認可され、暗号化されたチャネルを提供することができる。一態様では、システムは、さらに追加の管理費(administrative overhead)を必要とすることなく「アウトオブザボックス(out-of-the-box)」で利用されることができる。
【0009】
一態様では、本発明は、複数のメールサーバ間の(たとえばExchange団体の中の、および/または間の)安全な通信を容易にするために暗号プロトコルトランスポート層セキュリティ(TLS:Transport Layer Security)、相互汎用セキュリティサービスアプリケーションプログラムインターフェース(MUTUALGSSAPI:mutual generic security service application program interface)および/またはチャレンジ(challenge)/応答システムを提供する。一態様は、安全な送信を容易にするために前述の3つのプロトコルすべてを利用することを対象とする。他の態様は、相互認可を可能にするMUTUALGSSAPIを対象とする。
【0010】
サーバ間のSMTPトラフィックを安全にすることは、全メールサーバセキュリティの不可欠な部分である。本明細書で開示され添付の特許請求の範囲に記載された新規の諸態様は、2つのサーバのエンドポイントの相互認証および認可を提供し、通信チャネルを暗号化する。アウトオブザボックスで、本発明は、SMTPトラフィックの真正さ、プライバシおよび保全性を保証することができる真のピアツーピアセキュリティを可能にする。
【0011】
概要的に言えば、3つのサブプロトコルは所望の結果を達成することができる。第1に、一態様によれば、通信チャネルを暗号化するために自己署名証明書によるTLSが利用されることができる。このTLSの使用は、前述のようにかなり大きな管理費を追加するPKI(公開鍵インフラストラクチャ)の配備を必要としないことが理解されるであろう。PKIは管理費の増加につながる可能性があるが、この、および他の知られている1つ以上の証明書は、本明細書に記載の本発明の新規性に関連して利用されることができることが理解されるべきである。次に、相互認可を可能にすることもできる相互認証(たとえばケルベロス認証)が利用されることができる。最後に、TLSによって安全にされる2つのエンドポイントが相互認証(たとえばケルベロス)をネゴシエーションしたのと完全に同じエンドポイントであることを保証するためにチャレンジ/応答プロトコルが利用されることができる。このチャレンジ/応答プロトコルは、マン・イン・ザ・ミドル(MITM)攻撃を防止するのに特に有用であることが理解されるであろう。
【0012】
本発明の他の態様では、ユーザが自動的に行われることを望む動作を推量するまたは予測するために、確率および/または統計ベースの分析を利用する人工知能構成要素が提供される。
【0013】
前述の目的および関連目的の達成のために、本発明のいくつかの例示的態様が本明細書で以下の説明および添付の図面に関連して説明される。しかし、これらの態様は、本発明の原理が利用されることができる様々な方法のいくつかを示すだけであり、本発明は、すべてのそのような態様およびそれらの同等物を含むことを意図するものである。本発明の他の利点および新規の特徴は、図面と併せて考察された場合、本発明の以下の詳細な説明から明らかになるであろう。
【発明を実施するための最良の形態】
【0014】
次に、本発明は、全体にわたって同様の参照番号は同様の要素を指す図面を参照しながら説明される。以下の説明では、説明のために、本発明の徹底的な理解を提供すべく多数の特定の細目が述べられる。しかし、本発明は、これらの特定の細目なしで実施されることができることは明らかであり得る。他の場合には、本発明の説明を容易にするために、よく知られている構造および装置がブロック図の形で示される。
【0015】
本出願では、用語「構成要素(component)」および「システム」は、コンピュータ関連エンティティ、つまり、ハードウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかを指すことを意図するものである。たとえば、構成要素は、プロセッサ上で稼動中のプロセス、プロセッサ、オブジェクト、実行可能物、実行中のスレッド、プログラム、および/またはコンピュータであるが、それまたはそれらであることに限定されない。説明として、サーバ上で稼動中のアプリケーションおよびそのサーバは、両方とも構成要素であり得る。実行のプロセスおよび/またはスレッドの中に1つまたは複数の構成要素が存在することができ、1つの構成要素は、1つのコンピュータ上に局限される(localize)ことができ、および/または2つ以上のコンピュータ間に分散されることができる。
【0016】
本明細書では、用語「推量する」または「推量」は、一般に、イベントおよび/またはデータを介して得られた1組の観察結果から、システム、環境、および/またはユーザの状態について論理的に考えるまたは推論するプロセスを指す。推論は、特定のコンテキストまたは動作を識別するために利用されることができ、または、たとえば、状態に関する確率分布を生成することができる。推論は、確率的であり得る−−すなわち、データおよびイベントの考察に基づくインタレスト(interest)の状態に関する確率分布の計算結果であり得る。推論はまた、1組のイベントおよび/またはデータからより高いレベルのイベントを構成するために利用される技術を指すことができる。そのような推論の結果として、1組の観察されたイベントおよび/または格納されているイベントデータから、それらのイベントが密接な時間的接近に相関していてもいなくても、およびそれらのイベントおよびデータが1つまたは複数のイベントおよびデータソースに由来していてもいなくても、新規のイベントまたは動作の構成が生じる。
【0017】
最初に図面を参照すると、図1は、複数の電子メールサーバ間の全セッションセキュリティを容易にするシステム100を示す。一般に、システム100は、2つの異種の電子メールサーバ(104、106)間の安全な通信を容易にする通信セッションセキュリティ構成要素102を含むことができる。図1に示されているシステム100は、2つの電子メール構成要素を示しているが、本明細書に記載された新規の概念および機構は、いかなる数のサーバを用いて構成されたネットワークによってでも利用されることができることが理解されるべきである。さらに、「電子メール」サーバが図示されているが、新規のセキュリティ概念および/または機構は、本発明の要旨および範囲ならびに添付の特許請求の範囲から逸脱することなく、いかなる形態のデータ通信にも適用されることができることが理解されるべきである。
【0018】
本明細書で開示され添付の特許請求の範囲に記載された本発明は、その一態様では、全電子メールおよびコラボレーションソフトウェア(たとえばExchangeブランドサーバ)セッションセキュリティを可能にするプロトコルを備える。例として、および図1に示されているように、新規のシステムは、同じ団体の中にある、または複数の団体にまたがっている2つのサーバ(104、106)間のトラフィックを安全にすることができるが、これはしばしば非常に問題が多い。
【0019】
当然のことながら、従来のSSL/TSLアプローチは、非常に複雑な証明書ベースの公開鍵インフラストラクチャ(PKI)を配備することを必要とする。この従来のアプローチは、Exchangeブランドサーバなどのメールサーバの多くのユーザのためにSMTPトラフィックを安全にすべくSSL/TLSを使用するのに非常に大きな障害であることが分かっている。さらに、Exchangeブランドサーバのセキュリティ要件は、相互「認証」だけでなく、相互「認可」をも必要とする。
【0020】
本明細書に記載の諸態様は、Exchangeブランドサーバを対象とするが、本明細書に記載の新規の態様および機能は、本開示の要旨および範囲ならびに添付の特許請求の範囲から逸脱することなく、いかなる通信および/またはデータトラフィックサーバを用いてでも利用されることができることが理解されるべきである。引き続き図1を参照すると、明らかなように、2つのExchangeブランドサーバ(たとえば104、106)間では、クライアントの役割とサーバの役割に事実上違いはない−−両方とも同等のパーティである。言い換えれば、ちょうど受信側(サーバ)が、送信側(クライアント)が情報を送信するのを認可することが重要であるのと同様に、送信側は、受信側が情報開示を防止するための情報を受信するのを認可すべきである。この双方向セキュリティプロトコルは、従来のシステムでは不可能であったことを当業者は理解するであろう。
【0021】
本明細書で開示される新規のシステム100および/またはプロトコルは、同じ森(たとえば団体)の中にあるのと、複数の森にまたがっているのと、いずれの2つのサーバ(たとえば104、106)、たとえばExchangeブランドサーバ間にも、(通信セッションセキュリティ構成要素102を介して)相互に認証され、認可され、暗号化されたチャネルを提供することができる。一態様では、システムは、さらに追加の管理費を必要とすることなく「アウトオブザボックス」で利用されることができる。
【0022】
図2は、本発明の一態様による安全な通信を容易にする方法を示す。説明を簡単にするために、たとえば流れ図の形で本明細書に示されている1つまたは複数の方法は一連の動作として示され説明されているが、本発明によるいくつかの動作は、本明細書に示され記載されたものとは異なる順序で、および/または他の動作と同時に生じることもあるので、本発明は、動作の順序によって限定されないことが理解され認識されるべきである。たとえば、ある方法は、代替として、状態図においてなど、一連の相互関係のある状態またはイベントとして表されることができることを当業者は理解し認識するであろう。さらに、すべての例示された動作が本発明による方法を実施することを必要とするとは限らないこともあり得る。
【0023】
符号202で、送信チャネルが暗号化される。通信チャネルを暗号化するために、前述のように、および以下でより詳細に説明されるように、トランスポート層セキュリティ(TLS)または同等の暗号技術が利用されることができる。符号204で、送信側の認証および受信側の認可が遂行される。一態様では、送信側および受信側の認証および/または認可を容易にするために、新規のMUTUALGSSAPIプロトコルが利用されることができる。
【0024】
通信チャネルが暗号化され、送信側および受信側が認証され通信することを認可された後は、セッションセキュリティはさらに安全になることができる。符号206で、エンティティ間のデータの通信および/または送信をより安全にするために、チャレンジ/応答機構が利用されることができる。これらの新規のプロセスステップは、個々にならびに組み合わせて、以下の諸図を参照しながらより詳細に説明される。
【0025】
図3は、本明細書および添付の特許請求の範囲に記載の本発明の新規の機能によるシステム100の代替ブロック図を示す。詳細には、通信セッションセキュリティコンポーネント102は、チャネル暗号化コンポーネント302、認証/認可コンポーネント304、およびチャレンジ/応答コンポーネント306を含むことができる。これら3つのコンポーネント302、304、306は、2つの異種のメールサーバ104、106間のデータトラフィックを安全にすることを容易にすることが理解され認識されるであろう。
【0026】
これらのサブ・コンポーネントはそれぞれ、以下の図4を参照しながらより具体的な例に関してより詳細に説明される。特定のプロトコルが図4に記載の態様に従って利用されるが、本明細書に記載の本発明の主旨および範囲から逸脱することなく他の暗号化、認証/認可およびチャレンジ/応答機構を利用する代替態様が存在しうることを理解するべきである。したがって、これらの代替態様は、本開示の範囲および添付の特許請求の範囲に含まれるものとする。
【0027】
図4は、本発明の一態様によるシステム100のより具体的な例を示す。この態様では、本発明は、複数のメールサーバ104、106間の(たとえばインターネットを介した)安全な通信を容易にするために、暗号プロトコルトランスポート層セキュリティ(TLS)402、相互汎用セキュリティサービスアプリケーションプログラムインターフェース(MUTUALGSSAPI)404およびチャレンジ/応答システム406を提供する。より詳細には、一態様は、安全な送信を容易にするために、3つの前述のプロトコル402、404、406すべてを対象とする。他の態様は、2つの電子メールサーバ間の新規の相互認証および/または認可を可能にする新規のMUTUALGSSAPI102を対象とする。
【0028】
サーバ(たとえば104、106)間のSMTPトラフィックを安全にすることは、全体的なメールサーバセキュリティの不可欠な部分である。本明細書で開示され添付の特許請求の範囲に記載された新規の諸態様は、2つのサーバのエンドポイントの相互認証および認可を提供し、通信のチャネルを暗号化する。アウトオブザボックスで、本発明は、SMTPトラフィックの真正さ、プライバシおよび保全性を保証することができる真のピアツーピアセキュリティを可能にすることができる。
【0029】
概要的に言えば、3つのサブプロトコル402、404、406は所望の結果を達成することができる。最初に、通信チャネルを暗号化するために、自己署名証明書によるTLSコンポーネント402を利用することができる。このTLSコンポーネント402の使用は、前述のようにかなり大きな管理費を追加するPKI(公開鍵インフラストラクチャ)の配備を必要としないことが理解されるであろう。次に、相互認可を可能にすることもできる相互認証(たとえばケルベロス認証404)を利用することができる。最後に、TLSによって安全にされる2つのエンドポイントが、相互認証(たとえばケルベロス)をネゴシエーションしたのと完全に同じエンドポイントであることを保証するために、チャレンジ/応答プロトコル406を利用することができる。このチャレンジ/応答プロトコル404は、マン・イン・ザ・ミドル(MITM)攻撃を防止するのに特に有用であり得ることが理解されるであろう。
【0030】
前述のように、以下の諸態様はExchangeブランドサーバのシナリオにおいて本発明の新規性を利用することを対象とするが、新規の諸態様は、当技術分野で知られているいかなる電子メールサーバおよび/またはデータトラフィックサーバに関連してでも利用できることが理解されるべきである。図4の通信セッションセキュリティコンポーネント102に関して上記で説明されたように、トランスポート認証および認可コンポーネントは、Exchangeブランドセキュリティ全体の不可欠な部分である。詳細には、この構成要素、たとえば通信セッションセキュリティコンポーネント102は、2つのExchangeブランドサーバのエンドポイントを相互に認証し、認可し、チャネルを暗号化することができる。デフォルトで、システムは、SMTPトラフィックの真正さ、プライバシおよび保全性を保証することができる真のピアツーピアセキュリティを提供することができる。
【0031】
X−EXPS MUTUALGSSAPIコンポーネント102に関して、X−EXPSは、様々なセキュリティパッケージトークンを運ぶことができるExchangeブランド特有の認証拡張である。Exchangeブランド12の前に、GSSAPI(SpNegoパッケージ)は、2つのサーバ(たとえば104、106)間で認証するために使用されるデフォルトパッケージであったことが理解されるであろう。SMTPトラフィックを暗号化することができないことを別にして、GSSAPIは、従来のウィンドウズ(登録商標)ダムクライアントモデル(windows dumb client model)に従う。これは、ネゴシエーションの後で、クライアントはサーバトークンを所有しないことを意味する。
【0032】
サーバトークンなしでは、クライアントは、サーバがクライアントを認可するのと同じやり方で、クライアントが許可されているサーバとの適切な対話を認可することができない。前述のように、Exchangeブランドのシナリオでは、クライアントとサーバの役割の点では2つのExchangeブランドサーバ間にはほとんど違いはない。両方とも、しばしば同等のパーティであり、唯一の違いは、クライアントが常に会話の開始パーティであることである。したがって、本明細書で開示され添付の特許請求の範囲に記載された新規の相互認可は、情報開示を防止するのに決定的に重要である。
【0033】
本発明によれば、(Exchangeブランドのシナリオで説明されたように)、ケルベロスSSPIを利用することができるMUTUALGSSAPIが導入される。従来のSpNegoを(ケルベロスとNTLMとの間でネゴシエーションすることができる)ケルベロスに置き換える1つの理由は、ダウングレード攻撃による不具合(exploit)を防止することである。MUTUALGSSAPIは、両方のエンド(サーバ104、サーバ106)がケルベロス会話を開始することができ、その結果、両方とも相手のアクセストークンを入手することができる。
【0034】
次に、図5を参照すると、一態様では、完全なMUTUALGSSAPIバッファが、図示されている構造を有することができる。より詳細には、サイズヘッダ502、504は、バイト単位の各ペイロードセクションの(たとえば、4バイトの固定長の16進法の値での)サイズを示すことができる。図示されているように、セキュリティブロブペイロード(Security Blob Payload)506は、双方向認証ブロブを運ぶことができる。同様に、チャレンジ/応答ペイロード508は、MITM攻撃を防止するためにケルベロス(クライアント−>サーバ)セッション鍵、TLSセッション鍵および自己署名RSA証明書公開鍵を結合することを可能にすることができるチャレンジ/応答データを運ぶことができる。
【0035】
次に、X−EXPS MUTUALGSSAPI+X−AnonymousTLSの議論に移ると、ケルベロスによって生成されたトークンはMITM攻撃に対して脆弱であり得るので、本発明は、チャネルを暗号化するために、ネゴシエーションから得られたセッション鍵を利用する。より詳細には、暗号化のためにケルベロスセッション鍵を使用するのではなく、本発明の一態様は同じ目的を達成するためにケルベロスとTLSの組合せを利用する。本質的に、ケルベロスは認証を容易にすることができ、TLSは暗号化を容易にすることができ、チャレンジ/応答サブプロトコルはMITM攻撃の不具合を防止することができる。この態様は以下でより詳細に説明される。
【0036】
動作中には、MUTUALGSSAPIネゴシエーションの1つの効果は、両方のエンドポイント(たとえばサーバ104、106)が共有秘密鍵(たとえばケルベロスセッション鍵)を有することである。実際、両側とも、双方向通信から2つのセッション鍵を有する。本発明は、チャレンジ応答のためにクライアント−>サーバのものを使用する。さらに、両側とも、リモート側のトークンへのアクセス権を所有する。
【0037】
MITM攻撃を防止するために、2つのタスクが遂行される。第1に、トークンバッファの保全性およびプライバシがTLSの下で保護されなければならない。第2に、チャレンジ/応答プロトコルが、MUTUALGSSAPIをネゴシエーションした両方のエンドポイントはまたTLSをネゴシエーションしたのと同じパーティであることを証明しなければならない。自己署名RSA証明書の公開鍵は、MITMがクライアントとサーバの両方に攻撃者と同じTLSセッション鍵をネゴシエーションさせることができないように、チャレンジ応答プロトコルのハッシュに含まれる。マン・イン・ザ・ミドル攻撃は、攻撃者が同時に3つの鍵(TLSセッション鍵、ケルベロスセッション鍵およびRSA証明書公開鍵)すべてを所有しているわけではないので、排除される。
【0038】
本発明の新規の特徴は、X−AnonymousTLSと呼ばれる新規の拡張の導入である。動作中、X−AnonymousTLSは、証明書検証がないことを除いて、STARTTLSのように振る舞う。したがって、TLSは、本発明に関連して、保全性およびプライバシ保護を提供するために利用されるのであって、必ずしも認証を提供するためではないことが理解されるべきである。X−AnonymousTLSによって使用される証明書は、メモリストアで生成された自己署名RSA証明書である。X−AnonymousTLSは、X−EXPS MUTUALGSSAPIと連係して動作する。さらに、本発明は、このプロトコルシーケンスを実施する。さらに、サーバは、「MUTUALGSSAPIHASH」と呼ばれる新規の拡張の下で受け入れ可能であると考えるチャレンジ−応答サブプロトコルで使用されるハッシュアルゴリズムを通知することができる。クライアントは適切と考えるものを選択し、サーバに送信される第1のブロブ(たとえば図5の506)にその選択を示すことができる。
【0039】
図6は、通常の成功したX−AnonymousTLS+MUTUALGSSAPIセッションの下での例示的プロトコルシーケンスを示す。下記は図6の動作説明による動作である。
【0040】
1)SmtpOutがそれ自体のサーバFQDN(SmtpOutFQDN)と共にehloをSmtpInに送信する。
【0041】
2)SMTP RFCによって、SmtpInがそれ自体のFQDN(SmtpInFQDN)ならびにx−anonymoustlsを通知するバナーと共に応答する。SmtpInはまた、同時にstarttlsを通知することができる。MUTUALGSSAPIは、x−anonymoustlsが確立されるまで通知されない。
【0042】
3)SmtpOutは、SmtpInとのx−anonymoustlsネゴシエーションをすることを選択する。結果として、TLSセッションが確立される。
【0043】
4)SMTP RFCによって、SmtpOutが別のehloをSMTPに送信する。
【0044】
5)SmtpInは、今度はX−EXPS MUTUALGSSAPIのサポートを示すバナーと共に応答する。同時に、starttlsおよびx−anonymoustlsは両方とも、セッションがすでにTLSになっているので、バナーから除去される。さらに、SmtpInはまた、MUTUALGSSAPIプロトコルで使用されるハッシュ法としてSHA256およびSHA1を両方ともサポートすることを通知する。
【0045】
6)SmtpOutが、ehlo応答で取得されたSmtpInFQDNを使用してSmtpInのためのケルベロスチケットを取得する。チケットは、上記の図ではISC1として表されている。この時点で、SmtpOutは、ケルベロスセッション鍵ならびにTLS共有秘密鍵を取得している。したがって、SmtpOutは、チャレンジ=SHA256(KerberosKey+TLSKey+CertPubKey)を構成することができる。SmtpOutは、より安全なのでSHA256を選択する。最後に、SmtpOutは、選択したハッシュ法、ケルベロスチケット、およびチャレンジをSmtpInに送信する。この時点で、SmtpOutに関する限り、アウトバウンド(outbound)ケルベロス認証は終了し、チャレンジは送信されてしまっているが、応答は検証されていない。
【0046】
7)SmtpInがステップ6におけるペイロードを解析する。SmtpInは、SmtpOutがチャレンジ/応答サブプロトコルで使用されるハッシュのためにSHA256を選択したことを知っている。SmtpInが、SmtpOutのケルベロスチケット(ISC1)を検証する。ケルベロスの下で、このコールは、成功するかまたは別のチケットトークンを生成せずに失敗するはずである。チケット検証が成功した場合、SmtpInはSmtpOutのチャレンジを検証し、応答を生成する。成功した場合、SmtpInはSmtpOutを認証してしまっている。SmtpInは、SmtpOutへのチケットを取得しようとする前に、SmtpOutのトークンに対する完全な認可チェックをする。認証も認可も完了した後で、SmtpInは、SmtpOutにアクセスするためにケルベロスチケット(ISC2)を取得しようとする。最後に、SmtpInは、ISC2および応答をSmtpOutに送信し返す。この時点で、SmtpInは、SmtpOutを十分に認証し認可してしまっている。
【0047】
8)SmtpOutは、ISC2+応答を解析する。SmtpOutは、最初に応答を検証する。成功した場合、SmtpOutは、SmtpInのトークンを取得するためにISC2を検証し始める。これも成功した場合、SmtpOutは、SmtpInを認可するためにステップ7の場合と同じ認可チェックを行う。次いで、SmtpOutは、SmtpInを十分に認証し認可してしまう。
【0048】
9)SmtpIn側のいかなるフレーズにおけるいかなるエラー(たとえば、ケルベロスチケットの取得または検証の失敗、またはチャレンジ検証時のエラー)も、サーバ側に5xxエラーを送信させ切断させる。同様に、SmtpOut側のこのプロトコルシーケンスにおけるいかなるエラーも、SmtpOut側にセッションをキャンセルさせドロップさせる。
【0049】
次に、チャレンジ/応答機構の議論に移ると、チャレンジ/応答の1つの目的は、両側が同じケルベロスおよびTLSセッション鍵、ならびに自己署名RSA証明書の公開鍵を有していることを証明することである。ケルベロスプロトコルに基づいて、SmtpOutは常にチャレンジャである。いかなるハッシュアルゴリズムでも、本発明の代替態様で利用可能なことが理解されるべきである。一態様では、
チャレンジ=SHA256(KerberosKey+TlsKey+CertPubKey)
応答=SHA256(チャレンジ+KerberosKey+TlsKey+CertPubKey)
である。
【0050】
サーバがそれ自体のデータに基づいて同じハッシュを計算した場合、チャレンジャは3つの鍵すべての所有を証明する。攻撃者は3つの鍵すべてを知ることができるわけではないことが理解されるであろう。応答者は、3つの鍵およびチャレンジのバージョンをハッシュの中に入れることにより3つの鍵すべての所有を証明することができる。相手は、同じ情報を所有している唯一の他のパーティなので、検証することができるであろう。攻撃者(MITM)は、CertPubKeyがチャレンジ応答に含まれているので、クライアントおよびサーバに別個のTLSセッションを行わせ、それでもなお同じTLSセッション鍵を生成させることはできない。これは、本質的に、TLSに対する従来のMITM攻撃を防止する証明書検証に相当する。
【0051】
認証ステートマシン(state machine)に関して、各側は、ネゴシエーション状態を追跡するために、以下の状態変数を有する。
【0052】
・None
・InboundSecured
・OutboundSecured
・Success−−インバウンドおよびアウトバウンドが両方とも安全にされ、チャレンジ/応答が検証される。
【0053】
両方の認証指示が成功であった場合、安全なチャネルが確立されることができる。さらに、チャレンジ/応答状態が検証されることができる。さらに、各側は、認可チェックのためにリモート(remote)のアクセストークン(access token)を所有している。
【0054】
本発明は、TLS+MUTUALGSSAPIのセキュリティ分析を開示する。ハッカーは多分3つの鍵(たとえば、ケルベロス、TLSセッション鍵およびCertPubKey)すべてを知ることができるわけではないので、TLS+MUTUALGSSAPIはMITM攻撃を防止することができる。ハッカーがサーバAおよびサーバBとの別個のTLS会話を真ん中に挿入しこれに関与した場合、攻撃者はケルベロスセッション鍵のないチャレンジ応答によって検出されるであろう。攻撃者は検出されないチャネルを復号または改変することはできないであろうから、ハッカーはサーバAとサーバBとの間の直接TLS会話を盗聴することはできないであろう。
【0055】
前述のように、MITM攻撃を防止するために、CertPubKey(または同等物)がチャレンジ応答プロトコルに含まれなければならない。これを実施するために、x−anonymoustlsは、自己署名RSA証明書(または同等物)をオンザフライで生成し、それをインメモリストア(in-memory store)に格納する。RSA鍵交換の下で、クライアントがサーバの証明書を検証しない場合、MITM攻撃は、クライアントとサーバの両方に攻撃者と同じTLSセッション鍵を生成させることが可能である。MITM攻撃は、そうすることができる場合、チャレンジ/応答プロトコルの目的を無効にする。したがって、本発明は、この攻撃を無効にするために、チャレンジ応答にRSA証明書の公開鍵を含める。
【0056】
それでもなお、可能な攻撃は、TLSとMUTUALGSSAPIの結合を解くために、プロトコル実施エラーを利用することができる。したがって、本発明の新規の設計は、X−AnonymousTLSおよびEXPS MUTUALGSSAPIが緊密に結合されたシーケンスであることを強調する。最後に、いかなる他のセキュリティ対策の場合とも同様に、両側のサーバの完全な妥協が、TLS+MUTUALGSSAPI機構を完全に無効にする。
【0057】
次に、図7を参照すると、セッションセキュリティに関する開示されたアーキテクチャを実行するために動作可能なコンピュータのブロック図が示されている。本発明の様々な態様のための追加のコンテキストを提供するために、図7および以下の議論は、本発明の様々な態様が実施されることができる適切なコンピューティング環境700の簡潔な一般的説明を提供することを意図するものである。本発明は、上記で、1つまたは複数のコンピュータ上で実行することができるコンピュータ実行可能命令の一般的コンテキストで説明されてきたが、本発明はまた、他のプログラムモジュールと併せて、および/またはハードウェアとソフトウェアの組合せとして、実施されることができることを当業者は理解するであろう。
【0058】
一般に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実施するルーチン、プログラム、コンポーネント、データ構造などを含む。さらに、本発明の方法は、シングルプロセッサまたはマルチプロセッサコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、ならびにそれぞれが1つまたは複数の関連装置に動作可能に結合されたパーソナルコンピュータ、ハンドヘルドコンピューティング装置、マイクロプロセッサベースのまたはプログラマブルコンシューマ電子機器などを含めて、他のコンピュータシステム構成で実施されることができることを当業者は理解するであろう。
【0059】
本発明の図示されている諸態様はまた、いくつかのタスクが通信ネットワークを介してリンクされたリモート処理装置によって実行される分散コンピューティング環境で実施されることができる。分散コンピューティング環境では、プログラムモジュールは、ローカルメモリ記憶装置とリモートメモリ記憶装置の両方に配置されることができる。
【0060】
コンピュータは、通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータによってアクセス可能ないかなる利用可能な媒体でもよく、揮発性媒体と不揮発性媒体、取り外し可能な媒体と取り外し不可能な媒体の両方を含む。例として、限定としてではなく、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を備えることができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータの格納のためのいかなる方法または技術ででも実施される揮発性媒体と不揮発性媒体、取り外し可能な媒体と取り外し不可能な媒体の両方を含む。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、あるいは、所望の情報を格納するために使用されることができ、コンピュータによってアクセス可能な他のいかなる媒体をも含むが、それらに限定されない。
【0061】
通信媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュール、あるいは、搬送波または他のトランスポート機構などの変調データ信号内の他のデータを包含し、いかなる情報配送媒体をも含む。用語「変調データ信号」は、信号内の情報をエンコードするようなやり方で設定または変更された特性のうちの1つまたは複数を有する信号を意味する。通信媒体は、例として、しかし限定としてではなく、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響、RF、赤外線および他の無線媒体などの無線媒体を含む。上記のいずれかの組合せもまた、コンピュータ可読媒体の範囲内に含まれるべきである。
【0062】
再度図7を参照すると、本発明の様々な態様を実施するための例示的環境700は、コンピュータ702を含み、コンピュータ702は処理ユニット704、システムメモリ706およびシステムバス708を含む。システムバス708は、システムメモリ706を含むがそれに限定されないシステム構成要素を処理ユニット704に結合する。処理ユニット704は、様々な市販のプロセッサのいずれでもよい。デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャもまた処理ユニット704として利用されることができる。
【0063】
システムバス708は、(メモリコントローラのある、またはない)メモリバス、周辺バス、および様々な市販のバスアーキテクチャのいずれかを使用するローカルバスにさらに相互接続するいくつかのバス構造タイプのいずれでもよい。システムメモリ706は、読み出し専用メモリ(ROM)710およびランダムアクセスメモリ(RAM)712を含む。基本入出力システム(BIOS)は、ROM、EPROM、EEPROMなどの不揮発性メモリ710に格納されており、そのBIOSには、起動中などにコンピュータ702の中の構成要素間で情報を転送するのに役立つ基本ルーチンが入っている。RAM712は、データをキャッシュするためのスタティックRAMなどの高速RAMも含む。
【0064】
コンピュータ702は、適切なシャーシ(chassis)(図示されていない)で外部使用のために構成されてもよい内蔵ハードディスクドライブ(HDD)714(たとえばEIDE、SATA)、(たとえば、取り外し可能なディスケット718から読み出すまたはそれに書き込むための)磁気フロッピー(登録商標)ディスクドライブ(FDD)716、および(たとえば、CD−ROMディスク722を読む、またはDVDなど他の高容量光媒体から読み出すまたはそれに書き込むための)光ディスクドライブ720をさらに含む。ハードディスクドライブ714、磁気ディスクドライブ716および光ディスクドライブ720は、それぞれ、ハードディスクドライブインターフェース724、磁気ディスクドライブインターフェース726および光ドライブインターフェース728によってシステムバス708に接続されることができる。外付けドライブ実装形態のためのインターフェース724は、ユニバーサルシリアルバス(USB)技術とIEEE1394インターフェース技術の少なくとも1つまたは両方を含む。他の外付けドライブ接続技術は、本発明の企図の範囲内にある。
【0065】
ドライブおよびそれらの関連コンピュータ可読媒体は、データの不揮発性ストレージ、データ構造、コンピュータ実行可能命令などを提供する。コンピュータ702では、ドライブおよび媒体は、適切なデジタルフォーマットのいかなるデータのストレージにも対応する。上記のコンピュータ可読媒体の説明は、HDD、取り外し可能な磁気ディスケット、およびCDまたはDVDなどの取り外し可能な光媒体に言及しているが、ジップドライブ(zip drives)、磁気カセット、フラッシュメモリカード、カートリッジなど、コンピュータによって読み出し可能な他のタイプの媒体もまた例示的動作環境で使用されてもよいこと、さらに、いかなるそのような媒体にも本発明の方法を実施するためのコンピュータ実行可能命令が入っていてもよいことが当業者によって理解されるべきである。
【0066】
いくつかのプログラムモジュールは、オペレーティングシステム730、1つまたは複数のアプリケーションプログラム732、他のプログラムモジュール734およびプログラムデータ736を含むドライブおよびRAM712に格納されることができる。オペレーティングシステム、アプリケーション、モジュール、および/またはデータのすべてまたは一部は、RAM712にキャッシュされることもできる。本発明は、様々な市販のオペレーティングシステムまたはオペレーティングシステムの組合せを用いて実施されることができることが理解される。
【0067】
ユーザは、コマンドおよび情報を1つまたは複数の有線/無線入力装置、たとえばキーボード738、およびマウス740などのポインティングデバイスを介して、コンピュータ702に入力することができる。他の入力装置(図示されていない)には、マイクロホン、IRリモートコントロール、ジョイスティック、ゲームパッド、スタイラスペン、タッチスクリーンなどが含まれ得る。これらおよび他の入力装置は、しばしば、システムバス708に結合されている入力装置インターフェース742を介して処理ユニット704に接続されるが、パラレルポート、IEEE1394シリアルポート、ゲームポート、USBポート、IRインターフェースなど、他のインターフェースによって接続されることができる。
【0068】
モニタ744または他のタイプの表示装置も、ビデオアダプタ746などのインターフェースを介してシステムバス708に接続される。モニタ744のほかに、コンピュータは通常スピーカ、プリンタなど、他の周辺出力装置(図示されていない)を含む。
【0069】
コンピュータ702は、リモートコンピュータ748など、1つまたは複数のリモートコンピュータへの有線および/または無線通信を介した論理接続を使用してネットワーク接続された環境で動作することができる。リモートコンピュータ748は、ワークステーション、サーバコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサベースのエンタテインメント機器、ピアデバイスまたは他の一般的なネットワークノードでもよく、簡潔のためにメモリ/記憶装置750だけしか図示されていないが、通常、コンピュータ702に関して記述される要素の多くまたはすべてを含む。図示された論理接続は、ローカルエリアネットワーク(LAN)752および/またはより大きなネットワーク、たとえば広域ネットワーク(WAN)754への有線/無線接続を含む。そのようなLANおよびWANネットワーキング環境は、オフィスや会社では普通であり、それらのすべてがインターネットなどのグローバル通信ネットワークに接続することができるイントラネットなどの企業全体のコンピュータネットワークを容易にする。
【0070】
LANネットワーク環境で使用される場合、コンピュータ702は、有線および/または無線通信ネットワークインターフェースまたはアダプタ756を通してローカルネットワーク752に接続される。アダプタ756は、無線アダプタ756と通信するためにその上に配置された無線アクセスポイントを含むこともできるLAN752への有線または無線通信を容易にすることができる。
【0071】
WANネットワーク環境で使用される場合、コンピュータ702は、モデム758を含んでもよく、またはWAN754上の通信サーバに接続される、または、インターネットとしてなど、WAN754を介した通信を確立する他の手段を有する。内蔵でも外付けでもよく、有線装置でも無線装置でもよいモデム758は、シリアルポートインターフェース742を介してシステムバス708に接続される。ネットワーク接続された環境では、コンピュータ702に関して図示されているプログラムモジュールまたはその一部は、リモートメモリ/記憶装置750に格納されることができる。図示されているネットワーク接続は例示的であり、コンピュータ間の通信リンクを確立する他の手段が使用されることができることが理解されるであろう。
【0072】
コンピュータ702は、無線通信に動作可能に配置された任意の無線装置またはエンティティ、たとえば、プリンタ、スキャナ、デスクトップコンピュータおよび/またはポータブルコンピュータ、携帯情報端末、通信衛星、無線で検出可能なタグに関連付けられた機器または場所(たとえばキオスク、新聞売り場、トイレ)の任意の一部分、および電話機と通信するように動作可能である。これは少なくともWi−Fi無線技術およびブルートゥース(商標)無線技術を含む。したがって、通信は、従来のネットワークの場合と同様に予め定義された構造でもよく、または単に少なくとも2つの装置間のアドホック通信でもよい。
【0073】
Wi−Fi、すなわちワイヤレスフェデリティは、ワイヤなしで、家庭のソファ、ホテルのベッドルーム、または会議中の会議室からインターネットへの通信を可能にする。Wi−Fiは、そのような装置、たとえばコンピュータが室内および戸外で、すなわち基地局の範囲内のどこででも、データを送受信することができるようにする携帯電話で使用されるものと同様の無線技術である。Wi−Fiネットワークは、安全で信頼できる高速無線接続を提供するために、IEEE802.11(a、b、gなど)と呼ばれる無線技術を使用する。Wi−Fiネットワークは、コンピュータを相互に、インターネットに、および(IEEE802.3またはイーサネット(登録商標)を使用する)有線ネットワークに接続するために使用されることができる。Wi−Fiネットワークは、たとえば11Mbps(802.11a)または54Mbps(802.11b)データ速度で、無許可の2.4GHzおよび5GHz無線帯域で、または、両方の帯域(デュアルバンド)を含む製品で動作し、したがって、ネットワークは、多くのオフィスで使用される10BaseT有線イーサネット(登録商標)ネットワークと同様のリアルワールドパフォーマンス(real-world performance)を提供することができる。
【0074】
次に、図8を参照すると、本発明による例示的コンピューティング環境800の概略ブロック図が示されている。システム800は、1つまたは複数のクライアント802を含む。クライアント802は、ハードウェアおよび/またはソフトウェア(たとえばスレッド、プロセス、コンピューティング装置)でよい。クライアント802は、たとえば、本発明を利用することにより、クッキーおよび/または関連コンテキスト情報を収容することができる。
【0075】
システム800はまた、1つまたは複数のサーバ804を含む。サーバ804も、ハードウェアおよび/またはソフトウェア(たとえばスレッド、プロセス、コンピューティング装置)でよい。サーバ804は、たとえば、本発明を利用することにより変換を行うスレッドを収容することができる。クライアント802とサーバ804との間の1つの可能な通信は、2つ以上のコンピュータプロセス間で送信されるように適応されたデータパケットの形ででもよい。データパケットは、クッキーおよび/または関連コンテキスト情報を含むことができる。システム800は、クライアント802とサーバ804との間の通信を容易にするために利用されることができる通信フレームワーク806(たとえば、インターネットなどのグローバル通信ネットワーク)を含む。
【0076】
有線(光ファイバを含む)および/または無線技術を介して通信を容易にすることができる。クライアント802は、クライアント802にローカルな情報(たとえばクッキーおよび/または関連コンテキスト情報)を格納するために利用されることができる1つまたは複数のクライアントデータストア808に動作可能に接続される。同様に、サーバ804は、サーバ804にローカルな情報を格納するために利用されることができる1つまたは複数のサーバデータストア810に動作可能に接続される。
【0077】
上記で説明されてきたものは、本発明の実施例を含む。もちろん、本発明を説明するために、構成要素または方法のすべての考えられる組合せを記述することは不可能であるが、本発明の多くの別の組合せおよび変更が可能であることを当業者は理解することができる。したがって、本発明は、添付の特許請求の範囲の要旨および範囲に入るすべてのそのような改変形態、変更形態および変形形態を包含することを意図するものである。さらに、用語「含む(includes)」は、本明細書または特許請求の範囲で使用される限り、当該用語は、「備える(comprising)」が請求項における移行語(transitional word)として利用される場合に解釈されるように、用語「備える(comprising)」と同様に包括的であることを意図するものである。
【図面の簡単な説明】
【0078】
【図1】本発明の一態様による全交換セッションセキュリティを容易にするシステムを示す図である。
【図2】本発明の一態様による送信セキュリティを容易にする手順の例示的フロー図である。
【図3】本発明の一態様によるチャネル暗号化コンポーネント、認証/認可コンポーネント、およびチャレンジ/応答コンポーネントを利用する一般的なシステムのブロック図である。
【図4】本発明の一態様による安全な通信を容易にするためにTLSコンポーネント、ケルベロス認証コンポーネントおよびRSA証明書コンポーネントを利用する特定のシステムのブロック図である。
【図5】本発明の一態様による完全なMUTUALGSSAPIバッファの例示的構造を示す図である。
【図6】本発明の一態様による通常の成功したx−anonymoustls+MUTUALGSSAPIセッションの下での例示的プロトコルシーケンスを示す図である。
【図7】開示されたアーキテクチャを実行するように動作可能なコンピュータのブロック図である。
【図8】本発明による例示的コンピューティング環境の概略ブロック図である。

【特許請求の範囲】
【請求項1】
2つのサーバ間の通信を安全にすることを容易にするシステムであって、
前記2つのサーバのうちのいずれの1つでもよいメッセージの送信側を認証する相互認証コンポーネント(304)と、
前記2つのサーバのうちのもう一方である前記メッセージの受信側を認可する相互認可コンポーネント(304)と
を備えることを特徴とするシステム。
【請求項2】
前記メッセージのための通信チャネルを暗号的に安全にするチャネル暗号化コンポーネント(302)をさらに備えることを特徴とする請求項1に記載のシステム。
【請求項3】
前記暗号化コンポーネント(302)は前記通信チャネルを安全にするためにTLS機構(402)を利用することを特徴とする請求項2に記載のシステム。
【請求項4】
前記認証されたサーバおよび認可されたサーバのそれぞれの識別を検証するチャレンジ/応答コンポーネント(306)をさらに備えることを特徴とする請求項2に記載のシステム。
【請求項5】
前記相互認証コンポーネント(304)はケルベロス暗号機構(404)であることを特徴とする請求項1に記載のシステム。
【請求項6】
前記相互認可コンポーネント(304)はケルベロス暗号機構(404)であることを特徴とする請求項5に記載のシステム。
【請求項7】
前記メッセージはSMTPメッセージであることを特徴とする請求項1に記載のシステム。
【請求項8】
前記暗号化コンポーネント(302)は前記通信チャネルを安全にするためにTLS機構(402)を利用し、前記相互認証コンポーネント(304)はケルベロス暗号機構(404)であり、前記相互認可コンポーネント(304)はケルベロス暗号機構(404)であることを特徴とする請求項2に記載のシステム。
【請求項9】
2つのサーバ間のSMTPトラフィックを安全にするコンピュータ実装方法であって、
前記SMTPトラフィックの送信側を認証するステップと、
前記SMTPトラフィックの受信側を認可するステップと
を備えることを特徴とする方法。
【請求項10】
前記認証するステップおよび認可するステップはケルベロス暗号技術を利用することを特徴とする請求項9に記載の方法。
【請求項11】
前記SMTPトラフィックの送信を容易にする通信チャネルを暗号化するステップをさらに備えることを特徴とする請求項10に記載の方法。
【請求項12】
前記暗号化するステップは前記チャネルを安全にするためにTLS技術を利用することを特徴とする請求項11に記載の方法。
【請求項13】
前記送信側と前記受信側との間の通信を安全にするために前記受信側にチャレンジするステップをさらに備えることを特徴とする請求項12に記載の方法。
【請求項14】
認可されていないマン・イン・ザ・ミドル攻撃を回避するために前記受信側からの応答を分析するステップをさらに備えることを特徴とする請求項13に記載の方法。
【請求項15】
2つのExchangeサーバ間の通信のセキュリティを容易にするシステムであって、
第1のExchangeサーバからメッセージの送信側を認証する手段と、
第2のExchangeサーバで前記メッセージの受信側を認可する手段と
を備えることを特徴とするシステム。
【請求項16】
前記メッセージのための通信チャネルを安全にする手段をさらに備えることを特徴とする請求項15に記載のシステム。
【請求項17】
前記送信側および前記受信側の識別を検証する手段をさらに備えることを特徴とする請求項16に記載のシステム。
【請求項18】
前記通信チャネルを安全にする前記手段はTLS機構であることを特徴とする請求項17に記載のシステム。
【請求項19】
前記識別を検証する前記手段はチャレンジ/応答機構であることを特徴とする請求項18に記載のシステム。
【請求項20】
前記送信側を認証する手段および前記受信側を認可する手段はケルベロス暗号機構であることを特徴とする請求項19に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公表番号】特表2009−514349(P2009−514349A)
【公表日】平成21年4月2日(2009.4.2)
【国際特許分類】
【出願番号】特願2008−537721(P2008−537721)
【出願日】平成18年10月3日(2006.10.3)
【国際出願番号】PCT/US2006/038240
【国際公開番号】WO2007/053255
【国際公開日】平成19年5月10日(2007.5.10)
【出願人】(500046438)マイクロソフト コーポレーション (3,165)
【Fターム(参考)】