【手続補正書】
【提出日】平成18年4月18日(2006.4.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第３の装置による第１および第２の装置の認証のための方法であって、該第１および該第２の装置の各々は共有の秘密キー値ｈを有し、該装置の各々は公開キー値Ｐの利用が可能で、該公開キーＰは積ｈＰから該秘密キー値ｈを導出する動作が計算的に困難な動作になるように選択され、
該方法は、
該第１の装置が該積ｈＰに等しい値を有する第１の式を計算し、該第２装置が該積ｈＰに等しい値を有する第２の式を計算するように、該第１および該第２の装置が、該第３の装置を用いて該第１の値のセットおよび別の第２の値のセットをお互いに通信するステップと、
該第３の装置が該第１の装置と該第２の装置の間で通信されている第１および第２の値のセットのコピーを保持するステップと
を包含し、
該方法は、該第３の装置が、該第１および該第２の装置の認証のために該第１の式および該第２の式の値を計算し比較するステップをさらに包含する、方法。
【請求項２】
前記第１装置が無線携帯装置であり、前記第２装置がエンタプライズサーバーであり、前記第３装置がルータであり、該第３の装置が該第１の装置および該第２の装置を認証するステップは、該第１の装置と該第２の装置のと間で通信チャンネルを確立するステップを包含する、請求項１に記載の方法。
【請求項３】
前記確立された通信チャンネルは、該チャンネルの一部として前記第３の装置を含み、該第３の装置は前記第１の装置と前記第２の装置との間で通信された値を保持し、前記方法は、該第２の装置と該第３の装置との間で該通信チャンネルを閉じるステップをさらに包含し、該チャンネルを閉じるステップは、該第２の装置および該第３の装置がクロージング認証値のセットを交換して、該保持された値および該通信チャンネルを閉じることを認証をするための該クロージング認証値に基づいて、該第３装置が式の計算を実行することを可能にするステップを包含する、請求項２に記載の方法。
【請求項４】
前記装置の各々は、定義されたグループＥ（Ｆｑ）およびＺｐに対して数学的動作を実行するように動作し、ここでＦｑはプライム次数ｑの有限の領域であり、該数学的動作は該グループに対して定義されるスカラ乗法を含み、該デバイスの各々に対して利用可能な前記公開キーは、次数ｐの該グループＥ（Ｆｑ）のプライムサブグループを生成し、
該方法は、
前記第１の装置が、１＜ｒＤ＜ｐ−１になるようにランダム値ｒＤを取得し、かつ、値ＲＤ＝ｒＤＰを計算するステップと、
該第１の装置が、該値ＲＤを前記第３の装置に通信するステップと、
該第３の装置が、該値ＲＤのコピーを保持し、かつ、該値ＲＤを前記第２の装置に転送するステップと、
該第２の装置が、１＜ｒＢ＜ｐ−１となるようにランダム値ｒＢを取得し、かつ、値ＲＢ＝ｒＢＰを計算し、ここでＲＤと等しくならないようにＲＢが決定され、該第２の装置が、１＜ｅＤ＜ｐ−１となるようにランダム値ｅＤを取得し、かつ、該第２の装置が、該値ｅＤおよびＲＢを該第３の装置に通信するステップと、
該第３装置が、該値ＲＢおよびｅＤのコピーを保持し、かつ、該値を該第１の装置に転送するステップと、
該第１の装置が、値ｙＤ＝ｈ−ｅＤｒＤ  ｍｏｄ  ｐを計算し、１＜ｅＢ＜ｐ−１となるようにランダム値ｅＢを取得し、かつ、ｙＤおよびｅＢを該第３の装置に通信するステップと、
該第３の装置が、該値ｙＤおよびｅＢのコピーを保持し、かつ、該値を該第２の装置に転送するステップと、
該第２の装置が、値ｙＢ＝ｈ−ｅＢｒＢ  ｍｏｄ  ｐを計算し、かつ、該値ｙＢを該第３の装置に通信するステップと、
条件ｙＢＰ＋ｅＢＲＢ＝ｙＤＰ＋ｅＤＲＤが満たされるとき、該第３の装置は、該第１および該第２の装置を認証するステップと
を包含する、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
条件ｙＢＰ＋ｅＢＲＢ＝ｈＰを満たされるとき、前記第１の装置が、前記第２装置を認証するステップをさらに包含する、請求項４に記載の方法。
【請求項６】
条件ｙＤＰ＋ｅＤＲＤ＝ｈＰを満たされるとき、前記第２の装置が、前記第１装置を認証するステップをさらに包含する、請求項４または請求項５に記載の方法。
【請求項７】
前記第１の装置は非認証識別子によって識別され、前記第２の装置は、キー値のセットを保持し、該セットは該第１の装置の秘密キー値と共有のキー値を含み、前記方法は、該第１の装置が該非認証識別子を該第２装置に通信し、それによって該第２装置が該キー値のセットから該第１装置の該秘密キー値と共有の該キー値を選択し得るステップを包含する、請求項４〜６のいずれか一項に記載の方法。
【請求項８】
共有の秘密値ｓから前記値ｈを導出するステップをさらに包含する、請求項４〜７のいずれか一項に記載の方法。
【請求項９】
前記値ｈを導出するステップは、前記共有の秘密値ｓの一方向性のハッシュ機能を実行するステップを包含する、請求項８に記載の方法。
【請求項１０】
１つ以上の前記第１、前記第２、前記第３の装置が、前記値ｅＤがゼロでなく、および／または前記値ｅＢがゼロではないことをチェックするステップをさらに包含する、請求項４〜９のいずれか一項に記載の方法。
【請求項１１】
１つ以上の前記第１、前記第２、前記第３の装置が、前記値ＲＢが無限遠点に等しくなく、および／または前記値ＲＤが無限遠点に等しくなく、および／または該値ＲＢが該値ＲＤに等しくないことをチェックするステップをさらに包含する、請求項４〜１０のいずれか一項に記載の方法。
【請求項１２】
前記通信チャンネルが前記第１の装置へのインターネットプロトコルアドレスの割当によって定義される、請求項２〜１１のいずれか一項に記載の方法。
【請求項１３】
前記第３の装置が前記値ｙＤ、Ｐ、ｅＤ、ＲＤを保持し、前記方法が前記第２の装置と該第３の装置との間の前記通信チャンネルをさらに閉じ、該チャンネルを閉じるステップは、
該第２の装置が、１＜ｒＣ＜ｐ−１となるようにランダム値ｒＣを取得し、かつ、値ＲＣ＝ｒＣＰを計算し、それによってＲＣがＲＢ、ＲＤの両方とは異なる値を有するように制約されるステップと、
該第２の装置が、該値ＲＣを第３の装置に通信するステップと、
該第３の装置が、１＜ｅＣ＜ｐ−１となるようにランダム値ｅＣを取得し、かつ、該値ｅＣを該第２の装置に通信するステップと、
条件ｙＣＰ＋ｅＣＲＣ＝ｙＤＰ＋ｅＤＲＤが満たされるとき、該第２の装置がクローズ動作を認証するステップと
を包含する、請求項３〜１２のいずれか一項に記載の方法。
【請求項１４】
前記第２の装置が、前記値ｅＣはゼロでないことをチェックするステップをさらに包含する、請求項１３に記載の方法。
【請求項１５】
前記第３の装置が、前記値ＲＣは無限遠点に等しくないことをチェックするステップをさらに包含する、請求項１３または請求項１４に記載の方法。
【請求項１６】
前記第２および前記第３の装置の１つまたは両方が、前記値ＲＣは前記値ＲＢに等しくなく、ならびに前記値ＲＤに等しくなく、および／または前記値ｅＣは前記値ｅＤに等しくなく、ならびに前記値にｅＢに等しくないことをチェックするステップをさらに包含する、請求項１３〜１５のいずれか一項に記載の方法。
【請求項１７】
媒体に組み入れられる実行可能なプログラムコードを有する媒体を備えたプログラム製品であって、該実行可能なプログラムコードが第１の装置、第２の装置、第３の装置上でさまざまに実行可能であり、かつ、請求項１〜１６のいずれかの一項に記載の前記方法を実行するように動作する、プログラム製品。
【請求項１８】
第１の装置と第２の装置と第３の装置とを備えたシステムであって、
該第１および該第２の装置の各々は共有の秘密キー値ｈを有し、該装置の各々は公開キーＰが利用可能で、該公開キーＰは積ｈＰから該秘密キー値ｈを導出する動作が計算的に困難な動作であるように選択され、該第１の装置、該第２の装置および該第３の装置の各々はプログラムコードを格納し実行する記憶ユニットおよび処理装置を備え、
該プログラムコードは、該第３の装置を用いて該第１の装置と該第２の装置との間で第１の値のセットおよび別の第２の値のセットを通信させるように動作し、
該プログラムコードは、該積ｈＰに等しい値を有する第１の式を該第１の装置に計算させ、該積ｈＰに等しい値を有する第２の式を該第２の装置に計算させるように動作し、
該プログラムコードは、該第１の装置と該第２の装置との間で通信されている第１および第２の値のセットのコピーを該第３の装置に保持させるように動作し、
該プログラムコードは、該第１の装置および第２の装置を認証するために該第１の式の値と該第２の式の値とを該第３の装置に計算させ、比較させるように動作する、システム。
【請求項１９】
前記第１の装置が無線携帯装置であり、前記第２の装置がエンタプライズサーバーであり、前記第３の装置がルータであり、該第１の装置および該第２の装置を該第３の装置に認証させるように動作する前記プログラムコードは、該第１の装置と該第２の装置との間で通信チャンネルを確立するように動作するプログラムコードを含む、請求項１８に記載のシステム。
【請求項２０】
前記確立された通信チャンネルは、該チャンネルの一部として前記第３の装置を有し、該第３の装置は、前記第１の装置と前記第２の装置との間で通信された値を保持するためにメモリを備え、前記プログラムコードは、該第２の装置と該第３の装置のと間で該通信チャンネルを閉じるように動作するプログラムコードをさらに含み、該コードは、第２の装置と第３の装置との間でクロージング認証値のセットを交換して、該保持された値および該通信チャンネルを閉じることを認証するための該クロージング認証値に基づいて、該第３装置が式の計算を実行することを可能にする、請求項１９に記載のシステム。
【請求項２１】
前記装置の各々は、定義されたグループＥ（Ｆｑ）およびＺｐに対して数学的動作を実行するように動作し、ここでＦｑはプライム次数ｑの有限の領域であり、該数学的動作は該グループに対して定義されるスカラ乗法を含み、該装置の各々に対して利用可能な前記公開キーＰは、次数ｐのグループＥ（Ｆｑ）のプライムサブグループを生成し、
前記プログラムコードは、１＜ｒＤ＜ｐ−１になるようにランダム値ｒＤを該第１の装置に取得させ、かつ、値ＲＤ＝ｒＤＰを計算させるように動作し、
該プログラムコードは、該第１の装置に該値ＲＤを第３の装置に通信させるように動作し、
該プログラムコードは、該第３の装置に該値ＲＤのコピーを保持させ、かつ、該値ＲＤを該第２の装置に転送させるように動作し、
該プログラムコードは、１＜ｒＢ＜ｐ−１となるようにランダム値ｒＢを該第２の装置に取得させ、値ＲＢ＝ｒＢＰを計算させ、ここで、ＲＤと等しくならないようにＲＢが決定され、かつ、１＜ｅＤ＜ｐ−１となるようにランダム値ｅＤを該第２の装置に取得させ、かつ、該値ｅＤおよびＲＢを該第３の装置に通信させるように動作し、
該プログラムコードは、該値ＲＢおよびｅＤのコピーを該第３の装置に保持させ、かつ、該値を該第１の装置に転送させるように動作し、
該プログラムコードは、値ｙＤ＝ｈ−ｅＤｒＤ  ｍｏｄ  ｐを該第１の装置に計算させ、かつ、１＜ｅＢ＜ｐ−１となるようにランダム値ｅＢを第１の装置に取得させ、該第１の装置に値ｙＤおよびｅＢを該第３の装置に通信させるように動作し、
該プログラムコードは、該値ｙＤおよびｅＢのコピーを該第３の装置に保持させ、かつ、該値を該第２の装置に転送させるように動作し、
該プログラムコードは、値ｙＢ＝ｈ−ｅＢｒＢ  ｍｏｄ  ｐを該第２の装置に計算させ、該第２の装置に該値ｙＢを該第３の装置に通信させるように動作し、
該プログラムコードは、条件ｙＢＰ＋ｅＢＲＢ＝ｙＤＰ＋ｅＤＲＤが満たされるとき、該第１および該第２の装置を該第３の装置に認証させるように動作する、請求項１８〜２０のいずれか一項に記載のシステム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
本発明の別の局面によると、第３の装置による第１および第２の装置の認証のための方法が提供されている。第１および第２の装置はそれぞれ共通秘密キー値ｈを有する。装置は、それぞれ、定義されたグループＥ（Ｆｑ）およびＺｐで数学的作動を実行するのに操作的であり、ここでＦｑはプライム次数ｑの有限分野であり、グループＥ（Ｆｑ）およびＺｐを参照することで定義されるスカラ乗法を含み、各装置で利用可能な公開キーＰは、次数ｐのグループＥ（Ｆｑ）のプライム亜群を発生させ、
その方法は以下のステップを備える方法：
ａ）公開キーＰを獲得し、Ｐが次数ｐのグループＥ（Ｆｑ）のプライム亜群を発生させる、各装置が公開キーＰを利用可能にするステップ、
ｂ）第１の装置は、１＜ｒＤ＜ｐ−１になるようにランダム値ｒＤを獲得し、値ＲＤ＝ｒＤＰを計算するステップ、
ｃ）第１の装置が値ＲＤを第３の装置に通信させるステップ、
ｄ）第３の装置が値ＲＤのコピーを保持し、値ＲＤを第２の装置に転送させるステップ、ｅ）第２の装置は、１＜ｒＢ＜ｐ−１となるようにランダム値ｒＢを獲得し、値ＲＢ＝ｒＢＰを計算し、ここでＲＤと等しくならないようにＲＢが決定され、第２の装置は１＜ｅＤ＜ｐ−１となるようにランダム値ｅＤを獲得し、第２の装置は値ｅＤおよびＲＢを第３の装置と通信させるステップ、
ｆ）第３の装置は値ＲＢおよびｅＤのコピーを保持し、その値を第１の装置に転送するステップ、
ｇ）第１の装置は値ｙＤ＝ｈ−ｅＤｒＤｍｏｄｐを計算し、第１の装置は１＜ｅＢ＜ｐ−１となるようにランダム値ｅＢを獲得し、第１の装置はｙＤおよびｅＢを第３の装置と通信させるステップ、
ｈ）第３の装置は値ｙＤおよびｅＢのコピーを保持し、その値を第２の装置に転送させるステップ、
ｉ）第２の装置は値ｙＢ＝ｈ−ｅＢｒＢｍｏｄｐを計算し、第２の装置は値ｙＢを第３の装置と通信させるステップ、
ｊ）第３の装置は第１および第２の装置を認証し、状態ｙＢＰ＋ｅＢＲＢ＝ｙＤＰのとき、ｅＤＲＤが満足しているステップ。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
ｓ）そのプログラム・コードは、１＜ｒＢ＜ｐ−１となるように第２の装置にランダム値ｒＢを獲得させ、値ＲＢ＝ｒＢＰを計算させる。ここでＲＢは、ＲＤに等しくなく、１＜ｅＤ＜ｐ−１となるよう第２の装置にランダム値ｅＤを獲得させ、値ｅＤおよびＲＢを第３の装置と通信させるように決定される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
ｔ）そのプログラム・コードは、第３の装置に値ＲＢおよびｅＤのコピーを獲得させ、その値を第３の装置に転送させるように操作的である。