(57)【要約】  カオス数列生成を加速又は後退させる方法が提供される。方法は、複数の多項式を選択する段階を有する。方法は、所与の時間で少なくとも１周期だけカオス数列生成を促進又は後退させるために加速−減速変数ｖの値を選択する段階も有する。方法は、加速−減速変数ｖを用いて多項式の解をそれぞれ決定するために残余算術演算を用いる段階を更に有する。解は、繰り返し計算され、残余値として表される。方法は、残余値に基づき、重み付き記数法の一連の数字を決定する段階を有する。
2011521603.tif 000002
【特許請求の範囲】
【請求項１】
加速及び／又は減速されたカオス数列を生成する方法であって：
加速−減速変数ｖから構成された複数の多項式を選択する段階；
所与の時間で少なくとも１周期だけカオス数列生成を促進させるため、又は該所与の時間で少なくとも１周期だけ該カオス数列生成を後退させるために、前記加速−減速変数ｖの値を選択する段階；
前記加速−減速変数ｖを用い、繰り返し計算されＲＮＳ残余値として表される、前記複数の多項式の複数の解をそれぞれ決定するために、残余記数法（Ｒｅｓｉｄｕｅ  Ｎｕｍｂｅｒ  Ｓｙｓｔｅｍ：ＲＮＳ）算術演算を用いる段階；
前記複数のＲＮＳ残余値に基づき、重み付き記数法で一連の数を決定する段階；
を有する方法。
【請求項２】
数式ｃ  ｍｏｄｕｌｏ  ｍｉにより定められるよう前記変数ｖを選択する段階；
を更に有し、
ｃは加速又は減速の周期数であり、ｍｉはカオス数列が繰り返しを開始する周期を示す値である、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記複数の多項式は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］であり、
ｎは時間の指数であり、ｖは少なくとも１周期だけカオス数列生成を加速又は減速するために選択された値を有し、ｔは初期時間オフセットを表す変数であり、Ｔは不連続な時間間隔である、
ことを特徴とする請求項１に記載の方法。
【請求項４】
前記決定する段階は、前記複数のＲＮＳ残余値により定められる前記重み付き記数法の数を識別する段階を更に有する、
ことを特徴とする請求項１に記載の方法。
【請求項５】
前記複数の多項式のそれぞれを解くために用いられるＲＮＳのＭ個のモジュロのそれぞれに対し、値を選択する段階；
を更に有する請求項１に記載の方法。
【請求項６】
定数値を除いて同一になるよう前記複数の多項式のそれぞれを選択する段階；
を更に有する請求項１に記載の方法。
【請求項７】
多項式が所定のモジュロに対して簡略化できないように、前記定数値を選択する段階；
を更に有する請求項６に記載の方法。
【請求項８】
カオス数列生成器であって：
残余記数法（Ｒｅｓｉｄｕｅ  Ｎｕｍｂｅｒ  Ｓｙｓｔｅｍ：ＲＮＳ）算術演算を用い、加速−減速変数ｖを用いて、繰り返し計算されＲＮＳ残余値として表される、複数の多項式の複数の解をそれぞれ決定し、該複数のＲＮＳ残余値に基づき、重み付き記数法で一連の数を決定するよう構成された少なくとも１つの処理装置；
を有し、
前記複数の多項式は、前記加速−減速変数ｖから構成され、
前記加速−減速変数ｖは、所与の時間で少なくとも１周期だけカオス数列生成を加速するため、又は該所与の時間で少なくとも１周期だけ該カオス数列生成を後退させるために、選択された値を有する、
ことを特徴とするカオス数列生成器。
【請求項９】
前記変数ｖは、数式ｃ  ｍｏｄｕｌｏ  ｍｉにより定められ、
ｃは加速又は減速の周期数であり、
ｍｉはカオス数列が繰り返しを開始する周期を示す値である、
ことを特徴とする請求項８に記載のカオス数列生成器。
【請求項１０】
前記複数の多項式は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］であり、
ｎは時間の指数であり、ｖは少なくとも１周期だけカオス数列生成を加速又は減速するために選択された値を有し、ｔは初期時間オフセットを表す変数であり、Ｔは不連続な時間間隔である、
ことを特徴とする請求項８に記載のカオス数列生成器。
【請求項１１】
前記少なくとも１つの処理装置は、前記複数のＲＮＳ残余値により定められる前記重み付き記数法の数を識別するよう更に構成される、
ことを特徴とする請求項８に記載のカオス数列生成器。
【請求項１２】
前記複数の多項式は、定数値を除いて同一である、
ことを特徴とする請求項８に記載のカオス数列生成器。
【請求項１３】
前記定数値は、多項式が所定のモジュロに対して簡略化できないように選択される、
ことを特徴とする請求項１２に記載のカオス数列生成器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数列生成を用いた通信システムに関する。より詳細には、本発明は、加速及び／又は減速されたカオス数列のデジタル生成の方法に関する。
【背景技術】
【０００２】
カオス系は、決定的な特徴：初期条件に対する感度、鈍感であること、及び接続形態が過渡的であることにより予測できないほどに変化しうるシステムとして考えられる。鈍感であること及び接続形態が過渡的であることという特徴は、カオス回路により生成される結果として生じる数値が、凝集することなく全ての可能な値を取り得ることを意味する。測定又は観察されたとき、カオス系は、如何なる識別できる規則性も順序も示さない。しかしながら、その「ランダム」な様子にも拘わらず、カオスは決定論的進化である。
【０００３】
多くの種類のカオス通信システムが技術的に知られている。このようなカオス通信システムは、次世代の低被探知性（ｌｏｗ  ｐｒｏｂａｂｉｌｉｔｙ  ｏｆ  ｉｎｔｅｒｃｅｐｔ：ＬＰＩ）波形、低被検出性（ｌｏｗ  ｐｒｏｂａｂｉｌｉｔｙ  ｏｆ  ｄｅｔｅｃｔｉｏｎ：ＬＰＤ）波形、及び安全な波形の基礎として有望である。多くのカオス通信システムがカオス的に変調された波形を生成するために開発されているが、このようなカオス通信システムは、低スループットに苦しんでいる。本願明細書で用いられる用語「スループット」は、特定時間中にデータ・リンクを介して送信されるペイロード・データの量を表す。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
任意の方法でカオス生成処理を加速及び／又は減速することが望ましい多くの通信システムの用途がある。伝統的には、同時に２以上のカオス数列を生成し満足のいく同期をとる処理は、非常に煩わしい。カオス状態情報の必要な更新は、ユーザ・データのスループットの実際の量を制限してしまう。更に、カオス信号は、無限の繰り返し期間を有するので、現在の状態を任意の過去又は将来の状態に迅速に同期又は更新する能力が望ましい。例えば、第１の通信装置が第１の年の間にオンに切り替えられる場合、第１の通信装置は、時間ゼロ（ｔ＝０）で開始する初期状態に対してカオス信号を送信する。カオス信号は、ペイロード・データ信号をカオス拡散信号と結合することにより生成されうる。このようなシナリオでは、第２の通信装置が第５の年の間にオンに切り替えられ、第１の通信装置からカオス信号を受信するために設けられる場合、受信した信号を解読するときに用いる同一のカオス信号を生成する処理を直ちに同期させることが望ましい。
【０００５】
この要約は、発明の特徴及び要旨を示す発明の簡単な要約を要求する３７Ｃ．Ｆ．Ｒ．§１．７３に従い設けられる。要約は請求項の範囲又は意味を制限又は解釈するために用いられるべきではないことが理解される。
【課題を解決するための手段】
【０００６】
本発明は、加速及び／又は減速カオス数列を生成する方法（及び実施するシステム）に関する。方法は、カオス特性を示す複数の多項式を選択する段階を有する。各多項式は、加速−減速変数ｖから構成される。多項式は、簡略化できない、及び／又は定数値を除いて同一である。方法は、所与の時間ｔで少なくとも１周期だけカオス数列生成を促進又は後退させるために加速−減速変数ｖの値を選択する段階も有する。加速−減速変数ｖは、数式ｃ  ｍｏｄｕｌｏ  ｍｉにより定められうる。この数式では、ｃは加速又は減速の周期数である。ｍｉは、カオス数列が繰り返しを開始する周期を示す値である。
【０００７】
方法は、多項式の解をそれぞれ決定するために残余記数法（ＲＮＳ）算術演算を用いる段階を更に有する。解は、繰り返し計算され、残余値として表される。解は、少なくとも１つのメモリに基づくテーブルを用いて決定されうる。また、方法は、ＲＮＳ残余値に基づき、重み付き記数法の一連の数字を決定する段階を有する。一連の数字は、少なくとも１つのメモリに基づくテーブルを用いて決定されうる。また、方法は、混合基数変換、算術演算、又は実行中の処理を意図されない解読から隠すためのマスキング・シーケンス（議論されない）との他の組み合わせの任意の段階を有する。
【０００８】
実施形態は、以下の図面を参照して記載される。図中の類似の番号は、全ての図を通じて類似の項目を表す。
【図面の簡単な説明】
【０００９】
【図１】本発明を理解するために有用な加速及び／又は減速カオス数列生成の概念図である。
【図２】加速又は減速されたカオス数列を生成する方法のフロー図を示す。
【図３】加速及び／又は減速された数列を生成するよう構成されたカオス数列生成器のブロック図である。
【図４Ａ】図４Ｂと共に、少なくとも１つの周期だけ加速及び／又は減速された数列を生成するためのメモリに基づくテーブルを埋め込んだカオス数列生成器のブロック図を示す。
【図４Ｂ】図４Ａと共に、少なくとも１つの周期だけ加速及び／又は減速された数列を生成するためのメモリに基づくテーブルを埋め込んだカオス数列生成器のブロック図を示す。
【図５Ａ】図５Ｂと共に、別のカオス数列生成処理と周期を瞬時に同期させるよう構成されたカオス数列生成器のブロック図を示す。
【図５Ｂ】図５Ａと共に、別のカオス数列生成処理と周期を瞬時に同期させるよう構成されたカオス数列生成器のブロック図を示す。
【発明を実施するための形態】
【００１０】
本発明は、種々のカオスに基づく通信システムで用いられうる加速又は減速されたカオス数列を生成する方法に関する。このようなカオスに基づく通信システムは、カオス拡散信号に基づく通信システム、コヒーレントなカオス・シフト・キーイングに基づく通信システム、非コヒーレントなカオス・シフト・キーイングに基づく通信システム、及び差分符号シフト・キーイング（ｄｉｆｆｅｒｅｎｔｉａｌ  ｃｏｄｅ  ｓｈｉｆｔ  ｋｅｙｉｎｇ：ＤＣＳＫ）に基づく通信システムを含む。このようなカオス通信システムは、カオス・オン−オフ・キーイングに基づく通信システム、周波数変調ＤＣＳＫに基づく通信システム、相関遅延シフト・キーイングに基づく通信システム、対称符号シフト・キーイング（ＣＳＫ）及び直交ＣＳＫに基づく通信システムも含む。
【００１１】
前述のカオスに基づく通信システムのそれぞれはカオス数列を生成可能なカオス生成器を必要とすることが理解されるだろう。本願明細書で用いられる用語のカオス数列は、如何なる識別できる順序の規則性も有さないが、カオス系の３つの主な決定的な特徴に従う、アナログ又はデジタル形式で表された時間的に変化する値を有する信号である。業者は、実施のために望ましい特定の種類のカオス通信システムに依存して、カオス数列が種々の方法で用いられうることを直ちに理解するだろう。
【００１２】
本発明は、本発明の説明のための実施形態が示される添付の図面を参照し、以下により詳細に説明される。しかしながら、本発明は、多くの異なる形態で実施されてもよく、本願明細書に説明される実施形態に限定されるとみなされるべきではない。例えば、本発明は、方法、データ処理システム、又はコンピュータ・プログラムとして実施されうる。従って、本発明は、全体がハードウェアの実施形態、全体がソフトウェアの実施形態、又はハードウェアとソフトウェアとの組み合わせの実施形態の何れの形式でもよい。
【００１３】
図１を参照すると、本発明を理解するために有用なカオス数列生成器の概念図を示す。図１に示すように、カオス数列の生成は、Ｍ個の多項式で開始する。Ｍ個の多項式は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のように選択されうる。ｎは、多項式の初期状態を定めるために用いられる時間の指数であり、ｖは少なくとも１つの周期だけカオス数列生成を加速又は減速するために選択された値を有する変数であり、ｔは時間を表す変数である。Ｔは不連続の時間間隔である。
【００１４】
本発明の実施形態によると、ｖは、数式ｃ  ｍｏｄ  ｍｉにより定められる。ここでｉは｛０，１，２，．．．，Ｍ｝に属する。ｃは加速又は減速の周期の数である。ｍｉは、個々のＲＮＳデジタル・カオス数列の要素のそれぞれが繰り返しを開始する周期を示す値である。留意すべき点は、このようなモジュールの削減は、自身の周期を、全てのＲＮＳ要素が同時に同期されるときに、別のカオス数列生成の周期と瞬時に同期するよう構成されたカオス数列生成を提供することである。このモジュール削減の特徴は、議論の進行と共に明らかになるだろう。更に留意すべき点は、本発明がこの点に限定されないことである。
【００１５】
再び図１を参照すると、Ｍ個の多項式は、加速又は減速されたカオス数列をデジタル生成するために選択される。これに関し、Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］を用いたカオス数列生成処理は、１周期で加速又は減速されうることが理解されるべきである。例えば、変数ｖがゼロ（０）に等しい値を有するよう選択され、初期時間ｔがゼロ（０）に設定される場合、値ｆ０［ｘ（（ｎ）Ｔ）］，ｆ１［ｘ（（ｎ＋１）Ｔ）］，ｆ２［ｘ（（ｎ＋２）Ｔ）］，ｆ３［ｘ（（ｎ＋３）Ｔ）］，ｆ４［ｘ（（ｎ＋４）Ｔ）］の数列は、カオス数列生成中に時間の関数として生成される。或いは、変数ｖが正の１（＋１）に等しい値を有するよう選択され、カオス数列生成が１周期の間に時間２（ｔ＝２）により加速される場合、値ｆ０［ｘ（（ｎ）Ｔ）］，ｆ１［ｘ（（ｎ＋１）Ｔ）］，ｆ２［ｘ（（ｎ＋３）Ｔ）］，ｆ３［ｘ（（ｎ＋４）Ｔ）］，ｆ４［ｘ（（ｎ＋５）Ｔ）］の数列は、カオス数列生成中に時間の関数として生成される。同様に、変数ｖが負の１（−１）に等しい値を有するよう選択され、カオス数列生成が１周期の間に時間２（ｔ＝２）により減速される場合、値ｆ０［ｘ（（ｎ）Ｔ）］，ｆ１［ｘ（（ｎ＋１）Ｔ）］，ｆ２［ｘ（（ｎ＋１）Ｔ）］，ｆ３［ｘ（（ｎ＋２）Ｔ）］，ｆ４［ｘ（（ｎ＋３）Ｔ）］の数列は、カオス数列生成中に時間の関数として生成される。
【００１６】
Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］を用いたカオス数列生成処理は、任意の数の周期で加速又は減速されうることが理解されるべきである。例えば、１つのＲＮＳ要素が１周期の間に時間２（ｔ＝２）で百万（１，０００，０００）周期だけ加速され、ｍｉが５１１に等しい場合、値ｆ０［ｘ（（ｎ）Ｔ）］，ｆ１［ｘ（（ｎ＋１）Ｔ）］，ｆ２［ｘ（（ｎ＋１，０００，００２）Ｔ）］，ｆ３［ｘ（（ｎ＋１，０００，００３）Ｔ）］，ｆ４［ｘ（（ｎ＋１，０００，００４）Ｔ）］の数列は、カオス数列生成中に時間の関数として生成される。１，０００，０００＝１９５６・５１１＋４８４又は１，０００，０００ｍｏｄ５１１＝４８４という事実を用い、値の数列は、ｆ０［ｘ（（ｎ）Ｔ）］，ｆ１［ｘ（（ｎ＋１）Ｔ）］，ｆ２［ｘ（（ｎ＋４８４＋２）Ｔ）］，ｆ３［ｘ（（ｎ＋４８４＋３）Ｔ）］，ｆ４［ｘ（（ｎ＋４８４＋４）Ｔ）］として書き換えられる又はｆ０［ｘ（（ｎ）Ｔ）］，ｆ１［ｘ（（ｎ＋１）Ｔ）］，ｆ２［ｘ（（ｎ−２７＋２）Ｔ）］，ｆ３［ｘ（（ｎ−２７＋３）Ｔ）］，ｆ４［ｘ（（ｎ−２７＋４）Ｔ）］と等価である。本発明はこの点に限定するものではない。
【００１７】
再び図１を参照すると、Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、同一の多項式又は異なる複数の多項式として選択されうる。本発明の態様によると、Ｍ個の多項式は、ガロア体演算のカオス特性を有する簡略化できない多項式として選択される。このような簡略化できない多項式は、限定ではなく、簡略化できない三次多項式及び簡略化できない四次多項式を含む。本願明細書で用いられる用語「簡略化できない多項式」は、同一のガロア体（ｆ）で少なくとも２つの自明でない多項式の積として表せない多項式を表す。例えば、ガロア体特性を法としてｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］＝ｇ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］・ｈ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］になるような整数の係数を有するｘ（（ｎ＋ｖ＋ｔ）Ｔ）で、２個の非定常多項式ｇ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］及びｈ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］が存在しない場合、多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は簡略化できない
当業者により理解されるように、Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のそれぞれは、個々の解を得るために独立に解かれうる。各解は、ＲＮＳ算術演算、つまりモジュロ演算を用いて、剰余数系（ＲＮＳ）の剰余値として表すことができる。モジュロ演算は、当業者に良く知られている。このような処理は以下により詳細に記載される。しかしながら、理解されるべき点は、特定の重み付けされた値「ａ」のＲＮＳ剰余表現は、数式（１）により定められうることである。
Ｒ＝｛ａ  ｍｏｄｕｌｏ  ｍ０，ａ  ｍｏｄｕｌｏ  ｍ１，．．．，ａ  ｍｏｄｕｌｏ  ｍＭ−１｝  （１）
ここで、Ｒは、重み付けされた値「ａ」を表すＲＮＳ剰余のＭ組（Ｍ−ｔｕｐｌｅ）値である。更に、Ｒ（（ｎ＋ｖ＋ｔ）Ｔ）は、Ｒ（（ｎ＋ｖ＋ｔ）Ｔ）＝｛ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］  ｍｏｄｕｌｏ  ｍ０，ｆ１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］  ｍｏｄｕｌｏ  ｍ１，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］  ｍｏｄｕｌｏ  ｍＭ−１｝として定められる多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のＲＮＳ解の表現でありうる。ｍ０，ｍ１，ｍＭ−１は、それぞれ各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］に適用可能なＲＮＳ算術演算のモジュロである。
【００１８】
以上より、各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］を解くために用いられるＲＮＳは、選択されたモジュロ値ｍ０，ｍ１，．．．，ｍＭ−１を有することが理解されるだろう。各ＲＮＳモジュロのために選択された値は、望ましくは互いに素の数ｐ０，ｐ１，．．．，ｐＭ−１であるよう選択される。本願明細書で用いられる用語「互いに素の数」は、１以外に如何なる共通の除数も有さない自然数の集合を表す。従って、ＲＮＳ剰余値として解を表すために用いられる各ＲＮＳ算術演算は、異なる互いに素の数ｐ０，ｐ１，．．．，ｐＭ−１をａ  ｍｏｄｕｌｏ  ｍ０，ｍ１，．．．，ｍＭ−１として用いる。
【００１９】
当業者は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のそれぞれに対する解として計算されたＲＮＳ剰余値が、モジュロ値ｍ０，ｍ１，．．．，ｍＭ−１として選択された素数ｐ０，ｐ１，．．．，ｐＭ−１からの選択に依存して変化することを理解するだろう。更に、値の範囲は、モジュロ値ｍ０，ｍ１，．．．，ｍＭ−１として選択された互いに素の数ｐ０，ｐ１，．．．，ｐＭ−１の選択に依存する。例えば、素数５０３がモジュロｍ０として選択された場合、第１の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のＲＮＳ解は、ゼロ（０）と５０２との間の整数を有するだろう。また、第１の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のＲＮＳ解は、５０２周期の後に繰り返し始めるだろう。同様に、素数４９１がモジュロｍ１として選択された場合、第２の多項式ｆ１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のＲＮＳ解は、ゼロ（０）と４９０との間の整数を有するだろう。第２の多項式ｆ１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のＲＮＳ解は、４９０周期の後に繰り返し始めるだろう。本発明はこの点に限定するものではない。
【００２０】
本発明の実施形態によると、Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のそれぞれは、ガロア体演算のカオス特性を有する簡略化できない三次多項式として選択される。簡略化できない三次多項式は、数式（２）により定められる。
ｆ［（（ｎ＋ｖ＋ｔ）Ｔ）］＝Ｑ（ｋ）ｘ３（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｒ（ｋ）ｘ２（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｓ（ｋ）ｘ（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｃ（ｋ，Ｌ）  （２）
ここで、ｎは多項式の初期状態を定めるために用いられるサンプル時間の指数値であり、ｖは少なくとも１つの周期だけカオス数列生成を加速又は減速するために選択された値を有する変数であり、ｔは時間を表す変数である。Ｔは時間間隔又は増分を表す値を有する固定された定数であり、ｋは多項式の時間指数値である。ｋの値は、外部の時間基準又は用いられる簡略化できない多項式の動的制御を可能にするために制御された独立した線形時間フローから得られてもよい。Ｌは不変要素の時間指数値である。Ｑ，Ｒ及びＳは、多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］を定める係数である。Ｃはｘ（（ｎ＋ｖ＋ｔ）Ｔ）のゼロ乗の係数であり、従って各多項式の特性について一定である。好適な実施形態では、Ｃの値は、特定の素のモジュロの簡略化できない形式の上述の多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］を生成するために経験的に定められ選択される。Ｑ、Ｒ及びＳについて固定値を有する所与の多項式では、１より大きいＣの値が存在し、それぞれ独自の繰り返し数列を提供する。再び、本発明はこの点に限定するものではない。
【００２１】
本発明の別の実施形態によると、Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、定数Ｃを除いて同一である。例えば、第１の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］＝３ｘ３（（ｎ＋ｖ＋ｔ）Ｔ）＋３ｘ２（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｃ０のように選択されうる。第２の多項式ｆ１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、ｆ１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］＝３ｘ３（（ｎ＋ｖ＋ｔ）Ｔ）＋３ｘ２（（ｎ＋ｖ＋ｔ）Ｔ）＋ｘ（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｃ１のように選択されうる。第３の多項式ｆ２［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、ｆ２［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］＝３ｘ３（（ｎ＋ｖ＋ｔ）Ｔ）＋３ｘ２（（ｎ＋ｖ＋ｔ）Ｔ）＋ｘ（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｃ２のように選択されうる。以降同様である。各定数値Ｃ０，Ｃ１，．．．，ＣＭ−１は、上述の多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］＝３ｘ３（（ｎ＋ｖ＋ｔ）Ｔ）＋３ｘ２（（ｎ＋ｖ＋ｔ）Ｔ）＋ｘ（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｃの剰余リングの中で簡略化できない形式を生成するよう選択される。これに関し、理解されるべき点は、各定数値Ｃ０，Ｃ１，．．．，ＣＭ−１が、多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］を解くときにＲＮＳ算術演算に用いられるべき特定のモジュロｍ０，ｍ１，．．．，ｍＭ−１の値に関連付けられることである。上述の多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］＝３ｘ３（（ｎ＋ｖ＋ｔ）Ｔ）＋３ｘ２（（ｎ＋ｖ＋ｔ）Ｔ）＋ｘ（（ｎ＋ｖ＋ｔ）Ｔ）＋Ｃの簡略化できない形式を生成するこのような定数値Ｃ０，Ｃ１，．．．，ＣＭ−１及び関連付けられたモジュロｍ０，ｍ１，．．．，ｍＭ−１の値の例は、次の表１に記載される。
【００２２】
表１
【表１】
2011521603.tif 000003
再び、本発明はこの点に限定するものではない。
【００２３】
図１に示されるシステムで生成されうる不連続な振幅の状態の数（ダイナミック・レンジ）は、多項式Ｍの量及びＲＮＳ記数法のために選択されたモジュロ値に依存する。特に、この値は、積ｍＰＲＯＤ＝ｍ０・ｍ１・ｍ２・ｍ３・．．．・ｍＭ−１として計算されうる。
【００２４】
再び図１を参照すると、各ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍが重み付き記数法表現で表されることが分かる。本発明の好適な実施形態では、各ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍは、２値記数法表現で表される。このように、各ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍはビットの２進数列である。列の各ビットはゼロ（０）又は１の値を有する。各２進数列は、特定のモジュロに従い選択されたビット長を有する。
【００２５】
本発明の実施形態によると、残余値を表す各２進数列は、数式（３）により定められるビット長（ＢＬ）を有する。
ＢＬ＝Ｃｅｉｌｉｎｇ［Ｌｏｇ２（ｍ）］  （３）
ここで、ｍはモジュロｍ０，ｍ１，．．．，ｍＭ−１のうちの１つとして選択される。Ｃｅｉｌｉｎｇ［ｕ］は、引数ｕ又はｕが整数の場合にはｕに対して次に高い全ての整数を表す。
【００２６】
前述の概念をより理解するために、例が有用である。本例では、簡略化できない多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆ５［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］を解くために６個の互いに素のモジュロが用いられる。第１のモジュロｍ０に関連付けられた素数ｐ０は、５０３として選択される。第２のモジュロｍ１に関連付けられた素数ｐ１は、４９１として選択される。第３のモジュロｍ２に関連付けられた素数ｐ２は、４７９として選択される。第４のモジュロｍ３に関連付けられた素数ｐ３は、４６７として選択される。第５のモジュロｍ４に関連付けられた素数ｐ４は、２５７として選択される。第６のモジュロｍ５に関連付けられた素数ｐ５は、２５１として選択される。ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の可能な解は、ゼロ（０）乃至５０２の範囲にあり、９桁の２進数で表される。ｆ１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の可能な解は、ゼロ（０）乃至４９０の範囲にあり、９桁の２進数で表される。ｆ２［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の可能な解は、ゼロ（０）乃至４７８の範囲にあり、９桁の２進数で表される。ｆ３［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の可能な解は、ゼロ（０）乃至４６６の範囲にあり、９桁の２進数で表される。ｆ４［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の可能な解は、ゼロ（０）乃至２５６の範囲にあり、９桁の２進数で表される。ｆ５［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の可能な解は、ゼロ（０）乃至２５０の範囲にあり、８桁の２進数で表される。  多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆ４［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の再帰的な解を計算するための演算は、９桁のモジュロ算術演算を必要とする。
【００２７】
多項式ｆ５［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の再帰的な解を計算するための演算は、８桁のモジュロ算術演算を必要とする。概して、再帰的な結果ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆ５［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、０乃至ｍＰＲＯＤ−１の範囲の値を表す。ｍＰＲＯＤの値は、ｐ０・ｐ１・ｐ２・ｐ３・ｐ４・ｐ５＝５０３・４９１・４７９・４６７・２５７・２５１＝３，５６３，７６２，１９１，０５９，５２３のように計算される。各ＲＮＳ解の２進数列表現は、Ｃｅｉｌｉｎｇ［Ｌｏｇ２（３，５６３，７６２，１９１，０５９，５２３）］＝Ｃｅｉｌｉｎｇ［５１．６６］＝５２ビットを用いて計算されうる。各多項式は簡略化できないので、全ての３，５６３，７６２，１９１，０５９，５２３の可能な値は、数列が繰り返し、ｍＰＲＯＤ×Ｔ秒、つまり数列の繰り返しに生成された値の数列の中の各値の計算の間の時間間隔を乗じたもの、の数列の繰り返し時間を生じる前に計算される。再び、本発明はこの点に限定するものではない。
【００２８】
再び図１を参照すると、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍは、重み付けされた記数法表現にマッピングされ、それによりカオス数列出力を形成している。本願明細書で用いられる用語「重み付けされた記数法」は、残余記数法以外の記数法を表す。このような重み付き記数法は、限定ではなく、整数記数法、２進記数法、８進記数法、及び１６進記数法を含む。
【００２９】
本発明のある態様によると、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍは、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍに基づき重み付き記数法で数字の列を決定することにより、重み付き記数法表現にマッピングされる。本願明細書で用いられる用語「数字」は、数を表すための複数のシンボルの組み合わせのうちのシンボルを表す。例えば、数字は２進数列の特定のビットでありうる。本発明の別の態様によると、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍは、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍにより定められる重み付き記数法で数を識別することにより、重み付き記数法表現にマッピングされる。本発明の更に別の態様によると、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍは、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍにより定められる重み付き記数法で数の切り捨てられた部分を識別することにより、重み付き記数法表現にマッピングされる。切り捨てられた部分は、重み付き記数法の数の複数桁の連続的に配置されたセットを含みうる。切り捨てられた部分は、重み付き記数法の数の最上位桁以外であってもよい。本願明細書で用いられる用語「切り捨てられた部分」は、始め及び／又は終わりから除去された１又は複数の桁を有するカオス数列を表す。用語「切り捨てられた部分」は、カオス数列から抽出された所定数の桁を有するセグメントも表す。用語「切り捨てられた部分」は、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍの重み付き記数法への部分的なマッピングの結果も表す。
本発明のある実施形態によると、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍを重み付き記数法にマッピングするために混合基数変換方法が用いられる。混合基数変換は、当業者に良く知られているので、本願明細書には記載されない。変換は切り捨てられた結果を生成するために変更されうる。再び、本発明はこの点に限定するものではない。
【００３０】
本発明の別の実施形態によると、中国の余剰定理（ＣＲＴ）算術演算は、ＲＮＳ解Ｎｏ．１〜Ｎｏ．Ｍを重み付き記数法にマッピングするために用いられる。ＣＲＴ算術演算は、当業者に良く知られているので、本願明細書には詳細に記載されない。再び、本発明はこの点に限定するものではない。
【００３１】
理解されるように、加速又は減速カオス数列出力Ｙは、２進記数法表現で表されうる。このように、カオス数列出力Ｙは、２進数列として表されうる。２進数列の各ビットはゼロ（０）又は１の値を有する。カオス数列出力Ｙは、数式（４）により定められる最大ビット長（ＭＢＬ）を有しうる。
ＭＢＬ＝Ｃｅｉｌｉｎｇ［Ｌｏｇ２（ｍＰＲＯＤ）］  （４）
ここで、は、ｍＰＲＯＤは、モジュロ値ｍ０，ｍ１，．．．，ｍＭ−１として選択された互いに素の数ｐ０，ｐ１，．．．，ｐＭ−１の積である。これに関し、理解されるべき点は、ｍＰＲＯＤがＣＲＴ算術演算のダイナミック・レンジを表すことである。本願明細書で用いられる用語「ダイナミック・レンジ」は、ＣＲＴ算術演算の結果値の最大可能範囲を表す。理解されるべき点は、ＣＲＴ算術演算が、ダイナミック・レンジｍＰＲＯＤの逆数に等しい周期性を有するカオス数列を生成することである。ダイナミック・レンジは、Ｃｅｉｌｉｎｇ［Ｌｏｇ２（ｍＰＲＯＤ）］のビット精度を要求する。  本発明のある実施形態によると、ｍＰＲＯＤは３，５６３，７６２，１９１，０５９，５２３に等しい。ｍＰＲＯＤのこの値を式（６）に代入することにより、２進系表現で表されたカオス数列出力Ｙのビット長（ＢＬ）は次のように計算されうる。
ＢＬ＝Ｃｅｉｌｉｎｇ［Ｌｏｇ２（３，５６３，７６２，１９１，０５９，５２３）］＝５２ビット
このように、カオス数列出力Ｙは、ゼロ（０）及び３，５６３，７６２，１９１，０５９，５２３を含むそれらの数の間の整数値を有する５２ビットの２進数列である。再び、本発明はこの点に限定するものではない。例えば、カオス数列出力Ｙは、ゼロ（０）とｍＰＲＯＤ−１との間の切り捨てられた部分を表す２進数列でありうる。このようなシナリオでは、カオス数列出力Ｙは、Ｃｅｉｌｉｎｇ［Ｌｏｇ２（ｍＰＲＯＤ）］より短いビット長を有しうる。留意すべき点は、切り捨てはシステムのダイナミック・レンジに影響を与えるが、生成された数列の周期性には如何なる影響も与えないことである。
【００３２】
理解されるように、上述のカオス数列生成は繰り返し実行されうる。このようなシナリオでは、帰還の仕組み（例えば、帰還ループ）が設けられ、多項式の変数「ｘ」が前の繰り返しで計算された解として選択的に定められうる。数式（２）は、一般的な繰り返しの形式：ｆ［（（ｎ＋ｖ＋ｔ）Ｔ）］＝Ｑ（ｋ）ｘ３［（（ｎ＋ｖ＋ｔ）Ｔ）］＋Ｒ（ｋ）ｘ２［（（ｎ＋ｖ＋ｔ）Ｔ）］＋Ｓ（ｋ）ｘ［（（ｎ＋ｖ＋ｔ）Ｔ）］＋Ｃ（ｋ，Ｌ）に書き換えられうる。例えば、固定された係数の多項式は、ｆ［ｘ（（ｎ＋ｖ＋ｔ）・１ｍｓ）］＝３ｘ３［（（ｎ＋ｖ＋ｔ）−１）・１ｍｓ］＋３ｘ２［（（ｎ＋ｖ＋ｔ）−１）・１ｍｓ］＋ｘ［（（ｎ＋ｖ＋ｔ）−１）・１ｍｓ］＋８ｍｏｄｕｌｏ５０３のように選択される。ｎは、実行されている繰り返しにより定められる値を有する変数である。ｘは、残余リングで可能な値を有する変数である。ｖは、少なくとも１つの周期だけカオス数列生成を加速又は減速するために選択された値を有する変数である。ｔは、時間を表す変数である。第１の繰り返しで、ｎは１に等しく、ｖはゼロに等しいので、カオス数列生成は所定数の周期だけ加速又は減速されず、ｔはゼロに等しく、ｘは残余リングで可能な２として選択される。ｎ、ｖ、ｔ及びｘの値を上述の多項式ｆ［ｘ（（ｎ＋ｖ＋ｔ）Ｔ］に代入することにより、４６を有する第１の解が得られる。第２の繰り返しで、ｎは１だけ増加され、ｘは第１の解の値に等しく、つまり４６であり、結果として解２９８，４１０ｍｏｄ５０３又は１３１を生じる。第３の繰り返しで、ｎは再び１だけ増加され、ｘは第２の解の値に等しい。
【００３３】
図２を参照すると、本発明を理解するために有用な加速又は減速されたカオス数列を生成する方法のフロー図が示される。図２に示されるように、方法２００は、段階２０２で開始し、段階２０４に続く。段階２０４で、複数のＲＮＳモジュロｍ０，ｍ１，．．．，ｍＭ−１は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の算術演算で用いられるために選択される。段階２０４の後、段階２０６が実行され、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］が選択される。これに関し、理解されるべき点は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、定数項が異なること以外は同一の多項式として又は異なる複数の多項式として選択されうることである。段階２０６の後、段階２０８が実行され、各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］について、個々の定数値Ｃ０，Ｃ１，．．．，ＣＭ−１のどの組が各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の簡略化できない形式を生成するかが決定される。
段階２０８の後、方法２００は段階２１０に続く。段階２１０で、時間の増分「Ｔ」の値が選択される。その後、段階２１２で、「ｘ」の初期値が選択される。「ｘ」の初期値はオフセット時間指数「ｔ」により定められる。これに関し、理解されるべき点は、「ｘ」の初期値が残余リングの中で可能な如何なる値であってもよいことである。次に、段階２１４が実行され、対象状態を識別することにより、変数「ｖ」の値が選択される。対象状態を識別する種々の方法がある。例えば、特定の対象状態は、第２のカオス数列生成を第１のカオス数列生成に同期させるために、第１のカオス数列生成の状態を決定することにより選択されてもよい。本願明細書で用いられる用語「状態」は、カオス数列生成の特定の周期を表す。本発明はこの点に限定するものではない。
【００３４】
段階２１４は、少なくとも１つの周期だけカオス数列生成を加速するのに、又は数列の展開中に少なくとも１つの周期だけカオス数列生成を後退させるのに適した値を有するように変数「ｖ」を選択する段階も有する。上述のように、変数「ｖ」は、任意の数の状態（若しくは周期）によりカオス数列生成を促進させる、又は任意の数の状態（若しくは周期）によりカオス数列生成を後退させる、数学的表現ｃ  ｍｏｄｕｌｏ  Ｐにより定められうる。ｃは、カオス数列生成の対象状態（若しくは対象周期）を表す変数である。例えば、対象状態（若しくは周期）ｃが百万（１，０００，０００）であるよう定められ、Ｐが５１１の時間指数に等しい場合、変数「ｖ」は、ｖ＝ｃ  ｍｏｄｕｌｏ  Ｐ＝１，０００，０００ｍｏｄｕｌｏ５１１＝４８４のように計算されうる。このようなシナリオでは、大きさＰ＝５１１のリングの完全な循環は排除される。値４８４を有する余りは、リング又は時間の差の部分的な（又は残余の）循環を表す。本発明はこの点に限定するものではない。
【００３５】
段階２１４は、カオス数列生成が数列の展開中に１又は複数の周期のみで生じるように、増加された指数「ｎ」の関数（ｖ［ｎ］）として変数「ｖ」を選択する段階を更に有しうる。この方法では、数列は指数ｎ＝０で開始し、更に将来及びの特定の増加指数でｖ［ｎ＝２］＝３２周期だけ、及び他の時間にゼロだけ「ジャンプ（ｊｕｍｐ）」するよう設定される。つまりｖ［ｎ＝０］＝０、ｖ［ｎ＝１］＝０、ｖ［ｎ＝２］＝３２、ｖ［ｎ＝３］＝０、ｖ［ｎ＝４］＝０、ｖ［ｎ＞４］＝０である。
【００３６】
変数「ｖ」の値を選択した後、方法２００は段階２１６に続く。段階２１６で、ＲＮＳ算術演算は、各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のＲＮＳ解を繰り返し決定するために用いられる。段階２１８で、重み付き記数法の一連の数字は、ＲＮＳ解に基づき決定される。この段階は、カオス数列出力を得るために、ＲＮＳ解を用いて混合基数算術演算又はＣＲＴ算術演算を実行する段階を有しうる。
【００３７】
段階２１８の後、方法２００は決定段階２２０に続く。カオス生成器が終了しない場合（２２０：ＮＯ）、段階２２４が実行され、各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の「ｘ」の値は、段階２１６で各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］について計算されたＲＮＳ解に等しく設定される。次に、方法２００は段階２１６へ戻る。カオス生成が終了した場合（２２０：ＹＥＳ）、段階２２２が実行され、方法２００は終了する。
【００３８】
図３を参照すると、本発明の装置を実施するために用いられうるカオス数列生成器（ＣＳＧ）の一実施形態を示す。ＣＳＧ３００は、デジタル加速及び／又は減速カオス数列を生成するよう構成される。これに関し、理解されるべき点は、ＣＳＧ３００が計算プロセッサ（ＣＰ）３０２０−３０２Ｍ−１を有することである。ＣＳＧ３００は、マッピング・プロセッサ（ＭＰ）３０４も有する。各ＣＰ３０２０−３０２Ｍ−１は、各データ・バス３０６０−３０６Ｍ−１によりＭＰ３０４に結合される。このように、各ＣＰ３０２０−３０２Ｍ−１は、各データ・バス３０６０−３０６Ｍ−１を介してＭＰ３０４へデータを伝達するよう構成される。ＭＰ３０４は、データ・バス３０８を介して外部装置（示されない）に結合されうる。これに関し、理解されるべき点は、外部装置（示されない）は、限定でなく、カオス数列出力に従い信号を結合又は変更するよう構成された暗号化装置を有することである。
【００３９】
再び図３を参照すると、ＣＰ３０２０−３０２Ｍ−１は、Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のを解いて複数の解を得るよう構成されたハードウェア及び／又はソフトウェアを有する。Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、有限フィールド計算のカオス特性を有する簡略化できない多項式でありうる。このような簡略化できない多項式は、限定ではなく、簡略化できない三次多項式及び簡略化できない四次多項式を含む。Ｍ個の多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］は、定数値を除いて同一でありうる。定数値は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］が所定のモジュロに対して簡略化できないように選択されうる。変数「ｖ」は、カオス数列生成が少なくとも１つの状態（又は周期）により促進又は後退されるように選択されうる。
【００４０】
上述のように、変数「ｖ」は、カオス数列生成が数列の展開中に任意の特定の時間指数ｘで任意の数の状態（又は周期）により促進又は後退されるように選択されうる。このようなシナリオでは、変数「ｖ」は、数学的表現ｃ  ｍｏｄｕｌｏ  Ｐにより定められうる。ここで、ｃは、カオス数列生成の対象状態（又は対象周期）を表す変数である。ＣＰ３０２０−３０２Ｍ−１は、（通信装置の送信器及び暗号化装置のような）外部装置により実行されるカオス数列生成のカオス数列生成の対象状態（又は対象周期）を決定するよう構成されたハードウェア及び／又はソフトウェアを有しうる。
【００４１】
本発明の実施形態によると、対象状態（又は周期）の決定は、（通信装置の送信器及び暗号化装置のような）外部装置から得られる状態（又は周期）情報を用いて提供される。このような状態（又は周期）情報は、限定でなく、ＣＳＧ３００により実行されるカオス数列生成と同一の又は実質的に同じカオス数列生成の現在の状態（又は周期）を識別する情報を有しうる。本発明はこの点に限定するものではない。例えば、対象状態（又は周期）の決定は、代案としてクロック・ドリフト情報を用いて実行されうる。
【００４２】
各解は、ユニークな残余記数法（ＲＮＳ）のＭ組（Ｍ−ｔｕｐｌｅ）の表現として表されうる。これに関し、理解されるべき点は、ＣＰ３０２０−３０２Ｎ−１は、モジュロ演算を用い、モジュロに基づく算術演算を用いて各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のそれぞれの解を計算する。各ＣＰ３０２０−３０２Ｍ−１は、異なる互いに素の数ｐ０，ｐ１，．．．，ｐＭ−１をモジュロに基づく算術演算のモジュロｍ０，ｍ１，．．．，ｍＭ−１として用いるよう構成されたハードウェア及び／又はソフトウェアを有する。ＣＰ３０２０−３０２Ｍ−１は、各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］が簡略化できないように各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のために選択されたモジュロｍ０，ｍ１，．．．，ｍＭ−１を用いるよう構成されたハードウェア及び／又はソフトウェアも有する。
【００４３】
ＣＰ３０２０−３０２Ｍ−１は、帰還機構３１００−３１０Ｍ−１を介して繰り返し計算された解がカオスであるように、各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のために選択されたモジュロｍ０，ｍ１，．．．，ｍＭ−１を用いるよう構成されたハードウェア及び／又はソフトウェアを更に有する。これに関し、理解されるべき点は、各多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の解が繰り返し計算できるように、帰還機構（ＦＭ）３１００−３１０Ｍ−１が設けられることである。従って、ＦＭ３１００−３１０Ｍ−１は、多項式の変数「ｘ」を前の繰り返しで計算された解として選択的に定めるよう構成されたハードウェア及び／又はソフトウェアを有する。
【００４４】
再び図３を参照すると、ＣＰ３０２０−３０２Ｍ−１は、各ＲＮＳ残余値を重み付き記数法表現で表すよう構成される。このような中間及び最後のモジュラ計算の結果を表す方法は、当業者に良く知られているので、本願明細書には詳細に記載されない。しかしながら、理解されるべき点は、如何なるこのような方法も制限なく用いられうることである。理解されるべき点は、重み付き記数法表現で表される残余値が、以下ではＲＮＳのＭ組（Ｍ−ｔｕｐｌｅ）の要素を有するモジュロ解Ｎｏ．１〜Ｎｏ．Ｍとして表されることである。
【００４５】
再び図３を参照すると、ＭＰ３０４は、モジュロ（ＲＮＳのＭ組）の解Ｎｏ．１〜Ｎｏ．Ｍを重み付き記数法表現にマッピングするよう構成される。結果は、モジュロ解Ｎｏ．１〜Ｎｏ．Ｍに基づく重み付き記数法の一連の数字である。例えば、ＭＰ３０４は、中国の余剰定理処理を用いてＲＮＳ残余値に基づき重み付き記数法で一連の数字を定めるよう構成されうる。これに関し、ＭＰ３０４はモジュロ解Ｎｏ．１〜Ｎｏ．Ｍにより定められる重み付き記数法の数を識別するよう構成されることが、当業者に理解されるだろう。
【００４６】
本発明の態様によると、ＭＰ３０４はモジュロ解Ｎｏ．１〜Ｎｏ．Ｍにより定められる重み付き記数法の数の切り捨てられた部分を識別するよう構成されうる。例えば、ＭＰ３０４は、重み付き記数法の数の複数桁の連続的に配置されたセットを含むように、切り捨てられた部分を選択するよう構成されうる。更に、ＭＰ３０４は、Ｘ個のビットにより表された全ての可能な重み付けされた数がマッピングされるとき、つまりｍＰＲＯＤ＜２Ｘのとき、最上位桁を除くように、切り捨てられた部分を選択するよう構成されうる。Ｘは、重み付き記数法の２進表現を達成するために必要な最小ビット数である。再び、本発明はこの点に限定するものではない。
【００４７】
再び図３を参照すると、ＣＰ３０４は、カオス数列を２進記数法表現で表すよう構成される。これに関し、理解されるべき点は、ＭＰ３０４が非２進重み付き記数法から２進重み付き記数法への変換方法を用いうることである。このような方法は当業者に一般的に知られているので本願明細書に詳細に記載されない。しかしながら、理解されるべき点は、如何なるこのような方法も制限なく用いられうることである。
【００４８】
図４Ａを参照すると、１周期だけ加速及び／又は減速された数列を生成するためのメモリに基づくテーブルを実装した計算プロセッサ（ＣＰ）のブロック図が示される。図４Ａに示されるように、ＣＰ４００は、初期状態レジスタ（ＩＳＲ）４０２、初期条件イネーブル（ＩＣＥ）４０４、マルチプレクサ４０６、４１４、４１８、ルックアップ・テーブル（ＬＵＴ）装置４０８、４１０、ユニット遅延４２０、加速／減速マルチプレクサ制御部（ＭＣ）４１２、及びマルチプレクサ制御部（ＭＣ）４１６を有する。列挙された構成要素のそれぞれは、当業者に良く知られているので、本願明細書には記載されない。しかしながら、本発明を理解するときに読者を助けるために、ＣＰ４００の簡単な議論が提供される。
【００４９】
再び図４Ａを参照すると、ＩＳＲ４０２は、初期条件のセットを格納するよう構成されたハードウェア及びソフトウェアを有する。ＩＳＲ４０２は、初期条件のセットをマルチプレクサ４０６へ伝達するよう構成されたハードウェア及びソフトウェアも有する。初期条件は、当業者に良く知られているので、本願明細書には記載されない。しかしながら、理解されるべき点は、初期条件がＣＰのダイナミック・レンジの範囲内の任意の整数値でありうることである。本発明はこの点に限定するものではない。
【００５０】
ＩＣＥ４０４は、マルチプレクサ４０６を制御するよう構成されたハードウェア及びソフトウェアを有する。これに関し、理解されるべき点は、ＩＣＥ４０４がハイ電圧制御信号及びロー電圧制御信号を生成しうることである。ＩＣＥ４０４は、制御信号をマルチプレクサ４０６へ伝達しうる。マルチプレクサ４０６は、ＩＣＥ４０４から受信した制御信号に応答して入力を選択しうる。例えば、ＩＣＥ４０４がマルチプレクサ４０６へハイ制御信号を伝達する場合、マルチプレクサ４０６はＩＳＲ４０２とＬＵＴ装置４０８との間の経路を生成しうる。しかしながら、ＩＣＥ４０４がマルチプレクサ４０６へロー制御信号を伝達する場合、マルチプレクサ４０６はユニット遅延４２０とＬＵＴ装置４０８との間の経路を生成しうる。本発明はこの点に限定するものではない。
【００５１】
ＬＵＴ装置４０８は、ＩＳＲ４０２又はユニット遅延４０２からマルチプレクサ４０６を介して入力を受信するよう構成される。また、ＬＵＴ装置４０８は、受信した入力を用いてルックアップ・テーブル演算を実行するよう構成される。ルックアップ・テーブル演算は、当業者に良く知られているので、本願明細書には記載されない。しかしながら、理解されるべき点は、ＬＵＴ装置４０８が、２進記数法表現の予め計算された残余値を有するメモリに基づくテーブル（示されない）を有することである。メモリ・テーブル（示されない）のアドレス空間は、全てのモジュロｍ、ｍ０〜ｍＭ−１に対して少なくともゼロ（０）からｍＭである。繰り返し毎に、テーブル・アドレスは、ＩＳＲ４０２又はユニット遅延４０２から受信した入力を用いて決定される。テーブル・アドレスは、メモリに基づくテーブル（示されない）のテーブル・アドレスに格納された予め計算された残余値を選択するために用いられる。予め計算された残余値が選択されると、ＬＵＴ装置４０８は、同じものをＬＵＴ装置４１０及びマルチプレクサ４１８へ伝達する。
【００５２】
ＬＵＴ装置４１０は、ＬＵＴ装置４０８から入力を受信するよう構成される。また、ＬＵＴ装置４１０は、受信した入力を用いてルックアップ・テーブル演算を実行するよう構成される。これに関し、理解されるべき点は、ＬＵＴ装置４１０が、２進記数法表現の予め計算された残余値を有するメモリに基づくテーブル（示されない）を有することである。メモリ・テーブル（示されない）のアドレス空間は、全てのモジュロｍ、ｍ０〜ｍＭ−１に対して少なくともゼロ（０）からｍＭである。繰り返し毎に、テーブル・アドレスは、ＬＵＴ装置４０８から受信した入力を用いて決定される。テーブル・アドレスは、メモリに基づくテーブル（示されない）のテーブル・アドレスに格納された予め計算された残余値を選択するために用いられる。予め計算された残余値が選択されると、ＬＵＴ装置４１０は、同じものをマルチプレクサ４１４へ伝達する。
【００５３】
加速／減速ＭＣ４１２はマルチプレクサ４１４を制御するよう構成される。これに関し、理解されるべき点は、加速／減速ＭＣ４１２がハイ電圧制御信号及びロー電圧制御信号を生成しうることである。また、加速／減速ＭＣ４１２は、制御信号をマルチプレクサ４１４へ伝達しうる。マルチプレクサ４１４は、加速／減速ＭＣ４１２から受信した制御信号に応答して入力を選択しうる。例えば、加速／減速ＭＣ４１２がマルチプレクサ４１４へハイ制御信号を伝達する場合、マルチプレクサ４１４はマルチプレクサ４０６とマルチプレクサ４１８との間の経路４３０を生成しうる。しかしながら、加速／減速ＭＣ４１２がマルチプレクサ４１４へロー制御信号を伝達する場合、マルチプレクサ４１４はＬＵＴ４１０とマルチプレクサ４１８との間の経路４３４を生成しうる。本発明はこの点に限定するものではない。しかしながら、注意すべき点は、通信経路４３０が特定の時間ｔ（例えば、ｔ＝２）で１周期だけカオス数列を減速するために設けられることである。同様に、通信経路４３４は特定の時間ｔ（例えば、ｔ＝２）で１周期だけカオス数列を加速するために設けられる。
【００５４】
ＭＣ４１６はマルチプレクサ４１８を制御するよう構成される。これに関し、理解されるべき点は、ＭＣ４１６がハイ電圧制御信号及びロー電圧制御信号を生成しうることである。また、ＭＣ４１６は、制御信号をマルチプレクサ４１８へ伝達しうる。マルチプレクサ４１８は、ＭＣ４１６から受信した制御信号に応答して入力を選択しうる。例えば、ＭＣ４１６がマルチプレクサ４１８へハイ制御信号を伝達する場合、マルチプレクサ４１８はマルチプレクサ４１４とユニット遅延４２０との間の経路４３６を生成しうる。例えば、ＭＣ４１６がマルチプレクサ４１８へロー制御信号を伝達する場合、マルチプレクサ４１８はＬＵＴ４０８とユニット遅延４２０との間の経路４３２を生成しうる。本発明はこの点に限定するものではない。しかしながら、留意すべき点は、通信経路４３６が１周期だけカオス数列を減速又は加速するために設けられることである。同様に、通信経路４３２は、ＬＵＴ４０８からの予め計算された残余値を選択するために設けられる。つまり、カオス数列は特定の時間ｔ（例えば、ｔ＝１）で加速されない。
ユニット遅延４２０及びＬＵＴ装置４０８、４１０は、簡略化できない多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］の繰り返される計算のために帰還機構を提供する。これに関し、理解されるべき点は、ＬＵＴ装置４０８、４１０が、簡略化できない多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］のモジュロｍ０，ｍ１，．．．，ｍＭ−１を計算するために、ルックアップ・テーブル演算を実行するよう構成されたハードウェア及びソフトウェアを有することである。
【００５５】
以下の議論は、初期条件がＣＰ４００へ伝達された後に何が起こるか、及びＣＰ４００が連続出力をどのように生成するかを説明することを目的として提供される。ＩＳＲ４０２が第１の周期中にＩＣＥ４０４により選択された４２の初期値を格納する場合、ＬＵＴ４０８への初期入力は、初期条件値の多項式の計算であるＬＵＴ４０８の出力を生成する。ＬＵＴ４０８への初期入力は、前のＲＮＳ結果を表す。ＬＵＴ４０８の出力は、ＬＵＴ４０８の出力の多項式関数計算（Ｐｏｌｙｎｏｍｉｎａｌ  Ｆｕｎｃｔｉｏｎ  Ｅｖａｌｕａｔｉｏｎ：ＰＦＥ）を計算するために、ＬＵＴ４１０への入力として供給される。ＬＵＴ４０８の出力のＰＦＥは、将来の１回限りの値と等価である。２つの選択制御４１２、４１６は、計算されたＬＵＴ４０８の出力、マルチプレクサ４０６の出力、及びＬＵＴ４１０の出力の間で選択する。構成要素４０６、４１０の出力は、ＲＮＳの減速又は加速された値を表す。例えば、選択制御４１６がＬＵＴ４０８の出力を連続して選択する場合、ＩＣＥ４０４は（連続する周期の間に）ユニット遅延４０２の出力をＬＵＴ４０８への入力として連続的に選択する。長期に渡り、選択制御４１２、４１６は、周期毎に１だけ一連の展開を加速又は減速するよう操作されてもよい。
【００５６】
図４Ｂを参照すると、１又は複数のＣＰ４００が、カオス数列生成器（ＣＳＧ）４５０内に実施されうる。図４Ｂに示されるように、ＣＳＧ４５０は、計算プロセッサＣＰ４０００，．．．，４００Ｍ−１及びマッピング・プロセッサ４２２を有する。マッピング・プロセッサ４２２は、ルックアップ・テーブル４４００，．．．，４４０Ｍ−１、加算器４５２、及び切り捨て器４５４を有する。列挙された構成要素４０００，．．．，４００Ｍ−１、４５２、４５４のそれぞれは、当業者に良く知られているので、本願明細書には記載されない。しかしながら、本発明を理解するときに読者を助けるために、列挙された構成要素４０００，．．．，４００Ｍ−１、４５２、４５４の簡単な説明が提供される。
【００５７】
再び図４Ｂを参照すると、各ＣＰ４０００，．．．，４００Ｍ−１は、対応するＬＵＴ４４００，．．．，４４０Ｍ−１に結合される。ＣＰ４０００，．．．，４００Ｍ−１は、マッピング・プロセッサ４２２へ出力を伝達するよう構成される。より詳細には、ＣＰ４０００，．．．，４００Ｍ−１は、ＬＵＴ４４００，．．．，４４０Ｍ−１へ出力を伝達する。ＬＵＴ４４００，．．．，４４０Ｍ−１は、出力を所望の重み付き記数法にマッピングするためにルックアップ・テーブル演算を実行するよう構成される。また、ＬＵＴ４４００，．．．，４４０Ｍ−１は、重み付き記数法表現で表された出力を加算器４５２へ伝達するよう構成される。
【００５８】
加算器４５２は、重み付き記数法表現で表された出力を各ＬＵＴ４４００，．．．，４４０Ｍ−１から受信するよう構成される。また、加算器４５２は、加算演算を実行するよう構成されたハードウェア及びソフトウェアを有する。加算演算は、一般的に重み付き記数法表現で表された結果を結合して単一の出力を形成する段階を含みうる。また、加算器４５２は、単一の出力を切り捨て器４５４へ伝達するよう構成される。切り捨て器４５４は、加算器４５２の単一の出力により定められる重み付き記数法の数の切り捨てられた部分を識別するよう構成される。また、切り捨て器４５４は、切り捨てられた結果を外部装置（示されない）へ伝達するよう構成される。
【００５９】
図５Ａを参照すると、特定の時間ｔ（例えば、ｔ＝２）で、任意の周期数により加速及び／又は減速された数列を生成する計算プロセッサ（ＣＰ）のブロック図が示される。図５Ａに示されるように、ＣＰ５００は、初期状態レジスタ（ＩＳＲ）５２６、初期条件イネーブル（ＩＣＥ）５２８、マルチプレクサ５０４、５０８、５１４、５２０、マルチプレクサ制御部（ＭＣ）５０２、５０６、加算器５１２、促進装置５１０、比較器５１６、及び減算器５１８を有する。列挙された構成要素５０２，．．．，５２２のそれぞれは、当業者に良く知られているので、本願明細書には記載されない。しかしながら、本発明を理解するときに読者を助けるために、ＣＰ５００の簡単な議論が提供される。
【００６０】
再び図５Ａを参照すると、ＩＳＲ５２６、ＩＣＥ５２８及びマルチプレクサ５１４は、共同で、主要な／初期条件挿入装置を提供する。これに関し、理解されるべき点は、ＩＳＲ５２６が初期条件のセットを格納するよう構成されることである。また、ＩＳＲ５２６は、初期条件のセットをマルチプレクサ５１４へ伝達するよう構成される。初期条件は、当業者に良く知られているので、本願明細書には記載されない。しかしながら、理解されるべき点は、初期条件が整数値であることである。例えば、カオス数列の初期値がルックアップ・テーブル・アドレスゼロ（０）に格納される場合、初期条件はゼロ（０）に等しい整数値である。本発明はこの点に限定するものではない。
【００６１】
ＩＣＥ５２８は、マルチプレクサ５１４を制御するよう構成されたハードウェア及びソフトウェアを有する。これに関し、理解されるべき点は、ＩＣＥ５２８がハイ電圧制御信号及びロー電圧制御信号を生成しうることである。また、ＩＣＥ５２８は、制御信号をマルチプレクサ５１４へ伝達しうる。マルチプレクサ５１４は、ＩＣＥ５２８から受信した制御信号に応答して入力を選択しうる。例えば、ＩＣＥ５２８がマルチプレクサ５１４へハイ制御信号を伝達する場合、マルチプレクサ４０８はＩＳＲ５２６と加算器５１２との間の経路を生成しうる。しかしながら、ＩＣＥ５２８がマルチプレクサ５１４へロー制御信号を伝達する場合、マルチプレクサ５１４はユニット遅延５２２と加算器５１２との間の経路を生成しうる。このようなシナリオでは、前のルックアップ・テーブル・アドレスは、加算器５１２へ帰還される。本発明はこの点に限定するものではない。
【００６２】
促進装置５１０は、加算器５１２に結合される。促進装置５１０は、特定の時間情報を用いて加速−減速変数ｖを計算するよう構成された外部装置であってもよい。例えば、促進装置５１０は、現在の時間（２００８年１２月３１日の午後１２：３０）を得て、初期時間（２００７年１２月３１日の午後１２：３０）を得て、２つの時間の間の差を計算しうる。時間差が計算されると、促進装置５１０は、計算された時間（例えば、初期時間から現在の時間までの時間＝１年）の間に生じた周期数又はクロック数（例えば、１，０００，０００）を決定しうる。本発明はこの点に限定するものではない。
【００６３】
また、促進装置５１０は、決定された周期数又はクロック数（例えば、１，０００，０００）を用いて、加速−減速変数ｖを計算しうる。例えば、カオス数列生成処理が初期時間ｔで百万（１，０００，０００）周期だけ加速され、Ｐが５１１に等しい場合、促進装置５１０により提供される加速−減速変数ｖは４８４である（つまり、ｖ＝１，０００，０００ｍｏｄｕｌｏ５１１）。本発明はこの点に限定するものではない。留意すべき点は、カオス数列を任意の周期数だけ加速又は減速することが望ましいとき、促進装置５１０が、時間指数ｎで加速−減速変数ｖを提供するだけでよいことである。例えば、時間指数ｎ＝２で百万（１，０００，０００）周期だけカオス数列を加速することが望ましい場合、促進装置５１０は、時間指数ｎ＝２でのみ、加速−減速変数ｖを提供する。促進装置５１０は、全ての他の時間（例えば、ｎ＝０，１，３，４，５）で、加速−減速変数ｖを加算器５１２に提供する必要がない。本発明はこの点に限定するものではない。
【００６４】
再び図５Ａを参照すると、ＭＣ５０２、５０６及びマルチプレクサ５０４、５０８は共同で、時間制御の複数の整数ステップに対して、加速／減速制御を提供する。本発明の実施形態によると、整数ステップは、複数のゼロ（０）ステップ、１ステップ、２ステップとして選択されうる。整数の段階が複数のゼロ（０）ステップに選択されると、カオス数列は、時間指数ｎで１周期だけ減速されるだろう。整数ステップが１ステップに選択されると、カオス数列は、時間指数ｎで任意の周期数だけ加速又は減速されないだろう。整数ステップが２個のステップに選択されると、カオス数列は、時間指数ｎで１周期だけ加速されるだろう。本発明はこの点に限定するものではない。
【００６５】
これに関し、理解されるべき点は、ＭＣ５０２がマルチプレクサ５０４を制御するよう構成されることである。また、ＭＣ５０２はハイ電圧制御信号及びロー電圧制御信号を生成しうる。また、ＭＣ５０２は、制御信号をマルチプレクサ５０４へ伝達しうる。マルチプレクサ５０４は、ＭＣ５０２から受信した制御信号に応答して整数ステップの入力（例えば、０又は２）を選択しうる。選択された整数ステップの入力は、通信経路５３０に沿ってマルチプレクサ５０８へ伝達される。
【００６６】
同様に、ＭＣ５０６はマルチプレクサ５０８を制御するよう構成される。従って、ＭＣ５０６はハイ電圧制御信号及びロー電圧制御信号を生成しうる。マルチプレクサ５０８は、ＭＣ５０６から受信した制御信号に応答して整数ステップの入力（例えば、０又は０／２）を選択しうる。選択された整数ステップの入力（例えば、０、１又は２）は、通信経路５３２に沿って加算器５１２へ伝達される。
【００６７】
加算器５１２は、ユニット遅延５２２から受信した前のアドレス、マルチプレクサ５０８から受信した整数値（例えば、０、１、２）、及び／又は促進装置５１０から受信した加速−減速変数ｖを用いて加算演算を実行するよう構成される。また、加算器５１２は、加算演算の結果を、共同で限られたモジュロ演算を形成する比較器５１６、減算器５１８及びマルチプレクサ５２０へ伝達するよう構成される。減算器５１８は、加算器５１２から受信した結果及び互いに素の数ｐ−１を用いて減算演算を実行する。ここで、ｐは、モジュロｍ０，ｍ１，．．．，ｍＭ−１として選択されたｐ０，ｐ１，．．．，ｐＭ−１である。
【００６８】
比較器５１６は、加算器５１２から受信した結果を用いて比較演算を実行する。また、比較器５１６は、マルチプレクサ５２０を制御する。例えば、比較器５１６が、受信した結果は互いに素の数ｐ（例えば、モジュロｍ０，ｍ１，．．．，又はｍＭ−１として選択されたｐ０，ｐ１，．．．，又はｐＭ−１）よりも小さいと決定した場合、比較器は、結果を外部装置（示されない）へ転送するための第１の制御信号を生成しうる。或いは、比較器５１６が、受信した結果は互いに素の数ｐよりも大きいと決定した場合、比較器５１６は、減算器５１８の出力を外部装置（示されない）へ伝達するための第２の制御信号を生成しうる。
以下の議論は、初期条件がＣＰ５００に入力された後に何が起こるか、及びＣＰ５００が連続出力をどのように生成するかを説明することを目的として提供される。通常動作中、ＩＣＥ５２８は、ＩＳＲ５２６から初期条件を選択するために用いられる。実際には、ＩＣＥ５２８は、帰還機構をバイパスする。初期条件は、外部装置（示されない）内の初期条件の指数を表す整数値である。初期指数は、加算器５１２へ伝達される。加算器５１２は、周期毎に１だけ指数値を増加する。指数値の増加は、ＭＣ５０２、５０６の選択に基づく。増加された指数は、ＲＮＳ空間の最大許容値と比較される。増大された指数が最大許容値を超えたとき、全体の循環が解除される。結果として、ＲＮＳに基づく指数の精度が保たれる。指数は、繰り返される増大及び連続計算の生成の度にユニット遅延５２２を通じてマルチプレクサ５１４へ伝達される。数列を１周期だけ加速又は減速するためのコマンドが加算器５１２でＭＣ５０２、５０６から受信されたとき、時間指数は、２又は０だけ増大される。加速又は減速が１より多い多数の周期である場合、ＭＣ５０２、５０６は、複数の周期に従い時間指数を増大させるコマンドを伝達するか、又は促進装置５１０がイネーブルされる。留意すべき点は、促進装置５１０の出力の賢明且つ調整された選択を通じ、任意の状態が単一周期で得られることである。
【００６９】
図５Ｂを参照すると、１対の直交ガウス出力を生成するよう構成された１又は複数のＣＰ５００が、カオス数列生成器（ＣＳＧ）５５０内に実施されうる。図５Ｂに示されるように、ＣＳＧ５５０は、計算プロセッサＣＰ５０００，．．．，５００Ｍ−１及びマッピング・プロセッサ５３２を有する。マッピング・プロセッサ５３２は、ルックアップ・テーブル（ＬＵＴ）５３００，．．．，５３０Ｍ−１、加算器４５２、及び切り捨て器４５４を有する。列挙された構成要素４５２、４５４のそれぞれは、図４Ｂに関連して上述された。上述の説明は、各構成要素４５２、４５４を理解するのに十分である。
【００７０】
しかしながら、理解されるべき点は、ＬＵＴ５３００，．．．，５３０Ｍ−１が対応するＣＰ５０００，．．．，５００Ｍ−１から受信した入力を用いてルックアップ・テーブル演算を実行するよう構成されることである。これに関し、理解されるべき点は、ＬＵＴ５３００，．．．，５３０Ｍ−１が、予め計算されたマッピングされた残余値、つまり所望の重み付き記数法にマッピングされた予め計算された残余値を有するメモリに基づくテーブル（示されない）を有することである。ルックアップ・テーブル・アドレスは、０，１，２，３，．．．，Ｐ−１に等しい値を有する連続的に番号付けられたアドレスである。繰り返し毎に、テーブル・アドレスは、ＬＵＴ５３００，．．．，５３０Ｍ−１で受信した入力を用いて決定される。テーブル・アドレスは、メモリに基づくテーブル（示されない）のテーブル・アドレスに格納された予め計算されたマッピングされた残余値を選択するために用いられる。予め計算されたマッピングされた残余値が選択されると、ＬＵＴ５３００，．．．，５３０Ｍ−１は、同じものを加算器４５２へ伝達する。
【００７１】
上述の本発明の説明を踏まえ、本発明がハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組み合わせで実現されうることが理解されるべきである。本発明による加速又は減速されたカオス数列を生成する方法は、１つの処理システム内の中央集中方式で、又は異なる処理構成要素がいくつかの相互接続された処理システムに散在する分散方式で実現されうる。本願明細書で説明された方法を実行するのに適合された如何なるコンピュータ・システム又は他の装置でも適している。ハードウェアとソフトウェアとの標準的な組み合わせは、読み込まれ実行されているときに、コンピュータ・プロセッサが上述の方法を実行するように該コンピュータ・プロセッサを制御するコンピュータ・プログラムを有する汎用目的のコンピュータ・プロセッサでありうる。勿論、特定用途向け集積回路（ＡＳＩＣ）、及び／又はフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）も同様の結果を達成するために用いられうる。
また、本発明は、上述の方法の実施を可能にする全ての機能を有し、コンピュータ・システムに読み込まれたときに該方法を実行可能なコンピュータ・プログラムで実施されうる。本願明細書の文脈では、コンピュータ・プログラム又はアプリケーションは、すぐに又は以下のａ），ｂ）のいずれか又は両方を行った後で、システムに特定の機能を実行させる情報処理能力を持たせることを目的とした命令のセットの如何なる言語、コード又は表記法での如何なる表現も意味する。ａ）別の言語、コード、又は表記法への変換；ｂ）異なる素材形式での複製。更に、上述の説明は、単に例を目的としており、添付の特許請求の範囲を除いて本発明を如何様にも限定することを意図しない。
【図１】
2011521603.tif 000004
【図２】
2011521603.tif 000005
【図３】
2011521603.tif 000006
【図４Ａ】
2011521603.tif 000007
【図４Ｂ】
2011521603.tif 000008
【図５Ａ】
2011521603.tif 000009
【図５Ｂ】
2011521603.tif 000010
【手続補正書】
【提出日】平成22年8月6日(2010.8.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
生成されたカオス数列を用いた暗号化装置で信号を変更する方法であって：
数式ｃ  ｍｏｄｕｌｏ  ｍｉにより定められる加速−減速変数ｖをそれぞれ有する複数のＭ個の多項式を選択する段階；
所与の時間で少なくとも１周期だけカオス数列生成を促進させるため、又は該所与の時間で少なくとも１周期だけ該カオス数列生成を後退させるために、前記加速−減速変数ｖの値を選択する段階；
複数の残余値を決定するために、前記複数のＭ個の多項式及びＭ個のモジュロを用いてモジュロ算術演算を実行する段階；
前記複数の残余値に基づき、重み付き記数法の一連の数字を決定する段階；
前記信号を変更するために前記通信装置内で前記一連の数字を用いる段階；
を有し、
ｃはカオス数列生成の対象周期を表し、ｍｉは前記数式のモジュロを表し、
前記複数のＭ個の多項式は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］であり、
ｎは、時間の指数であり、
ｖは、前記加速−減速変数であり、
ｔは、初期時間オフセットを表す変数であり、
Ｔは、不連続な時間間隔である、
ことを特徴とする方法。
【請求項２】
前記決定する段階は、前記複数のＲＮＳ残余値により定められる前記重み付き記数法の数を識別する段階を更に有する、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記Ｍ個のモジュロのそれぞれに対し、異なる値を選択する段階；
を更に有する請求項１に記載の方法。
【請求項４】
定数値を除いて同一になるよう前記複数のＭ個の多項式のそれぞれを選択する段階；
を更に有する請求項１に記載の方法。
【請求項５】
Ｍの多項式が所定のモジュロに対して簡略化できないように、前記定数値を選択する段階；
を更に有する請求項４に記載の方法。
【請求項６】
カオス数列生成器であって：
少なくとも１つの処理装置を有し、
該処理装置は、
（ａ）Ｍ個の残余値を決定するために、複数のＭ個の多項式及びＭ個のモジュロを用いてモジュロ算術演算を実行し、
（ｂ）前記複数の残余値に基づき、重み付き記数法の一連の数字を決定し；
（ｃ）前記一連の数字を外部装置へ伝達し、その結果前記一連の数字を用いて信号が変更される、
よう構成され、
前記処理装置は、前記モジュロ算術演算の第１の繰り返しの間に加速−減速変数ｖの第１の値を用い、前記モジュロ算術演算の第２の繰り返しの間に前記加速−減速変数ｖの第２の値を用い、
前記第２の値は、所与の時間に少なくとも１周期だけ前記カオス数列を促進させるか、該所与の時間に少なくとも１周期だけ前記カオス数列を後退させるために選択され、
前記複数のＭ個の多項式のそれぞれは、数式ｃ  ｍｏｄｕｌｏ  ｍｉにより定められる前記加速−減速変数ｖを有し、
ｃは、カオス数列の対象周期を表し、
ｍｉは、前記数式のモジュロを表し、
前記複数のＭ個の多項式は、多項式ｆ０［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］，．．．，ｆＭ−１［ｘ（（ｎ＋ｖ＋ｔ）Ｔ）］であり、
ｎは時間の指数であり、
ｖは前記加速−減速変数であり、
ｔは初期時間オフセットを表す変数であり、
Ｔは不連続な時間間隔である、、
ことを特徴とするカオス数列生成器。
【請求項７】
前記少なくとも１つの処理装置は、前記複数のＲＮＳ残余値により定められる前記重み付き記数法の数を識別することにより、前記一連の数字を決定するよう更に構成される、
ことを特徴とする請求項６に記載のカオス数列生成器。
【請求項８】
前記モジュロ算術演算の間に前記プロセッサにより用いられる前記複数のＭ個の多項式は、定数値を除いて同一である、
ことを特徴とする請求項６に記載のカオス数列生成器。
【請求項９】
前記モジュロ算術演算の間に前記プロセッサにより用いられる前記複数のＭ個の多項式のうちの少なくとも１つは、所定のモジュロに対して簡略化できない、
ことを特徴とする請求項８に記載のカオス数列生成器。
【国際調査報告】
2011521603.tif 000011
2011521603.tif 000012
2011521603.tif 000013