(57)【特許請求の範囲】
【請求項１】
データ通信装置における長さＭの連続的なデータワードのシーケンスを暗号化または解読する方法において、
暗号化シーケンス発生器を使用して、長さＭの疑似ランダム暗号ワードのシーケンスが有限群ＧＦ（２N ）における演算動作の実行により予め定められた開始値から生成し、
結合装置を使用して、暗号ワードのそれぞれ１つがデータワードのそれぞれ１つと組み合わせる、アルゴリズムが行われ、
前記アルゴリズムは、Ｑ個の状態変数ｘおよびＱ個の定数の予め定められた係数ｐのガロアフィールドに基づいており、定数の係数ｐはＬ＜ＱであるＬ個の指数ｉによりアドレスされることを特徴とする暗号化または解読方法。
【請求項２】
Ｍ＝Ｎであることを特徴とする請求項１記載の方法。
【請求項３】
アルゴリズムは循環し、暗号化シーケンス発生器を使用して、１サイクル毎に１個の暗号ワードを発生することを特徴とする請求項１または２のいずれか１項記載の方法。
【請求項４】
Ｌ＝３であり、暗号化シーケンス発生器を使用して、３つの状態変数ｘが疑似ランダム的に３つの指数ｉにより選択され、暗号ワードは選択された状態変数ｘを組み合わせることにより形成され、それぞれのデータワードとの組み合わせに対してのみ使用されることを特徴とする請求項１乃至３のいずれか１項記載の方法。
【請求項５】
暗号化シーケンス発生器を使用して、状態変数ｘのうちの２つが交換されることにより選択され、それに続いて、状態変数ｘ（ｉ）の指数ｉにより与えられた定数の係数ｐ（ｉ）により乗算されることを特徴とする請求項１乃至４のいずれか１項記載の方法。
【請求項６】
暗号化シーケンス発生器を使用して、指数の値は最大のサイクル長のクロックフィードバックシフトレジスタを通って指数のシーケンスをシフトすることにより決定されることを特徴とする請求項１乃至５のいずれか１項記載の方法。
【請求項７】
暗号化シーケンス発生器を使用して、状態変数をアドレスするための指数ｉの要素の数はモジュロ演算によりアドレスのために予め定められた数に限定されることを特徴とする請求項１乃至６のいずれか１項記載の方法。
【請求項８】
暗号化シーケンス発生器を使用して、状態変数ｘの開始値と、アルゴリズムに対する指数ｉは初期化プロセスにより特有に決定されることを特徴とする請求項１乃至７のいずれか１項記載の方法。
【請求項９】
暗号化シーケンス発生器を使用して、開始値は有限群ＧＦ（２Q ）中で演算を行うことにより疑似ランダム的に予め定められた初期化値ｋから生成されることを特徴とする請求項８記載の方法。
【請求項１０】
暗号化シーケンス発生器を使用して、初期化値ｋが一定の加重で開始値を決定するための演算へ入力されることを特徴とする請求項８または９記載の方法。
【請求項１１】
暗号化シーケンス発生器を使用して、状態変数ｘの開始値を決定するため、状態変数ｘ（ｊ）のそれぞれ１つが定数の係数ｐ（ｉ）のそれぞれ１つと乗算されることを特徴とする請求項８乃至１０のいずれか１項記載の方法。
【請求項１２】
暗号化シーケンス発生器を使用して、指数ｉの開始値が一定の加重の初期化値ｋを状態変数ｘまたは定数の係数ｐ（ｉ）の１つとを組み合わせることにより決定されることを特徴とする請求項８乃至１１のいずれか１項記載の方法。
【請求項１３】
暗号化シーケンス発生器を使用して、各指数の開始値はモジュロ演算によりアルゴリズムに対して予め定められた数に限定されることを特徴とする請求項８乃至１２のいずれか１項記載の方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、データ通信装置で長さＭの連続的なデータワードのシーケンスを暗号化または解読する方法に関する。
【０００２】
【従来の技術】
暗号化方法は、Berhard Sklar の“Digital Communications”、Prentice Hall 、Englewood Cliffs、ニュージャージー州、1988年、290 頁に記載されており、それにおいては暗号化はシフトレジスタにより行われる。この方法は暗号化技術が容易に発見されるので暗号化データが容易に解読されることができるという欠点を有する。
【０００３】
さらに、いわゆるＲＣ−４アルゴリズムが知られており、疑似ランダム暗号ワードは異なった計算動作を行うことにより生成される。このアルゴリズムは良好な暗号化のためには大量の記憶スペースが必要とされる欠点を有する。
【０００４】
【発明が解決しようとする課題】
本発明の目的は、解読が困難なデータシーケンスを暗号化または解読し、大量の記憶スペースを必要とせず、廉価でシリコン上に形成されることができる方法を提供することである。
【０００５】
【課題を解決するための手段】
この目的は、本発明によるデータ通信装置で長さＭの連続的なデータワードのシーケンスを暗号化または解読する本発明による方法によって達成される。本発明の方法は、前記プロセスはアルゴリズムの実行を含んでおり、長さＭの疑似ランダム暗号ワードのシーケンスが有限群ＧＦ（２N ）における演算の実行によって予め定められた開始値から生成され、暗号ワードのそれぞれ１つがデータワードのそれぞれ１つと組み合わされている。
【０００６】
疑似ランダム暗号ワードはガロアフィールドまたはガロア群とも呼ばれる有限体で動作を行うことにより生成されるので、キーが知られていないならば、高度の秘密の安全性が与えられる。一方、暗号ワードは疑似ランダム的に生成されたので、キーはデータシーケンス自体からは演繹されることができない。アルゴリズムが知られていても、キーは妥当な価格で暗号化されたデータワードから知らされることはできない。他方で、ガロア計算とも呼ばれる有限群の計算を使用して、プロセスはハードウェア、即ちプロセッサで実行されることができる。したがってリードソロモンデコーダ等の既存のハードウェア構成要素を使用することができる。既存のハードウェア構成要素が使用されるので、データ通信装置の価格および複雑性は低く維持されることができる。さらに、記憶スペースが再使用されることができ、即ち、他の目的に使用されることができる。このようなデータ通信装置の１応用は放送送信局または受信局である。
【０００７】
長さＭのデータワードは有限群の大きさＮに等しくすると有効である。これはアルゴリズムが簡単な演算動作により実行されることを可能にする。アルゴリズムが、Ｑ個の状態変数ｘおよびＱよりも小さいＬ個の指数によりアドレスされるＱ個の定数の予め定められた係数ｐの有限群に基づいているならばこれは有効である。アルゴリズムは循環しており、１つの暗号ワードは１サイクル毎に生成される。状態変数および定数の予め定められた係数の組合わせによって、暗号ワードの十分なランダム性が実現され、他方で記憶スペースが節約される。
【０００８】
本発明の好ましい実施形態では、Ｌ＝３であり、３つの状態変数ｘが疑似ランダム方法で３つの指数により選択され、暗号ワードは選択された状態変数ｘを組み合わせることにより形成され、それぞれのデータワードとの組み合わせに対してのみ使用される。状態変数はプロセスで続いて使用されず、したがって記憶されないので、リトレース技術は状態変数の発見には有効に使用されない。これは解読に対して付加的な高度の秘密保全性を与える。
【０００９】
便宜上、２つの状態変数が交換されることにより選択され、状態変数ｘ（ｉ）の指数により与えられる定数の係数ｐ（ｉ）により乗算され、予め定められた定数の係数ｐ（ｉ）のうちの異なったものはガロア計算の結果として疑似ランダム的に１サイクル毎に選択される。
【００１０】
本発明の別の好ましい実施形態では、指数に対する値は最大のサイクル長のクロックフィードバックシフトレジスタを通って指数のシーケンスをシフトすることにより決定される。指数の疑似ランダムシーケンスはしたがって簡単な方法で生成される。状態変数ｘ（ｉ）をアドレスするための指数ｉの数はモジュロ演算動作によってアドレスに対して予め定められた数に限定される。このようにして疑似ランダム雑音が発生され、それによって状態変数のアドレスに使用される指数ｉは疑似ランダムに均一に分布される。
【００１１】
本発明のさらに別の有効な特徴にしたがって、状態変数ｘの開始値とアルゴリズムに対する指数ｉは初期化プロセスにより特有に決定される。有限群ＧＦ（２Q ）で動作を行うことにより開始値は疑似ランダム的に予め定められた初期値ｋから生成される。結果として、疑似ランダム開始値はアルゴリズムへ入力され、それによってキーが暗号化されたデータワードから演繹されることができる確率、または入力値を知らずにデータワードが解読されることができる確率がさらに減少される。
【００１２】
初期化値ｋは一定の加重を有する開始値を決定するための演算動作へ入力される。これは暗号化プロセスを衝撃に対して脆弱にする統計的に非均一な分布が開始値の初期分布で生じないことを確実にする。状態変数ｘの開始値を決定するために、定数の係数ｐ（ｉ）のそれぞれ１つによる乗算が行われてもよい。指数の開始値は一定の加重の初期化値ｋを状態変数ｘまたは定数の係数ｐ（ｉ）の１つと組み合わせることにより決定してもよい。指数の開始値はモジュロ演算によってアルゴリズムに予め定められた数に限定されてもよい。
【００１３】
【発明の実施の形態】
本発明を添付図面を参照してより詳細に説明する。
以下、本発明にしたがった暗号ワードを生成し、それによって連続的なデータワードシーケンスが暗号化されまたは解読されるアルゴリズムの１実施形態を図１によって説明する。本発明にしたがったアルゴリズムは有限群、即ちガロアフィールドで実行される。示されている実施形態では、アルゴリズムは３つの指数ｉによりアドレスされる１６の状態変数ｘと１６の定数の予め定められた係数ｐに基づいている。アルゴリズムは循環的に行われ、１つの暗号ワードが各サイクル毎に生成される。前記の状態変数と、定数の係数と、指数の数は例示であって、他の適切な数を使用することは当業者の判断に任せられる。
【００１４】
第１に、指数の開始値ｉ１、ｉ２、ｉ３と、状態変数の開始値ｘ（０），…，ｘ（１５）が入力される。その後、指数ｉ１、ｉ２、ｉ３の値は最大のサイクル長のクロックフィードバックシフトレジスタにより指数のシーケンスをシフトすることによって疑似ランダム的に決定される。シフトレジスタによる指数の選択によって、多数の疑似ランダムシーケンスが形成され、これはシフトレジスタの各シフトで変化する。この動作は非線形であり、疑似ランダム雑音を発生する。次のステップで、指数ｉ１、ｉ２、ｉ３の値の数はガロアフィールドでモジュロ演算により１６へ減少される。これは状態変数ｘ（ｉ）のアドレスに必要な数である。
【００１５】
２つの状態変数ｘ（ｉ２ｒ）、ｘ（ｉ３ｒ）は減少された指数によりアドレスされ、その後交換され、それによってプロセスのランダムシェアが増加される。このようにして得られた状態変数ｘ（ｉ２ｒ）、ｘ（ｉ３ｒ）はガロア乗算によってそれぞれ定数の係数ｐ（ｉ２ｒ）、ｐ（ｉ３ｒ）と組み合わせられる。この結果、暗号ワードの統計的分布には不可欠である状態変数の漸進的な変形が生じる。定数の係数は予め定められたアレイ要素であり、したがって固定したメモリ位置に記憶される。定数の係数ｐは指数ｉｉｒにより選択され、これは状態変数に割り当てられる。
【００１６】
次に、暗号ワードは、状態変数ｘ（ｉ２ｒ）、ｘ（ｉ３ｒ）を相互に組み合わせ、また指数ｉにより疑似ランダム的に選択されたさらに別の状態変数ｘ（ｉ１ｒ）と組み合わせることにより形成される。このように形成された暗号ワードは開始値を入力するためステーションに送られ、そのサイクルが繰返される。指数ｉ１、ｉ２、ｉ３の全ての可能な状態、即ち最大のシーケンスの全体の状態がシフトレジスタにより循環されるまで全体のサイクルは繰返される。全ての状態が循環されるとき、疑似ランダム暗号ワードが形成され、これはデータシーケンスのワードを暗号化または解読するため出力される。その後、再度アルゴリズムを実行することにより次の暗号ワードが対応して形成される。このようにして、疑似ランダム暗号ワードのシーケンスが得られ、そのそれぞれはデータシーケンスのワードのそれぞれ１つと組み合わせられる。暗号ワードの疑似ランダムスクランブルの結果として、暗号化プロセスは高度の秘密の安全性をもたらす。妥当な価格で暗号化されたデータの結果からキーを演繹することは可能ではない。データワードの構成のリトレースは全ての可能なキーを試みるよりもさらに複雑である。アルゴリズム、またはアルゴリズムを含んだ発生器が知られている場であっても、暗号化されたデータに基づいてキーを予測することはできない。アルゴリズムが知られていても、暗号ワードのシーケンスは予測可能ではない。したがってこの方法は高度の安全性をもたらす。
【００１７】
以下、図１と共に説明したアルゴリズムの開始値ｘ、ｉ１、ｉ２、ｉ３が決定される態様を図２により説明する。初期化手順のアルゴリズムはガロア動作を使用して有限群またはガロアフィールドで実行される。
【００１８】
第１に、初期化ワードｋが入力され、これはｋ（０，…，１５）の範囲にされる。その後、指数ｉ１、ｉ２、ｉ３の開始値が決定される。指数ｉ１を決定するため、開始値ｋ（ｉ）のうちの１つと、状態変数ｘ（ｉ）のうちの１つがランダムに選択されて組み合わせられる。指数ｉ２を決定するため、状態値ｋ（ｉ１）と開始変数ｘ（ｉ１）が選択され、相互に組み合わせられ、かつランダムに選択された定数の係数ｐ（ｊ）と組み合わせられる。指数ｉ３を決定するため、開始値ｋ（ｉ２）と状態変数ｘ（ｉ２）が選択され、相互に組み合わせられ、かつランダムに選択された定数の係数ｐ（ｋ）と組み合わせられる。定数の係数がメモリ位置に記憶された値から選択される。これらは暗号化プロセスのアルゴリズムにおける値と同一の記憶された値であってもよい。次に、指数ｉ１、ｉ２、ｉ３の開始値がモジュロ演算を使用して、アルゴリズムに対する予め定められた数１６にそれぞれ限定される。初期値ｋが一定の加重で開始値を決定するための動作に初期値ｋが入力されることが重要である。これによってキーの演繹を容易にする初期分布の統計的不均衡を防止する。
【００１９】
状態変数ｘの開始値が、各定数の係数ｐ（ii）を乗算することにより決定され、指数の開始値と状態変数ｘ（ｉｊ）により選択され、指数の開始値によりランダムに選択され、乗算はガロアフィールドで行われる。初期化プロセス後、開始値が出力され、暗号化プロセスを実行するためのアルゴリズムへ入力される。
【００２０】
図３は本発明にしたがって連続的なデータワードのシーケンスの暗号化プロセスを実行する装置の１実施形態を示している。初期化プロセスとアルゴリズムの両者は暗号化シーケンス発生器１で実行される。キー発生器２は暗号化シーケンス発生器１に供給されるキーワードを生成する。これらは初期化ワードとして暗号化シーケンス発生器１へ入力される。暗号化シーケンス発生器１は結合装置３へ供給される暗号ワードのシーケンスを提供する。結合装置３はまたデータワードをオーディオデータ源４から受信する。結合装置３では、それぞれ１つ１つのデータワードと、それぞれ１つ１つの暗号ワードが組み合わせられる。これはＸＯＲ（排他的オア）動作を使用して行われることができる。暗号化されたデータワードはその後マルチプレクサ５へ供給され、ここでさらにキーデータがそれらに重畳される。さらにキーデータがキー暗号化装置６から入来し、さらに暗号化するためキー暗号化装置６はキーデータをキー発生器２から受信する。マルチプレクサは暗号化されたデータワードを送信する。
【００２１】
図４は図３の送信装置により送られた暗号化されたデータワードが受信され解読される態様を示している。図４の受信装置は図３の装置に関して基本的に対称的に構成されている。デマルチプレクサ７はデータワードを、キー解読装置８へ供給される暗号化されたキーワードと、結合装置３へ供給される暗号ワードで暗号化されたデータとに分割する。キー解読装置８は暗号化されたキーワードを供給されたデータから分離し、これらを暗号化シーケンス発生器１へ送る。暗号化シーケンス発生器１では、データシーケンスを解読するための初期化プロセスおよびアルゴリズムが実行される。暗号化シーケンス発生器１は暗号ワードを決定し、これらを結合装置３へ送り、ここでマルチプレクサから入来するデータ流が復号化され、データワードはオーディオデータ受信機９へ与えられる。
【図面の簡単な説明】
【図１】本発明にしたがった暗号ワードを決定するためのアルゴリズムのステップを示しているフローチャート。
【図２】図１のアルゴリズムの開始値が本発明にしたがって決定される初期化プロセスのステップを示しているフローチャート。
【図３】本発明にしたがってデータシーケンスを暗号化する方法が使用される装置のブロック図。
【図４】本発明にしたがってデータシーケンスを解読する方法が使用される装置のブロック図。
【図１】
0004298010.tif 000002
【図２】
0004298010.tif 000003
【図３】
0004298010.tif 000004
【図４】
0004298010.tif 000005