説明

選択された統計的アーティファクトを有する混合基数数生成器

【課題】数列を生成するのに使用される処理をマスクする方法を提供すること。
【解決手段】この方法は、ガロア体GF[M]に含まれる第1数列を生成することを含む。この方法は、第1数列内の第1の数に対して第1変更を実行することをも含む。第1変更は、第1の数に先行する第1数列の第2の数に対して実行されるPを法とする剰余演算の結果と第1の数とを合計することを含む。Mは、Pに関して相対的に素である。この方法は、さらに、第1乱数に対して第2変更を実行することを含む。第2変更は、Pを法とする剰余演算からなる。この第2変更は、第1変更の後に実行される。この方法は、第2の数列を生成するために、第1数列を含む複数の数について第1および第2変更を繰り返すことを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明配置は、混合基数変換を使用する通信システムに関する。より具体的には、本発明配置は、選択されたガロア体GF[P]のすべての同値類上で選択された統計的特性を有する乱数列を作るために混合基数リングの生成および変換を実行する方法およびシステムに関する。
【背景技術】
【0002】
通信システムは、多数の応用例でリング生成器を含むことができる。リング生成器は、繰り返される写像を介して可能な出力を網羅的に作る有限体上の単純な構造である。この写像は、加法的写像および乗法的写像のある組合せであり、既約多項式はイデアルである。たとえば、リング生成器は、11個の要素を含む有限ガロア体GF[11]での既約多項式f(x)=3x3+3x2+xの繰り返される計算を含む。有限体またはガロア体GF[P]は、有限な個数の要素{0,1,2,…,P−1}だけを含む体である。有限体またはガロア体GF[P]は、ガロア標数Pによって定義される有限体サイズを有し、Pは、しばしば、整数論的結果に基づいて素数になるように選択される。この計算は、通常、ルックアップテーブル動作、フィードバックループ、または乗算器構造としてディジタルハードウェアで実施される。
【0003】
そのようなリング生成器の利益にかかわらず、リング生成器は、ある短所をこうむる。たとえば、リング生成器のガロア標数Pが、素数(2と等しくない)になるように選択される場合に、計算は、通常、ディジタル(2進)領域で非効率的である。また、有限体またはガロア体GF[P]で実行されるルックアップテーブル動作は、ガロア標数Pが大きい場合に、メモリ集中型である。さらに、リング生成器の出力値は、非常に決定的である。したがって、写像および現在の有限体条件の知識は、出力数列の完全な知識を与える。
【0004】
リング生成器の出力数列を意図されない再構築からマスクする1つの方法は、より大きい有効領域への全単写像を実行するアルゴリズムを介して複数のリング生成器を組み合わせることである。この組合せの例は、個々のリング生成器のガロア標数が互いに素である時の中国の剰余定理(CRT)を介するものである。もう1つの方法は、領域GF[P]から2進領域GF[2k]への混合基数変換を実行することによってリング生成器出力値を単純に切り詰めることである。これらのマスキング法の両方が、オリジナル数列を部分的にマスクするが、それでも、これらは、まだ、数列値を再エンジニアリングするのに使用できる統計的アーティファクトを提示する。暗号学では、そのような試みを、しばしば、周期攻撃(frequency attack)と呼び、これによって、個人が、統計的分析を介して擬似ランダム数列の写像および状態特性の部分的情報を得ることができる。この処理の通常の門外漢の例が、ある文字を別の文字と交換するワードパズルである。英語の知識は、EがZより優勢であるという部分的知識を与える。実際には、検索は、ブルートフォースからより論理的な検索に限定される。
【特許文献1】日本国特許出願公開第2002−297033A号
【特許文献2】米国特許第7069492号
【特許文献3】米国特許第7079651号
【特許文献4】日本国特許出願公開第2003−533752A号
【発明の開示】
【発明が解決しようとする課題】
【0005】
前述に鑑みて、ディジタル(2進)領域で計算的に効率的であり、著しい統計的アーティファクトを全く有しない、混合基数変換法の必要が残っている。また、従来のリング生成器実施態様よりハードウェア集中的ではない実施態様を有し、選択された統計的特性を有する擬似乱数列を作る、リング生成器の必要がある。さらに、非決定的に見える軌道を有するリング生成器の必要がある。
【課題を解決するための手段】
【0006】
本発明は、数列を生成するのに使用される処理をマスクする方法に関する。この方法は、生成するステップ、第1変更ステップ、および第2変更ステップを含む。生成するステップは、ガロア体GF[M]内に含まれる第1数列を生成することを含む。第1変更ステップは、第1数列内の第1の数に対して第1変更を実行することを含む。第1変更は、第1の数に先行する第1数列の第2の数に対して実行されるPを法(modulo)とする剰余演算の結果と第1の数とを合計することによって達成される。Mは、Pに関して相対的に素である。第2変更ステップは、第1の数に対して第2変更を実行することを含む。第2変更は、Pを法とする剰余演算からなる。第2変更は、第1変更の後に実行される。この方法は、さらに、第2数列を生成するために、第1数列を含む1つまたは複数の数について第1および第2の変更を繰り返すことを含む。
【0007】
本発明の態様によれば、この方法は、第2数列を用いてディジタルデータストリームを変更することを含む。生成するステップは、生成するステップに関する選択された統計的アーティファクトを含む擬似乱数列を生成することをも含む。統計的アーティファクトは、通常、第1および第2の変更ステップによってGF[P]上の乱数の一様に分布する数列を作成するように選択される。本明細書で使用される時に、「乱数の一様に分布する数列」は、数列内の各数値が完全一様分布からのランダム選択を近似し、保護空間内のすべての要素が、選択される同等の見込みを有する数列である。生成するステップは、さらに、周期的に繰り返される写像を使用することによって第1数列を網羅的に作ることを含む。この写像は、加法的写像および乗法的写像の組合せを含むように選択される。加法的写像および乗法的写像は、ガロア体GF[M]上の既約多項式の繰り返される計算を含めるために組み合わせて選択される。
【0008】
本発明のもう1つの態様によれば、この方法は、Pより大きいMの値を選択することを含む。この方法は、Pおよびp1,p2,p3,…pkを含むPの複数の素因数のすべてと互いに素であるMの値を選択することをも含む。この方法は、第2数列に対して第3変更ステップを実行することをさらに含む。第3変更ステップは、第2数列から1つまたは複数の出力数列を生成することを含む。第3変更ステップは、出力数列を生成するために第2数列内の各数に対して実行されるpを法とする剰余演算をも含む。pは、p1,p2,p3,…pkを含む群から選択される複数の値を含む。
【0009】
本発明のもう1つの実施形態によれば、第2の数は、第1の数に直接に先行する。第2の数は、n位置だけ第1の数に先行する。nは1より大きい。第2数列は、ガロア体GF[P]の複数の同値類にまたがって均等に分布する統計的アーティファクトを有する。同値類は、整数0、1、…、P−1ごとに1つの同値類を含む。
【0010】
混合基数数生成器(mixed radix number generator)も提供される。混合基数数生成器は、数生成器と混合基数アキュムレータとを含む。数生成器は、ガロア体GF[M]内に含まれる第1数列を生成するように構成される。混合基数アキュムレータは、第1数列内の第1の数に対して第1変更を実行するように構成される。第1変更は、第1の数に先行する第1数列の第2の数に対して実行されるPを法とする剰余演算の結果と第1の数とを合計することによって達成される。Mは、Pに関して相対的に素である。混合基数アキュムレータは、第1の数に対して第2変更を実行するようにも構成される。第2変更は、Pを法とする剰余演算からなる。第2変更は、第1変更の後に実行される。混合基数アキュムレータは、第2数列を生成するために、第1数列を含む複数の数について第1および第2の変更を繰り返すようにさらに構成される。
【0011】
本発明の一態様によれば、混合基数数生成器は、ディジタルデータストリームを変更するのに第2数列を使用するように構成された手段を含む。数生成器は、擬似乱数生成器からなる。擬似乱数生成器は、第1数列の生成に関する統計的アーティファクトを含む擬似乱数列を生成する。統計的アーティファクトは、混合基数アキュムレータによって除去される。数生成器は、周期的に繰り返される写像を使用することによって第1数列を網羅的に作るようにも構成される。この写像は、加法的写像および乗法的写像の組合せを含む。組み合わされた加法的写像および乗法的写像は、ガロア体GF[M]上の既約多項式の繰り返される計算を含む。MはPより大きい。Mの値は、Pおよびp1,p2,p3,…pkを含むPの複数の素因数のすべての値に関して互いに素である。
【0012】
本発明のもう1つの態様によれば、混合基数数生成器は、1つまたは複数の算術演算子ユニットからなる。算術演算子ユニットのそれぞれは、第2数列に対して第3変更を実行するように構成される。算術演算子ユニットは、第2数列から1つまたは複数の出力数列を生成するように構成される。第3変更は、出力数列を生成するために第2数列内の各数に対して実行されるpを法とする剰余演算を含む。pは、p1,p2,p3,…pkを含む群から選択される複数の値を含む。
【0013】
第2の数は、n位置だけ第1の数に先行する。nは1より大きい。第1数列は、ガロア体GF[M]によって定義される有限の個数の要素Mに制限される。本発明のもう1つの態様によれば、第2の数は、1位置だけ第1の数に先行する。第2の数列は、ガロア体GF[P]の複数の同値類にまたがって均等に分布する統計的アーティファクトを有する。同値類は、整数0、1、…、P−1ごとに1つの同値類を含む。
【0014】
本発明のもう1つの態様によれば、第1数列は、その計算が等しいサイズのガロア体の中で第2数列に対して実行されるフィルタ構造によって操作される。このフィルタの結果は、第1数列の後続の値と組み合わせるために提示される。本明細書で使用される時に、「フィルタ」は、入力の以前の連続の時間加重和である出力を有する数学的構造を意味する。
【0015】
実施形態を、図面を参照して説明するが、図面では、類似する符号が、複数の図面を通じて類似する要素を表す。
【発明を実施するための最良の形態】
【0016】
ここで図1を参照すると、本発明を理解するのに有用な、従来の混合基数変換アルゴリズムの概念図が示されている。通信システムでは、さまざまなアルゴリズムが、数列をデータストリームと組み合わせるのに使用される。この組合せ処理は、通信リンクを介する伝送の前にデータストリームを暗号化するかマスクするために実行することができる。そのようなアルゴリズムには、ガロア体GF[M]基数で数列の各数を表す剰余数系(RNS)演算を含めることができる。有限体またはガロア体GF[M]は、ガロア標数Mによって定義される有限体サイズを有する。ガロア体GF[M]は、有限の個数の要素{0,1,2,…,M−1}だけを含む体である。したがって、有限体またはガロア体で実行されるすべての算術演算は、その体に含まれる要素をもたらす。したがって、ガロア体GF[M]演算の結果の数列は、(M+1)番目の要素おきに繰り返す可能性がある。これらのRNS演算は、当業者に周知であり、したがって、本明細書では詳細には説明しない。しかし、これらのRNS演算が、混合基数変換を必要とする可能性があることを理解されたい。用語「混合基数変換」は、本明細書で使用される時に、第1基数(または基)から第2基数(または基)への数列の変換を指す。たとえば、ガロア体GF[7]基数で表された数列は、図1に示されているようにガロア体GF[3]基数で表された数列に変換される。通常、混合基数変換は、宛先基が開始基より小さく、開始基を均等に分割しない時に、必ず、統計的アーティファクトを生じる。
【0017】
混合基数変換アルゴリズムには、中国の剰余定理に基づく計算を含めることができる。中国の剰余定理は、当業者に周知であり、したがって、本明細書では詳細には説明しない。しかし、これらの計算が、複数の小さい基数(または基)で表された数を一意に組み合わせるために実行されることを理解されたい。この組合せは、しばしば、写像演算を介して達成される。中国の剰余定理の写像演算は、小さい基数(または基)で表された数のそれぞれを大きい基数で表された数に写像することを伴う。
【0018】
特筆すべきことに、第1のガロア体GF[M1]基数から第2のガロア体GF[M2]基数への数列変換から生じる統計分布には、2つの基数が均等に分割可能でない時に、統計的非一様性がある。たとえば、ガロア体GF[7]基数で表された乱数列が、ガロア体GF[3]基数で表された数列に写像される。ガロア体GF[7]基数で表された乱数列は、要素{0,1,2,…,6}の集合によって定義される。同様に、ガロア体GF[3]基数で表された数列は、要素{0,1,2}の集合によって定義される。ガロア体GF[7]基数で表された数列のガロア体GF[3]基数で表された数列への写像は、一般に、各要素{0,1,2,…,6}をそれに対応する同値類の3を法とする剰余によって分割することを伴う。ガロア体GF[3]は、有限の個数の要素{0,1,2}だけを含む有限体なので、整数0、1、および2の対応する同値類がある。
【0019】
ガロア体GF[7]からの要素のガロア体GF[3]の要素への写像演算を、次の表(1)にリストする。
【0020】
【表1】

表1に示されているように、写像演算は、ガロア体GF[3]での要素の非一様分布をもたらす。具体的に言うと、写像演算の結果の数列は、{0 1 2 0 1 2 0}と定義される。整数0に関する、同値類のガロア体GF[7]からの3つの要素{0,3,6}がある。整数1に関する、同値類のガロア体GF[7]からの2つの要素{1,4}がある。整数2に関する、同値類のガロア体GF[7]からの2つの要素{2,5}がある。
【0021】
統計分析を利用することによって、外部当事者が、従来の混合基数変換アルゴリズム(上で図1に関して説明した)を実施するシステムから部分的情報を得ることができ、写像演算の結果の数列によって変更されたデータストリームからオリジナル数列をより簡単に識別することができる。たとえば、2つの基数のサイズがわかれば、攻撃者は、さまざまな同値類の要素の統計的比率を使用して、変更されたデータストリームからオリジナル数列をより簡単に識別することができる。さらに、データメッセージフォーマットの知識は、統計的に有意な形で、乱数列の統計的アーティファクトと一致する。実際には、より多くの情報が、データメッセージ内容で提供される。本明細書で使用される時に、用語「統計的に有意」は、ある情報の有効性の数学的な確実さを指す。したがって、混合基数変換アルゴリズムによって導出される結果から統計的アーティファクトを除去し、その結果、変更されたデータストリームからのオリジナル数列の識別が相対的にむずかしくなるようにすることが、望ましい。
【0022】
したがって、本発明のいくつかの実施形態は、混合基数変換における望まれない統計的アーティファクトを除去する方法を提供する。1つの方法は、一般に、統計的アーティファクトをガロア体GF[P]のすべての同値類にまたがって均等に拡散することを含む。この統計的アーティファクトの均等な分布は、混合基数リング生成器処理を使用することによって達成することができる。この処理は、(1)ガロア体GF[M]によって定義されるリングを利用して第1乱数列を生成することと、(2)Pを法とする剰余演算を介して以前に計算された剰余を加算することによって第1乱数列の各乱数を変更することと、(3)変更された乱数を利用して第2乱数列を生成することとを含む。第2乱数列は、Pを法とする剰余演算を利用しても生成される。第2乱数列は、ガロア体GF[P]のすべての同値類にまたがって均等に分布する統計的アーティファクトを含む。
【0023】
そのような混合基数数生成器処理が、所望の統計的特性の無条件の厳守ではなく、所望の統計的特性の確率的厳守を提供することを理解されたい。用語「確率的厳守」は、イデアルに収束する挙動を指す。用語「無条件の厳守」は、数学的証明によって提供される保証のレベルを指す。そのような混合基数数生成器処理を、さまざまな通信システムアプリケーションで使用できることをも理解されたい。たとえば、そのような混合基数数生成器処理を、データストリームを変更するために暗号系で実施することができる。そのようなシナリオでは、混合基数数生成器処理は、高められたセキュリティ特徴を暗号系に提供する。この混合基数数生成器処理が、性質において非常に非決定的に見える乱数列を作ることに留意されたい。剰余換算(modulo reduction)を実行する際に、オリジナル数列からの情報は、意図的に破壊される。効果的に、意図されない再構築が、よりむずかしくなる。
【0024】
これから、本発明を、添付図面を参照して以下でより十分に説明するが、添付図面には、本発明の例示的実施形態が示されている。しかし、本発明を、多数の異なる形で実施することができ、本明細書に示された実施形態に限定されると解釈してはならない。たとえば、本発明を、方法、データ処理システム、またはコンピュータプログラム製品として実施することができる。したがって、本発明は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、またはハードウェア/ソフトウェア実施形態としての形をとることができる。
【0025】
ここで図2を参照すると、統計的アーティファクトをガロア体GF[P]のすべての同値類にまたがって均等に拡散するのに有用な混合基数数生成器構造の概念図が示されている。図2に示されているように、混合基数リング生成器処理は、乱数生成器202での乱数列の生成から開始される。この乱数列は、標数Mのガロア体で生成される擬似乱数列または擬似無秩序数列とすることができるが、これらに限定はされない。そのような数列は、最も簡単に、ガロア体GF[M]から選択されるランダム要素の数列とみなすことができる。ガロア体GF[M]から標数Pの所望のガロア体へ要素を写像するために、ガロア体標数Mは、ガロア体標数Pに対して相対的に素になるように選択される。用語「相対的に素」は、本明細書で使用される時に、1の最大公約数を有する数の集合を指す。
【0026】
乱数列が、加算器204に通信される。上で説明した(図1に関して)統計的異常を打ち消すために、Pを法とする剰余演算の以前の出力を、フィードバック構造を介してガロア体GF[M]からの次の入力に加算する。このフィードバック構造は、遅延ユニット205を含む。次に、この加算演算からの結果を、Pを法とする剰余演算子206に通信する。Pを法とする剰余演算子206は、加算演算からの結果に対してPを法とする演算を実行して、出力値を生成する。その後、Pを法とする剰余演算子の出力は、次の加算入力として使用され、効果的にGF[M]のリング構造全体を回転する。実際に、累積的統計偏差は、回転が定常状態値に収束するので、大幅に目立たなくなる。ガロア体GF[P]から多数のそのようなサンプルを取ることが、統計的異常をすべての同値類にまたがって均等に分布させ、出力分布を一様分布の分布に戻すことを統計的に示すことは、簡単である。追加のオプションは、収束における固定点がないことを保証するために、フィードバック経路の回転に加えて定数回転(理想的には、Pより小さく{M,P}と互いに素である値)を誘導することである。数学的語法では、「固定点」とは、数学演算子の入力と出力との両方で同一のままであり、その演算子の繰り返される適用が固定値をもたらすようにする点である。たとえば、0は、伝統的な乗算演算子の固定点である。というのは、どの数に0をかけても0になるからである。
【0027】
少数の数値の例が、この収束がどのように働くかを知るのを助ける可能性がある。
【0028】
例1
M=5×7=35、p=3であり、ユニット遅延の初期条件値が0であるものとする。ユニット遅延の初期条件(初期出力値)を、その代わりに0、1、または2のうちのいずれにもすることができることに留意されたい。上で説明したフィードバック機構がない場合に、Pを法とする剰余演算の出力が、ガロア体GF[P]内の統計的アーティファクトを有する値のストリームであることに留意されたい。乱数生成の出力の分布が、真に一様である場合に、ガロア体GF[P]の最初の2つの同値類は、第3の同値類より1要素だけ大きい。これは、35 modulo 3=(3×11+2) modulo 3=2 modulo 3の計算から簡単にわかる。図2のフィードバック(すなわち、遅延)は、同値類の3つすべてに関するガロア体GF[P]内のこの統計的非一様性を拡散する。
【0029】
最初の乱数生成の出力が、{23 8 19 31 0 6 13 21 21 …}と定義されるストリームである場合に、フィードバックなしの3を法とする剰余演算の対応する出力は、[2 2 1 1 0 0 1 0 0 …]になる。この事例での複数の入力が、同一の出力に写像され、これが、逆写像をよりむずかしくすることに留意されたい。図2に示されたユニット遅延フィードバックを有する、3を法とする剰余演算の出力は、{2 1 2 0 0 0 1 1 1 …}である。この小さいスケールでの数の相違は、無視できるように見えるが、それでも、フィードバックは、GF[P]の同値類に関する混合基数変換の非一様性を拡散している。
【0030】
より従来のシステムと共に存在できる非一様性と、図2で説明した配置を用いて得られる改善とを十分に了解するために、図2の乱数生成器202が、GF[M]の1000000個のランダムに選択された出力を生成するシナリオを検討されたい。ガロア体GF[P]は、ガロア体GF[3]になるように選択される。第1の乱数列は、ガロア体GF[M]からランダムに選ばれた100万(1000000)個の要素からなる。従来の混合基数変換アルゴリズム(上で図1に関して説明した)が使用される場合に、写像演算は、ガロア体GF[3]にまたがる要素の非一様分布をもたらす。MATLAB(登録商標)シミュレーションから得られたこれらの写像演算の結果を示すグラフを、図3Aに示す。MATLAB(登録商標)は、一般的な数値シミュレーションおよび分析ツールである。このグラフは、要素0および1が、値2と比較してより頻繁に出力に現れることを示す。混合基数数生成器処理(上で図2に関して説明した)が、1の固定回転オフセットと共に使用される場合に、統計的アーティファクトは、ガロア体GF[3]のすべての同値類にまたがってほぼ均等に拡散される。MATLAB(登録商標)シミュレーションから得られた図2の混合基数数生成器処理の結果を示すグラフを、図3Bに示す。図3Bのグラフは、出力数列での要素0、1、および2の一様分布を示す。
【0031】
混合基数数生成器法
ここで図4を参照すると、統計的アーティファクトをガロア体GF[P]のすべての同値類にまたがって均等に拡散する混合基数数生成器法400の流れ図が示されている。この流れ図は、図2に示された概念の代替表現である。図4に示されているように、方法400は、ステップ402で開始され、ステップ404に継続する。ステップ404では、比較的大きい第1ガロア体GF[M]を選択する。MおよびPの相対サイズは、任意の値をとることができ、本願で説明される統計的特性を保持する。Mの値は、通常、Pより数桁大きくなるように選択されるが、これは、実施形態が正しく機能するための要件ではない。ステップ404は、第1ガロア体GF[M]より小さい第2ガロア体GF[P]を選択することをも含む。ステップ404は、さらに、ガロア体標数Pに関して互いに素になるようにガロア体標数Mを選択することを含む。用語「互いに素」は、本明細書で使用される時に、1を除く整数の公約数を有しない複数の整数を指す。
【0032】
ステップ404の後に、方法400はステップ406に継続する。ステップ406では、相対的に大きいガロア体GF[M]によって定義されるリング構造を利用して、第1乱数列を生成する。それでも、本発明は、これに関して限定されない。たとえば、第1乱数列を、穴をあけられたガロア体GF’[M]によって定義されるリング構造を利用して生成することもできる。本明細書で使用される時に、用語「穴をあけられた」は、所望の標数の整数倍数を超える少なくとも1つの要素がガロア体GF[M]内で破棄されていることを意味する。
【0033】
もう一度図4を参照すると、第1乱数列は、乱数RN1,RN2,…,RNNを含む。この乱数列は、擬似乱数列または擬似無秩序数列とすることができる。これに関して、乱数生成器(RNG)を、相対的に大きいガロア体GF[M]または穴をあけられたガロア体GF’[M]上で乱数列を生成するのに使用できることを理解されたい。RNGは、当業者に周知であり、したがって、本明細書では詳細には説明しない。しかし、当技術分野で既知のどのRNGでも、制限なしに使用できることを理解されたい。
【0034】
その後、方法400は、ステップ408に継続する。ステップ408および後続のステップ410(下で説明する)は、集合的に、混合基数変換の望まれない統計的アーティファクトを除去する手段を提供する。また、ステップ408および後続のステップ410(下で説明する)は、集合的に、統計的アーティファクトをガロア体GF[P]のすべての同値類にまたがって均等に拡散する手段を提供する。この統計的アーティファクトの均等な分布は、所望の統計的特性すなわちガロア体GF[P]にまたがるガロア体GF[M]からの要素の一様分布の確率的厳守を提供する。さらに、ステップ408および後続のステップ410(下で説明する)は、集合的に、ガロア体GF[P]の同値類にまたがって選択された統計的アーティファクトを誘導する手段をも提供する。
【0035】
ステップ408で、算術演算を実行して、第1乱数列の各乱数RN1,RN2,…,RNNを、Pを法とする剰余演算の結果と組み合わせる。Pは、ガロア体GF[P]のガロア体標数である。Pを法とする剰余演算は、第1乱数列の先行する乱数RN1,RN2,…,RNNを利用する。算術演算は、一般に、数式(1)から(4)によって定義することができる。
RN1’=RN1+0 (1)
RN2’=RN2+RN1’ modulo P (2)
RN3’=RN3+RN2’ modulo P (3)
……
RNN’=RNN+RNN-1’ modulo P (4)
ここで、RN1’は、1番目の算術演算から導出された変更された1番目の乱数である。RN2’は、2番目の算術演算から導出された変更された2番目の乱数である。RN3’は、3番目の算術演算から導出された変更された3番目の乱数である。RNN’は、N番目の算術演算から導出された変更されたN番目の乱数である。RNN-1’は、最後から2番目の算術演算から導出された最後から2番目の変更された乱数である。RN1は、第1乱数列の1番目の乱数である。RN2は、第1乱数列の2番目の乱数である。RN3は、第1乱数列の3番目の乱数である。RNNは、第1乱数列の最後の乱数である。Pは、ガロア体GF[P]の有限体サイズを定義する正の整数になるように選択された値を有する係数である。
【0036】
ステップ408の代替実施形態は、第1乱数列の各乱数RN1,RN2,…,RNNを、Pを法とする剰余演算の結果に固定オフセットを加えたものと組み合わせることである。Pは、ガロア体GF[P]のガロア体標数である。Pを法とする剰余演算は、第1乱数列の先行する乱数RN1,RN2,…,RNNを利用する。この算術演算は、一般に、数式(5)から(8)によって定義することができる。
RN1’=RN1+C (5)
RN2’=RN2+RN1’+C modulo P (6)
RN3’=RN3+RN2’+C modulo P (7)
……
RNN’=RNN+RNN-1’+C modulo P (8)
ここで、RN1’は、1番目の算術演算から導出された変更された1番目の乱数である。RN2’は、2番目の算術演算から導出された変更された2番目の乱数である。RN3’は、3番目の算術演算から導出された変更された3番目の乱数である。RNN’は、N番目の算術演算から導出された変更されたN番目の乱数である。RNN-1’は、最後から2番目の算術演算から導出された最後から2番目の変更された乱数である。RN1は、第1乱数列の1番目の乱数である。RN2は、第1乱数列の2番目の乱数である。RN3は、第1乱数列の3番目の乱数である。RNNは、第1乱数列の最後の乱数である。Pは、ガロア体GF[P]の有限体サイズを定義する正の整数になるように選択された値を有する係数である。Cは、すべての固定点を除去する形で有効出力を回転するように選択される任意の定数である。
【0037】
ステップ408の後に、方法400はステップ410に継続する。ステップ410が、第2乱数列を生成するために実行されることを理解されたい。この第2乱数列は、第2ガロア体GF[P]のすべての同値類にまたがって均等に分布する統計的アーティファクトを有する。ステップ410は、ステップ408で実行された算術演算から導出された変更された乱数RN1’,RN2’,RN3’,…,RNN’を利用して算術演算を実行することを含む。
【0038】
これらの算術演算は、数式(9)から(12)によって定義することができる。
1=RN1’ modulo P (9)
2=RN2’ modulo P (10)
3=RN3’ modulo P (11)
……
N=RNN-1’ modulo P (12)
ここで、R1は、1番目の算術演算から導出された結果である。R2は、2番目の算術演算から導出された結果である。R3は、3番目の算術演算から導出された結果である。RNは、最後の算術演算から導出された結果である。RN1’は、ステップ408で実行された1番目の算術演算から導出された変更された1番目の乱数である。RN2’は、ステップ408で実行された2番目の算術演算から導出された変更された2番目の乱数である。RN3’は、ステップ408で実行された3番目の算術演算から導出された変更された3番目の乱数である。RNN’は、ステップ408で実行されたN番目の算術演算から導出された変更されたN番目の乱数である。Pは、ガロア体GF[P]の有限体サイズを定義する正の整数になるように選択された値を有する係数である。結果R1,R2,…,RNのそれぞれが、ガロア体GF[P]からの要素{0,1,2,…,P−1}であることを理解されたい。第2乱数列が、乱数の集合すなわちR1,R2,…,RNによって定義されることを理解されたい。
【0039】
図4をもう一度参照すると、方法400は、ステップ412に継続する。ステップ412で、方法400が終了する。方法400が、従来の混合基数変換の望まれない統計的アーティファクト除去する1つの方法であることを理解されたい。しかし、本発明は、これに関して限定されず、統計的アーティファクトをガロア体GF[P]のすべての同値類にまたがって均等に拡散するように構成された任意の他の混合基数数生成器法を、制限なしに使用することができる。
【0040】
データストリームを変更する方法
ここで図5を参照すると、本発明を理解するのに有用な、データストリームを変更する従来の方法500の流れ図が示されている。図5に示されているように、方法500は、ステップ502で開始され、ステップ504に継続する。ステップ504で、乱数列を生成する。この乱数の数列が、比較的大きいガロア体GF[M]内に含まれることを理解されたい。乱数列を生成した後に、ステップ506が実行され、ここで、乱数列の一部を選択する。
【0041】
ステップ506の後に、方法500は、ステップ508に継続する。ステップ508では、乱数列の一部を入力データストリームと組み合わせ、これによって入力データストリームを変更する。これに関して、乱数列の一部が、入力データストリームのサイズ以上のサイズを有すること、すなわち、これらが同一の基数(または基)で表される場合である、を理解されたい。したがって、方法500を、それ相応に変更することができる。たとえば、方法500に、ステップ508の前に変換ステップを含めることができる。この変換ステップは、入力データストリームがサイズGF[n]またはGF[n/d]である場合に、乱数列の一部をサイズGF[M]からサイズnに変換することを含むことができ、ここで、dは、nの偶数の約数である。その後、ステップ510が実行され、ここで方法500が終了する。
【0042】
理解されるとおり、比較的大きいガロア体GF[M]は、変換方法500にある度合のセキュリティを提供する。これに関して、ガロア体GF[M]が、有限の個数の要素{0,1,2,…,M−1}だけを含む体であることを了解されたい。ガロア体GF[M]は、ガロア標数Mによって定義される有限体サイズを有する。したがって、出力数列が、M番目の要素おきに繰り返す可能性がある。この繰返し挙動は、相関を生じる可能性があり、これによって、Mが小さい場合に、変更されたデータストリームの復号が比較的簡単になる。その結果、比較的大きいガロア体GF[M]を選択することが望ましい。
【0043】
乱数列の一部を選択することも、変換方法500にある度合のセキュリティを提供することをも了解されたい。たとえば、ある乱数列が、ガロア体GF[M]上で生成される。この例では、この乱数列が、500ビットを含むと仮定する。乱数列の一部が、500ビットのうちの16ビットだけを含むように選択される。データストリームを変更するのに、この乱数列のうちの16ビットだけを使用することによって、この乱数列を生成するのに使用されたガロア体GF[M]を判定することが、よりむずかしくなる。それでも、この方法のセキュリティをさらに高めることが望ましい。
【0044】
ここで図6を参照すると、通信システムのセキュリティを高める方法600が示されている。図6に示されているように、方法600は、ステップ602で開始され、ステップ604に継続する。ステップ604で、比較的大きいガロア体GF[M]を選択する。理解されるとおり、大きいガロア体は、通信システムの攻撃者が、オリジナル乱数列の生成に使用されたガロア体GF[M]を、変更されたデータストリームから判定できる可能性を最小にすることができる。実際には、大きいガロア体GF[M]は、方法600を実施する通信システムに、ある度合のセキュリティを提供することができる。別の形で言えば、乱数列のセキュリティは、主に、出力値のダイナミックレンジ(ビット数または桁数)およびみかけのランダムさによって定義される。
【0045】
その後、ステップ606が実行され、ここで、第1乱数列を、ガロア体GF[M]によって定義されるリング構造を利用して生成する。それでも、本発明は、これに関して限定されない。たとえば、第1乱数列を、穴をあけられたガロア体GF’[M]によって定義されるリング構造を利用して生成することもできる。この数列の各乱数は、ガロア体GF[M]または穴をあけられたガロア体GF’[M]の要素によって定義される。ステップ608で、第1乱数列の一部を選択する。このステップは、方法600を実施する通信システムに、高い度合のセキュリティを提供する。これに関して、乱数列の一部だけが入力データストリームを変更するのに使用される場合に、ガロア体GF[M]を判定することが、よりむずかしくなることを了解されたい。
【0046】
ステップ610も、第2乱数列を生成するために算術演算を実行することを含む。この第2乱数列は、第2ガロア体GF[P]のすべての同値類にまたがって均等に分布する統計的アーティファクトを有する。本発明の好ましい実施形態によれば、これらの算術演算は、上で図2に関して説明した混合基数数生成器処理とすることができる。それでも、本発明がこれに関して限定されないことを了解されたい。任意の他の適切な技法を、この目的に使用することができる。
【0047】
もう一度図6を参照すると、方法600は、ステップ612に継続する。ステップ612では、第2乱数列を、乗算器などのデバイスに通信する。第2乱数列を入力データストリームと組み合わせて、変更されたデータストリームを形成する。入力データストリームは、サイズGF(n)またはGF(n/d)を有し、ここで、dは、nの偶数の約数である。これに関して、第2乱数列および入力データストリームが、同一のサイズを有する、すなわち、これらが、同一の基数(または基)で表され、同一の桁数を含むことを理解されたい。その後、ステップ616が実行され、ここで方法600が終了する。
【0048】
当業者は、方法600が、通信システムのセキュリティを高める1つの方法であることを了解するであろう。しかし、本発明は、これに関して限定されず、本発明を実施する任意の他の方法を、制限なしに使用することができる。
【0049】
ハードウェア実施態様
従来の混合基数変換アルゴリズムの望まれない統計的アーティファクトを除去する方法400(上で図4に関して説明した)を実施するさまざまな形がある。たとえば、混合基数数生成器方法400を、図2に示されたものに似た混合基数アキュムレータ配置を利用して実施することができる。混合基数数生成器を、データストリームを変更するために通信システムおよび/または暗号系内に配備することができる。そのようなシナリオでは、混合基数数生成器は、高められたセキュリティ特徴を通信システムおよび/または暗号系に提供することができる。そのような混合基数数生成器を、以下で図7に関して説明する。
【0050】
ここで図7を参照すると、混合基数数生成器700のブロック図が示されている。混合基数数生成器700は、乱数生成器702、混合基数アキュムレータ750、および外部デバイス710からなる。乱数生成器702は、リング生成器、穴をあけられたリング生成器、またはカオス生成器(chaos generator)とすることができるが、これらに限定はされない。乱数生成器702がリング生成器である場合に、乱数生成器702は、ガロア体GF[M]によって定義されるリング構造を利用して乱数列を生成するように構成されたハードウェアおよび/またはソフトウェアからなる。乱数生成器が穴をあけられたリング生成器である場合に、乱数生成器702は、穴をあけられたガロア体GF’[M]によって定義されるリング構造を利用して乱数列を生成するように構成されたハードウェアおよび/またはソフトウェアからなる。したがって、乱数生成器702の出力を、ガロア体GF[M]からのランダム要素または穴をあけられたガロア体GF’[M]からのランダム要素とすることができる。ガロア体GF[M]または穴をあけられたガロア体GF’[M]から所望のガロア体標数Pに要素を写像するために、ガロア体標数Mは、ガロア体標数Pに対して相対的に素になるように選択される。また、ガロア体標数Mは、ガロア体標数Pより大きくなるように選択される。
【0051】
また、乱数生成器702は、乱数列の乱数を混合基数アキュムレータ750に通信するように構成されたハードウェアおよび/またはソフトウェアからなる。混合基数アキュムレータ750は、第2乱数を生成するために算術演算を実行するように構成される。この算術演算は、乱数生成器702から受け取られた乱数を利用して剰余値を計算することを含む。したがって、混合基数アキュムレータ750は、加算器704、算術演算子706、および遅延708からなる。
【0052】
加算器704は、乱数生成器702から乱数を受け取り、遅延708(以下で説明する)から時間遅延された剰余を受け取るように構成されたハードウェアおよび/またはソフトウェアからなる。また、加算器704は、乱数生成器702から受け取られた乱数および遅延708(以下で説明する)から受け取られた時間遅延された剰余を使用して加算演算を実行するように構成されたハードウェアおよび/またはソフトウェアからなる。また、加算器704は、この加算演算の和を算術演算子706に通信するように構成されたハードウェアおよび/またはソフトウェアからなる。
【0053】
算術演算子706は、算術演算を実行するように構成されたハードウェアおよび/またはソフトウェアからなる。この算術演算には、モジュロ演算を実行することを含めることができる。モジュロ演算は、当業者に周知であり、したがって、本明細書では詳細には説明しない。しかし、モジュロ演算を、一般に、数式R=S modulo Pによって定義できることを了解されたい。ここで、Rは、モジュロ演算から導出される剰余である。Sは、算術演算子706に入力される乱数である。Pは、ガロア体GF[P]の有限体サイズを定義する正の整数になるように選択される値を有する係数である。剰余Rが、ガロア体GF[P]からの要素であることを理解されたい。
【0054】
算術演算子706は、さらに、剰余Rを外部デバイス710および遅延708に通信するように構成されたハードウェアおよび/またはソフトウェアからなる。外部デバイス710は、剰余を入力データまたはディジタルデータストリームと組み合わせるように構成されたコンバイナとすることができる。たとえば、外部デバイスは、本発明の一実施形態で乗算器である。遅延708は、算術演算子706から受け取られた剰余Rをz-NクロックサイクルまたはNクロックサイクルだけ遅延させるように構成されたハードウェアおよびソフトウェアからなり、ここで、z-1は、1サンプルクロック周期遅延または単位遅延であり、Nは、正の整数値である。z-Nは、Nクロック周期遅延である。たとえば、遅延708は、剰余Rを1クロックサイクルだけ遅延させるように構成される。それでも、本発明はこれに関して限定されない。
【0055】
当業者は、混合基数数生成器700が、本発明を実施する混合基数数生成器の1つのアーキテクチャであることを了解するであろう。しかし、本発明はこれに関して限定されず、本発明を実施する任意の他の混合基数数生成器アーキテクチャを、制限なしに使用することができる。
【0056】
図1〜7に関して説明した混合基数数生成器の方法およびシステムが、数Pのサイズまたは構成に関して限定されないことを理解されたい。たとえば、Pは、Pがp1・p2・,…,・pkの積と等しくなるように選択することができ、ここで、k個の係数のすべてが、Mおよび互いに関して互いに素である。この系の標数は、k個の個々の出力を提供する、ある種の代替実施形態を容易にすることができ、このk個の個々の出力のそれぞれは、上で図1〜7に関して説明した系と比較して、類似する統計的挙動を提供することができる。そのような混合基数数生成器を、図8に示す。
【0057】
複数の出力を有する混合基数アキュムレータ
ここで図8を参照すると、複数の出力を供給する混合基数数生成器800の代替実施形態のブロック図が示されている。混合基数数生成器800は、乱数生成器802および混合基数アキュムレータ850からなる。乱数生成器802は、リング生成器、穴をあけられたリング生成器、またはカオス生成器とすることができるが、これらに限定はされない。乱数生成器802がリング生成器である場合に、乱数生成器802は、ガロア体GF[M]によって定義されるリング構造を利用して乱数列を生成するように構成されたハードウェアおよび/またはソフトウェアからなる。乱数生成器が穴をあけられたリング生成器である場合に、乱数生成器802は、穴をあけられたガロア体GF’[M]によって定義されるリング構造を利用して乱数列を生成するように構成されたハードウェアおよび/またはソフトウェアからなる。したがって、乱数生成器802の出力を、ガロア体GF[M]からのランダム要素または穴をあけられたガロア体GF’[M]からのランダム要素とすることができる。
【0058】
ガロア体GF[M]または穴をあけられたガロア体GF’[M]から所望のガロア体標数Pに要素を写像するために、ガロア体標数Mは、ガロア体標数Pに対して相対的に素になるように選択され、Pは、p1・p2・,…,・pkの積と等しい。また、ガロア体標数Mは、ガロア体標数Pの係数p1・p2・,…,・pkと互いに素になるように選択される。ガロア体標数Mは、さらに、ガロア体標数Pより大きくなるように選択される。
【0059】
また、乱数生成器802は、乱数列の乱数を混合基数アキュムレータ850に通信するように構成されたハードウェアおよび/またはソフトウェアからなる。混合基数アキュムレータ850は、混合基数アキュムレータ750に類似し、類似する機能を実行する構成を有利に有する。これに関して、この混合基数アキュムレータは、第2乱数を生成するために算術演算を実行するように構成される。この算術演算は、乱数生成器802から受け取られた乱数を利用して剰余値を計算することを含む。したがって、混合基数アキュムレータ850は、加算器804および遅延808からもなる。
【0060】
乱数生成器802は、複数の算術演算子8101、8102、…810kをも含む。算術演算子8101、8102、…810kのそれぞれは、算術演算を実行するように構成されたハードウェアおよび/またはソフトウェアからなる。この算術演算には、モジュロ演算を実行することを含めることができる。好ましい実施形態によれば、モジュロ演算は、数式R=modulo pによって定義され、Rは、算術演算子806によって実行されたモジュロ演算から導出される剰余であり、pは、ガロア体標数Pの係数p1,p2,…,・pkのうちの1つである。また、算術演算子8101、8102、…810kのそれぞれは、k個の出力のうちの1つを作るように構成されたハードウェアおよび/またはソフトウェアからなる。算術演算子8101、8102、…810kのそれぞれは、ガロア体GF[p1-k]の要素を出力として供給し、この出力は、外部デバイス(図示せず)に転送することができる。外部デバイスは、剰余を入力データと組み合わせるように構成された任意のデバイスとすることができる。たとえば、一実施形態で、外部デバイスは、乗算器である。より重要なことに、算術演算子8101、8102、…810kからのk個の出力のうちの1つとして供給される各数列は、望まれない統計的アーティファクトがない、一様に分布する出力を有する。
【0061】
当業者は、混合基数数生成器800が、本発明を実施する混合基数数生成器の1つのアーキテクチャであることを了解するであろう。しかし、本発明はこれに関して限定されず、本発明を実施する任意の他の混合基数数生成器アーキテクチャを、制限なしに使用することができる。1つのそのような実施形態によれば、遅延808を有限インパルス応答(FIR)フィルタまたは無限インパルス応答(IIR)フィルタに置換することができ、この場合に、すべての演算が、変更されたGF算術を使用して実行される。
【0062】
混合基数数生成器の複数レート実施態様
ここで図9を参照すると、本発明の第2の代替実施形態が示されている。第2の代替実施形態は、混合基数数生成器900の複数レート実施態様である。複数レート実施態様は、乱数生成器からの出力を周期的にサンプリングすること、または所望の出力の集合と比較してより高いレートでそのような出力をサンプリングすることのいずれかを含むことができる。やはり、これは、観察者が簡単には再構築できない値の累積につながる。
【0063】
図9に示されているように、混合基数数生成器900は、乱数生成器902および混合基数アキュムレータ950からなる。乱数生成器902および混合基数アキュムレータ950は、上で図8に関して説明した対応する構造802、850に類似する。したがって、混合基数アキュムレータ950も、加算器908および遅延918からなるものとすることができる。算術演算子ユニット9121、9122、…912kの組を、図8の算術演算子ユニット8101、8102、…810kに類似する演算を実行するために設けることもできる。複数レート処理は、当業者に周知であり、したがって、本明細書では詳細には説明しない。
【0064】
混合基数数生成器900は、加算器904および遅延906をも含む。加算器904は、乱数生成器902から乱数を受け取り、遅延906(以下で説明する)から時間遅延された出力を受け取るように構成されたハードウェアおよび/またはソフトウェアからなる。また、加算器904は、乱数生成器902受け取られた乱数および遅延906から受け取られた時間遅延された出力を使用して加算演算を実行するように構成されたハードウェアおよび/またはソフトウェアからなる。また、加算器904は、加算演算の和を遅延906に通信するように構成されたハードウェアおよび/またはソフトウェアからなる。
【0065】
遅延906は、加算器904から受け取られた和をNクロックサイクルだけ遅延させるように構成されたハードウェアおよびソフトウェアからなる。それでも、本発明はこれに関して限定されない。また、遅延906は、時間遅延された出力(すなわち、時間遅延された和)を加算器904、908に通信するように構成されたハードウェアおよびソフトウェアからなる。
【0066】
当業者は、混合基数数生成器900が、本発明を実施する混合基数数生成器の1つのアーキテクチャであることを了解するであろう。しかし、本発明はこれに関して限定されず、本発明を実施する任意の他の混合基数数生成器アーキテクチャを、制限なしに使用することができる。
【0067】
本発明の前述の説明に鑑みて、本発明をハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組合せで実現できることを認められたい。本発明によるビットの任意の置換順序を生成する方法は、1つの処理システム内で集中化された形で、または異なる要素が複数の相互接続された処理システムにまたがって拡散される分散された形で、実現することができる。本明細書で説明した方法を実行するように適合されたすべての種類のコンピュータシステムまたは他の装置が、適する。ハードウェアおよびソフトウェアの通常の組合せは、ロードされ実行された時に本明細書で説明した方法を実行するようにコンピュータプロセッサを制御するコンピュータプログラムを伴う、汎用コンピュータプロセッサとすることができる。もちろん、特定用途向け集積回路(ASIC)および/またはFPGAを使用して、類似する結果を達成することもできる。
【0068】
本発明を、本明細書で説明した方法の実施を可能にするすべての特徴を含み、コンピュータシステムにロードされた時にこれらの方法を実行することができる、コンピュータプログラム製品で実施することもできる。現在の文脈でのコンピュータプログラムまたはアプリケーションは、a)別の言語、コード、もしくは表記への変換、またはb)異なる材料形態での再作成のいずれかまたは両方の後にあるいは直接にのいずれかで特定の機能を実行する情報処理能力をシステムが有するようにすることを意図された命令の組の、任意の言語、コード、または表記でのすべての表現を意味する。さらに、上の説明は、例のみとして意図されており、添付の特許請求の範囲で示されるものを除いて、いかなる形でも本発明を限定することは意図されていない。
【図面の簡単な説明】
【0069】
【図1】本発明を理解するのに有用な、従来の混合基数変換アルゴリズムを示す概念図である。
【図2】統計的アーティファクトをガロア体GF[P]のすべての同値類にまたがって均等に拡散する混合基数リング生成器を示す概念図である。
【図3A】本発明を理解するのに有用な、従来の混合基数変換アルゴリズムの統計シミュレーションを示すグラフを示す図である。
【図3B】本発明を理解するのに有用な、混合基数数生成器法の統計シミュレーションを示すグラフを示す図である。
【図4】統計的アーティファクトをガロア体GF[P]のすべての同値類にまたがって均等に拡散する混合基数数生成器法を示す流れ図である。
【図5】本発明を理解するのに有用な、データストリームを変更する従来の方法を示す流れ図である。
【図6】本発明を理解するのに有用な、通信システムのセキュリティを高める方法を示す流れ図である。
【図7】本発明を理解するのに有用な、生成器出力をデータストリームと組み合わせる機構に接続された混合基数数生成器を示すブロック図である。
【図8】本発明を理解するのに有用な、混合基数数生成器を示すブロック図である。
【図9】本発明を理解するのに有用な、混合基数数生成器を示すブロック図である。
【符号の説明】
【0070】
202、702、802、902 乱数生成器
204、704、804、904、908 加算器
205 遅延ユニット
206 Pを法とする剰余演算子
700、800、900 混合基数数生成器
706、806、810、910、912 算術演算子
708、808、906、918 遅延
710 外部デバイス
750、850、950 混合基数アキュムレータ

【特許請求の範囲】
【請求項1】
ガロア体GF[M]内に含まれる第1数列を生成することと、
前記第1数列内の第1の数に先行する前記第1数列の第2の数に対して実行されるPを法とする剰余演算の結果と前記第1の数とを合計することを含む、前記第1の数に対して第1変更を実行することであって、MがPに関して相対的に素であるものを実行することと、
前記第1変更の後に、Pを法とする剰余演算を含む、前記第1の数に対して第2変更を実行することと、
第2数列を生成するために、前記第1数列を含む複数の数について前記第1および第2の変更を繰り返すことと
を含む、数列を生成するのに使用される処理をマスクする方法。
【請求項2】
前記第2数列を用いてディジタルデータストリームを変更することをさらに含む、請求項1に記載の方法。
【請求項3】
前記生成するステップが、さらに、前記生成するステップに関する選択された統計的アーティファクトを含む擬似乱数列を生成することを含み、前記統計的アーティファクトが、前記第1および第2の変更ステップによってGF[P]上の乱数の一様に分布する数列を作成するように選択される、請求項1に記載の方法。
【請求項4】
Pおよびp1,p2,p3,…pkを含むPの複数の素因数のすべてと互いに素であるMの値を選択することをさらに含む、請求項1に記載の方法。
【請求項5】
前記第2数列に対して第3変更ステップを実行することをさらに含み、前記第3変更ステップが、前記第2数列から複数の出力数列を生成することを含む、請求項4に記載の方法。
【請求項6】
前記第3変更ステップが、前記複数の出力数列を生成するために前記第2数列内の各数に対して実行されるpを法とする剰余演算を含み、pが、p1,p2,p3,…pkを含む群から選択される複数の値を含む、請求項5に記載の方法。
【請求項7】
前記第2数列が、前記ガロア体GF[P]の複数の同値類にまたがって均等に分布する統計的アーティファクトを有し、前記複数の同値類が、整数0,1,…,P−1ごとに1つの同値類を含む、請求項1に記載の方法。
【請求項8】
ガロア体GF[M]内に含まれる第1数列を生成するように構成された数生成器と、
(1)前記第1数列内の第1の数に先行する前記第1数列の第2の数に対して実行されるPを法とする剰余演算の結果と前記第1の数とを合計することを含む、前記第1の数に対して第1変更を実行することであって、MがPに関して相対的に素であるものを実行することと、(2)前記第1変更の後に、Pを法とする剰余演算を含む、前記第1の数に対して第2変更を実行することと、(3)第2数列を生成するために、前記第1数列を含む複数の数について前記第1および第2の変更を繰り返すこととを行うように構成された混合基数アキュムレータと
を含む混合基数数生成器。
【請求項9】
ディジタルデータストリームを変更するのに前記第2数列を使用するように構成された手段をさらに含む、請求項8に記載のシステム。
【請求項10】
前記数生成器が、前記第1数列の前記生成に関する統計的アーティファクトを含む擬似乱数列を生成する擬似乱数生成器を含み、前記統計的アーティファクトが、前記混合基数アキュムレータによって除去される、請求項8に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2008−304914(P2008−304914A)
【公開日】平成20年12月18日(2008.12.18)
【国際特許分類】
【外国語出願】
【出願番号】特願2008−140677(P2008−140677)
【出願日】平成20年5月29日(2008.5.29)
【出願人】(591268346)ハリス・コーポレーション (25)
【氏名又は名称原語表記】HARRIS CORPORATION
【Fターム(参考)】