(57)【要約】  通信ネットワーク内、特に無線ローカルエリアネットワーク（ＷＬＡＮ）内の２ノード間で秘密鍵を確立する方法において、鍵交換が行われているという事実を隠蔽する。本方法では、一方のノードである第１のノード（Ｂ）が、他方のノードである第２のノード（Ａ）により受信可能な、それぞれ第１の鍵（Ｋｉ）を含みそれぞれ送信前に第２の鍵（ｋｉ）で暗号化された１つまたは複数のパケット（Ｐｉ）をブロードキャストする。第２のノード（Ａ）が、受信したパケット（Ｐｉ）のうちから１つのパケット（Ｐｍ）をランダムに選択し、第１の鍵（Ｋｍ）を取得するために、選択したパケット（Ｐｍ）の暗号化を解除する。第２のノード（Ａ）が、鍵交換プロトコルを開始し、解読した鍵（Ｋｍ）を用いて、該鍵交換プロトコルを開始するために送信すべきメッセージを暗号化する。
2009545264.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワーク内、特に無線ローカルエリアネットワーク（ＷＬＡＮ）内の２ノード間で秘密鍵を確立する方法において、
一方のノードである第１のノード（Ｂ）が、他方のノードである第２のノード（Ａ）により受信可能な、それぞれ第１の鍵（Ｋｉ）を含みそれぞれ送信前に第２の鍵（ｋｉ）で暗号化された１つまたは複数のパケット（Ｐｉ）をブロードキャストするステップと、
前記第２のノード（Ａ）が、受信したパケット（Ｐｉ）のうちから１つのパケット（Ｐｍ）をランダムに選択し、第１の鍵（Ｋｍ）を取得するために、選択したパケット（Ｐｍ）の暗号化を解除するステップと、
前記第２のノード（Ａ）が、鍵交換プロトコルを開始し、解読した鍵（Ｋｍ）を用いて、該鍵交換プロトコルを開始するために送信すべきメッセージを暗号化するステップと
を含むことを特徴とする、秘密鍵を確立する方法。
【請求項２】
前記第１のノード（Ｂ）による前記パケット（Ｐｉ）の送信と、前記第２のノードによる前記暗号化の解除および／または前記鍵交換の開始との間に、あらかじめ設定可能な時間を設けることを特徴とする請求項１に記載の方法。
【請求項３】
前記第１のノード（Ｂ）が、送信した鍵（Ｋｉ）のリストを記憶することを特徴とする請求項１または２に記載の方法。
【請求項４】
前記第１のノード（Ｂ）が、前記第２のノード（Ａ）の鍵交換プロトコル開始メッセージを解読するために、記憶している鍵（Ｋｉ）を検査することを特徴とする請求項３に記載の方法。
【請求項５】
前記第１のノード（Ｂ）が、得られた鍵（Ｋｍ）を用いて、前記鍵交換プロトコルの自己のメッセージを暗号化することを特徴とする請求項４に記載の方法。
【請求項６】
前記第２の鍵（ｋｉ）を用いた前記パケット（Ｐｉ）の暗号化が、容易に解除可能な暗号化であることを特徴とする請求項１ないし５のいずれか１項に記載の方法。
【請求項７】
前記第２の鍵（ｋｉ）の長さが、それぞれのセキュリティ要件に従って設定されることを特徴とする請求項１ないし６のいずれか１項に記載の方法。
【請求項８】
ＲＣ５暗号化が、前記パケット（Ｐｉ）を暗号化するために用いられることを特徴とする請求項１ないし７のいずれか１項に記載の方法。
【請求項９】
前記パケット（Ｐｉ）とともに転送される前記第１の鍵（Ｋｉ）と、前記パケット（Ｐｉ）を暗号化するために用いられる前記第２の鍵（ｋｉ）とが、同一であるように選択されることを特徴とする請求項１ないし８のいずれか１項に記載の方法。
【請求項１０】
前記一方のノード（Ａ，Ｂ）がネットワークのアクセスポイント（ＡＰ）であり、前記他方のノード（Ｂ，Ａ）が該アクセスポイント（ＡＰ）に付属するノードであることを特徴とする請求項１ないし９のいずれか１項に記載の方法。
【請求項１１】
前記パケット（Ｐｉ）が周期的に送信されることを特徴とする請求項１ないし１０のいずれか１項に記載の方法。
【請求項１２】
前記パケット（Ｐｉ）がビーコンであることを特徴とする請求項１ないし１１のいずれか１項に記載の方法。
【請求項１３】
前記開始された鍵交換プロトコルがディフィ・ヘルマン鍵交換であることを特徴とする請求項１ないし１２のいずれか１項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワーク内、特に無線ローカルエリアネットワーク（ＷＬＡＮ）内の２ノード間で秘密鍵を確立する方法に関する。
【背景技術】
【０００２】
通信ネットワーク内の２ノード間で秘密鍵を確立するために、鍵交換プロトルが一般的に用いられている。鍵交換プロトコルとして、例えば、ディフィ・ヘルマンアルゴリズム、特に、楕円曲線上のディフィ・ヘルマンアルゴリズムや、ＲＳＡ法が知られている。既知の方法のセキュリティは、いわゆる一方向性関数の適用に基づいている。すなわち、ディフィ・ヘルマンアルゴリズムは、累乗演算が非常に簡単な計算であるのに対して、ある数の離散対数を求める計算は、きわめて多くの手間をかけなければできないという事実を利用している。
【０００３】
既知の方法を実行した後、アルゴリズムに関わる当事者ＡおよびＢは、自分たちのみが知る秘密鍵Ｋを処分する。しかし、既知の方法の場合、鍵交換自体は秘密でなく、このことが、環境によっては不利益となり得る。例えば、開始側当事者は、ディフィ・ヘルマン鍵交換を実行する際に、まず、セキュアでない媒体を通じて２個の値を送信しなければならない。一般的な用語では、これらは素数ｐおよび生成元ｇである。そして、これらに基づいて、共有鍵ＫＤＨを、ＫＤＨ＝（ｇａ  ｍｏｄ  ｐ）ｂ  ｍｏｄ  ｐ＝（ｇｂ  ｍｏｄ  ｐ）ａ  ｍｏｄ  ｐ  により計算することができる。変数ａおよびｂは、当事者によって選択された乱数を表す。値ｇ、ｐと、一般的にはＡ＝ｇａ  ｍｏｄ  ｐ  をも含むメッセージを、セキュアでない媒体を通じて送信しているという事実だけからでも、このメッセージを傍受した攻撃者は、例えば、最も単純な場合として、鍵合意が行われていることや、誰が開始側当事者であるか、といったいくつかの結論を導くことができてしまう。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、本発明の目的は、通信ネットワーク内の２ノード間で秘密鍵を確立するための上記のような方法において、鍵交換が行われている事実が隠蔽されるように改良およびさらなる展開を行うことである。
【課題を解決するための手段】
【０００５】
本発明によれば、上記の目的は、請求項１に記載の方法によって達成される。請求項１に記載の通り、この方法は、
一方のノード（第１のノード）が、他方のノード（第２のノード）により受信可能な、それぞれ第１の鍵を含みそれぞれ送信前に第２の鍵で暗号化された１つまたは複数のパケットをブロードキャストするステップと、
第２のノードが、受信したパケットのうちから１つのパケットをランダムに選択し、第１の鍵を取得するために、選択したパケットの暗号化を解除するステップと、
第２のノードが、鍵交換プロトコルを開始し、解読した鍵を用いて、鍵交換プロトコルを開始するために送信すべきメッセージを暗号化するステップと
を含むことを特徴とする。
【０００６】
本発明によって初めて認識されたこととして、クリプトグラフィ的要素（データの暗号化）とステガノグラフィ的要素（データの不可視化）を互いに組み合わせたプロトコルを実行することにより、鍵交換の隠蔽が全体的に達成できる。ステガノグラフィ的要素とは、具体的には、一方のノードが１つまたは複数のパケットをブロードキャストし、各パケットが第１の鍵を含み、また各パケットがブロードキャストされる前に第２の鍵で暗号化されることを指す。パケットは第２のノードにより受信可能であり、第２のノードは、受信したパケットのうちから１つのパケットをランダムに選択する。全数探索を実行することにより、第２のノードは、選択したパケットの暗号化を解除して、そのパケットで転送されてきた第１の鍵を取得する。次のステップで、第２のノードは、解読した鍵を用いて、鍵交換プロトコルを開始する。具体的には、第２のノードは、鍵交換プロトコルを開始するために送信すべきメッセージを、解読した鍵を用いて暗号化する。
【０００７】
本発明による方法では、暗号化されたメッセージのみが、公開媒体、例えば公開のブロードキャストリンクを通じてブロードキャストされる。このため、メッセージが鍵交換プロトコルの一部であることや、鍵交換プロトコルを開始するためのものであることを、攻撃者が見出す可能性はない。たとえ攻撃者がパケットを解読できたとしても、そうして得られた情報は、それ自体では、すなわち攻撃者が（相当の）追加的な労力をつぎ込まない限り、無価値と考えられる。というのは、攻撃者は、他方のノードが複数のパケットからランダムに選択することになるパケットがどれであるかを知らないからである。
【０００８】
さらにセキュリティを向上させるため、第１のノードによる第１の鍵を含むパケット（１つまたは複数）の送信と、第２のノードによる暗号化の解除または鍵交換の開始との間に、あらかじめ設定可能な長さの待機時間を挿入することによって、ステガノグラフィ的要素を強化してもよい。この時間の間、ネットワークの残りのノードは通常の通信に関する暗号化されたメッセージを交換しているため、攻撃者は、行われている鍵交換について何かを見出すことが一層困難となる。
【０００９】
有利な実施形態では、第１のノードが、送信した第１の鍵のリストを記憶する。第１のノードは、第２のノードによって送信された鍵交換プロトコル開始メッセージを受信すると、記憶されている鍵の１つを用いて受信したメッセージを解読すべく、リストを探索することができる。第１のノードは、鍵交換プロトコル開始メッセージが暗号化された際に用いられた鍵を発見すると、次のステップで、発見した鍵を用いて、自己の側から送信する鍵交換プロトコルのメッセージを暗号化することができる。別の実施形態として、相手側当事者には利用可能だが攻撃者には利用可能でない識別子をメッセージに付加してもよい。この目的のため、例えば、使用されるそれぞれの鍵を識別する乱数を用いることができる。
【００１０】
有利な態様では、第１のノードが送信パケットを暗号化する際に用いる第２の鍵は、暗号化が解除しやすいように設計される。パケットが公開チャネルを通じて伝送されているときに、軽い暗号化を攻撃者が解除できることは、解読しても攻撃者は何ら情報が得られないという意味で、問題とならない。というのは、攻撃者は、第２のノードが複数のパケットからどのパケットを選択するかを知らないからである。
【００１１】
本方法のフレキシブルな応用に関して、第１のノードがパケットを暗号化する際に用いる鍵の長さは、それぞれのセキュリティ要件に従って設定できる。具体例として、ＲＣ５暗号化を選ぶと、鍵長１６〜６４ビットのＲＣ５暗号化が、可能性のある多くの応用において適切と想定される。
【００１２】
単純化した形態として、それぞれのパケットで転送される第１の鍵Ｋｉと、対応するパケットを暗号化するために用いられる第２の鍵ｋｉとを同一であるように選ぶことができる。
【００１３】
具体例として、一方のノードを例えばネットワークのアクセスポイントとし、他方のノードを、そのアクセスポイントに付属するノードまたはそのアクセスポイントを付属させるノードとすることができる。本方法は、アクセスポイントとそのノードとの間で、アクセスポイントにそのノードを登録する場合に実行することができる。
【００１４】
さらにセキュリティを向上させるため、パケットを周期的にブロードキャストすることができる。これもステガノグラフィ的要素を強化する。というのは、この手続きは、新規ノードがネットワークに登録を行うかどうかとは独立に実行されるからである。このため、攻撃者は、鍵交換がいつ開始されるかを知ることが不可能である。というのは、パケットを送信するプロセスは、ネットワーク内でノードを関連づける手続きとは全く無関係だからである。不要なデータトラフィックを避けるため、特にＷＬＡＮに適用する場合には、第１のノードによって送信されるパケットは、通常１００ミリ秒の規則的時間間隔でともかく送信されるビーコンとしてもよい。すなわち、パケットによって転送される第１の鍵Ｋｉは、ビーコンの未使用フィールドに統合される。
【００１５】
別法として、ネットワーク内で送信されるすべてのパケットに第１の鍵Ｋｉを付加することも可能である。
【００１６】
また、具体例として、開始される鍵交換はディフィ・ヘルマン鍵交換とすることが可能である。他の方法、例えばＲＳＡも考えられる。
【００１７】
本発明を有利な態様で実施するにはさまざまの可能性がある。このためには、一方で、請求項１に従属する諸請求項を参照し、他方で、図面により例示された、本発明の好ましい実施形態についての以下の説明を参照されたい。図面を用いて本発明の好ましい実施形態を説明する際には、本発明の教示による好ましい実施形態一般およびその変形例についても説明する。
【図面の簡単な説明】
【００１８】
【図１】アクセスポイントと、付属するノードとの間で秘密鍵を確立するための、本発明による方法の実施形態の一例を模式的に示す。
【発明を実施するための形態】
【００１９】
図１は、無線ローカルエリアネットワークのアクセスポイントＡＰと、付属するノードＡを用いて、本発明による方法の実施形態の一例を模式的に示している。
【００２０】
第１のステップで、アクセスポイントＡＰが、複数のパケットＰｉを作成する。パケットＰｉはそれぞれ第１の鍵Ｋｉを含む。アクセスポイントＡＰは、パケットＰｉがノードＡにより受信可能となるように、各パケットＰｉを第２の鍵ｋｉで暗号化し、無線リンクを通じて、上記暗号化したパケットＰｉを送信する。具体的に図示した実施形態では、パケットＰｉは、ブロック暗号ＲＣ５で暗号化される。
【００２１】
次のステップで、ノードＡは、受信した複数のパケットＰｉからランダムにパケットＰｍを選択する。全数探索を実行することにより、ノードＡは、選択したパケットＰｍの暗号化を解除し、それにより鍵Ｋｍを取得する。この全数探索は、ほどほどの手間で実行できる。というのは、パケットＰｉはアクセスポイントＡＰによって、比較的弱い暗号方式で暗号化されているからである。
【００２２】
第３のステップで、ノードＡは、得られた鍵Ｋｍを用いて、アクセスポイントＡＰとの間で鍵交換プロトコルを開始する。図示した実施形態では、鍵交換プロトコルは、既知のディフィ・ヘルマンアルゴリズムに従う。具体的には、ノードＡが、自分には既知となるように、２≦ｇ≦ｐ−２を満たす素数ｐと生成元ｇを生成する。ノードＡは、値ｇ、ｐおよびＡを含むメッセージを送信する。ここで値Ａは、Ａ＝ｇａ  ｍｏｄ  ｐ  に従って計算する。ａは、ノードＡによって選択される、公開されない乱数である。値ｇ、ｐ、Ａを含むメッセージは暗号化されて送信される。その際、ノードＡは、得られた鍵Ｋｍを用いてメッセージを暗号化する。
【００２３】
アクセスポイントＡＰは、ノードＡから受信したメッセージを解読する。ここで、図示した実施形態では、アクセスポイントＡＰは、パケットＰｉとともに送信した第１の鍵Ｋｉをすべて含むテーブルを記憶している。アクセスポイントＡＰはこのテーブルにアクセスして鍵を次々と検査し、鍵Ｋｍにヒットしたら、それを用いることで解読が成功する。そして、アクセスポイントＡＰは、自ら乱数ｂを生成し、Ｂ＝ｇｂ  ｍｏｄ  ｐ  を計算し、得られた鍵Ｋｍを用いて値Ｂを暗号化してノードＡへ送信する。
【００２４】
最後に、新しい鍵ＫＤＨを、ノードＡの側では  Ｂａ  ｍｏｄ  ｐ  により、アクセスポイントＡＰの側では  Ａｂ  ｍｏｄ  ｐ  によって、計算する。そして、新しい鍵ＫＤＨは、ノードＡとアクセスポイントＡＰとの間のその後のデータ交換を暗号化するために用いられる。
【００２５】
上記の説明および添付図面の記載に基づいて、当業者は本発明の多くの変形例および他の実施形態に想到しうるであろう。したがって、本発明は、開示した具体的実施形態に限定されるものではなく、変形例および他の実施形態も、添付の特許請求の範囲内に含まれるものと理解すべきである。本明細書では特定の用語を用いているが、それらは包括的・説明的意味でのみ用いられており、限定を目的としたものではない。
【図１】
2009545264.tif 000003
【国際調査報告】
2009545264.tif 000004
2009545264.tif 000005