JP3792657B2 - 通信デバイスにより処理される呼におけるメッセージの強化された暗号処理方法 - Google Patents
通信デバイスにより処理される呼におけるメッセージの強化された暗号処理方法 Download PDFInfo
- Publication number
- JP3792657B2 JP3792657B2 JP2003035501A JP2003035501A JP3792657B2 JP 3792657 B2 JP3792657 B2 JP 3792657B2 JP 2003035501 A JP2003035501 A JP 2003035501A JP 2003035501 A JP2003035501 A JP 2003035501A JP 3792657 B2 JP3792657 B2 JP 3792657B2
- Authority
- JP
- Japan
- Prior art keywords
- secret
- offset
- message
- call
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Description
【発明の属する技術分野】
本発明は、無線(ワイヤレス)電話暗号法に関し、特に、大量のシステム資源を追加することを必要とせずに、無線電話システムにおける高速でセキュリティの高い暗号化のための改善されたセキュリティ暗号方式に関する。
【0002】
【従来の技術】
無線電話は、例えば、ステータス情報の伝送、動作モードの再設定、呼着信処理、ならびに、加入者の電子シリアル番号および電話番号のようなシステムおよびユーザのデータや、ユーザによって送信される会話およびその他のデータの伝送を含む、いくつかの目的のためにメッセージングを使用する。中央サービス局が電話線によって各加入者に接続され、権限のない者(攻撃者)による盗聴や傍受からのかなりの程度の保護を保証する通常の有線電話とは異なり、無線電話サービス局(すなわち基地局)は、加入者の物理的位置に関わらず、メッセージを無線信号で送受信しなければならない。
【0003】
基地局はどこにいる加入者ともメッセージを送受信することができなければならないため、メッセージングプロセスは、加入者機器との間で送受信される信号に完全に依存する。信号は、無線伝送されるため、適当な機器を有する盗聴者あるいは侵入者によって傍受される可能性がある。
【0004】
信号が無線電話機によって平文で送信される場合、盗聴者が信号を傍受してそれを用いて加入者になりすますこと、あるいは、ユーザによって送信された秘密データを傍受することの危険が存在する。このような秘密データには、会話の内容も含まれることがある。秘密データはまた、例えば、無線電話機に接続されたモデムを通じて送信されるコンピュータデータのような、ユーザによって送信される非音声データを含むこともあり、また、一般にキー押下によって送信される銀行口座やその他の秘密のユーザ情報を含むこともある。会話を聞き、あるいは、非音声データを傍受する盗聴者は、ユーザから秘密情報を取得する可能性がある。暗号化されていない電話信号(すなわち平文信号)のメッセージ内容は、適当に調整した受信機によって比較的容易に傍受される。
【0005】
あるいは、傍受者は、より高い送信電力を用いることによって、確立されている接続に侵入し、基地局へ信号を送信し、会話の当事者になりすますことも可能である。
【0006】
無線信号によって伝送されているメッセージに暗号方式を適用することがない場合、電話資源の無権限使用、メッセージの盗聴、および会話中の発呼者または被呼者になりすますことが可能である。このような無権限の傍受や盗聴は実際に重大な問題であることが分かっており、極めて好ましくない。
【0007】
【発明が解決しようとする課題】
無線電話アプリケーションへの暗号方式の応用は、上記のセキュリティ問題への解決法を提供するが、標準的な暗号方法を無線電話に適用することは、それらの方法が大きい計算量を要するという性質により、大きい困難に遭遇している。特に、これらの方法は、小さい無線ハンドセットを供給するという要求によって課される制約と、ハンドセットの小さいサイズによって課される処理電力に対する制約を受ける。一般的な無線ハンドセットにある処理電力は、DES(Data Encryption Standard)のような周知の暗号アルゴリズムの処理要求を扱うには不十分である。一般的な無線電話システムにおいてこのような周知の暗号アルゴリズムを実装することは、信号を処理(すなわち、暗号化および復号)するのに要する時間を増大させ、それにより、加入者にとって受け入れられない遅延を引き起こす可能性がある。
【0008】
無線電話のための暗号方式の1つが、米国特許第5,159,634号(発明者:Reeds)に記載されている。この米国特許には、CMEA(Cellular Message Encryption Algorithm)として知られる暗号プロセスが記載されている。CMEAの動作の中心にtbox関数がある。これは、秘密鍵を秘密ルックアップテーブルに拡張する。初期インデックスから開始して、鍵データとテーブルデータを複数回組み合わせて秘密ルックアップテーブルを生成する。テーブルが生成されると、後述のアルゴリズムに従って鍵のオクテットがメッセージのオクテットに適用され、その結果として得られた値がルックアップテーブルへのインデックスとして用いられる。tbox関数は、関数呼出し(ファンクションコール)として、または、静的メモリにあるテーブルとして実装可能である。このテーブルの目的は、後者の場合のように実装されるときには、与えられたセキュリティレベルでの暗号化の速度を大幅に速めることである。
【0009】
従来のCMEAアルゴリズムは、以下で詳細に説明するように大幅に改善される。このような改善により、セキュリティの程度が高くなり、非常に有効である。
【0010】
【課題を解決するための手段】
本発明は、tbox関数の使用法を修正することによりCMEAのような暗号アルゴリズムのセキュリティの程度を高くする。tbox関数の使用法の改善はCMEAを改善し、移動無線トランシーバで一般に用いられるような小さいコンピュータにおいて高速かつ効率的に動作するように実装可能である。
【0011】
本発明によるtbox関数の改善された使用法は、オフセットを用いてtbox関数への入力を置換する。各オフセットは、2つの秘密値および外部暗号同期(cryptosync)値を用いて生成される。秘密値は、いくつかの当業者に周知の技術のうちのいずれによって生成することも可能である。一部のアプリケーションでは、呼の最初のメッセージを暗号化するために用いられる外部暗号同期値は初期化ベクトルである。後続のメッセージに対しては、外部暗号同期値は、前に暗号化されたメッセージの最初の2オクテットの暗号文である。
【0012】
本発明によるtbox関数の改善された使用は、好ましくは、少なくとも2回のCMEAを用いる強化されたCMEAプロセスにより達成される。強化CMEAプロセスの場合、第1から第4までのオフセットが生成される。各オフセットは、好ましくは、15ビットの秘密値、16ビットの秘密値、および外部暗号同期値を使用する。各オフセットは、相異なる秘密値対を使用する。秘密値は、いくつかの当業者に周知の技術のうちのいずれによって生成することも可能である。第1および第2のオフセットは、第1回のCMEAプロセス中にtbox関数に入力され、第3および第4のオフセットは第2回のCMEAプロセス中にtbox関数に入力される。
【0013】
暗号化された文(テキスト)は、本発明によれば、暗号文を導入し、平文を暗号化するために適用されたステップを逆順に逆に作用させることによって復号される。
【0014】
本発明のもう1つの特徴によれば、本発明による装置は、テキストを生成し、それをI/Oインタフェースに供給する。I/Oインタフェースは、そのテキストを生成されたテキストとして識別し、そのテキストおよびその識別を暗号化/復号プロセッサに供給する。続いて暗号化/復号プロセッサは、そのテキストを暗号化して、送信するためにトランシーバに供給する。本発明の装置がトランシーバを通じて通信を受信すると、その通信は入力暗号文として識別され、その暗号文およびその識別は暗号化/復号プロセッサに供給される。暗号化/復号プロセッサは、その暗号文を復号して、宛先へ転送するためにI/Oプロセッサに供給する。
【0015】
【発明の実施の形態】
図1は、通話中に送信される可能性のあるいくつかの重要なユーザデータの暗号化のためにCMEA鍵を用いる従来の方法100を説明する流れ図である。CMEA鍵は、256バイトの秘密配列tbox(z)を作成するために用いられる。あるいは、tbox関数は、関数呼出しとして実装されることも可能である。これによりRAMの使用量は減少するが、処理時間は約1桁増大する。
【0016】
ステップ102で、未処理のテキストが導入される。ステップ104で、tboxを関数呼出しとしてではなく静的テーブルとして実装するシステムでは、静的tboxテーブルが導出される。tboxテーブルは次のように導出される。
0≦z<256の範囲の各zに対して、
tbox(z) = C(((C(((C(((C((z XOR k0)+k1)+z)XOR k2)+k3)+z)XOR k4)+k5)+z)XOR k6)+k7)+z
ただし「+」は256を法とする加算を表し、「XOR」はビットごとの排他的論理和演算子であり、「z」は関数の引数であり、k0,...,k7はCMEA鍵の8個のオクテットであり、C()はCAVE(Cellular Authentication, Voice Privacy and Encryption)8ビットテーブルルックアップの結果である。以下で説明する強化がない場合、tbox関数は当業者に周知である。しかし、図2〜図5に関して以下で説明する強化により、tbox関数のセキュリティの程度が大幅に増大する。
【0017】
CMEAは、連続する3つのステージからなり、各ステージは、データバッファ内の各バイト列を変更する。ステップ106、108および110で、CMEAプロセスの第1、第2および第3のステージが、以下で説明するようにそれぞれ実行される。長さdバイトのデータバッファ(各バイトをb(i)で表す。iは0≦i<dの範囲の整数である。)は3ステージで暗号化される。
【0018】
CMEAの第1ステージ(I)は以下の通りである。
1.変数zを0に初期化する。
2.0≦i<dの範囲の連続する整数値iに対して、
a.q=z(iの下位バイト)、によって変数qを形成する。ただし、はビットごとの排他的論理和演算子である。
b.k=TBOX(q)、によって変数kを形成する。
c.b(i)=b(i)+k mod 256、によりb(i)を更新する。
d.z=b(i)+z mod 256、によりzを更新する。
【0019】
CMEAの第2ステージ(II)は次の通りである。
1.0≦i<(d−1)/2の範囲のiのすべての値に対して、b(i)=b(i)(b(d−1−i)OR 1)。ただし、ORはビットごとの論理和演算子である。
【0020】
CMEAの最後すなわち第3のステージ(III)は、第1ステージの逆である復号である。
1.変数zを0に初期化する。
2.0≦i<dの範囲の連続する整数値iに対して、
a.q=z(iの下位バイト)、によって変数qを形成する。
b.k=TBOX(q)、によって変数kを形成する。
c.z=b(i)+z mod 256。
d.b(i)=b(i)−k mod 256、によりb(i)を更新する。
【0021】
ステップ112で、最後の処理結果が出力される。
【0022】
上記のCMEAプロセスは自己反転的である。すなわち、同じ順序で適用される同じステップが、平文を暗号化するためおよび暗号文を復号するための両方に使用される。従って、暗号化または復号のいずれが実行されているかを判定する必要がない。残念ながら、上記のCMEAプロセスは、呼に対して用いられるCMEA鍵の回復を可能にする攻撃を受ける可能性がある。
【0023】
顧客情報に対する追加セキュリティを提供するために、本発明による暗号化方式は、tbox関数への入力を秘密オフセットによって置換( permutating; 置き換え又は並び換え)することによりtbox関数の使用を改善する。tbox関数の改善された使用法は、好ましくは、強化CMEA(ECMEA(enhanced CMEA))プロセスの一部として使用される。この場合、メッセージは2回のCMEAプロセスを受ける。
【0024】
図2は、本発明の1つの特徴によるtbox関数の改善された使用を含む暗号化プロセス200を示す流れ図である。図2に示される暗号化プロセスにおいて、tbox関数の各使用は、秘密オフセットを用いたtbox関数入力の置換を受ける。ステップ202で、平文が暗号化プロセスに導入される。ステップ204で、tboxを関数呼出しとしてではなく静的テーブルとして実装するシステムでは、静的tboxテーブルが導出される。ステップ206で、秘密オフセットを生成する際に用いるための秘密値のセットK1〜K4が生成される。Ki(iは奇数)は15ビット値であり、Ki(iは偶数)は16ビット値である。この秘密値セットは、いくつかの当業者に周知の技術のうちのいずれによって生成することも可能である。すべての秘密値K1〜K4は、好ましくは、各無線電話呼ごとに生成され、また、その呼を通じて一定であることが好ましい。ステップ208で、平文は、CMEA鍵を用いて、CMEA関数が1回適用される。CMEA関数はtbox関数を含む。ただし、tbox関数への入力は、前のメッセージの暗号化されたテキストを用いて生成された秘密オフセットを用いて置換されている。各tbox関数入力は、置換を受け、置換結果を生成する。tbox関数入力を例えばxと定義すると、置換結果は(((xoffset1)+offset2)mod256)の値である。tbox入力の置換結果はtbox関数の適用を受ける。すなわち、各tbox入力xに対して、使用される関数はtbox(((xoffset1)+offset2)mod 256)である。offset1およびoffset2は、好ましくは、秘密の8ビット値である。新たな秘密オフセット値のセットは、好ましくは、無線呼の各メッセージごとに作成される。
【0025】
tbox入力のtbox置換のための秘密オフセット値は、呼のn番目のメッセージに対して以下の公式を用いて作成される。
offset1n=(((2K1+1)*CTn-1+K2)mod 64K)>>8
offset2n=(((2K3+1)*CTn-1+K4)mod 64K)>>8
ただし、K1〜K4は上で定義した通りである。CTn-1の値は、(n−1)番目の暗号文メッセージの最初の2オクテットであり、CT0は、好ましくは、呼の最初のメッセージに対する秘密の16ビット初期化値で置換される。この説明では、mod 64Kは、通常の計算機科学用語に従って、mod(65,536)を意味すると理解すべきである。offset1nおよびoffset2nはそれぞれ8ビット値である。tbox入力の置換は実質的にtboxエントリの位置を各メッセージごとにシフトさせ、攻撃の困難性を大幅に増大させる。ステップ210で、最終的な暗号文が生成される。
【0026】
図3は、本発明のもう1つの特徴によるtbox関数の改善された使用を含む暗号化プロセス300を示す流れ図である。メッセージに対する追加セキュリティを達成するためには、第1および第2の鍵を用いて、CMEA関数を2回使用することが好ましい。CMEA関数の各実行は、本発明によるtbox関数の改善された使用法を用いる。CMEA関数の各実行は、tbox関数への入力の置換のために相異なる秘密オフセットの対を用いる。
【0027】
ステップ302で、平文が暗号化プロセスに導入される。ステップ304で、tboxを関数呼出しとしてではなく静的テーブルとして実装するシステムでは、静的tboxテーブルが導出される。ステップ306で、秘密オフセットを生成する際に用いるための秘密値のセットK1〜K8が生成される。Ki(iは奇数)は15ビット値であり、Ki(iは偶数)は16ビット値である。この秘密値セットは、いくつかの当業者に周知の技術のうちのいずれによって生成することも可能である。すべての秘密値K1〜K8は、好ましくは、各無線電話呼ごとに生成され、また、その呼を通じて一定であることが好ましい。ステップ308で、平文は、第1のCMEA鍵を用いて、修正されたCMEAプロセスの1回目が適用される。1回目のCMEAプロセスで用いられるtbox関数の使用法は、第1および第2の秘密オフセットによりtbox入力を置換することによって強化される。各tbox関数入力がまず置換されて置換結果を生成する。tbox関数入力が例えばxである場合、置換結果は(((xoffset1)+offset2)mod256)の値である。置換結果はtbox関数の適用を受ける。すなわち、各tbox入力xに対して、使用される関数はtbox(((xoffset1)+offset2)mod 256)である。
【0028】
ステップ310で、1回目が完了し、中間暗号文が生成される。ステップ312で、中間暗号文は、第2のCMEA鍵を用いて、修正されたCMEAプロセスの2回目が適用される。2回目のプロセスで用いられるtbox関数の使用法は、第3および第4の秘密オフセットによりtbox入力を置換することによって強化される。各tbox関数入力がまず置換されて置換結果を生成する。tbox関数入力が例えばxである場合、置換結果は(((xoffset3)+offset4)mod 256)の値である。置換結果はtbox関数の適用を受ける。すなわち、各tbox入力xに対して、使用される関数はtbox(((xoffset3)+offset4)mod 256)である。ステップ314で、2回目が完了し、最終暗号文が生成される。offset1、offset2、offset3、およびoffset4は、好ましくは、それぞれ8ビット値である。新たな秘密オフセット値のセットは、好ましくは、無線呼の各メッセージごとに作成される。
【0029】
tbox置換のための4個の秘密オフセット値は、呼のn番目のメッセージに対して以下の公式を用いて作成される。
offset1n=(((2K1+1)*CTn-1+K2)mod 64K)>>8
offset2n=(((2K3+1)*CTn-1+K4)mod 64K)>>8
offset3n=(((2K5+1)*CTn-1+K6)mod 64K)>>8
offset4n=(((2K7+1)*CTn-1+K8)mod 64K)>>8
ただし、K1〜K8は上で定義した通りである。CTn-1の値は、(n−1)番目の暗号文メッセージの最初の2オクテットであり、CT0は、好ましくは、呼の最初のメッセージに対する秘密の16ビット初期化値で置換される。上記の説明でも、mod 64Kは、通常の計算機科学用語に従って、mod(65,536)を意味すると理解すべきである。1回目のCMEA関数の適用に第1および第2のオフセット値を使用し、2回目のCMEA関数の適用に第3および第4のオフセットを使用することにより、tboxエントリの位置は単に各メッセージごとにだけでなく、単一のメッセージの暗号化の各実行ごとにシフトする。ステップ314で、最終暗号文が生成される。
【0030】
本発明によるtbox関数の改善された使用法は、CMEAプロセスの任意のアプリケーションで用いることが可能であるが、図3の説明に関連して記述した強化CMEAプロセスは、さらにセキュリティを追加し、好ましい。図3に示される暗号化方式は、2つの鍵の連続適用を要求するため、自己反転的ではない。すなわち、同じ順序で適用される同じ作用は、平文の暗号化でも暗号文の復号でもない。従って、以下で説明するように、別個の復号プロセスが必要である。
【0031】
図4は、本発明のもう1つの特徴による復号プロセス400を説明する流れ図である。本質的に、図4に示されるステップは、逆順であることを除いて、図3と同様である。ステップ402で、暗号文が復号プロセスに導入される。ステップ404で、暗号文は、図3の説明に関して上記で述べたように、tbox関数への入力がoffset3およびoffset4によって置換された1回目のCMEAプロセスの適用を受ける。この1回目の実行に用いられる鍵は第2のCMEA鍵である。ステップ406で、中間暗号文が生成される。次に、ステップ408で、中間暗号文は、図3の説明に関して上記で述べたように、tbox関数への入力がoffset1およびoffset2によって置換された2回目のCMEAプロセスの適用を受ける。この2回目の実行に用いられる鍵は第1のCMEA鍵である。最後に、ステップ410で、平文が出力される。第1から第4までのオフセットは、図3に関して上記で説明した通りである。
【0032】
図5は、メッセージが暗号化または復号を必要とするかどうかを認識するための設備、および、適当な暗号化または復号を実行する設備を備えた、本発明によるメッセージ伝送および暗号化/復号を実行するための無線電話機500を示す図である。電話機500は、トランシーバ502、入出力(I/O)インタフェース504、暗号化/復号プロセッサ506、および鍵ジェネレータ508を有する。鍵ジェネレータ508は、鍵生成のために記憶されている秘密データを受け取り使用する。記憶されている秘密データは、好ましくは、EEPROMやフラッシュメモリのような不揮発性メモリ510に記憶される。鍵ジェネレータはまた、オフセットを生成するために用いられる秘密値K1〜K8も生成する。Ki(iは奇数)は15ビット値であり、Ki(iは偶数)は16ビット値である。鍵ジェネレータは、いくつかの当業者に周知の技術のうちのいずれを用いて秘密値K1〜K8を生成するように設計されることも可能である。秘密値のセットK1〜K8は、好ましくは、各無線電話呼ごとに生成され、その値K1〜K8は、その呼を通じて一定であることが好ましい。鍵ジェネレータ508は、生成された鍵および秘密値K1〜K8をメモリ512に格納する。暗号化/復号プロセッサはまた、鍵ジェネレータ508から受け取った鍵、オフセットの生成に用いる初期化値、オフセットを生成するために用いられる暗号文メッセージオクテット、および、tbox関数を静的テーブルとして実装したい場合に生成され用いられる静的tboxテーブルを記憶するためのメモリ514を有する。電話機500はまた、メッセージジェネレータ516を有する。メッセージジェネレータ516は、暗号化/復号プロセッサ506によって暗号化されトランシーバ502によって送信されるメッセージを生成する。
【0033】
内部で生成されたメッセージが電話機500によって暗号化され送信される場合、メッセージは、メッセージジェネレータ516からI/Oインタフェース504へ送られる。I/Oインタフェース504は、そのメッセージを、暗号化されるべき内部生成メッセージとして識別し、その識別とともに、暗号化/復号プロセッサ506へ送る。暗号化/復号プロセッサ506は、鍵ジェネレータ508から1つ以上の鍵を受け取り、それを用いてメッセージを暗号化する。好ましくは、暗号化/復号プロセッサ506は、鍵ジェネレータ508から2個の鍵を受け取り、それを用いて、図2および図3に関して上記で説明したようなtbox関数の改善された使用法を用いて2回のCMEA暗号化を実行する。
暗号化/復号プロセッサ506がメッセージジェネレータ516から平文メッセージを受け取ると、メッセージは、鍵ジェネレータ508から受け取った第1CMEA鍵を用いた修正CMEAプロセスの1回目の適用を受ける。1回目のプロセスにおけるtbox関数への入力は置換を受ける。使用される関数はtbox(((xoffset1)+offset2)mod 256)である。1回目が完了すると、中間暗号文が生成されメモリ514に格納される。次に、中間暗号文は、第2CMEA鍵を用いた修正CMEAプロセスの2回目の適用を受ける。2回目のプロセスにおけるtbox関数への入力は、同様の置換を受ける。すなわち、使用される関数はtbox(((xoffset3)+offset4)mod 256)である。offset1、offset2、offset3、およびoffset4は、好ましくは、それぞれ8ビット値である。オフセット値のセットは、好ましくは、無線呼の各メッセージごとに作成される。
【0034】
tbox置換のための4個の秘密オフセット値は、呼のn番目のメッセージに対して以下の公式を用いて作成される。
offset1n=(((2K1+1)*CTn-1+K2)mod 64K)>>8
offset2n=(((2K3+1)*CTn-1+K4)mod 64K)>>8
offset3n=(((2K5+1)*CTn-1+K6)mod 64K)>>8
offset4n=(((2K7+1)*CTn-1+K8)mod 64K)>>8
ただし、Ki(iは奇数)は15ビットの秘密値であり、Ki(iは偶数)は16ビットの秘密値であり、すべてこの呼に対して一定である。CTn-1の値は、(n−1)番目の暗号文メッセージの最初の2オクテットであり、CT0は、好ましくは、呼の最初のメッセージに対する秘密の16ビット初期化値で置換される。上記の説明でも、mod 64Kは、通常の計算機科学用語に従って、mod(65,536)を意味すると理解すべきである。1回目のCMEA関数の適用に第1および第2のオフセット値を使用し、2回目のCMEA関数の適用に第3および第4のオフセットを使用することにより、tboxエントリの位置は単に各メッセージごとにだけでなく、単一のメッセージの暗号化の各実行ごとにシフトする。
【0035】
2回目が完了すると、最終暗号文が生成されてメモリ514に格納され、また、送信のためにI/Oインタフェース504へ、および、トランシーバ502へ転送される。
【0036】
暗号化されたメッセージが復号のために電話機500によって受信されると、トランシーバ502はそれをI/Oインタフェース504に送る。I/Oインタフェースはそのメッセージを暗号化されたメッセージとして識別し、その識別を、メッセージととともに、暗号化/復号プロセッサ506へ送る。暗号化/復号プロセッサ506は、鍵ジェネレータ508から1つ以上の鍵を受け取り、好ましくは図4に関して上記で説明したような2回のCMEA復号プロセスを用いて、メッセージを復号する。暗号化/復号プロセッサ506がI/Oインタフェース504から暗号文を受け取ると、暗号文は、修正CMEAプロセスの1回目の適用を受ける。tbox関数への入力は、offset3およびoffset4を用いた置換を受ける。この1回目に用いられる鍵は第2CMEA鍵である。中間暗号文が生成されメモリ514に格納される。次に、中間暗号文は修正CMEAプロセスの2回目の適用を受ける。tbox関数への入力は、offset1およびoffset2を用いた置換を受ける。この2回目に用いられる鍵は第1CMEA鍵である。最後に、暗号化/復号プロセッサ506は平文を出力し、平文メッセージをI/Oインタフェース504へ送る。I/Oインタフェース504はそれを最終的な使用のために転送する。
【0037】
速度要求およびメモリ制約に応じて、電話機は、tboxを、関数として、あるいは、静的テーブルとして実装するように設計されることが可能である。静的テーブルとしてのtboxの実装によりメモリの増大が必要となるが速度も増大する。また、電話機500を、tbox関数への入力がoffset1およびoffset2を用いた置換を受ける1個のtbox関数を使用する1回だけのCMEAプロセスを実装するように設計することも可能である。
【0038】
CMEAプロセスの上記の強化は、大幅にセキュリティを向上させるが、処理あるいはシステムの資源をあまり増大させないため、無線電話システムのような環境での使用に適している。このようなシステムにおける移動機は、処理電力が制限されることが多い。
【0039】
本発明について、現在好ましい環境に関して説明したが、当業者には認識されるように、上記の説明および請求の範囲に従って、さまざまな実装が使用可能である。
【図面の簡単な説明】
【図1】従来技術のCMEA鍵生成プロセスと、CMEAに基づく暗号化の実装におけるその利用法の特徴を説明する流れ図である。
【図2】tbox関数を用いるCMEA暗号化法を説明する流れ図である。tbox関数は、本発明に従って第1および第2のオフセットによって置換されたtbox関数への入力を有するtboxルックアップを含む。
【図3】複数回のCMEAを用いる強化CMEA暗号化法を説明する流れ図である。各CMEA実行はtbox関数を使用する。tbox関数はtboxルックアップを含み、tbox関数への入力は、本発明に従って、1回目のCMEA実行中は第1および第2のオフセットによって置換され、2回目の実行中は第3および第4のオフセットによって置換される。
【図4】強化CMEAプロセスによって暗号化された暗号文を本発明に従って復号する方法を説明する流れ図である。
【図5】
本発明による強化CMEA暗号化を用いた暗号化/復号電話機を説明する流れ
図である。
Claims (13)
- (A)一つもしくは複数のオフセットをメモリに記憶するステップと、
(B)前記メモリから前記一つもしくは複数のオフセットを入手するステップと、
(C)入手した前記一つもしくは複数のオフセットを用いて、tbox関数への入力を置き換えするステップと、該入力は暗号処理されるメッセージ又はそれから導出されたものであり、
(D)暗号化プロセッサにおいて、置き換えした前記入力に、前記tbox関数を適用し、最終処理済メッセージを入手するステップと、
(E)前記最終処理済メッセージをトランシーバへルーティングするステップと、
(F)前記最終処理済メッセージを前記トランシーバから送信するステップと
を有することを特徴とする通信デバイスにより処理される呼におけるメッセージの強化された暗号処理方法。 - (G)秘密値をメモリに記憶するステップと、
(H)前記秘密値を前記メモリから入手するステップと、
(I)入手した前記秘密値に基づいて、第1秘密オフセットおよび第2秘密オフセットを生成する生成ステップと
をさらに有することを特徴とする請求項1に記載の方法。 - 前記(I)の生成ステップは、前記第1秘密オフセットおよび第2秘密オフセットのそれぞれに関し、入手した秘密値のうちのいくつかを、前記予め暗号化されたメッセージオクテットの対と組み合わせており、
前記予め暗号化されたメッセージオクテットの対は、呼の第1メッセージを、初期化値で代替したものである
ことを特徴とする請求項2に記載の方法。 - 前記秘密値は、前記第1秘密オフセットおよび第2秘密オフセットのそれぞれに関し、15ビット値および16ビット値である
ことを特徴とする請求項3に記載の方法。 - 前記初期化値は16ビット値である
ことを特徴とする請求項4に記載の方法。 - 呼のn番目のメッセージに対する第1オフセットは、
式offset1n=(((2K1+1)*CTn-1+K2)mod 64K)>>8
で表され、
iが奇数の場合にKiは15ビット値であり、
iが偶数の場合にKiは16ビット値であり、
Kiは呼に関しすべて一定であり、
CTn-1は(n−1)番目の暗号文メッセージの最初の2オクテットであり、呼のn番目のメッセージに対する第2オフセットは、
式offset2n=(((2K3+1)*CTn-1+K4)mod 64K)>>8
で表され、
iが奇数の場合にKiは15ビット値であり、
iが偶数の場合にKiは16ビット値であり、
Kiは呼に関しすべて一定であり、
CTn-1は(n−1)番目の暗号文メッセージの最初の2オクテットであり、mod 64Kはmod 65,536である
ことを特徴とする請求項5に記載の方法。 - (A)第1秘密オフセット、第2秘密オフセット、第3秘密オフセットおよび第4秘密オフセットをメモリに記憶するステップと、
(B)前記第1秘密オフセットおよび第2秘密オフセットを前記メモリから入手する第1入手ステップと、
(C)入手した前記第1秘密オフセットおよび第2秘密オフセットを用いて、メッセージのオクテットを置き換えする第1置換えステップと、
(D)暗号化プロセッサにおいて、1回目のCMEAプロセスを実行する1回目のCMEAプロセス実行ステップと、
前記(D)の1回目のCMEAプロセス実行ステップは、
(D1)前記(C)の結果に、tbox関数を適用し、中間暗号文を入手するステップと、
を有し、
(E)前記第3秘密オフセットおよび第4秘密オフセットを前記メモリから入手する第2入手ステップと、
(F)入手した前記第3秘密オフセットおよび第4秘密オフセットを用いて、前記中間暗号文のオクテットを置き換すえる第2置き換えステップと、
(G)前記暗号化プロセッサにおいて、2回目のCMEAプロセスを実行する2回目のCMEAプロセス実行ステップと、
前記(G)の2回目のCMEAプロセス実行ステップは、
(G1)前記(F)の結果に、tbox関数を適用し、最終処理済メッセージを入手するステップと、
を有し、
(H)前記最終処理済メッセージをトランシーバへルーティングするステップと、
(I)前記最終処理済メッセージを前記トランシーバから送信するステップと
を有することを特徴とする通信デバイスにより処理される呼におけるメッセージの強化された暗号処理方法。 - (J)秘密値をメモリに記憶するステップと、
(K)前記秘密値を前記メモリから入手するステップと、
(L)入手した前記秘密値に基づいて、第1秘密オフセット、第2秘密オフセット、第3秘密オフセット、第4秘密オフセットを生成する生成ステップと
をさらに有することを特徴とする請求項7に記載の方法。 - 前記(L)の生成ステップは、前記第1秘密オフセット、第2秘密オフセット、第3秘密オフセット、第4秘密オフセットのそれぞれに関し、入手した前記秘密値のうちのいくつかを、予め暗号化されたメッセージオクテットの対と組み合わせ、
前記予め暗号化されたメッセージオクテットの対は、呼の第1メッセージを、初期化値で代替したものである
ことを特徴とする請求項8に記載の方法。 - 前記秘密値は、前記第1秘密オフセット、第2秘密オフセット、第3秘密オフセット、第4秘密オフセットのそれぞれに対して15ビット値および16ビット値である
ことを特徴とする請求項9に記載の方法。 - 前記初期化値は16ビット値である
ことを特徴とする請求項10に記載の方法。 - 呼のn番目のメッセージに対する第1オフセットは、
式offset1n=(((2K1+1)*CTn-1+K2)mod 64K)>>8
で表され、
iが奇数の場合にKiは15ビット値であり、
iが偶数の場合にKiは16ビット値であり、
Kiは呼に関しすべて一定であり、
CTn-1は(n−1)番目の暗号文メッセージの最初の2オクテットであり、呼のn番目のメッセージに対する第2オフセットは、
式offset2n=(((2K3+1)*CTn-1+K4)mod 64K)>>8
で表され、
iが奇数の場合にKiは15ビット値であり、
iが偶数の場合にKiは16ビット値であり、
Kiは呼に関しすべて一定であり、
CTn-1は(n−1)番目の暗号文メッセージの最初の2オクテットであり、呼のn番目のメッセージに対する第3オフセットは、
式offset3n=(((2K5+1)*CTn-1+K6)mod 64K)>>8
で表され、
iが奇数の場合にKiは15ビット値であり、
iが偶数の場合にKiは16ビット値であり、
Kiは呼に関しすべて一定であり、
CTn-1は(n−1)番目の暗号文メッセージの最初の2オクテットであり、呼のn番目のメッセージに対する第4オフセットは、
式offset4n=(((2K7+1)*CTn-1+K8)mod 64K)>>8
で表され、
iが奇数の場合にKiは15ビット値であり、
iが偶数の場合にKiは16ビット値であり、
Kiは呼に関しすべて一定であり、
CTn-1は(n−1)番目の暗号文メッセージの最初の2オクテットであり、mod 64Kはmod 65,536である
ことを特徴とする請求項11に記載の方法。 - (A)第1秘密オフセット、第2秘密オフセット、第3秘密オフセットおよび第4秘密オフセットをメモリに記憶するステップと、
(B)暗号化されたメッセージをトランシーバで受信するステップと、
(C)前記暗号化されたメッセージを前記トランシーバから復号化プロセッサへルーティングするステップと、
(D)前記第3秘密オフセットおよび第4秘密オフセットを前記メモリから入手する第1入手ステップと、
(E)入手した前記第3秘密オフセットおよび第4秘密オフセットを用いて、メッセージのオクテットを置き換えする第1置き換えステップと、
(F)復号化プロセッサにおいて、1回目のCMEAプロセスを実行する1回目のCMEAプロセス実行ステップと、
前記(F)の1回目のCMEAプロセス実行ステップは、
(F1)前記(E)の結果に、tbox関数を適用し、中間暗号文を入手するステップとを有し、
(G)前記第1秘密オフセットおよび第2秘密オフセットを前記メモリから入手する第2入手ステップと、
(H)入手した前記第1秘密オフセットおよび第2秘密オフセットを用いて、前記中間暗号文のオクテットを置き換えする第2置換ステップと、
(I)前記復号化プロセッサにおいて、2回目のCMEAプロセスを実行する2回目のCMEAプロセス実行ステップとを有し、
前記(I)の2回目のCMEAプロセス実行ステップは、
(I1)前記(H)の結果に、tbox関数を適用し、最終処理済メッセージを入手するステップと有する
ことを特徴とする通信デバイスにより処理される呼における暗号化されたメッセージに対する強化された暗号処理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US4353697P | 1997-04-14 | 1997-04-14 | |
US60/043,536 | 1997-04-14 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP50065999A Division JP3459074B2 (ja) | 1997-04-14 | 1998-04-13 | 無線電話メッセージのセキュリティを改善するためのルックアップテーブルへの秘密鍵の強化されたセキュリティ拡張の方法および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003263108A JP2003263108A (ja) | 2003-09-19 |
JP3792657B2 true JP3792657B2 (ja) | 2006-07-05 |
Family
ID=21927669
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP50065999A Expired - Fee Related JP3459074B2 (ja) | 1997-04-14 | 1998-04-13 | 無線電話メッセージのセキュリティを改善するためのルックアップテーブルへの秘密鍵の強化されたセキュリティ拡張の方法および装置 |
JP54433698A Expired - Fee Related JP3459073B2 (ja) | 1997-04-14 | 1998-04-14 | 無線電話メッセージのセキュリティを改善するための複数回cmea暗号化および復号の方法および装置 |
JP2003035501A Expired - Fee Related JP3792657B2 (ja) | 1997-04-14 | 2003-02-13 | 通信デバイスにより処理される呼におけるメッセージの強化された暗号処理方法 |
JP2003035500A Expired - Fee Related JP3902144B2 (ja) | 1997-04-14 | 2003-02-13 | 通信デバイスにより処理される呼におけるメッセージの暗号化方法 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP50065999A Expired - Fee Related JP3459074B2 (ja) | 1997-04-14 | 1998-04-13 | 無線電話メッセージのセキュリティを改善するためのルックアップテーブルへの秘密鍵の強化されたセキュリティ拡張の方法および装置 |
JP54433698A Expired - Fee Related JP3459073B2 (ja) | 1997-04-14 | 1998-04-14 | 無線電話メッセージのセキュリティを改善するための複数回cmea暗号化および復号の方法および装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003035500A Expired - Fee Related JP3902144B2 (ja) | 1997-04-14 | 2003-02-13 | 通信デバイスにより処理される呼におけるメッセージの暗号化方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6233337B1 (ja) |
EP (1) | EP0935859A2 (ja) |
JP (4) | JP3459074B2 (ja) |
KR (1) | KR100576530B1 (ja) |
CN (1) | CN1229551A (ja) |
CA (1) | CA2258750A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004075519A1 (fr) * | 1998-01-30 | 2004-09-02 | Alain Maillet | Procede et equipement d'interception de communications telephoniques |
US8086283B2 (en) * | 2002-08-08 | 2011-12-27 | Parker Stephen B | Wireless child communication device |
US7227946B2 (en) * | 2003-04-16 | 2007-06-05 | Oregon Health & Science University | Automated permutation method and apparatus |
US20050193197A1 (en) * | 2004-02-26 | 2005-09-01 | Sarvar Patel | Method of generating a cryptosync |
US7483426B2 (en) * | 2004-05-13 | 2009-01-27 | Micrel, Inc. | Look-up table expansion method |
CN105227297A (zh) * | 2014-06-10 | 2016-01-06 | 江苏博智软件科技有限公司 | 一种智能密码保护生成方法 |
KR101987411B1 (ko) | 2017-06-26 | 2019-06-11 | 중앙대학교 산학협력단 | 비밀키 공유 방법 및 장치 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2658065A1 (de) * | 1976-12-22 | 1978-07-06 | Ibm Deutschland | Maschinelles chiffrieren und dechiffrieren |
US5204902A (en) * | 1991-09-13 | 1993-04-20 | At&T Bell Laboratories | Cellular telephony authentication arrangement |
US5159634A (en) * | 1991-09-13 | 1992-10-27 | At&T Bell Laboratories | Cryptosystem for cellular telephony |
US5438622A (en) * | 1994-01-21 | 1995-08-01 | Apple Computer, Inc. | Method and apparatus for improving the security of an electronic codebook encryption scheme utilizing an offset in the pseudorandom sequence |
US5727064A (en) * | 1995-07-03 | 1998-03-10 | Lucent Technologies Inc. | Cryptographic system for wireless communications |
US5724428A (en) * | 1995-11-01 | 1998-03-03 | Rsa Data Security, Inc. | Block encryption algorithm with data-dependent rotations |
-
1998
- 1998-04-13 JP JP50065999A patent/JP3459074B2/ja not_active Expired - Fee Related
- 1998-04-13 KR KR1019980711021A patent/KR100576530B1/ko not_active IP Right Cessation
- 1998-04-13 US US09/059,116 patent/US6233337B1/en not_active Expired - Lifetime
- 1998-04-13 EP EP98954922A patent/EP0935859A2/en not_active Ceased
- 1998-04-13 CA CA002258750A patent/CA2258750A1/en not_active Abandoned
- 1998-04-13 CN CN98800621A patent/CN1229551A/zh active Pending
- 1998-04-14 JP JP54433698A patent/JP3459073B2/ja not_active Expired - Fee Related
-
2003
- 2003-02-13 JP JP2003035501A patent/JP3792657B2/ja not_active Expired - Fee Related
- 2003-02-13 JP JP2003035500A patent/JP3902144B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1229551A (zh) | 1999-09-22 |
JP3459073B2 (ja) | 2003-10-20 |
KR20000065264A (ko) | 2000-11-06 |
JP3459074B2 (ja) | 2003-10-20 |
CA2258750A1 (en) | 1999-01-21 |
JP2003263108A (ja) | 2003-09-19 |
JP2000514934A (ja) | 2000-11-07 |
JP2001504672A (ja) | 2001-04-03 |
KR100576530B1 (ko) | 2006-10-31 |
EP0935859A2 (en) | 1999-08-18 |
JP3902144B2 (ja) | 2007-04-04 |
US6233337B1 (en) | 2001-05-15 |
JP2003263107A (ja) | 2003-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0966809B1 (en) | Method of and apparatus for encrypting signals for transmission | |
JP3792657B2 (ja) | 通信デバイスにより処理される呼におけるメッセージの強化された暗号処理方法 | |
KR100573180B1 (ko) | 개선된 변환을 사용한 개선된 셀룰러 메시지 암호화 알고리즘을 위한 방법 및 장치 | |
US6266411B1 (en) | Method and apparatus for multiple-iteration CMEA encryption and decryption for improved security for wireless telephone messages | |
US6418224B1 (en) | Methods and apparatus for self-inverting multiple-iteration CMEA crypto-processing for improved security for wireless telephone messages | |
WO1999003246A2 (en) | Methods and apparatus for enhanced security expansion of a secret key into a lookup table for improved security for wireless telephone messages | |
KR100591870B1 (ko) | 인볼룬터리 룩업을 사용하고 변환들에 의해 선행 및 추종되는 cmea 반복을 포함하는 강화된 cmea를 위한 방법 및 장치 | |
KR100591869B1 (ko) | 무선 전화 메시지들에 대한 보안성을 개선하기 위해 다수의 씨엠이에이 반복을 사용하는 암호화 및 해독화방법 및 무선 전화 | |
CA2603161C (en) | Method of and apparatus for encrypting signals for transmission | |
JPH10336338A (ja) | アナログ電話回線を使用したデジタル暗号通話システム | |
MXPA98010503A (en) | Methods and apparatus for multiple-iteration cmea encryption and decryption for improved security for wireless telephone messages | |
MXPA98010502A (en) | Methods and apparatus for enhanced security expansion of a secret key into a lookup table for improved security for wireless telephone messages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050601 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050901 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060313 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060405 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100414 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100414 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110414 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120414 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130414 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140414 Year of fee payment: 8 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |