(57)【要約】      （修正有）【課題】２つの通信装置の間の通信セッションにおいて使われる暗号同期を生成する方法を提供すること。【解決手段】本方法では、通信セッション用の第１の暗号同期の値が、第２の暗号同期の値に基づいて導出される。第２の暗号同期は、第１の暗号同期より長い寿命をもつ。即ち、第１の暗号同期（短周期同期）は、第２の暗号同期（長周期同期）を用いて生成され、フレームごとに増分されて次のフレームの暗号化および復号に用いられる。【選択図】図１
2005244986.tif 000002
【特許請求の範囲】
【請求項１】
２つの通信装置の間の通信セッション用の暗号同期を生成する方法であって、
前記通信セッション用の第１の暗号同期の値を、前記第１の暗号同期より寿命が長い第２の暗号同期の値に基づいて導出する工程を含む方法。
【請求項２】
前記第２の暗号同期が、前記２つの装置の少なくとも一方によってメッセージの暗号化のために用いられる、請求項１に記載の方法。
【請求項３】
前記第２の暗号同期が、前記２つの装置の少なくとも一方によってメッセージの完全性の検証に用いられる、請求項１に記載の方法。
【請求項４】
前記第２の暗号同期が通信セッションの間で変化する、請求項１に記載の方法。
【請求項５】
前記導出する工程が、前記第１の暗号同期を前記第２の暗号同期の少なくとも一部分として導出する、請求項１に記載の方法。
【請求項６】
前記導出する工程が、前記第１の暗号同期の第１の部分を前記第２の暗号同期として導出し、前記第１の暗号同期の第２の部分を固定ビット列として導出する、請求項５に記載の方法。
【請求項７】
前記固定ビット列が０の文字列である、請求項６に記載の方法。
【請求項８】
前記導出する工程が、
前記第２の暗号同期に対して擬似乱数関数を実施する工程と、
前記擬似乱数関数の出力から前記第１の暗号同期を生成する工程とを含む、請求項１に記載の方法。
【請求項９】
前記生成する工程が、前記第１の暗号同期を前記擬似乱数関数の前記出力として生成する、請求項８に記載の方法。
【請求項１０】
前記第１の暗号同期を用いて情報フレームを暗号化しまたは復号するうちの１つの工程をさらに含む、請求項１に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
暗号化方式は、たとえば無線通信、インターネットなど、多数の分野において広く普及している。暗号化されるメッセージ、データ、音声などは、一般に平文と呼ばれ、暗号化処理の結果は、暗号文と呼ばれる。しばしば、暗号化処理では、暗号文を得るために、平文に暗号化アルゴリズムを実施する必要がある。たとえばＤＥＳ、ＡＥＳなど、多くの暗号化アルゴリズムは、暗号化処理においてキーを使う必要がある。暗号化キーは、暗号文を生成するために暗号化アルゴリズムにおいて使われるビット列である。暗号化キーは、通信の送信側および受信側両方で知られており、受信側では、暗号文を平文に復号するのに使われる。
【０００２】
無線通信環境における暗号化方式の一例として、基地局と移動局の間で送られる情報フレームの暗号化がある。残念ながら、同じ情報（すなわち、同じ平文）が、異なる２つのフレーム期間において送られる場合、同じ暗号文が作成される。暗号文についてのこのようなものとしての情報は、漏洩したと言われる。この処理は、悪意のある攻撃者が、以前送られたことがある暗号文を送るという反射攻撃も可能にする。暗号文は、無意味なテキストとは対照的に平文に復号されるので、反射攻撃は、通信の受信側に混乱をもたらし得る。
【０００３】
反射攻撃を防ぐために、暗号同期を用いる暗号化技術が開発された。暗号同期は、たとえば、暗号化のために暗号同期を使う度に増分されるカウント値である。このようにして、暗号同期は、時間の経過とともに変化する。暗号同期の一般的な使用において、暗号化アルゴリズムは、暗号同期が平文であるかのように暗号同期に適用される。その結果得られる出力は、マスクと呼ばれる。マスクは次いで、情報（たとえば、音声、データなど）を用いて、暗号文を生成する暗号化のための排他ｏｒ演算を受ける。暗号化キーの場合と同様、暗号同期は送信側および受信側両方で知られており、受信側において、暗号文を平文に復号するのに使われる。
【０００４】
暗号同期は、たとえば通信セッションの異なるフレームに渡って情報が同じままであったとしても、得られる暗号文が実際に変わるように、使われる度に変化することが理解されよう。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、２つの通信装置の間の通信セッションにおいて使われるような、暗号同期を生成する方法を提供する。
【課題を解決するための手段】
【０００６】
暗号同期は、同期せず、失われた場合などには、設定し直すことができる。ただし、暗号同期を毎回同じ値に設定することによって暗号同期を同期し直すと、暗号同期を使用する目的が損なわれる。たとえば、新しい通信セッションごとに、暗号同期が同じ値または以前使われた値に設定し直され、暗号化キーが変わらないままであり各通信セッションの開始時に同じ情報が送信される場合、同じ暗号文が生成されうる。
【０００７】
本発明の一実施形態では、通信セッションなどにおいて使われる暗号同期は、第２の暗号同期から導出される。第２の暗号同期は、導出された暗号同期が各通信セッションごとに変わるように、通信セッションの間で変化する。
【０００８】
例示的な一実施形態では、暗号同期は、第２の暗号同期の少なくとも一部分として導出される。たとえば、暗号同期は、第２の暗号同期の少なくとも一部分および固定ビット列として導出することができる。
【０００９】
例示的な別の実施形態では、第２の暗号同期に対して擬似乱数関数が実施され、導出された暗号同期は、擬似乱数関数の出力から導出される。
【００１０】
本発明は、本明細書のこれ以降で行われる詳細な説明および添付の図面からより完全に理解されよう。図面において、同じ要素は同じ参照番号で表され、図面は例示のために挙げてあるに過ぎず、本発明を限定するものではない。
【発明を実施するための最良の形態】
【００１１】
理解を助け説明を容易にするために、ＣＤＭＡ２０００ファミリー標準などによる無線通信という状況で、本発明の実施形態を説明する。ただし、説明する方法は、この通信標準にも無線通信にも限定されないことを理解されたい。
【００１２】
無線通信において、移動局は、空間経由で基地局と通信する。移動局は、モバイル・ホン、無線コンピュータなどでよい。基地局は、地理的区域にサービスを提供する。すなわち、地理的区域にある移動局との間の通信を提供する。この通信は、しばしば暗号化される。ＣＤＭＡ２０００では、たとえば、それぞれ暗号化処理およびメッセージング完全性保護処理において使用される、移動局に関連づけられた暗号解読キー（ＣＫ）および完全性キー（ＩＫ）など、いくつかの長期性キーが存在する。ＣＤＭＡ２０００は、相対的に言って、長期暗号同期（たとえば、ＣＤＭＡ２０００におけるＴＸ＿ＥＸＴ＿ＳＳＥＱおよびＲＸ＿ＥＸＴ＿ＳＳＥＱ）も提供する。長期暗号同期（ＬＬＣＳ）は、基地局と移動局の間のメッセージ（たとえば、信号メッセージ）を暗号化し復号し、メッセージの完全性を検証し、またはその両方を行うのに用いられる。ＬＬＣＳを用いて生成された暗号文が反射攻撃に耐えられるようにするために、ＬＬＣＳは、使用される度に通常のやり方で増分される。最初は、必要または要求に応じて、ＣＤＭＡ２０００で規定されているような、公知のどの認証プロトコルを用いてＬＬＣＳを導出してもよい。
【００１３】
通常の音声通信の他に、ＣＤＭＡ２０００および他の標準は、データ通信（たとえば、ネット・サーフィン、ｅメールのダウンロードなど）も可能にする。基地局と移動局の間で情報（たとえば、音声、データなど）を伝達する通信チャネルは、しばしばラジオリンクと呼ばれ、たとえばデータ通信のためのプロトコルの１つは、ラジオリンク・プロトコル（ＲＬＰ）と呼ばれる。ＲＬＰ通信を確立するために、移動局と基地局の間の通信チャネルは、たとえばＬＬＣＳを用いたメッセージの完全性といった公知のやり方で確立される。ＲＬＰ通信が終わると、通信チャネルは取り壊される。情報（たとえば、音声、データなど）の伝達のために通信チャネルが存在した時間は、一般に通信セッションと呼ばれる。
【００１４】
通信セッションの間、ＲＬＰによって定義されたいくつかのフレームを伝達することができる。本発明によると、各フレームは、本明細書において短期暗号同期（ＳＬＣＳ）と呼ばれるものを用いて暗号化される。ＳＬＣＳは、ＳＬＣＳの寿命が通信セッションの存続期間に制限される点で、ＬＬＣＳと比較して短命である。すなわち、後で詳しく説明するように、ＳＬＣＳ用の値は、次の通信セッション用に新たに導出される。
【００１５】
対照的に、ＬＬＣＳの寿命は、単一のＲＬＰセッションに制限されない。たとえば、ＣＤＭＡ２０００では、ＬＬＣＳの寿命は、暗号解読キー（ＣＫ）および完全性キー（ＩＫ）の存続期間に束縛される。たとえば特定のタイプの登録（たとえば、新規在圏ロケーションレジスタ、すなわちＶＬＲでの登録）を行うと、新しいＣＫおよび新しいＩＫを生じる。したがって、この結果、それまでのＣＫおよびＩＫの寿命と、それに伴って、そうしたキーに関連づけられたＬＬＣＳの寿命とが終わる。さらに、移動局の電源が落ち、ＬＬＣＳを失うなどのイベントによって、ＬＬＣＳの寿命が終わり得る。しかし、概して、ＬＬＣＳの寿命は、複数の通信セッションに及ぶ。別の言い方をすると、ＬＬＣＳは、ＳＬＣＳが失効している間もその後も使われ続ける。後でよくわかるであろうが、本発明の方法は、ＳＬＣＳとＬＬＣＳの間のこの違いを利用する。
【００１６】
通信セッションを開始するのに用いられるメッセージは、ＬＬＣＳを使って完全性が保護されることを１つの理由として、ＬＬＣＳは、通信セッションの間で変化する。このようなものとして、ＬＬＣＳの値は、使う度に増分され、少なくともこのやり方では、ＬＬＣＳは、各通信セッションごとに異なる値をもつようになる。ＬＬＣＳを他の用途に使った結果として、通信セッション間でＬＬＣＳがさらに増分され得ることが理解されよう。というのは、後で詳しく説明するように、ＳＬＣＳは、ＬＬＣＳから導出され、異なる通信セッション用に導出されたＳＬＣＳは、異なる値をもつからである。したがって、反射攻撃の防止を助ける。
【００１７】
本発明の一実施形態によると、ＳＬＣＳは、ＬＬＣＳの一部分または全体を使って導出される。図１は、本実施形態によるＳＬＣＳの例を示す。図１に示す例では、ＳＬＣＳの長さは、ＬＬＣＳより長いと仮定される。より具体的には、図１の例では、６４ビットのＳＬＣＳおよび３２ビットのＬＬＣＳの場合を想定している。図に示すように、ＳＬＣＳの上位３２ビットは、ＬＬＣＳの３２ビットである。残りの部分、すなわちＳＬＣＳの下位３２ビットは、固定ビット・ストリームである。図１の場合、固定ビット・ストリームは、すべてが０の文字列である。
【００１８】
固定ビット・ストリームは、すべてが０である必要もすべてが１である必要もないことが理解されよう。さらに、ＳＬＣＳの一部分を形成するのにＬＬＣＳの全体を使うのではなく、ＬＬＣＳの一部分のみを使うこともできる。ただし、そうした場合、ＳＬＣＳの繰返しに対して最高水準の保護を提供し得るわけではないことが理解されよう。
【００１９】
本発明の別の実施形態によると、ＬＬＣＳに公知のどの擬似乱数関数を適用することもできる。その結果は次いで、ＳＬＣＳを生成するのに用いられる。たとえば、結果として得られた擬似乱数は、上で説明した実施形態におけるＬＬＣＳと同じように、ＳＬＣＳを生成するのに使うことができる。あるいは、結果として得られた擬似乱数は、ＳＬＣＳとして使うこともできる。
【００２０】
ＬＬＣＳからＳＬＣＳを導出する、さらに数多くの変形形態があり得ること、また、こうした具体的な実施形態は、本発明を後押しする全体概念の範囲内であることを意図することが理解されよう。
【００２１】
移動局および基地局両方で同じＬＬＣＳが知られているので、両局の間の通信セッションに対して同じＳＬＣＳが導出される。導出されたＳＬＣＳは次いで、従来のやり方で、送信側（基地局または移動局）で情報フレームを暗号化し、受信側（移動局または基地局）で情報フレームを復号するのに使われる。暗号化および復号を行う度に、ＳＬＣＳの値は、増分され、次のフレームの暗号化および復号に用いられる。通信セッションが終わると、ＳＬＣＳの寿命も終わる。上で詳しく説明したように、次の通信セッションのために、ＳＬＣＳが新たに導出される。
【００２２】
以上、本発明を説明したが、本発明は、様々に変更し得ることが明らかであろう。このような変形形態は、本発明の精神および範囲から逸脱するものとはみなされず、このようなすべての修正形態は、本発明の範囲に含まれるものとする。
【図面の簡単な説明】
【００２３】
【図１】本発明の一実施形態による、長期暗号同期からの短期暗号同期の形成を示す図である。
【図１】
2005244986.tif 000003