無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法
【課題】ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく(適当な置換を用いる)拡張認証プロトコル(EAP)群のためのシステムおよび方法を提供する。
【解決手段】EAP方式において、ECCアルゴリズムおよびSKEアルゴリズムを用いる。このECCおよびSKEに基づくEAPでは、無線通信機器とサーバとの間で交換される証明書はない。通信の際には、リプレイ攻撃を回避するため、無線通信機器側とサーバ側との間で置換法(素数p=2mod3を法として、乱数を3乗する)が用いられる。定義される置換:r→r3=r3modp(但しp=2mod3)は全単射写像である。
【解決手段】EAP方式において、ECCアルゴリズムおよびSKEアルゴリズムを用いる。このECCおよびSKEに基づくEAPでは、無線通信機器とサーバとの間で交換される証明書はない。通信の際には、リプレイ攻撃を回避するため、無線通信機器側とサーバ側との間で置換法(素数p=2mod3を法として、乱数を3乗する)が用いられる。定義される置換:r→r3=r3modp(但しp=2mod3)は全単射写像である。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、無線通信の分野に関する。特に、本願は、ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく軽量の拡張認証プロトコル(EAP)を用いることによる、少なくとも1つの無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法に関するものである。
【背景技術】
【0002】
移動通信および無線通信においては、一般的に、認証法を用いてネットワーク・アクセスを得る。アクセスを提供する(移動通信あるいは無線通信のための)通信サーバは、ユーザが本人であることを確認するための、プロセスおよびプロトコルのセットを備えていなければならない。ユーザのログオンを認証し、ユーザのネットワーク使用状況をモニタリングし、顧客への課金を行う標準的な手段が必要である。現在、上記基準を満たす、認証、認可、およびアカウンティング(AAA:Authentication,Authorization,Accounting)目的の規格およびプロトコルは存在している。しかしながら、それらの中には安全でないものがあり、それらのパフォーマンスは3G移動通信要件を満たさない。
【0003】
ところで、現在の移動通信および無線通信の認証方式は、証明書を使用している。認可プロトコルは、何らかの“課金証明書”という考えをサポートしている必要がある。このような証明書は、サイズ面で重く、モバイル・アプリケーションのパフォーマンスに影響する。主にモバイルバンキング部門における多くの機関により設定されている慎重な基準によると、無線メディアを利用するモバイル・アプリケーションの最適パフォーマンスを保証する助けとなる軽量のプロトコルが必要である。
【0004】
また、スマートフォン、PDA、セルラーフォン、および遠隔制御システムのような、モバイル機器および無線機器は、デジタル環境において、ますます重要な役割を果たすようになっている。モバイル機器および無線機器が広範囲に使用されることによって、新たにセキュリティとプライバシーの危険がもたらされ、また、モバイル機器の利用が広がると、顧客は、個人情報やトランザクションの痕跡をずっと残したままにして、時には、その機器をそのままポケットに入れて持ち歩くこともある。他の何らかのリンク可能な情報がメッセージに関連付けられている限り、個人情報を隠すことは無意味であり、真のプライバシーを与えることは難しいので、軽量のプロトコルを利用することは、大半のモバイル・アプリケーションおよび無線アプリケーションに対して効果的な解決を提供する助けとなるであろう。
【0005】
以下のいくつかの発明が、少なくとも1つの無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法を提供することに取り組んでいる。
【0006】
Leu等により出願された特許文献1は、ECCを採用した認証方法について開示している。これは、モバイル・ブロードキャストTVシステムに適用されるもので、このシステムは、1つ以上のヘッドエンド・システムと、少なくとも1つの送信機と、少なくとも1つのモバイルセットとを備えている。この認証方法では、モバイルセットから認証のためのヘッドエンド・システムに少なくとも1つの要求メッセージが同時にあるいは短時間に届き、ECCにより各ブロードキャスト認証メッセージを処理し、ECCとペアリング演算により各サービス要求メッセージを処理し、ヘッドエンド・システムとモバイルセットとの間でECCとペアリング演算により相互認証を行い、そして、同時にあるいは短時間に同じサービスを求めてヘッドエンド・システムに届いた多くの要求の全てのモバイルセットに対する認証メッセージを1つのグループにしてブロードキャストする。
【0007】
Vanstone等により出願された特許文献2は、鍵確立プロトコルについて開示しており、これは、セッション鍵と公開情報とで、一般的にはハッシュである暗号関数の値を生成する。この値は、セッション鍵を生成するのに必要な情報と共に、通信者間でやり取りされる。セッション鍵が漏洩していなければ、暗号関数の値は各通信者で同じである。セッション鍵にアクセスすることなく、暗号関数の値を盗聴したり改ざんしたりすることはできない。
【0008】
Jung等により出願された特許文献3は、IDベース暗号システムにおいて用いられる会議セッション鍵の配布方法について開示しており、これは、2つの異なる一時秘密鍵を選択し、メッセージを生成し、そして、セッション開始側の一時秘密鍵を用いてセッション鍵生成変数を生成する。正当な参加パーティのみが、セッション鍵生成変数を受け取る。各パーティは、セッション鍵生成変数からセッション共有鍵を計算する。
【0009】
Van C.Vanにより出願された特許文献4は、ハイパーテキスト転送プロトコル(HTTP:HyperText Transport Protocol)のような標準的な要求−応答プロトコルとの関連において、クライアント−サーバ・プロトコルのサポート・リストについて開示している。一実施形態による方法では、所定の転送プロトコルに従って要求を受信する。この要求の受信に応えて、この方法は、サポートされているクライアント−サーバ・プロトコルをサーバにとって望ましい順序で示したリストを、上記所定の転送プロトコルに従って送信する。一実施形態において、上記要求はHTTPに基づくOPTIONS要求である。一実施形態において、上記リストは、サーバによりサポートされているプロトコルの完全なリストではない。
【0010】
Machani等により出願された特許文献5は、クライアント−サーバ通信の認証および暗号化の方法について開示しており、これは以下のステップを備えている。a)暗号化トークンから、第1のワンタイム・パスワード(OTP1)と第2のワンタイム・パスワード(OTP2)を生成する。b)OTP2に基づき、暗号化キー(K_ENC)とMACキー(K_MAC)を生成する。c)K_ENCおよびK_MACを用いてクライアント・データを準備し保護する。d)要求メッセージをクライアントからサーバに送信する。この要求メッセージは、保護されたクライアント・データと、暗号化トークン識別子(TID)と、OTP1とを含んでいる。e)サーバにおいてOTP1を検証し、検証に成功した場合はサーバにおいてOTP2を生成する。f)サーバにおいてOTP2からK_ENCとK_MACを導出する。g)要求メッセージを処理して、結果データを生成する。h)K_ENCを用いて結果データを暗号化し、K_MACを用いてダイジェストを生成する。i)暗号化した結果データをクライアントに送信する。j)クライアントにおいてK_ENCを用いて結果データを復号化し、K_MACを用いて結果データの真正性を確認する。
【0011】
Burton S.Kaliski,Jr.により出願された特許文献6は、電子取引において、クライアントとサーバのみが知っている鍵で証明書を暗号化することにより、サーバに対してクライアントの信頼性を確立するためのプロトコルについて開示している。サーバの信頼は、必要であれば、公開鍵プロトコルにより確立することができる。クライアントは、サーバの公開鍵あるいはセッション秘密鍵で暗号化された証明書の少なくとも一部を含むメッセージを生成し、通信チャネルを通じて送信する。サーバは、メッセージを受信して処理することで証明書の少なくとも一部を復元し、それを検証して、クライアントの信頼性の証明として承認する。
【0012】
Brown等により出願された特許文献7は、楕円曲線乱数生成器について開示しており、これは、楕円曲線上の点Qを検証可能にランダムに選択することによりエスクロー鍵を回避している。任意のストリングを選択し、そのストリングのハッシュを計算する。そして、そのハッシュは望ましいフィールドの要素に変換され、その要素は、楕円曲線上の点Qのx座標と見なされ、このx座標は、望ましい楕円曲線上での有効性がテストされる。有効であれば、x座標は点Qに伸張され、このとき、2点のどちらかの選択もハッシュ値から導出される。エスクロー鍵を意図的に用いることにより、バックアップ機能を提供している。PとQの間の関係は、エスクロー鍵として使用され、セキュリティ・ドメインで記憶される。アドミニストレータは、生成器の出力を記録しておき、エスクロー鍵で乱数を再構成する。
【0013】
Zeng等により出願された特許文献8は、ある群の同じジェネレータで、1つの秘密鍵から複数の公開鍵を生成する方法、装置、およびシステムについて開示している。また、複数の匿名公開鍵を生成するための公開鍵暗号方式も開示しており、それらの匿名公開鍵は全て安全な通信のために用いられる同じパーティに関連するものである。これらの匿名公開鍵は、同じジェネレータを用いて単一の秘密鍵から生成される。この発明によると、計算量が削減され、メモリを節約することができ、セキュリティ・レベルを向上することができる。
【0014】
Vanstone等により出願された特許文献9は、ECCを用いて鍵交換メッセージを検証することで中間者攻撃を防止する方法を教示している。
【先行技術文献】
【特許文献】
【0015】
【特許文献1】米国特許出願公開第2009/0180612号
【特許文献2】米国特許第7243232号
【特許文献3】米国特許第7716482号
【特許文献4】米国特許第6658476号
【特許文献5】米国特許出願公開第2010/0031051号
【特許文献6】米国特許第6189098号
【特許文献7】米国特許出願公開第2007/0189527号
【特許文献8】米国特許出願公開第2006/0098819号
【特許文献9】米国特許第6563928号
【発明の概要】
【発明が解決しようとする課題】
【0016】
上記の従来技術は、いずれも、記憶に占めるメモリ空間がより少なく、軽量かつ高速で証明書を用いない、移動通信および無線通信用の拡張認証プロトコル(EAP)のためのシステムおよび方法を提供するものではなく、また、2G、3G、あるいは4Gネットワーク対応の無線通信機器に適したEAPを提供するものでもない。
【0017】
このように、上記従来技術を考慮すると、以下のようなシステムおよび方法が必要であることは明らかである。
・ 携帯電話および無線機器についての、機密保護、認証、認可、およびアカウンティング(CAAA:Confidentiality,Authentication,Authorization,Accounting)の問題を、手頃なコストで解決する。
・ 移動通信および無線通信のための、証明書を用いない拡張認証プロトコル(EAP)を提供する。
・ 現在は片方向認証が標準であるのに対して、双方向認証を提供する。
・ 既存の無線通信機器において容易に実施できる、ECC(Elliptic Curve Cryptography:楕円曲線暗号)方式およびSKE(Symmetric Key Encryption:対称鍵暗号)方式に基づく(適当な置換を用いる)拡張認証プロトコル(EAP)を提供する。
【課題を解決するための手段】
【0018】
本システムおよび方法、その実施可能性について説明する前に、本願は記載されている特定のシステムおよび方法に限定されるものではなく、本開示に明確に示されていない多様な実施形態が可能であることを理解されたい。また、説明で用いられる専門用語は、特定の例あるいは実施形態を記述する目的のものにすぎず、本願の範囲を限定するものではないことを理解されたい。
【0019】
主要な目的は、ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく(適当な置換を用いる)拡張認証プロトコル(EAP)群のためのシステムおよび方法を提供することであり、これによって、機密保護、認証、認可、およびアカウンティング(CAAA)という用件に手頃なコストで貢献することが可能である。
【0020】
他の重要な目的は、ECC方式およびSKE方式を用いる拡張認証プロトコルを提供することである。このようなプロトコルは、モバイル機器および無線通信機器に容易に組み入れることができる。
【0021】
他の目的は、ECCおよびSKEに基づく(置換法を用いる)EAPの方法およびシステムを提供することであり、これによって、リプレイ攻撃を回避することができる。
【0022】
他の目的は、記憶に占めるメモリ空間がより少なく、軽量かつ高速で証明書を用いない、移動通信および無線通信用の拡張認証プロトコル(EAP)のためのシステムおよび方法を提供することである。
【0023】
他の目的は、証明書を用いない、移動通信および無線通信用の拡張認証プロトコル(EAP)を提供することである。
【0024】
他の目的は、通信ネットワークを通して登録情報や利用者の詳細を安全に伝送できるようにすることである。
【0025】
他の目的は、2G、3G、あるいは4Gアプリケーションにより提供されるチップレベルの下位層セキュリティに比べて、パフォーマンスに優れた軽量のセキュリティを提供することである。
【0026】
他の目的は、現在は片方向認証が標準であるのに対して、双方向認証を提供することである。
【0027】
本願は、提案するEAP方式において、ECCアルゴリズムおよびSKEアルゴリズムを用いる。このECCおよびSKEに基づくEAPでは、無線通信機器とサーバとの間で交換される証明書はない。通信の際には、リプレイ攻撃を回避するため、無線通信機器側とサーバ側との間で置換法(素数p=2 mod 3を法として、乱数を3乗する)が用いられる。定義される置換:r→r3=r3mod p(但しp=2 mod 3)は全単射写像であり、これは、提案するEAPにおいて重要な役割を果たすものとして採用される。
【0028】
一つの態様において、システムは、サーバと無線通信機器とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器は携帯電話である。
【0029】
一実施形態によると、3つの軽量の拡張認証プロトコル(EAP)のいずれか1つを用いて認証プロセスを実行することができ、これによって、サーバへのアクセスが許可される前の無線通信機器を支援する。上記軽量の拡張認証プロトコル(EAP)は、ECC方式およびSKE方式のいずれか1つを(適当な置換と共に)用いるものであり、これによって、機密保護、認証、認可、およびアカウンティング(CAAA)という用件に手頃なコストで貢献することが可能である。
【0030】
上記の概要、および以下の好適な実施形態の詳細な説明は、添付の図面と併せて読むことで、よく理解されるものである。図面には例としての実施形態を示してあるが、本願は、図面に開示されている特定のシステムおよび方法に限定されるものではない。
【図面の簡単な説明】
【0031】
【図1】図1は、サーバと無線通信機器との間での、ECC(楕円曲線暗号)方式に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。
【図2】図2は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−1に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。
【図3】図3は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−2に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。
【図4】図4は、無線通信機器とサーバとの間で、軽量のEAPプロトコルを用いてデータの安全なトランザクションを実行する場合のフロー図を示している。
【発明を実施するための形態】
【0032】
以下、いくつかの実施形態について、その特徴を示して詳しく説明する。「備えている」、「有している」、「収容している」、および「含んでいる」という言葉、およびこれらの変化形は、同じ意味のものであり、また、これらの言葉のいずれかに続くアイテムは、それらのアイテムが網羅的列挙であることを意味するものでない、すなわち列挙されているアイテムのみに限定されることを意味するのではないという点で、制限のないものである。また、本書および添付の請求項において用いる単数形の“a”、“an”および“the”は、文脈において明確に述べていない限り、複数の意味を含むものである、ということについても注意が必要である。本書で記載されるものと類似のあるいは均等な方法およびシステムであれば、いずれも実施形態の実施や試験に用いることが可能であるが、以下では好ましい方法およびシステムについて説明する。開示される実施形態は典型例にすぎない。
【0033】
拡張認証プロトコル(EAP:Extensible Authentication Protocol)は、ネットワークアクセス・クライアントと認証サーバのための基盤を提供するインターネット標準である(RFC 3748)。これは、無線ネットワークおよびPPP接続に適用される。EAPは、認証方式そのものは規定しておらず、通信者間で認証方式を取り決めるやり方を規定するものである。EAPに厳密な認証プロトコルがないことで、攻撃が生じる。
【0034】
そこで、本願は、ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく(適当な置換を用いる)拡張認証プロトコル(EAP)群のためのシステムおよび方法を提供する。これは、機密保護、認証、認可、およびアカウンティング(CAAA)という用件に手頃なコストで貢献するものである。
【0035】
本願は、提案するEAPスキームにおいて、ECCアルゴリズムおよびSKEアルゴリズムを用いた。このECCおよびSKEに基づくEAPでは、無線通信機器とサーバとの間で交換される証明書はない。通信の際には、リプレイ攻撃を回避するため、無線通信機器側とサーバ側との間で置換法(素数p=2 mod 3を法として、乱数を3乗する)が用いられる。定義される置換:r→r3=r3 mod p(ここでp=2 mod 3)は全単射写像であり、これは、提案するEAPにおいて重要な役割を果たすものとして採用される。以下では、CAAAという用件を満たす3つの認証プロトコルを提案している。
【0036】
図1は、サーバと無線通信機器との間での、ECC(楕円曲線暗号)方式に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。システム100は、サーバ110と無線通信機器120とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器120は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器120は携帯電話である。
【0037】
上記システム100で用いられる通信方法では、サーバに110にアクセスする接続試行を少なくとも1つの無線通信機器120から受けて、楕円曲線暗号(ECC)方式に基づく軽量の拡張認証プロトコル(EAP)を用いて認証プロセスを実行することにより、サーバ110へのアクセスが許可される前の無線通信機器120を支援する。上記認証プロセスは、次のようなステップを備えている。
【0038】
提案される方法の第1ステップでは、無線通信機器120は、サーバ110に対してクライアント・ハローメッセージを送信することにより、通信を開始する。クライアント・ハローメッセージは、この無線通信機器120で使用する準備ができている暗号化アルゴリズムのリストと、サーバ110を認証するのに用いられる何らかのチャレンジデータとを含んでいる。メッセージは、次のようなフィールドを含んでいる。
【表1】
【0039】
セッション識別子は、現在の要求を以前のものと照合するのに用いられ、これによって、2つのシステムの間で頻繁に通信が行われる場合に認証および鍵交換を繰り返し行う必要がないようにしている。サーバ110は、鍵を選択すると、それらをキャッシュに格納し、無線通信機器120がクライアント・ハローメッセージの中にセッション識別子を提供している場合は、サーバ110はこのセッション識別子をキャッシュで検索する。典型例である一実施形態によると、メッセージは上記のフィールドに加えて、32ビット長の‘バッファメモリ’フィールドを含んでいる。クライアント・ハローメッセージのフィールドおよび長さは、要求に応じて変更することができる。
【0040】
第2ステップで、サーバ110は、クライアント・ハローメッセージを受け取ると、乱数‘r’を生成する。典型例である一実施形態によると、乱数‘r’のサイズは100ビットである。そして、サーバ110は、生成した乱数‘r’、マスク(Mask)、ハッシュ関数を適用したトランザクションIDを用いて、乱数のマスク結果値{s=(r||Mask) XoR Hash(Tr_ID)}を計算する。ここで、マスクは156ビットである。続いて、サーバ110は、無線通信機器120の公開鍵‘PUB’を用いてECE暗号化アルゴリズムにより乱数のマスク結果値‘s’を暗号化し、マスク結果値‘s’にハッシュ関数を適用したもの、およびセキュリティ用ナンス値を付加して、暗号化メッセージを生成する。そして、サーバ110は、その暗号化メッセージ{y=ECEPUB(s),Hash(s),Nonce(r)}を無線通信機器120に送信する。
【0041】
第3ステップで、無線通信機器120は、暗号化メッセージを受け取ると、この無線通信機器120の秘密鍵‘k’を用いたECE復号化アルゴリズムとハッシュ関数の適用{Hash(Tr_ID)XoR ECEk(y)}により、乱数‘r’とマスクからなるものを取り出す。続いて、無線通信機器120は、これを乱数‘r’とマスクに分割し、そして、乱数の値をセキュリティ用ナンス値で検証し、乱数のマスク結果値‘s’をハッシュ関数で検証する。
【0042】
第4ステップで、無線通信機器120は、秘密鍵‘k’を用いたECDSA−163アルゴリズムにより、結果値‘m’を含むメッセージに署名したもの{signs}を生成する。ここで、結果値‘m’{m=r3mod p=137ビット数}は、乱数‘r’に置換法を用いることで得られる。続いて、無線通信機器120は、結果メッセージ{sig_value}をサーバ110に送信する。
【0043】
第5ステップで、サーバ110は、無線通信機器120の公開鍵‘PUB’を用いたECDSA−163アルゴリズムにより、受信した結果メッセージ{sig_value}から結果値‘m’を取り出し、続いて、サーバ110は、乱数‘r’に置換法を用いて結果値‘m’{m=r3mod p}を得て、これにより署名を検証する。
【0044】
受信した結果メッセージの署名を検証したら、最終ステップで、サーバ110は、無線通信機器120に対してレスポンスを送る。
【0045】
上記システム100において通信を開始する前に、最初に、サーバ110は、無線通信機器120の機器番号とIMEI番号を登録し、そして、サーバ110へのアクセスが許可される前の各無線通信機器120に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。
【0046】
典型例である一実施形態によると、無線通信機器120は携帯電話である。従って、サーバ110はモバイル番号とIMEI番号を登録し、そして、サーバ110へのアクセスが許可される前の各携帯電話120に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。無線通信機器120は、楕円暗号(EC)の復号化とEC署名の生成のために163ビットの秘密鍵‘k’を用いる。サーバ110は、楕円暗号(EC)の暗号化とEC署名の検証のために公開鍵‘PUB’を使用し、また、シードを受け取って乱数を生成する周知の擬似乱数生成器(PRNG:Pseudo Random Number Generator)を使用する。
【0047】
一実施形態によると、上記システム100において通信が開始される前に、最初に、無線通信機器とサーバとの間で(楕円曲線暗号)ECC−163の設定が調整される。
【0048】
ECC(楕円曲線暗号)方式に基づくEAPプロトコルを用いたデータの安全なトランザクションの実例:
1.Tr_ID=35422
2.Hash(Tr_ID)=95405401234511
3.素数 p=101,ここで、pは、2 mod 3
4.無線通信機器の秘密鍵 k=199
5.無線通信機器の公開鍵 PUB=(232,123)
6.サーバが、乱数 r=124325を生成する。
7.サーバが、s=1243255783459321 XoR 95405401234511=1192391475877302,ここで、Mask=5783459321,を計算する。
8.サーバが、PUBを利用し、そして{(23241,34343),3443221,15}を無線通信機器に送信する。
9.無線通信機器は、(23241,34343)に対するkを用いたEC復号化によりsを得て、ここから、無線通信機器はr=124325を取り出す。
10.無線通信機器は、m =r3mod p =87を計算し、kを用いたECDSA−163アルゴリズムによりmに署名して、sig_value={4547,3434}をサーバに送る。
11.サーバは、m=r3mo p=87を計算し、クライアントの公開鍵を用いて署名を検証する。
【0049】
図2は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−1に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。システム200は、サーバ210と無線通信機器220とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器220は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器220は携帯電話である。
【0050】
上記システム200で用いられる通信方法では、サーバに210にアクセスする接続試行を少なくとも1つの無線通信機器220から受けて、SKE(対称鍵暗号)方式に基づく軽量の拡張認証プロトコル(EAP)を用いて認証プロセスを実行することにより、サーバ210へのアクセスが許可される前の無線通信機器220を支援する。上記認証プロセスは、次のようなステップを備えている。
【0051】
提案される方法の第1ステップでは、無線通信機器220は、サーバ210に対してクライアント・ハローメッセージを送信することにより、通信を開始する。クライアント・ハローメッセージは、この無線通信機器220で使用する準備ができている暗号化アルゴリズムのリストと、サーバ210を認証するのに用いられる何らかのチャレンジデータとを含んでいる。メッセージは、次のようなフィールドを含んでいる。
【表2】
【0052】
セッション識別子は、現在の要求を以前のものと照合するのに用いられ、これによって、2つのシステムの間で頻繁に通信が行われる場合に認証および鍵交換を繰り返し行う必要がないようにしている。サーバ210は、鍵を選択すると、それらをキャッシュに格納し、無線通信機器220がクライアント・ハローメッセージの中にセッション識別子を提供している場合は、サーバ210はこのセッション識別子をキャッシュで検索する。典型例である一実施形態によると、メッセージは上記のフィールドに加えて、32ビット長の‘バッファメモリ’フィールドを含んでいる。クライアント・ハローメッセージのフィールドおよび長さは、要求に応じて変更することができる。
【0053】
第2ステップで、サーバ210は、クライアント・ハローメッセージを受け取ると、乱数‘r’と素数‘p’(=2 mod 3)を生成する。典型例である一実施形態によると、乱数‘r’のサイズは192ビットであり、素数‘p’のサイズは64ビットである。そして、サーバ210は、生成した乱数‘r’およびマスク(Mask)と、ハッシュ関数を適用したトランザクションID、顧客ID、機器番号、およびセキュリティ用ナンス値を用いて、乱数のマスク結果値{s=(r||Mask) XoR Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)}を計算する。ここで、マスクは64ビットである。続いて、サーバ210は、rを用いた暗号化によりy1=Encr(p)を算出し、これにハッシュ関数を適用したものとセキュリティ用ナンス値とを付加して、乱数のマスク結果値‘s’で暗号化メッセージを生成する。そして、サーバ210は、その暗号化メッセージ{s,y1=Encr(p),Hash(y1),Nonce(y1)}を無線通信機器220に送信する。
【0054】
第3ステップで、無線通信機器220は、暗号化メッセージを受け取ると、ハッシュ関数の適用{Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no) XoR s}により、乱数‘r’とマスクからなるものを取り出す。続いて、無線通信機器220は、これをマスクと乱数‘r’に分割する。この乱数‘r’を用いて{y1}を復号化することで素数‘p’を復元し、さらに、受信したメッセージのハッシュ値{Hash(y1)}を検証する。次に、無線通信機器220は、結果値{r3 =(r mod p)3mod p}を計算する。これは、乱数の置換法を用いて得られる。続いて、無線通信機器220は、新しい第2の乱数y2 と、これにハッシュ関数を適用したものと、さらにセキュリティ用ナンス値を付加して、暗号化メッセージ{y3=r3XoR y2 ,Hash(y2),Nonce(y3)}を生成する。そして、無線通信機器220は、結果の暗号化メッセージをサーバ210に送る。ここで、上記第2の新しい乱数‘y2 ’は擬似乱数生成(PRNG)法を用いて生成される。
【0055】
第4のステップで、サーバ210は、乱数の3乗値{r3}を計算する。続いて、サーバ210は、乱数の3乗値とXOR関数と用いて、{y3 XoR r3}により、第2の新しい乱数‘y2’を得る。そして、サーバ210は、受信したメッセージのハッシュ値{Hash(y2)}およびナンス値{Nonce(y3)}を検証する。
【0056】
受信したメッセージのハッシュ値{Hash(y2)}およびナンス値{Nonce(y3)}を検証したら、最終ステップで、サーバ210は、無線通信機器220に対してレスポンスを送る。
【0057】
上記システム200において通信を開始する前に、最初に、サーバ210は、無線通信機器220の機器番号とIMEI番号を登録し、そして、サーバ210へのアクセスが許可される前の各無線通信機器220に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。
【0058】
典型例である一実施形態によると、無線通信機器220は携帯電話である。従って、サーバ210はモバイル番号とIMEI番号を登録し、そして、サーバ210へのアクセスが許可される前の各携帯電話220に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。サーバ210は、メッセージの暗号化にAES−CTR−192ビット アルゴリズムを使用し、また、シードを受け取って乱数を生成する周知の擬似乱数生成器(PRNG)を使用する。
【0059】
SKE(対称鍵暗号)方式−1に基づくEAPプロトコルを用いたデータの安全なトランザクションの実例:
1.Cust_ID=2323; Tr_ID=3542234
2.Mobile no=9885076432;IMEI=74398483299329
3.Hash(Tr_ID,SIM no)=12495405401234511;Hash(Cust_ID,Mobile no)=232311212121
4.サーバは、192ビットの乱数r=12432534343、および64ビットの素数p=101、ここでpは2 mod 3、を生成する。
5.サーバは、r||Mask=124325343435783459321、およびs=66391475877301を計算する。
6.サーバは、rを用いて、Encr(p)=43484349を算出し、{124330942610003772911,43484349,232321,14}を無線通信機器に送信する。
7.無線通信機器は、Hash(Tr_ID,SIM no)XoR Hash(Cust_ID,Mobile no)XoR sにより、r||Mask=124325343435783459321を取り出し、r=12432534343とMask=5783459321に分割する。
8.無線通信機器は、r3=r3mod p=41を計算し、乱数y2=145を生成し、{184,343435,4}をサーバに送る。ここで、Hash(145)=343435。
9.サーバは、r3=r3mod p=41を計算し、y3 XoR r3により、y2=145を取得して、Hash(y2)およびNonce(y3)を検証する。
【0060】
図3は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−2に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。システム300は、サーバ310と無線通信機器320とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器320は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器320は携帯電話である。
【0061】
上記システム300で用いられる通信方法では、サーバに310にアクセスする接続試行を少なくとも1つの無線通信機器320から受けて、SKE(対称鍵暗号)方式に基づく軽量の拡張認証プロトコル(EAP)を用いて認証プロセスを実行することにより、サーバ310へのアクセスが許可される前の無線通信機器320を支援する。上記認証プロセスは、次のようなステップを備えている。
【0062】
提案される方法の第1ステップでは、無線通信機器320は、サーバ310に対してクライアント・ハローメッセージを送信することにより、通信を開始する。クライアント・ハローメッセージは、この無線通信機器320で使用する準備ができている暗号化アルゴリズムのリストと、サーバ310を認証するのに用いられる何らかのチャレンジデータとを含んでいる。メッセージは、次のようなフィールドを含んでいる。
【表3】
【0063】
セッション識別子は、現在の要求を以前のものと照合するのに用いられ、これによって、2つのシステムの間で頻繁に通信が行われる場合に認証および鍵交換を繰り返し行う必要がないようにしている。サーバ310は、鍵を選択すると、それらをキャッシュに格納し、無線通信機器320がクライアント・ハローメッセージの中にセッション識別子を提供している場合は、サーバ310はこのセッション識別子をキャッシュで検索する。典型例である一実施形態によると、メッセージは上記のフィールドに加えて、32ビット長の‘バッファメモリ’フィールドを含んでいる。クライアント・ハローメッセージのフィールドおよび長さは、要求に応じて変更することができる。
【0064】
第2ステップで、サーバ310は、クライアント・ハローメッセージを受け取ると、乱数‘r’と素数‘p’(=2 mod 3)を生成する。典型例である一実施形態によると、乱数‘r’のサイズは192ビットであり、素数‘p’のサイズは64ビットである。そして、サーバ310は、生成した乱数およびマスク(Mask1)と、その他のパラメータにハッシュ関数を適用したものとを用いて、第1のマスク結果値{y1=(r||Mask1) XoR Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)}を計算する。ここで、マスクは64ビットである。さらに、生成した素数およびマスク(Mask2)と、その他のパラメータにハッシュ関数を適用したものとを用いて、第2のマスク結果値{y2=(p||Mask2)XoR Hash(Tr_Id,Cust_Id,SIM no,IMEI)}を計算する。ここで、マスクは64ビットである。続いて、サーバ310は、第1のマスク結果値y1および素数pにハッシュ関数を適用したもの、およびセキュリティ用ナンス値を付加して、第1のマスク結果値y1と第2のマスク結果値y2とで、暗号化メッセージを生成する。そして、サーバ310は、その暗号化メッセージ{y1,y2,Hash(y1||p),Nonce(y1)}を無線通信機器320に送信する。
【0065】
第3ステップで、無線通信機器320は、暗号化メッセージを受け取ると、ハッシュ関数の適用{Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no) XoR y1}により、乱数‘r’とMask1からなるものを取り出す。続いて、無線通信機器320は、これをMask1と乱数‘r’に分割する。同様にして、無線通信機器320は、素数‘p’を抽出し、この抽出した素数‘p’と第1のマスク結果値y1のハッシュ値{Hash(y1||p)}を検証し、第1マスク結果値y1のナンス関数{Nonce(y1)}を検証する。そして、無線通信機器320は、結果値{r3=(r mod p)3mod p}を計算する。これは、乱数の置換法を用いて得られる。次に、決定論的乱数列生成(DRSG:Deterministic Random Sequence Generation)アルゴリズムを用いて、DRSG(r,t1,t2)、ここでt1=0、t2=Nonce(r3)、により、102ビットの秘密鍵“k”を生成する。続いて、無線通信機器320は、乱数の3乗値を暗号化し、さらにセキュリティ用ナンス値を付加して、暗号化メッセージ{Enck(r3XoR k)||Nonce(k)}を生成する。そして、無線通信機器320は、結果の暗号化メッセージをサーバ310に送る。
【0066】
第4のステップで、サーバ310は、乱数の3乗値{r3}により秘密鍵‘k’生成し、続いて、サーバ310は、復号化により結果値を得る。結果値は、無線通信機器320の秘密鍵‘k’と乱数の3乗値{r3}のXOR関数から得られたものである。そして、サーバ310は、これを乱数の3乗値{r3}と秘密鍵‘k’に分割する。続いて、サーバ310は、受信した暗号化メッセージのセキュリティ用ナンス値{Nonce(k)}で、秘密鍵を検証する。
【0067】
受信した暗号化メッセージのセキュリティ用ナンス値{Nonce(k)}で秘密鍵を検証したら、最終ステップで、サーバ310は、無線通信機器320に対してレスポンスを送る。
【0068】
上記システム300において通信を開始する前に、最初に、サーバ310は、無線通信機器320の機器番号とIMEI番号を登録し、そして、サーバ310へのアクセスが許可される前の各無線通信機器320に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。
【0069】
典型例である一実施形態によると、無線通信機器320は携帯電話である。従って、サーバ310はモバイル番号とIMEI番号を登録し、そして、サーバ310へのアクセスが許可される前の各携帯電話320に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。サーバ310は、メッセージの暗号化にAES−CTR−192ビット アルゴリズムを使用し、また、シードを受け取って乱数を生成する周知の擬似乱数生成器(PRNG)を使用する。
【0070】
SKE(対称鍵暗号)方式−2に基づくEAPプロトコルを用いたデータの安全なトランザクションの実例:
1.Cust_ID=2323;Tr_ID=3542234
2.Mobile no=9885076432;IMEI=74398483299329
3.Hash(Tr_ID,SIM no)=12495405401234511;Hash(Cust_ID,Mobile no)=232311212121;Hash(Tr_ID,Cust_ID,SIM no,IMEI)=34343421122
4.素数p=101、ここでpは2 mod 3
5.サーバは、乱数r=124325、Mask1=5783459、およびMask2=53434116432を生成する。
6.サーバは、y1=32423423、およびy2=43556121を計算する。
7.サーバは、{32423423,43556121,1343444,15}を送信する。
8.無線通信機器は、Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)XoR y1を実行することにより、1243255783459を取り出し、そして、r=124325およびMask1=5783459を得る。
9.サーバは、kを用いて、Enck(s)=43434343を算出し、{66391475877301,43434343,232321,18}を無線通信機器に送信する。
10.無線通信機器は、kを用いてsを得て、Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)XoR sにより、r=124325およびMask=5783459321を求める。
11.無線通信機器は、r3=r3mod p=87を計算し、y2=145を生成して、{198,343434,4}をサーバに送る。
12.サーバは、r3=r3mod p=87を計算し、y3 XoR r3により、y2=145を取得して、Hash(y2)およびNonce(y3)を検証する。
【0071】
一実施形態によると、上記提案のシステムおよび方法において、フィッシング攻撃およびリプレイ攻撃を回避して安全な通信を維持するため、ハッシュ関数が適用される。また、別の実施形態によると、上記システムおよび方法において、フィッシング攻撃およびリプレイ攻撃を回避して安全な通信を維持するため、ナンス値が付加される。さらに、カウンタ初期値予測攻撃や時間メモリトレードオフ攻撃を回避するために、ハッシュやナンス値による方法が用いられる。
【0072】
ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく拡張認証プロトコル(EAP)の長所:
1.基地局からネットワーク・サブシステムを介してGPRSコアネットワークまで、本発明のEAP(プロトコル1:ECC方式に基づくEAP)は、163ビット鍵でECCを使用することで、ノード間でスピーディーに動作する。
2.プロトコル1(ECC方式に基づくEAP)において、置換を用いているため、攻撃者が署名したメッセージを生成することは難しい。
3.r→r3=r3mod p(ここで、p=2 mod 3)は、ランダムである。
4.同様に、プロトコル1,2および3(ECC方式と、SKE方式1および2に基づくEAP)において、写像:r→r3=r3mod pは全単射であるため、(サーバにより提供される)乱数rを予測するのは難しい。
5.本発明のプロトコル(ECC方式と、SKE方式1および2に基づくEAP)は、2G,3G,あるいは4Gモバイルネットワークに対応している。
6.本発明のプロトコル(ECC方式と、SKE方式1および2に基づくEAP)では、異なるドメイン間での鍵合意はなく、また、鍵の有効期限がない。
7.本発明のEAPはWLANおよびWMANに適しており、辞書攻撃、平文攻撃、選択平文攻撃、さらには中間者攻撃など様々な攻撃を受けやすい従来のEAPに比べて、本発明のEAPは優れている。
【0073】
以下に示す例では適用例について記述しているが、これは適用例を説明するためのものにすぎず、従って、適用範囲を制限するものと解釈されてはならない。
【0074】
要件:
EAP適用環境は、以下の通りである:
a)ソフトウェア環境
【表4】
b)ハードウェア環境
【表5】
【0075】
[初期テスト設定]
a)EAPクライアント:
1)基本的に、EAPクライアントは、モバイル機器(例えば、NokiaのN79,E75,5800−ExpressMusic,6210 Navigator)にインストールされる。
2)データの暗号化および復号化は、J2MEコードにより行う。
3)クライアントはサーバと連絡を取り、安全なチャネルを通じて通信する。
b)EAPサーバ:
1)サーバ・アプリケーションは、NETフレームワークを用いて構築されるもので、データの復号化および暗号化に用いられる。
2)クライアント要求を復号化し、暗号化形式でレスポンスを返信する。
【0076】
EAPアプリケーション実行のフロー図:
図4は、無線通信機器とサーバとの間で、軽量のEAPプロトコルを用いてデータの安全なトランザクションを実行400する場合のフロー図を示している。第1のステップで、クライアント420は、クライアント・ハローメッセージをサーバ410に送ることにより、通信を開始する{1→ClientInitiate()−request}。第2ステップで、サーバ410は、クライアント420からクライアント・ハローメッセージを受信すると、レスポンスとして16進数列を送信する{2→Hexa decimal sequence(response)}。第3ステップで、クライアント420は、両者間でデータの安全なトランザクションを開始する要求メッセージを、EAPプロトコルを用いてサーバ410に送る{3→EAP Protocol()−request}。第4ステップで、サーバ410は、プロトコルを検証して、クライアント420にレスポンスを送る{4→true/false(response)}。最後のステップで、レスポンスが“true”である場合は、クライアントとサーバとの間でデータの安全なトランザクションのプロセスが開始し、そうでない場合、すなわちレスポンスが“false”である場合は、両者間の通信は打ち切りとなる。
【0077】
テスト結果:
Nokiaのハンドセット・シリーズ
N79,E75,5800および6210は、これらのEAPクライアント・モジュールをサポートしている。上記の実行の通りに、Nokiaで‘EAPフロー’を実行したところ、サーバにより、0.5ms未満での認証レスポンスを確認している。これは、サーバ側からの認証レスポンスにかかる時間が1秒を超える証明書ベースのトランザクションに比べて、際立ったパフォーマンスである。
【0078】
以上、いくつかの実施形態を参照して説明を行ったが、本願に関連する技術およびテクノロジーの知識を有する者であれば、本発明の原理および範囲から有意な逸脱をすることなく、記載の構造および実施方法の変更および変形が可能であることは理解できるであろう。
【符号の説明】
【0079】
100 システム
110 サーバ
120 無線通信機器
200 システム
210 サーバ
220 無線通信機器
300 システム
310 サーバ
320 無線通信機器
410 EAPサーバ
420 EAPクライアント
【技術分野】
【0001】
本願は、無線通信の分野に関する。特に、本願は、ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく軽量の拡張認証プロトコル(EAP)を用いることによる、少なくとも1つの無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法に関するものである。
【背景技術】
【0002】
移動通信および無線通信においては、一般的に、認証法を用いてネットワーク・アクセスを得る。アクセスを提供する(移動通信あるいは無線通信のための)通信サーバは、ユーザが本人であることを確認するための、プロセスおよびプロトコルのセットを備えていなければならない。ユーザのログオンを認証し、ユーザのネットワーク使用状況をモニタリングし、顧客への課金を行う標準的な手段が必要である。現在、上記基準を満たす、認証、認可、およびアカウンティング(AAA:Authentication,Authorization,Accounting)目的の規格およびプロトコルは存在している。しかしながら、それらの中には安全でないものがあり、それらのパフォーマンスは3G移動通信要件を満たさない。
【0003】
ところで、現在の移動通信および無線通信の認証方式は、証明書を使用している。認可プロトコルは、何らかの“課金証明書”という考えをサポートしている必要がある。このような証明書は、サイズ面で重く、モバイル・アプリケーションのパフォーマンスに影響する。主にモバイルバンキング部門における多くの機関により設定されている慎重な基準によると、無線メディアを利用するモバイル・アプリケーションの最適パフォーマンスを保証する助けとなる軽量のプロトコルが必要である。
【0004】
また、スマートフォン、PDA、セルラーフォン、および遠隔制御システムのような、モバイル機器および無線機器は、デジタル環境において、ますます重要な役割を果たすようになっている。モバイル機器および無線機器が広範囲に使用されることによって、新たにセキュリティとプライバシーの危険がもたらされ、また、モバイル機器の利用が広がると、顧客は、個人情報やトランザクションの痕跡をずっと残したままにして、時には、その機器をそのままポケットに入れて持ち歩くこともある。他の何らかのリンク可能な情報がメッセージに関連付けられている限り、個人情報を隠すことは無意味であり、真のプライバシーを与えることは難しいので、軽量のプロトコルを利用することは、大半のモバイル・アプリケーションおよび無線アプリケーションに対して効果的な解決を提供する助けとなるであろう。
【0005】
以下のいくつかの発明が、少なくとも1つの無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法を提供することに取り組んでいる。
【0006】
Leu等により出願された特許文献1は、ECCを採用した認証方法について開示している。これは、モバイル・ブロードキャストTVシステムに適用されるもので、このシステムは、1つ以上のヘッドエンド・システムと、少なくとも1つの送信機と、少なくとも1つのモバイルセットとを備えている。この認証方法では、モバイルセットから認証のためのヘッドエンド・システムに少なくとも1つの要求メッセージが同時にあるいは短時間に届き、ECCにより各ブロードキャスト認証メッセージを処理し、ECCとペアリング演算により各サービス要求メッセージを処理し、ヘッドエンド・システムとモバイルセットとの間でECCとペアリング演算により相互認証を行い、そして、同時にあるいは短時間に同じサービスを求めてヘッドエンド・システムに届いた多くの要求の全てのモバイルセットに対する認証メッセージを1つのグループにしてブロードキャストする。
【0007】
Vanstone等により出願された特許文献2は、鍵確立プロトコルについて開示しており、これは、セッション鍵と公開情報とで、一般的にはハッシュである暗号関数の値を生成する。この値は、セッション鍵を生成するのに必要な情報と共に、通信者間でやり取りされる。セッション鍵が漏洩していなければ、暗号関数の値は各通信者で同じである。セッション鍵にアクセスすることなく、暗号関数の値を盗聴したり改ざんしたりすることはできない。
【0008】
Jung等により出願された特許文献3は、IDベース暗号システムにおいて用いられる会議セッション鍵の配布方法について開示しており、これは、2つの異なる一時秘密鍵を選択し、メッセージを生成し、そして、セッション開始側の一時秘密鍵を用いてセッション鍵生成変数を生成する。正当な参加パーティのみが、セッション鍵生成変数を受け取る。各パーティは、セッション鍵生成変数からセッション共有鍵を計算する。
【0009】
Van C.Vanにより出願された特許文献4は、ハイパーテキスト転送プロトコル(HTTP:HyperText Transport Protocol)のような標準的な要求−応答プロトコルとの関連において、クライアント−サーバ・プロトコルのサポート・リストについて開示している。一実施形態による方法では、所定の転送プロトコルに従って要求を受信する。この要求の受信に応えて、この方法は、サポートされているクライアント−サーバ・プロトコルをサーバにとって望ましい順序で示したリストを、上記所定の転送プロトコルに従って送信する。一実施形態において、上記要求はHTTPに基づくOPTIONS要求である。一実施形態において、上記リストは、サーバによりサポートされているプロトコルの完全なリストではない。
【0010】
Machani等により出願された特許文献5は、クライアント−サーバ通信の認証および暗号化の方法について開示しており、これは以下のステップを備えている。a)暗号化トークンから、第1のワンタイム・パスワード(OTP1)と第2のワンタイム・パスワード(OTP2)を生成する。b)OTP2に基づき、暗号化キー(K_ENC)とMACキー(K_MAC)を生成する。c)K_ENCおよびK_MACを用いてクライアント・データを準備し保護する。d)要求メッセージをクライアントからサーバに送信する。この要求メッセージは、保護されたクライアント・データと、暗号化トークン識別子(TID)と、OTP1とを含んでいる。e)サーバにおいてOTP1を検証し、検証に成功した場合はサーバにおいてOTP2を生成する。f)サーバにおいてOTP2からK_ENCとK_MACを導出する。g)要求メッセージを処理して、結果データを生成する。h)K_ENCを用いて結果データを暗号化し、K_MACを用いてダイジェストを生成する。i)暗号化した結果データをクライアントに送信する。j)クライアントにおいてK_ENCを用いて結果データを復号化し、K_MACを用いて結果データの真正性を確認する。
【0011】
Burton S.Kaliski,Jr.により出願された特許文献6は、電子取引において、クライアントとサーバのみが知っている鍵で証明書を暗号化することにより、サーバに対してクライアントの信頼性を確立するためのプロトコルについて開示している。サーバの信頼は、必要であれば、公開鍵プロトコルにより確立することができる。クライアントは、サーバの公開鍵あるいはセッション秘密鍵で暗号化された証明書の少なくとも一部を含むメッセージを生成し、通信チャネルを通じて送信する。サーバは、メッセージを受信して処理することで証明書の少なくとも一部を復元し、それを検証して、クライアントの信頼性の証明として承認する。
【0012】
Brown等により出願された特許文献7は、楕円曲線乱数生成器について開示しており、これは、楕円曲線上の点Qを検証可能にランダムに選択することによりエスクロー鍵を回避している。任意のストリングを選択し、そのストリングのハッシュを計算する。そして、そのハッシュは望ましいフィールドの要素に変換され、その要素は、楕円曲線上の点Qのx座標と見なされ、このx座標は、望ましい楕円曲線上での有効性がテストされる。有効であれば、x座標は点Qに伸張され、このとき、2点のどちらかの選択もハッシュ値から導出される。エスクロー鍵を意図的に用いることにより、バックアップ機能を提供している。PとQの間の関係は、エスクロー鍵として使用され、セキュリティ・ドメインで記憶される。アドミニストレータは、生成器の出力を記録しておき、エスクロー鍵で乱数を再構成する。
【0013】
Zeng等により出願された特許文献8は、ある群の同じジェネレータで、1つの秘密鍵から複数の公開鍵を生成する方法、装置、およびシステムについて開示している。また、複数の匿名公開鍵を生成するための公開鍵暗号方式も開示しており、それらの匿名公開鍵は全て安全な通信のために用いられる同じパーティに関連するものである。これらの匿名公開鍵は、同じジェネレータを用いて単一の秘密鍵から生成される。この発明によると、計算量が削減され、メモリを節約することができ、セキュリティ・レベルを向上することができる。
【0014】
Vanstone等により出願された特許文献9は、ECCを用いて鍵交換メッセージを検証することで中間者攻撃を防止する方法を教示している。
【先行技術文献】
【特許文献】
【0015】
【特許文献1】米国特許出願公開第2009/0180612号
【特許文献2】米国特許第7243232号
【特許文献3】米国特許第7716482号
【特許文献4】米国特許第6658476号
【特許文献5】米国特許出願公開第2010/0031051号
【特許文献6】米国特許第6189098号
【特許文献7】米国特許出願公開第2007/0189527号
【特許文献8】米国特許出願公開第2006/0098819号
【特許文献9】米国特許第6563928号
【発明の概要】
【発明が解決しようとする課題】
【0016】
上記の従来技術は、いずれも、記憶に占めるメモリ空間がより少なく、軽量かつ高速で証明書を用いない、移動通信および無線通信用の拡張認証プロトコル(EAP)のためのシステムおよび方法を提供するものではなく、また、2G、3G、あるいは4Gネットワーク対応の無線通信機器に適したEAPを提供するものでもない。
【0017】
このように、上記従来技術を考慮すると、以下のようなシステムおよび方法が必要であることは明らかである。
・ 携帯電話および無線機器についての、機密保護、認証、認可、およびアカウンティング(CAAA:Confidentiality,Authentication,Authorization,Accounting)の問題を、手頃なコストで解決する。
・ 移動通信および無線通信のための、証明書を用いない拡張認証プロトコル(EAP)を提供する。
・ 現在は片方向認証が標準であるのに対して、双方向認証を提供する。
・ 既存の無線通信機器において容易に実施できる、ECC(Elliptic Curve Cryptography:楕円曲線暗号)方式およびSKE(Symmetric Key Encryption:対称鍵暗号)方式に基づく(適当な置換を用いる)拡張認証プロトコル(EAP)を提供する。
【課題を解決するための手段】
【0018】
本システムおよび方法、その実施可能性について説明する前に、本願は記載されている特定のシステムおよび方法に限定されるものではなく、本開示に明確に示されていない多様な実施形態が可能であることを理解されたい。また、説明で用いられる専門用語は、特定の例あるいは実施形態を記述する目的のものにすぎず、本願の範囲を限定するものではないことを理解されたい。
【0019】
主要な目的は、ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく(適当な置換を用いる)拡張認証プロトコル(EAP)群のためのシステムおよび方法を提供することであり、これによって、機密保護、認証、認可、およびアカウンティング(CAAA)という用件に手頃なコストで貢献することが可能である。
【0020】
他の重要な目的は、ECC方式およびSKE方式を用いる拡張認証プロトコルを提供することである。このようなプロトコルは、モバイル機器および無線通信機器に容易に組み入れることができる。
【0021】
他の目的は、ECCおよびSKEに基づく(置換法を用いる)EAPの方法およびシステムを提供することであり、これによって、リプレイ攻撃を回避することができる。
【0022】
他の目的は、記憶に占めるメモリ空間がより少なく、軽量かつ高速で証明書を用いない、移動通信および無線通信用の拡張認証プロトコル(EAP)のためのシステムおよび方法を提供することである。
【0023】
他の目的は、証明書を用いない、移動通信および無線通信用の拡張認証プロトコル(EAP)を提供することである。
【0024】
他の目的は、通信ネットワークを通して登録情報や利用者の詳細を安全に伝送できるようにすることである。
【0025】
他の目的は、2G、3G、あるいは4Gアプリケーションにより提供されるチップレベルの下位層セキュリティに比べて、パフォーマンスに優れた軽量のセキュリティを提供することである。
【0026】
他の目的は、現在は片方向認証が標準であるのに対して、双方向認証を提供することである。
【0027】
本願は、提案するEAP方式において、ECCアルゴリズムおよびSKEアルゴリズムを用いる。このECCおよびSKEに基づくEAPでは、無線通信機器とサーバとの間で交換される証明書はない。通信の際には、リプレイ攻撃を回避するため、無線通信機器側とサーバ側との間で置換法(素数p=2 mod 3を法として、乱数を3乗する)が用いられる。定義される置換:r→r3=r3mod p(但しp=2 mod 3)は全単射写像であり、これは、提案するEAPにおいて重要な役割を果たすものとして採用される。
【0028】
一つの態様において、システムは、サーバと無線通信機器とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器は携帯電話である。
【0029】
一実施形態によると、3つの軽量の拡張認証プロトコル(EAP)のいずれか1つを用いて認証プロセスを実行することができ、これによって、サーバへのアクセスが許可される前の無線通信機器を支援する。上記軽量の拡張認証プロトコル(EAP)は、ECC方式およびSKE方式のいずれか1つを(適当な置換と共に)用いるものであり、これによって、機密保護、認証、認可、およびアカウンティング(CAAA)という用件に手頃なコストで貢献することが可能である。
【0030】
上記の概要、および以下の好適な実施形態の詳細な説明は、添付の図面と併せて読むことで、よく理解されるものである。図面には例としての実施形態を示してあるが、本願は、図面に開示されている特定のシステムおよび方法に限定されるものではない。
【図面の簡単な説明】
【0031】
【図1】図1は、サーバと無線通信機器との間での、ECC(楕円曲線暗号)方式に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。
【図2】図2は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−1に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。
【図3】図3は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−2に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。
【図4】図4は、無線通信機器とサーバとの間で、軽量のEAPプロトコルを用いてデータの安全なトランザクションを実行する場合のフロー図を示している。
【発明を実施するための形態】
【0032】
以下、いくつかの実施形態について、その特徴を示して詳しく説明する。「備えている」、「有している」、「収容している」、および「含んでいる」という言葉、およびこれらの変化形は、同じ意味のものであり、また、これらの言葉のいずれかに続くアイテムは、それらのアイテムが網羅的列挙であることを意味するものでない、すなわち列挙されているアイテムのみに限定されることを意味するのではないという点で、制限のないものである。また、本書および添付の請求項において用いる単数形の“a”、“an”および“the”は、文脈において明確に述べていない限り、複数の意味を含むものである、ということについても注意が必要である。本書で記載されるものと類似のあるいは均等な方法およびシステムであれば、いずれも実施形態の実施や試験に用いることが可能であるが、以下では好ましい方法およびシステムについて説明する。開示される実施形態は典型例にすぎない。
【0033】
拡張認証プロトコル(EAP:Extensible Authentication Protocol)は、ネットワークアクセス・クライアントと認証サーバのための基盤を提供するインターネット標準である(RFC 3748)。これは、無線ネットワークおよびPPP接続に適用される。EAPは、認証方式そのものは規定しておらず、通信者間で認証方式を取り決めるやり方を規定するものである。EAPに厳密な認証プロトコルがないことで、攻撃が生じる。
【0034】
そこで、本願は、ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく(適当な置換を用いる)拡張認証プロトコル(EAP)群のためのシステムおよび方法を提供する。これは、機密保護、認証、認可、およびアカウンティング(CAAA)という用件に手頃なコストで貢献するものである。
【0035】
本願は、提案するEAPスキームにおいて、ECCアルゴリズムおよびSKEアルゴリズムを用いた。このECCおよびSKEに基づくEAPでは、無線通信機器とサーバとの間で交換される証明書はない。通信の際には、リプレイ攻撃を回避するため、無線通信機器側とサーバ側との間で置換法(素数p=2 mod 3を法として、乱数を3乗する)が用いられる。定義される置換:r→r3=r3 mod p(ここでp=2 mod 3)は全単射写像であり、これは、提案するEAPにおいて重要な役割を果たすものとして採用される。以下では、CAAAという用件を満たす3つの認証プロトコルを提案している。
【0036】
図1は、サーバと無線通信機器との間での、ECC(楕円曲線暗号)方式に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。システム100は、サーバ110と無線通信機器120とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器120は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器120は携帯電話である。
【0037】
上記システム100で用いられる通信方法では、サーバに110にアクセスする接続試行を少なくとも1つの無線通信機器120から受けて、楕円曲線暗号(ECC)方式に基づく軽量の拡張認証プロトコル(EAP)を用いて認証プロセスを実行することにより、サーバ110へのアクセスが許可される前の無線通信機器120を支援する。上記認証プロセスは、次のようなステップを備えている。
【0038】
提案される方法の第1ステップでは、無線通信機器120は、サーバ110に対してクライアント・ハローメッセージを送信することにより、通信を開始する。クライアント・ハローメッセージは、この無線通信機器120で使用する準備ができている暗号化アルゴリズムのリストと、サーバ110を認証するのに用いられる何らかのチャレンジデータとを含んでいる。メッセージは、次のようなフィールドを含んでいる。
【表1】
【0039】
セッション識別子は、現在の要求を以前のものと照合するのに用いられ、これによって、2つのシステムの間で頻繁に通信が行われる場合に認証および鍵交換を繰り返し行う必要がないようにしている。サーバ110は、鍵を選択すると、それらをキャッシュに格納し、無線通信機器120がクライアント・ハローメッセージの中にセッション識別子を提供している場合は、サーバ110はこのセッション識別子をキャッシュで検索する。典型例である一実施形態によると、メッセージは上記のフィールドに加えて、32ビット長の‘バッファメモリ’フィールドを含んでいる。クライアント・ハローメッセージのフィールドおよび長さは、要求に応じて変更することができる。
【0040】
第2ステップで、サーバ110は、クライアント・ハローメッセージを受け取ると、乱数‘r’を生成する。典型例である一実施形態によると、乱数‘r’のサイズは100ビットである。そして、サーバ110は、生成した乱数‘r’、マスク(Mask)、ハッシュ関数を適用したトランザクションIDを用いて、乱数のマスク結果値{s=(r||Mask) XoR Hash(Tr_ID)}を計算する。ここで、マスクは156ビットである。続いて、サーバ110は、無線通信機器120の公開鍵‘PUB’を用いてECE暗号化アルゴリズムにより乱数のマスク結果値‘s’を暗号化し、マスク結果値‘s’にハッシュ関数を適用したもの、およびセキュリティ用ナンス値を付加して、暗号化メッセージを生成する。そして、サーバ110は、その暗号化メッセージ{y=ECEPUB(s),Hash(s),Nonce(r)}を無線通信機器120に送信する。
【0041】
第3ステップで、無線通信機器120は、暗号化メッセージを受け取ると、この無線通信機器120の秘密鍵‘k’を用いたECE復号化アルゴリズムとハッシュ関数の適用{Hash(Tr_ID)XoR ECEk(y)}により、乱数‘r’とマスクからなるものを取り出す。続いて、無線通信機器120は、これを乱数‘r’とマスクに分割し、そして、乱数の値をセキュリティ用ナンス値で検証し、乱数のマスク結果値‘s’をハッシュ関数で検証する。
【0042】
第4ステップで、無線通信機器120は、秘密鍵‘k’を用いたECDSA−163アルゴリズムにより、結果値‘m’を含むメッセージに署名したもの{signs}を生成する。ここで、結果値‘m’{m=r3mod p=137ビット数}は、乱数‘r’に置換法を用いることで得られる。続いて、無線通信機器120は、結果メッセージ{sig_value}をサーバ110に送信する。
【0043】
第5ステップで、サーバ110は、無線通信機器120の公開鍵‘PUB’を用いたECDSA−163アルゴリズムにより、受信した結果メッセージ{sig_value}から結果値‘m’を取り出し、続いて、サーバ110は、乱数‘r’に置換法を用いて結果値‘m’{m=r3mod p}を得て、これにより署名を検証する。
【0044】
受信した結果メッセージの署名を検証したら、最終ステップで、サーバ110は、無線通信機器120に対してレスポンスを送る。
【0045】
上記システム100において通信を開始する前に、最初に、サーバ110は、無線通信機器120の機器番号とIMEI番号を登録し、そして、サーバ110へのアクセスが許可される前の各無線通信機器120に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。
【0046】
典型例である一実施形態によると、無線通信機器120は携帯電話である。従って、サーバ110はモバイル番号とIMEI番号を登録し、そして、サーバ110へのアクセスが許可される前の各携帯電話120に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。無線通信機器120は、楕円暗号(EC)の復号化とEC署名の生成のために163ビットの秘密鍵‘k’を用いる。サーバ110は、楕円暗号(EC)の暗号化とEC署名の検証のために公開鍵‘PUB’を使用し、また、シードを受け取って乱数を生成する周知の擬似乱数生成器(PRNG:Pseudo Random Number Generator)を使用する。
【0047】
一実施形態によると、上記システム100において通信が開始される前に、最初に、無線通信機器とサーバとの間で(楕円曲線暗号)ECC−163の設定が調整される。
【0048】
ECC(楕円曲線暗号)方式に基づくEAPプロトコルを用いたデータの安全なトランザクションの実例:
1.Tr_ID=35422
2.Hash(Tr_ID)=95405401234511
3.素数 p=101,ここで、pは、2 mod 3
4.無線通信機器の秘密鍵 k=199
5.無線通信機器の公開鍵 PUB=(232,123)
6.サーバが、乱数 r=124325を生成する。
7.サーバが、s=1243255783459321 XoR 95405401234511=1192391475877302,ここで、Mask=5783459321,を計算する。
8.サーバが、PUBを利用し、そして{(23241,34343),3443221,15}を無線通信機器に送信する。
9.無線通信機器は、(23241,34343)に対するkを用いたEC復号化によりsを得て、ここから、無線通信機器はr=124325を取り出す。
10.無線通信機器は、m =r3mod p =87を計算し、kを用いたECDSA−163アルゴリズムによりmに署名して、sig_value={4547,3434}をサーバに送る。
11.サーバは、m=r3mo p=87を計算し、クライアントの公開鍵を用いて署名を検証する。
【0049】
図2は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−1に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。システム200は、サーバ210と無線通信機器220とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器220は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器220は携帯電話である。
【0050】
上記システム200で用いられる通信方法では、サーバに210にアクセスする接続試行を少なくとも1つの無線通信機器220から受けて、SKE(対称鍵暗号)方式に基づく軽量の拡張認証プロトコル(EAP)を用いて認証プロセスを実行することにより、サーバ210へのアクセスが許可される前の無線通信機器220を支援する。上記認証プロセスは、次のようなステップを備えている。
【0051】
提案される方法の第1ステップでは、無線通信機器220は、サーバ210に対してクライアント・ハローメッセージを送信することにより、通信を開始する。クライアント・ハローメッセージは、この無線通信機器220で使用する準備ができている暗号化アルゴリズムのリストと、サーバ210を認証するのに用いられる何らかのチャレンジデータとを含んでいる。メッセージは、次のようなフィールドを含んでいる。
【表2】
【0052】
セッション識別子は、現在の要求を以前のものと照合するのに用いられ、これによって、2つのシステムの間で頻繁に通信が行われる場合に認証および鍵交換を繰り返し行う必要がないようにしている。サーバ210は、鍵を選択すると、それらをキャッシュに格納し、無線通信機器220がクライアント・ハローメッセージの中にセッション識別子を提供している場合は、サーバ210はこのセッション識別子をキャッシュで検索する。典型例である一実施形態によると、メッセージは上記のフィールドに加えて、32ビット長の‘バッファメモリ’フィールドを含んでいる。クライアント・ハローメッセージのフィールドおよび長さは、要求に応じて変更することができる。
【0053】
第2ステップで、サーバ210は、クライアント・ハローメッセージを受け取ると、乱数‘r’と素数‘p’(=2 mod 3)を生成する。典型例である一実施形態によると、乱数‘r’のサイズは192ビットであり、素数‘p’のサイズは64ビットである。そして、サーバ210は、生成した乱数‘r’およびマスク(Mask)と、ハッシュ関数を適用したトランザクションID、顧客ID、機器番号、およびセキュリティ用ナンス値を用いて、乱数のマスク結果値{s=(r||Mask) XoR Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)}を計算する。ここで、マスクは64ビットである。続いて、サーバ210は、rを用いた暗号化によりy1=Encr(p)を算出し、これにハッシュ関数を適用したものとセキュリティ用ナンス値とを付加して、乱数のマスク結果値‘s’で暗号化メッセージを生成する。そして、サーバ210は、その暗号化メッセージ{s,y1=Encr(p),Hash(y1),Nonce(y1)}を無線通信機器220に送信する。
【0054】
第3ステップで、無線通信機器220は、暗号化メッセージを受け取ると、ハッシュ関数の適用{Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no) XoR s}により、乱数‘r’とマスクからなるものを取り出す。続いて、無線通信機器220は、これをマスクと乱数‘r’に分割する。この乱数‘r’を用いて{y1}を復号化することで素数‘p’を復元し、さらに、受信したメッセージのハッシュ値{Hash(y1)}を検証する。次に、無線通信機器220は、結果値{r3 =(r mod p)3mod p}を計算する。これは、乱数の置換法を用いて得られる。続いて、無線通信機器220は、新しい第2の乱数y2 と、これにハッシュ関数を適用したものと、さらにセキュリティ用ナンス値を付加して、暗号化メッセージ{y3=r3XoR y2 ,Hash(y2),Nonce(y3)}を生成する。そして、無線通信機器220は、結果の暗号化メッセージをサーバ210に送る。ここで、上記第2の新しい乱数‘y2 ’は擬似乱数生成(PRNG)法を用いて生成される。
【0055】
第4のステップで、サーバ210は、乱数の3乗値{r3}を計算する。続いて、サーバ210は、乱数の3乗値とXOR関数と用いて、{y3 XoR r3}により、第2の新しい乱数‘y2’を得る。そして、サーバ210は、受信したメッセージのハッシュ値{Hash(y2)}およびナンス値{Nonce(y3)}を検証する。
【0056】
受信したメッセージのハッシュ値{Hash(y2)}およびナンス値{Nonce(y3)}を検証したら、最終ステップで、サーバ210は、無線通信機器220に対してレスポンスを送る。
【0057】
上記システム200において通信を開始する前に、最初に、サーバ210は、無線通信機器220の機器番号とIMEI番号を登録し、そして、サーバ210へのアクセスが許可される前の各無線通信機器220に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。
【0058】
典型例である一実施形態によると、無線通信機器220は携帯電話である。従って、サーバ210はモバイル番号とIMEI番号を登録し、そして、サーバ210へのアクセスが許可される前の各携帯電話220に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。サーバ210は、メッセージの暗号化にAES−CTR−192ビット アルゴリズムを使用し、また、シードを受け取って乱数を生成する周知の擬似乱数生成器(PRNG)を使用する。
【0059】
SKE(対称鍵暗号)方式−1に基づくEAPプロトコルを用いたデータの安全なトランザクションの実例:
1.Cust_ID=2323; Tr_ID=3542234
2.Mobile no=9885076432;IMEI=74398483299329
3.Hash(Tr_ID,SIM no)=12495405401234511;Hash(Cust_ID,Mobile no)=232311212121
4.サーバは、192ビットの乱数r=12432534343、および64ビットの素数p=101、ここでpは2 mod 3、を生成する。
5.サーバは、r||Mask=124325343435783459321、およびs=66391475877301を計算する。
6.サーバは、rを用いて、Encr(p)=43484349を算出し、{124330942610003772911,43484349,232321,14}を無線通信機器に送信する。
7.無線通信機器は、Hash(Tr_ID,SIM no)XoR Hash(Cust_ID,Mobile no)XoR sにより、r||Mask=124325343435783459321を取り出し、r=12432534343とMask=5783459321に分割する。
8.無線通信機器は、r3=r3mod p=41を計算し、乱数y2=145を生成し、{184,343435,4}をサーバに送る。ここで、Hash(145)=343435。
9.サーバは、r3=r3mod p=41を計算し、y3 XoR r3により、y2=145を取得して、Hash(y2)およびNonce(y3)を検証する。
【0060】
図3は、サーバと無線通信機器との間での、SKE(対称鍵暗号)方式−2に基づくEAPプロトコルを用いる、データの安全なトランザクションを示している。システム300は、サーバ310と無線通信機器320とを備え、これらは通信ネットワークを介して互いに通信接続されている。通信ネットワークは、広域ネットワーク(WAN)、ローカルエリア・ネットワーク(LAN)、メトロポリタンエリア・ネットワーク(MAN)、インターネット、イントラネットなどからなるグループから選択することができる。好ましい実施形態では、通信ネットワークはインターネットである。無線通信機器320は、モバイル・ハンドセット、スマートフォン、PDA、セルラーフォン、あるいは、2G、3Gまたは4Gネットワーク対応の小型機器および無線通信機器からなるグループの1つから選択することができる。好ましい実施形態では、無線通信機器320は携帯電話である。
【0061】
上記システム300で用いられる通信方法では、サーバに310にアクセスする接続試行を少なくとも1つの無線通信機器320から受けて、SKE(対称鍵暗号)方式に基づく軽量の拡張認証プロトコル(EAP)を用いて認証プロセスを実行することにより、サーバ310へのアクセスが許可される前の無線通信機器320を支援する。上記認証プロセスは、次のようなステップを備えている。
【0062】
提案される方法の第1ステップでは、無線通信機器320は、サーバ310に対してクライアント・ハローメッセージを送信することにより、通信を開始する。クライアント・ハローメッセージは、この無線通信機器320で使用する準備ができている暗号化アルゴリズムのリストと、サーバ310を認証するのに用いられる何らかのチャレンジデータとを含んでいる。メッセージは、次のようなフィールドを含んでいる。
【表3】
【0063】
セッション識別子は、現在の要求を以前のものと照合するのに用いられ、これによって、2つのシステムの間で頻繁に通信が行われる場合に認証および鍵交換を繰り返し行う必要がないようにしている。サーバ310は、鍵を選択すると、それらをキャッシュに格納し、無線通信機器320がクライアント・ハローメッセージの中にセッション識別子を提供している場合は、サーバ310はこのセッション識別子をキャッシュで検索する。典型例である一実施形態によると、メッセージは上記のフィールドに加えて、32ビット長の‘バッファメモリ’フィールドを含んでいる。クライアント・ハローメッセージのフィールドおよび長さは、要求に応じて変更することができる。
【0064】
第2ステップで、サーバ310は、クライアント・ハローメッセージを受け取ると、乱数‘r’と素数‘p’(=2 mod 3)を生成する。典型例である一実施形態によると、乱数‘r’のサイズは192ビットであり、素数‘p’のサイズは64ビットである。そして、サーバ310は、生成した乱数およびマスク(Mask1)と、その他のパラメータにハッシュ関数を適用したものとを用いて、第1のマスク結果値{y1=(r||Mask1) XoR Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)}を計算する。ここで、マスクは64ビットである。さらに、生成した素数およびマスク(Mask2)と、その他のパラメータにハッシュ関数を適用したものとを用いて、第2のマスク結果値{y2=(p||Mask2)XoR Hash(Tr_Id,Cust_Id,SIM no,IMEI)}を計算する。ここで、マスクは64ビットである。続いて、サーバ310は、第1のマスク結果値y1および素数pにハッシュ関数を適用したもの、およびセキュリティ用ナンス値を付加して、第1のマスク結果値y1と第2のマスク結果値y2とで、暗号化メッセージを生成する。そして、サーバ310は、その暗号化メッセージ{y1,y2,Hash(y1||p),Nonce(y1)}を無線通信機器320に送信する。
【0065】
第3ステップで、無線通信機器320は、暗号化メッセージを受け取ると、ハッシュ関数の適用{Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no) XoR y1}により、乱数‘r’とMask1からなるものを取り出す。続いて、無線通信機器320は、これをMask1と乱数‘r’に分割する。同様にして、無線通信機器320は、素数‘p’を抽出し、この抽出した素数‘p’と第1のマスク結果値y1のハッシュ値{Hash(y1||p)}を検証し、第1マスク結果値y1のナンス関数{Nonce(y1)}を検証する。そして、無線通信機器320は、結果値{r3=(r mod p)3mod p}を計算する。これは、乱数の置換法を用いて得られる。次に、決定論的乱数列生成(DRSG:Deterministic Random Sequence Generation)アルゴリズムを用いて、DRSG(r,t1,t2)、ここでt1=0、t2=Nonce(r3)、により、102ビットの秘密鍵“k”を生成する。続いて、無線通信機器320は、乱数の3乗値を暗号化し、さらにセキュリティ用ナンス値を付加して、暗号化メッセージ{Enck(r3XoR k)||Nonce(k)}を生成する。そして、無線通信機器320は、結果の暗号化メッセージをサーバ310に送る。
【0066】
第4のステップで、サーバ310は、乱数の3乗値{r3}により秘密鍵‘k’生成し、続いて、サーバ310は、復号化により結果値を得る。結果値は、無線通信機器320の秘密鍵‘k’と乱数の3乗値{r3}のXOR関数から得られたものである。そして、サーバ310は、これを乱数の3乗値{r3}と秘密鍵‘k’に分割する。続いて、サーバ310は、受信した暗号化メッセージのセキュリティ用ナンス値{Nonce(k)}で、秘密鍵を検証する。
【0067】
受信した暗号化メッセージのセキュリティ用ナンス値{Nonce(k)}で秘密鍵を検証したら、最終ステップで、サーバ310は、無線通信機器320に対してレスポンスを送る。
【0068】
上記システム300において通信を開始する前に、最初に、サーバ310は、無線通信機器320の機器番号とIMEI番号を登録し、そして、サーバ310へのアクセスが許可される前の各無線通信機器320に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。
【0069】
典型例である一実施形態によると、無線通信機器320は携帯電話である。従って、サーバ310はモバイル番号とIMEI番号を登録し、そして、サーバ310へのアクセスが許可される前の各携帯電話320に対して、顧客IDとトランザクションID(Cust_IDおよびTr_ID)を配布する。サーバ310は、メッセージの暗号化にAES−CTR−192ビット アルゴリズムを使用し、また、シードを受け取って乱数を生成する周知の擬似乱数生成器(PRNG)を使用する。
【0070】
SKE(対称鍵暗号)方式−2に基づくEAPプロトコルを用いたデータの安全なトランザクションの実例:
1.Cust_ID=2323;Tr_ID=3542234
2.Mobile no=9885076432;IMEI=74398483299329
3.Hash(Tr_ID,SIM no)=12495405401234511;Hash(Cust_ID,Mobile no)=232311212121;Hash(Tr_ID,Cust_ID,SIM no,IMEI)=34343421122
4.素数p=101、ここでpは2 mod 3
5.サーバは、乱数r=124325、Mask1=5783459、およびMask2=53434116432を生成する。
6.サーバは、y1=32423423、およびy2=43556121を計算する。
7.サーバは、{32423423,43556121,1343444,15}を送信する。
8.無線通信機器は、Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)XoR y1を実行することにより、1243255783459を取り出し、そして、r=124325およびMask1=5783459を得る。
9.サーバは、kを用いて、Enck(s)=43434343を算出し、{66391475877301,43434343,232321,18}を無線通信機器に送信する。
10.無線通信機器は、kを用いてsを得て、Hash(Tr_Id,SIM no)XoR Hash(Cust_Id,Mobile no)XoR sにより、r=124325およびMask=5783459321を求める。
11.無線通信機器は、r3=r3mod p=87を計算し、y2=145を生成して、{198,343434,4}をサーバに送る。
12.サーバは、r3=r3mod p=87を計算し、y3 XoR r3により、y2=145を取得して、Hash(y2)およびNonce(y3)を検証する。
【0071】
一実施形態によると、上記提案のシステムおよび方法において、フィッシング攻撃およびリプレイ攻撃を回避して安全な通信を維持するため、ハッシュ関数が適用される。また、別の実施形態によると、上記システムおよび方法において、フィッシング攻撃およびリプレイ攻撃を回避して安全な通信を維持するため、ナンス値が付加される。さらに、カウンタ初期値予測攻撃や時間メモリトレードオフ攻撃を回避するために、ハッシュやナンス値による方法が用いられる。
【0072】
ECC(楕円曲線暗号)方式およびSKE(対称鍵暗号)方式に基づく拡張認証プロトコル(EAP)の長所:
1.基地局からネットワーク・サブシステムを介してGPRSコアネットワークまで、本発明のEAP(プロトコル1:ECC方式に基づくEAP)は、163ビット鍵でECCを使用することで、ノード間でスピーディーに動作する。
2.プロトコル1(ECC方式に基づくEAP)において、置換を用いているため、攻撃者が署名したメッセージを生成することは難しい。
3.r→r3=r3mod p(ここで、p=2 mod 3)は、ランダムである。
4.同様に、プロトコル1,2および3(ECC方式と、SKE方式1および2に基づくEAP)において、写像:r→r3=r3mod pは全単射であるため、(サーバにより提供される)乱数rを予測するのは難しい。
5.本発明のプロトコル(ECC方式と、SKE方式1および2に基づくEAP)は、2G,3G,あるいは4Gモバイルネットワークに対応している。
6.本発明のプロトコル(ECC方式と、SKE方式1および2に基づくEAP)では、異なるドメイン間での鍵合意はなく、また、鍵の有効期限がない。
7.本発明のEAPはWLANおよびWMANに適しており、辞書攻撃、平文攻撃、選択平文攻撃、さらには中間者攻撃など様々な攻撃を受けやすい従来のEAPに比べて、本発明のEAPは優れている。
【0073】
以下に示す例では適用例について記述しているが、これは適用例を説明するためのものにすぎず、従って、適用範囲を制限するものと解釈されてはならない。
【0074】
要件:
EAP適用環境は、以下の通りである:
a)ソフトウェア環境
【表4】
b)ハードウェア環境
【表5】
【0075】
[初期テスト設定]
a)EAPクライアント:
1)基本的に、EAPクライアントは、モバイル機器(例えば、NokiaのN79,E75,5800−ExpressMusic,6210 Navigator)にインストールされる。
2)データの暗号化および復号化は、J2MEコードにより行う。
3)クライアントはサーバと連絡を取り、安全なチャネルを通じて通信する。
b)EAPサーバ:
1)サーバ・アプリケーションは、NETフレームワークを用いて構築されるもので、データの復号化および暗号化に用いられる。
2)クライアント要求を復号化し、暗号化形式でレスポンスを返信する。
【0076】
EAPアプリケーション実行のフロー図:
図4は、無線通信機器とサーバとの間で、軽量のEAPプロトコルを用いてデータの安全なトランザクションを実行400する場合のフロー図を示している。第1のステップで、クライアント420は、クライアント・ハローメッセージをサーバ410に送ることにより、通信を開始する{1→ClientInitiate()−request}。第2ステップで、サーバ410は、クライアント420からクライアント・ハローメッセージを受信すると、レスポンスとして16進数列を送信する{2→Hexa decimal sequence(response)}。第3ステップで、クライアント420は、両者間でデータの安全なトランザクションを開始する要求メッセージを、EAPプロトコルを用いてサーバ410に送る{3→EAP Protocol()−request}。第4ステップで、サーバ410は、プロトコルを検証して、クライアント420にレスポンスを送る{4→true/false(response)}。最後のステップで、レスポンスが“true”である場合は、クライアントとサーバとの間でデータの安全なトランザクションのプロセスが開始し、そうでない場合、すなわちレスポンスが“false”である場合は、両者間の通信は打ち切りとなる。
【0077】
テスト結果:
Nokiaのハンドセット・シリーズ
N79,E75,5800および6210は、これらのEAPクライアント・モジュールをサポートしている。上記の実行の通りに、Nokiaで‘EAPフロー’を実行したところ、サーバにより、0.5ms未満での認証レスポンスを確認している。これは、サーバ側からの認証レスポンスにかかる時間が1秒を超える証明書ベースのトランザクションに比べて、際立ったパフォーマンスである。
【0078】
以上、いくつかの実施形態を参照して説明を行ったが、本願に関連する技術およびテクノロジーの知識を有する者であれば、本発明の原理および範囲から有意な逸脱をすることなく、記載の構造および実施方法の変更および変形が可能であることは理解できるであろう。
【符号の説明】
【0079】
100 システム
110 サーバ
120 無線通信機器
200 システム
210 サーバ
220 無線通信機器
300 システム
310 サーバ
320 無線通信機器
410 EAPサーバ
420 EAPクライアント
【特許請求の範囲】
【請求項1】
無線通信機器を認証する方法であって、
第1のメッセージを通信機器からサーバに送信するステップと、
前記サーバにおいて乱数を生成するステップであって、前記乱数がマスクされるステップと、
前記サーバにおいて、第2のメッセージを前記マスクされた乱数と共に束ねて第1の暗号化信号を生成するステップと、
前記第1の暗号化信号を、前記サーバから前記通信機器に送信するステップと、
前記通信機器において前記第1の暗号化信号を復号化するステップと、
前記通信機器において前記乱数を取り出すステップであって、前記マスクが取り除かれるステップと、
前記通信機器において署名信号を生成するステップと、
前記通信機器において第2の暗号化信号を生成するステップと、
前記第2の暗号化信号を前記通信機器から前記サーバに送信するステップと、
前記サーバにおいて前記第2の暗号化信号を復号化するステップと、
前記サーバにおいて、前記サーバと前記通信機器での対応する署名値を比較することにより、前記第2の暗号化信号を検証するステップと、
前記サーバにおいて、前記署名値の前記比較に基づき、レスポンスを生成するステップと、
前記サーバにより、前記レスポンスを前記通信機器に送信するステップと、を備える方法。
【請求項2】
前記第1の復号化信号は、前記第2のメッセージを、前記マスクされた乱数に関連付けられたハッシュ値、公開鍵、および前記乱数に関連付けられたナンス値のうちの少なくとも1つと共に束ねることにより生成される、請求項1に記載の方法。
【請求項3】
前記第2の暗号化信号は、第3のメッセージを、前記通信機器の秘密鍵と関連付けられた署名信号と共に束ねることにより生成される、請求項1に記載の方法。
【請求項4】
無線通信機器を認証する方法であって、
第1のメッセージを通信機器からサーバに送信するステップと、
前記サーバにおいて第1の乱数と素数とを生成するステップであって、前記乱数および素数がマスクされるステップと、
前記サーバにおいて、第2のメッセージを、前記マスクされた乱数および前記マスクされた素数のうちの少なくとも1つと共に束ねることにより、第1の暗号化信号を生成するステップと、
前記第1の暗号化信号を、前記サーバから前記通信機器に送信するステップと、
前記通信機器において、前記第1の暗号化信号を復号化するステップと、
前記通信機器において、前記第1の乱数および前記素数を取り出すステップであって、それぞれ対応するマスクが取り除かれるステップと、
前記通信機器において第2の乱数を生成するステップと、
前記通信機器において第2の暗号化信号を生成するステップと、
前記第2の暗号化信号を前記通信機器から前記サーバに送信するステップと、
前記サーバにおいて、前記第2の暗号化信号を復号化するステップと、
前記サーバにおいて、前記第2の乱数を取り出すステップと、
前記サーバにおいて、前記サーバと前記通信機器での対応するハッシュ値およびナンス値を比較することにより、前記第2の暗号化信号を検証するステップと、
前記サーバにおいて、前記ハッシュ値およびナンス値の前記比較に基づき、レスポンスを生成するステップと、
前記サーバにより、前記レスポンスを前記通信機器に送信するステップと、を備える方法。
【請求項5】
予め共有される192ビットの秘密(暗号)鍵を、AES−CTRアルゴリズムを用いて、前記サーバから前記通信機器に送信することをさらに含む、請求項4に記載の方法。
【請求項6】
前記第2の乱数は、擬似乱数生成(PRNG)法を用いて生成される、請求項4に記載の方法。
【請求項7】
前記第2の暗号化信号は、第3のメッセージを、前記第2の乱数と関連付けられたハッシュ値および秘密鍵と関連付けられたナンス値のうちの少なくとも1つと共に束ねることにより生成されるものであり、前記秘密鍵は決定論的乱数列生成(DRSG)プロセスを用いて生成される、請求項4に記載の方法。
【請求項8】
前記第2の暗号化信号を復号化することは、前記秘密鍵を取り出すことを含んでいる、請求項4に記載の方法。
【請求項9】
前記第2の暗号化信号の検証は、前記第2の乱数と関連付けられたハッシュ値および前記通信機器の前記秘密鍵と関連付けられたナンス値のうちいずれかの対応する値を比較することにより行われる、請求項4に記載の方法。
【請求項10】
無線通信機器を認証するシステムであって、
サーバにおいて第1の乱数を生成するように構成された乱数生成器であって、前記乱数はマスクされる、乱数生成器と、
前記サーバにおいて素数を生成するように構成された素数生成器と、
前記サーバにおいて、第2のメッセージを、前記第1の乱数および前記素数から得られるデータ信号のうち少なくとも1つと共に束ねることにより、第1の暗号化信号を生成するように構成された第1の暗号化モジュールと、
前記第1の暗号化信号を、前記サーバから受信するように構成された通信機器と、
前記通信機器において、前記第1の暗号化信号を復号化し、さらに、前記第1の乱数あるいは前記素数のうち少なくとも1つを、対応するマスクを取り除いて、取り出すように構成された第1の復号化モジュールと、
前記通信機器において第2の乱数を生成するように構成された乱数生成器と、
前記通信機器において署名信号を生成するように構成された署名信号生成モジュールと、
前記通信機器において、第3のメッセージを、前記署名信号あるいは前記第2の乱数から得られるデータ信号のうち少なくとも1つと共に束ねることにより、第2の暗号化信号を生成するように構成された第2の暗号化モジュールと、
前記通信機器において、前記第2の暗号化信号を前記サーバに送信するように構成された送受信機と、
前記サーバにおいて、前記第2の暗号化信号を復号化するように構成された第2の復号化モジュールと、
前記サーバにおいて、前記サーバと前記通信機器での対応する署名値、ハッシュ値、およびナンス値のいずれか1つを比較することにより、前記第2の暗号化信号を検証するように構成された検証モジュールと、を備えるシステム。
【請求項11】
前記第1の暗号化モジュールは、前記第2のメッセージを、前記マスクされた乱数と関連付けられたハッシュ値、前記乱数と関連付けられたハッシュ値、秘密鍵、および前記乱数と関連付けられたナンス値のうちの少なくとも1つと共に束ねることにより、前記第1の暗号化信号を生成するように構成されている、請求項10に記載のシステム。
【請求項12】
前記第2の暗号化モジュールは、前記第3のメッセージを、秘密鍵、この秘密鍵に関連付けられた署名信号、および前記第2の乱数のハッシュ値のうちの少なくとも1つと共に束ねることにより、前記第2の暗号化信号を生成するように構成されている、請求項10に記載のシステム。
【請求項13】
前記第2の復号化モジュールは、前記第2の暗号化信号から前記秘密鍵を取り出すように構成されている、請求項10に記載のシステム。
【請求項14】
前記検証モジュールは、前記通信機器の秘密鍵、前記サーバと前記通信機器でのハッシュ値およびナンス値のいずれかの対応する値を比較することにより、前記第2の暗号化信号を検証するように構成されている、請求項10に記載のシステム。
【請求項15】
前記通信機器は、2G、3G、あるいは4G通信プロトコルを用いて動作することが可能な無線通信機器である、請求項10に記載のシステム。
【請求項1】
無線通信機器を認証する方法であって、
第1のメッセージを通信機器からサーバに送信するステップと、
前記サーバにおいて乱数を生成するステップであって、前記乱数がマスクされるステップと、
前記サーバにおいて、第2のメッセージを前記マスクされた乱数と共に束ねて第1の暗号化信号を生成するステップと、
前記第1の暗号化信号を、前記サーバから前記通信機器に送信するステップと、
前記通信機器において前記第1の暗号化信号を復号化するステップと、
前記通信機器において前記乱数を取り出すステップであって、前記マスクが取り除かれるステップと、
前記通信機器において署名信号を生成するステップと、
前記通信機器において第2の暗号化信号を生成するステップと、
前記第2の暗号化信号を前記通信機器から前記サーバに送信するステップと、
前記サーバにおいて前記第2の暗号化信号を復号化するステップと、
前記サーバにおいて、前記サーバと前記通信機器での対応する署名値を比較することにより、前記第2の暗号化信号を検証するステップと、
前記サーバにおいて、前記署名値の前記比較に基づき、レスポンスを生成するステップと、
前記サーバにより、前記レスポンスを前記通信機器に送信するステップと、を備える方法。
【請求項2】
前記第1の復号化信号は、前記第2のメッセージを、前記マスクされた乱数に関連付けられたハッシュ値、公開鍵、および前記乱数に関連付けられたナンス値のうちの少なくとも1つと共に束ねることにより生成される、請求項1に記載の方法。
【請求項3】
前記第2の暗号化信号は、第3のメッセージを、前記通信機器の秘密鍵と関連付けられた署名信号と共に束ねることにより生成される、請求項1に記載の方法。
【請求項4】
無線通信機器を認証する方法であって、
第1のメッセージを通信機器からサーバに送信するステップと、
前記サーバにおいて第1の乱数と素数とを生成するステップであって、前記乱数および素数がマスクされるステップと、
前記サーバにおいて、第2のメッセージを、前記マスクされた乱数および前記マスクされた素数のうちの少なくとも1つと共に束ねることにより、第1の暗号化信号を生成するステップと、
前記第1の暗号化信号を、前記サーバから前記通信機器に送信するステップと、
前記通信機器において、前記第1の暗号化信号を復号化するステップと、
前記通信機器において、前記第1の乱数および前記素数を取り出すステップであって、それぞれ対応するマスクが取り除かれるステップと、
前記通信機器において第2の乱数を生成するステップと、
前記通信機器において第2の暗号化信号を生成するステップと、
前記第2の暗号化信号を前記通信機器から前記サーバに送信するステップと、
前記サーバにおいて、前記第2の暗号化信号を復号化するステップと、
前記サーバにおいて、前記第2の乱数を取り出すステップと、
前記サーバにおいて、前記サーバと前記通信機器での対応するハッシュ値およびナンス値を比較することにより、前記第2の暗号化信号を検証するステップと、
前記サーバにおいて、前記ハッシュ値およびナンス値の前記比較に基づき、レスポンスを生成するステップと、
前記サーバにより、前記レスポンスを前記通信機器に送信するステップと、を備える方法。
【請求項5】
予め共有される192ビットの秘密(暗号)鍵を、AES−CTRアルゴリズムを用いて、前記サーバから前記通信機器に送信することをさらに含む、請求項4に記載の方法。
【請求項6】
前記第2の乱数は、擬似乱数生成(PRNG)法を用いて生成される、請求項4に記載の方法。
【請求項7】
前記第2の暗号化信号は、第3のメッセージを、前記第2の乱数と関連付けられたハッシュ値および秘密鍵と関連付けられたナンス値のうちの少なくとも1つと共に束ねることにより生成されるものであり、前記秘密鍵は決定論的乱数列生成(DRSG)プロセスを用いて生成される、請求項4に記載の方法。
【請求項8】
前記第2の暗号化信号を復号化することは、前記秘密鍵を取り出すことを含んでいる、請求項4に記載の方法。
【請求項9】
前記第2の暗号化信号の検証は、前記第2の乱数と関連付けられたハッシュ値および前記通信機器の前記秘密鍵と関連付けられたナンス値のうちいずれかの対応する値を比較することにより行われる、請求項4に記載の方法。
【請求項10】
無線通信機器を認証するシステムであって、
サーバにおいて第1の乱数を生成するように構成された乱数生成器であって、前記乱数はマスクされる、乱数生成器と、
前記サーバにおいて素数を生成するように構成された素数生成器と、
前記サーバにおいて、第2のメッセージを、前記第1の乱数および前記素数から得られるデータ信号のうち少なくとも1つと共に束ねることにより、第1の暗号化信号を生成するように構成された第1の暗号化モジュールと、
前記第1の暗号化信号を、前記サーバから受信するように構成された通信機器と、
前記通信機器において、前記第1の暗号化信号を復号化し、さらに、前記第1の乱数あるいは前記素数のうち少なくとも1つを、対応するマスクを取り除いて、取り出すように構成された第1の復号化モジュールと、
前記通信機器において第2の乱数を生成するように構成された乱数生成器と、
前記通信機器において署名信号を生成するように構成された署名信号生成モジュールと、
前記通信機器において、第3のメッセージを、前記署名信号あるいは前記第2の乱数から得られるデータ信号のうち少なくとも1つと共に束ねることにより、第2の暗号化信号を生成するように構成された第2の暗号化モジュールと、
前記通信機器において、前記第2の暗号化信号を前記サーバに送信するように構成された送受信機と、
前記サーバにおいて、前記第2の暗号化信号を復号化するように構成された第2の復号化モジュールと、
前記サーバにおいて、前記サーバと前記通信機器での対応する署名値、ハッシュ値、およびナンス値のいずれか1つを比較することにより、前記第2の暗号化信号を検証するように構成された検証モジュールと、を備えるシステム。
【請求項11】
前記第1の暗号化モジュールは、前記第2のメッセージを、前記マスクされた乱数と関連付けられたハッシュ値、前記乱数と関連付けられたハッシュ値、秘密鍵、および前記乱数と関連付けられたナンス値のうちの少なくとも1つと共に束ねることにより、前記第1の暗号化信号を生成するように構成されている、請求項10に記載のシステム。
【請求項12】
前記第2の暗号化モジュールは、前記第3のメッセージを、秘密鍵、この秘密鍵に関連付けられた署名信号、および前記第2の乱数のハッシュ値のうちの少なくとも1つと共に束ねることにより、前記第2の暗号化信号を生成するように構成されている、請求項10に記載のシステム。
【請求項13】
前記第2の復号化モジュールは、前記第2の暗号化信号から前記秘密鍵を取り出すように構成されている、請求項10に記載のシステム。
【請求項14】
前記検証モジュールは、前記通信機器の秘密鍵、前記サーバと前記通信機器でのハッシュ値およびナンス値のいずれかの対応する値を比較することにより、前記第2の暗号化信号を検証するように構成されている、請求項10に記載のシステム。
【請求項15】
前記通信機器は、2G、3G、あるいは4G通信プロトコルを用いて動作することが可能な無線通信機器である、請求項10に記載のシステム。
【図1】
【図2】
【図3】
【図4】
【図2】
【図3】
【図4】
【公開番号】特開2012−19511(P2012−19511A)
【公開日】平成24年1月26日(2012.1.26)
【国際特許分類】
【出願番号】特願2011−131541(P2011−131541)
【出願日】平成23年6月13日(2011.6.13)
【出願人】(510337621)タタ コンサルタンシー サービシズ リミテッド (9)
【氏名又は名称原語表記】TATA Consultancy Services Limited
【住所又は居所原語表記】Nirmal Building,9th Floor,Nariman Point,Mumbai 400021,Maharashtra,India.
【Fターム(参考)】
【公開日】平成24年1月26日(2012.1.26)
【国際特許分類】
【出願日】平成23年6月13日(2011.6.13)
【出願人】(510337621)タタ コンサルタンシー サービシズ リミテッド (9)
【氏名又は名称原語表記】TATA Consultancy Services Limited
【住所又は居所原語表記】Nirmal Building,9th Floor,Nariman Point,Mumbai 400021,Maharashtra,India.
【Fターム(参考)】
[ Back to top ]