(57)【特許請求の範囲】
【請求項１】
対称な非線形写像関数である、
ロジスティックマップ  ｘ（ｔ＋１）＝４ｘ（ｔ）｛１−ｘ（ｔ）｝、
フィードバック  ｘ（ｔ）＝ｘ（ｔ＋１）、
同相変換量子化  ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］、
（ただし、ｔは離散時間であり、ｘ（ｔ）は０＜ｘ（ｔ）＜１の値である。）
の各計算式を与えておき、適宜の初期値ｘ（０）を与えて前記フィードバックｘ（ｔ）＝ｘ（ｔ＋１）を繰り返し計算することでタイムシリーズｘ（ｔ）−ｔを求め、量子化分解能ｎ＝１を与えて前記求められたタイムシリーズｘ（ｔ）−ｔに対応する同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２］を求め、当該求められた同相変換量子化ｙ（ｔ）からタイムシリーズｙ（ｔ）−ｔを取得し、当該取得したタイムシリーズ ｙ（ｔ）−ｔから切り出した２値コード系列ｙ（ｔ）を周期とするスペクトル拡散信号を発生することを特徴とするスペクトル拡散信号発生方法。
【請求項２】
対称な非線形写像関数であるロジスティックマップ ｘ（ｔ＋１）＝４ｘ（ｔ）｛１−ｘ（ｔ）｝、フィードバックｘ（ｔ）＝ｘ（ｔ＋１）、同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］、（ただし、ｔは離散時間であり、ｘ（ｔ）は０＜ｘ（ｔ）＜１の値である。）の各計算式をプログラムで与え、量子化分解能ｎ＝１と適宜の初期値ｘ（０）をデータベースで与え、これらを演算処理・記憶機能を持つハードウエアチップにインストールしておき、このハードウエアチップがデータベースを参照しつつプログラムを実行することにより、スペクトル拡散信号としての２値コード系列ｙ（ｔ）を発生するように構成したことを特徴とするスペクトル拡散信号発生器。
【請求項３】
請求項１に記載のスペクトル拡散信号発生方法で得られた２値コード系列を用いてストリーム暗号化を行うことで暗号コードを得るストリーム暗号化方法であって、
前記ストリーム暗号化は、請求項１に記載のスペクトル拡散信号発生方法で得られた２値コード系列と、暗号化対象となるディジタル情報との排他的論理和演算を実行することで達成されることを特徴とするストリーム暗号化方法。
【請求項４】
請求項３に記載のストリーム暗号化方法で得られた暗号コードを用いてストリーム暗号通信を行うことを特徴とするストリーム暗号通信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、カオス系列のスペクトル拡散信号を発生するスペクトル拡散信号発生方法、スペクトル拡散信号発生器、ストリーム暗号化方法、及びストリーム暗号通信方法に関する。
【０００２】
【従来の技術】
ディジタル高速通信の普及に伴って、スペクトル拡散通信方式を用いた符号分割多重通信方式（ＣＤＭＡ）の実現が望まれている。そこでは、コイン投げをして生成される２値乱数列がスペクトル拡散信号（以下「ＳＳ信号」と言う。）として理想的だと考えられている。
【０００３】
従来、スペクトル拡散通信方式で用いられるＳＳ信号は、Ｍ系列、Kasami系列、Gold系列などを適当な長さに切り取った系列が使用される。また、多段シフトレジスタから生成されるＭ系列が用いられることもある。
【０００４】
【発明が解決しようとする課題】
しかし、従来、ＳＳ信号として用いられている拡散符号系列は、種類が限られ、今後予想される通信需要の増大に対応できないおそれがある。
【０００５】
また、例えば通信の十分な秘匿性を確保するためには、いわゆる原文が透けて見えることのないようにする必要がある。そのためには、ＳＳ信号は、自己相関も相互相関も抑制された周期時系列であることが望まれるが、上述した従来の発生方法によれば、自己相関も相互相関も十分に抑制された周期時系列を再現性よく発生することは困難である。
【０００６】
そこで、本発明者らは、あらゆる周波数成分を含み、複雑な組み合わせの整数列（２値コード系列を含み、「カオス系列」と称する）を生成可能なカオスに着目し、カオス系列でのＳＳ信号発生について鋭意研究を進めたところ、下記に述べる新たな課題を生じた。
【０００７】
すなわち、ＳＳ信号として利用できる２値コード系列は、“０”と“１”の数に片寄りのないことが望ましいのであるが、カオス系列でそのような要件を満たすＳＳ信号をどのようにして発生するかといった解決すべき課題を生じたのである。
【０００８】
本発明は、上記課題を解決するためになされたものであり、“０”と“１”の数に片寄りのないＳＳ信号を、カオス系列の２値コード系列から発生できるスペクトル拡散信号発生方法、及びスペクトル拡散信号発生器を提供することを課題とする。
【０００９】
また、本発明は、本発明で提案する新規なスペクトル拡散信号発生方法で得られた２値コード系列を用いてストリーム暗号化を行うことにより、例えば通信の用途に用いて最適なきわめて秘匿性が高い暗号コードを生成し得るストリーム暗号化方法を提供することを課題とする。
【００１０】
さらに、本発明は、本発明で提案する新規なストリーム暗号化方法で得られた暗号コードを用いてストリーム暗号通信を行うことにより、きわめて秘匿性が高いストリーム暗号通信を実現可能なストリーム暗号通信方法を提供することを課題とする。
【００１１】
【課題を解決するための手段】
上記課題を解決するために、請求項１の発明は、対称な非線形写像関数であるロジスティックマップｘ（ｔ＋１）＝４ｘ（ｔ）｛１−ｘ（ｔ）｝、フィードバックｘ（ｔ）＝ｘ（ｔ＋１）、同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］、（ただし、ｔは離散時間であり、ｘ（ｔ）は０＜ｘ（ｔ）＜１の値である。）の各計算式を与えておき、適宜の初期値ｘ（０）を与えて前記フィードバックｘ（ｔ）＝ｘ（ｔ＋１）を繰り返し計算することでタイムシリーズｘ（ｔ）−ｔを求め、量子化分解能ｎ＝１を与えて前記求められたタイムシリーズｘ（ｔ）−ｔに対応する同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］を求め、当該求められた同相変換量子化ｙ（ｔ）からタイムシリーズｙ（ｔ）−ｔを取得し、当該取得したタイムシリーズｙ（ｔ）−ｔから切り出した２値コード系列ｙ（ｔ）を周期とするスペクトル拡散信号を発生することを要旨とする。
【００１２】
請求項１の発明によれば、上述した各計算式を与えておき、適宜の初期値ｘ（０）を与えて前記フィードバックｘ（ｔ）＝ｘ（ｔ＋１）を繰り返し計算することでタイムシリーズｘ（ｔ）−ｔを求め、量子化分解能ｎ＝１を与えて前記求められたタイムシリーズｘ（ｔ）−ｔに対応する同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］を求め、当該求められた同相変換量子化ｙ（ｔ）からタイムシリーズｙ（ｔ）−ｔを取得し、当該取得したタイムシリーズｙ（ｔ）−ｔから切り出した２値コード系列ｙ（ｔ）を周期とするスペクトル拡散信号を発生する。
【００１３】
また、請求項２の発明は、対称な非線形写像関数であるロジスティックマップｘ（ｔ＋１）＝４ｘ（ｔ）｛１−ｘ（ｔ）｝、フィードバックｘ（ｔ）＝ｘ（ｔ＋１）、同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］、（ただし、ｔは離散時間であり、ｘ（ｔ）は０＜ｘ（ｔ）＜１の値である。）の各計算式をプログラムで与え、量子化分解能ｎ＝１と初期値ｘ（０）をデータベースで与え、これらを演算処理・記憶機能を持つハードウエアチップにインストールしておき、このハードウエアチップがデータベースを参照しつつプログラムを実行することにより、スペクトル拡散信号としての２値コード系列ｙ（ｔ）を発生するように構成したことを要旨とする。
【００１４】
請求項２の発明によれば、工業用汎用ＣＰＵなどのハードウエアチップは、量子化分解能ｎ＝１として得られる２値コード系列y(t)をスペクトル拡散信号として必要なだけ必要なときに出力するので、ハードウエアとしてのスペクトル拡散発生器を提供することができる。
【００１５】
ここで、あらゆる周波数の波を理想的に包含しているカオスの内部状態x(t)を量子化して整数列として観察すると、その量子化分解能をｎとしたとき２n の整数列の組み合わせを時系列として発生する。このとき、非線形写像を線形に量子化して観察したのでは、取り出される整数の分布には片寄りが生じる。
【００１６】
ところが、ロジスティックマップｘ（ｔ＋１）＝４ｘ（ｔ）｛１−ｘ（ｔ）｝は、低次元カオスの理想的で代表的な数学モデルであるが、このロジスティックマップに対する同相量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］は、長い時間にわたって観察したときに、０〜２n −１の整数の分布がほぼ均一になり、固有の片寄りは生じない。なお、前式における記号［］は、小数点以下を切り捨てることを意味している。
【００１７】
乱数の場合、長い時間繰り返し観察したときに、度数分布が均一になるのに対し、カオスにあっては、初期値敏感性を常に残しているため、分布はその切り出し方によって様々に変化する。
【００１８】
そこで、請求項１又は２の発明では、量子化観察の分解能をｎ＝１とし、出力される２値コード系列y(t)を直接２進コード列としてＳＳ信号の元となる時系列を発生するようにした。ロジスティックマップとそのフィードバックの計算を倍精度で実行したとき、その時系列は初期値x(0)に固有に生成され、ＯＳや機種に依存しない再現性をもつ。
【００１９】
初期値x(0)には、０と０．５と１を除く０と１との間の実数を倍精度で与える。与えることのできる初期値の種類は倍精度の分だけあり、産業技術的には無限にあると言っても過言ではない。
【００２０】
時系列の計算の長さにも制限はない。その時系列y(t)-tをある長さに切断した２値コード系列y(t)を周期とするＳＳ信号を発生するのであるから、２値コード系列y(t)の種類も十分多数用意できる。
【００２１】
さらに、請求項３の発明は、請求項１に記載のスペクトル拡散信号発生方法で得られた２値コード系列を用いてストリーム暗号化を行うことで暗号コードを得るストリーム暗号化方法であって、前記ストリーム暗号化は、請求項１に記載のスペクトル拡散信号発生方法で得られた２値コード系列と、暗号化対象となるディジタル情報との排他的論理和演算を実行することで達成されることを要旨とする。
【００２２】
請求項３の発明によれば、請求項１のスペクトル拡散信号発生方法で得られた２値コード系列を用いてストリーム暗号化を行うことで暗号コードを得るにあたり、このストリーム暗号化は、請求項１のスペクトル拡散信号発生方法で得られた２値コード系列と、暗号化対象となるディジタル情報との排他的論理和演算を実行することで達成されるので、したがって、例えば通信の用途に用いて最適なきわめて秘匿性が高い暗号コードを生成し得るストリーム暗号化方法を提案することができる。
【００２３】
そして、請求項４の発明は、請求項３に記載のストリーム暗号化方法で得られた暗号コードを用いてストリーム暗号通信を行うことを要旨とする。
【００２４】
請求項４の発明によれば、請求項３に記載のストリーム暗号化方法で得られた暗号コードを用いてストリーム暗号通信を行うので、したがって、きわめて秘匿性が高いストリーム暗号通信を実現可能となる。具体的には、暗号コードを生成、拡張、混合、転送し、同一のスペクトル拡散信号発生器を有するユーザが同期をとってこれを復元するという、非同期多重マルチユーザストリーム暗号通信を実現可能である。
【００２５】
なお、より拡散した暗号コードを生成し、多重化を容易にするために、ディジタル情報とＳＳ信号との比は１対１ではなく、数倍または数１０倍に広げて演算を実行することが好ましい。
【００２６】
初期値に固有の２値タイムシリーズ {y(t)-ｔ}を任意に切断し、周期２値コード系列y(t)からなるＳＳ信号を多数用意して、ディジタル情報を対象としたストリーム暗号化コードの復元を試みたとき、同期がとれた排他的論理和（ＥＸＯＲ）演算を実行したときにのみ、完全な復号ができることを確かめた。
【００２７】
また、ＳＳ信号の同期をずらして、非同期で復号を行っても、原文が透けて見えることはないことも確かめた。さらに、データ拡散倍率を１としたときでも、アスキーコードで作成した英文や日本語の文章を原文とするとき、文字や単語が透けて見えることはない。拡散倍率を数倍から、１０数倍に選ぶと暗号の頑健性はさらに強化される。
【００２８】
ＳＳ信号の安全性は、自己相関係数及び相互相関係数を調べることにより、ＳＳ信号内での“０”と“１”の配列の類似性及びＳＳ信号間での“０”と“１”の配列の類似性が評価された。そのなかには、非同期での非類似性だけでなく、完全な同期状態での検証も含まれる。
【００２９】
初期値に固有のタイムシリーズから切り出したＳＳ信号でも、異なる初期値からのＳＳ信号でも、スペクトル拡散通信に使用することができる。このようにＳＳ信号の独立性を保証できるのは、カオスの初期値敏感性、長時間予測不可能な性質、リヤブノフ指数に依存した発散と収束といったカオスの持つ本性に由来する。
【００３０】
【発明の実施の形態】
以下に、本発明の実施形態を図面を参照して説明する。
【００３１】
図１は、本発明に係るスペクトル拡散信号発生方法を用いて発生したＳＳ信号の一例を示す。
【００３２】
本発明に係るスペクトル拡散信号発生方法は、対称な非線形写像関数であるロジスティックマップｘ（ｔ＋１）＝４ｘ（ｔ）｛１−ｘ（ｔ）｝、フィードバックｘ（ｔ）＝ｘ（ｔ＋１）、同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］、（ただし、ｔは離散時間であり、ｘ（ｔ）は０＜ｘ（ｔ）＜１の値である。）の各計算式を与えておき、適宜の初期値ｘ（０）を与えて前記フィードバックｘ（ｔ）＝ｘ（ｔ＋１）を繰り返し計算することでタイムシリーズｘ（ｔ）−ｔを求め、量子化分解能ｎ＝１を与えて前記求められたタイムシリーズｘ（ｔ）−ｔに対応する同相変換量子化ｙ（ｔ）＝［｛２／π・arcsin√ｘ（ｔ）｝・２ｎ］を求め、当該求められた同相変換量子化ｙ（ｔ）からタイムシリーズｙ（ｔ）−ｔを取得し、当該取得したタイムシリーズｙ（ｔ）−ｔから切り出した２値コード系列ｙ（ｔ）を周期とするスペクトル拡散信号を発生するものである。
【００３３】
図１には、このスペクトル拡散信号発生方法を用いて、初期値x(0)＝0.300・・・とし、y(0)から y(1999)までの2000ビット分の出力のうち、離散時間ｔの順番に出力される２値コード系列y(t)のみを、時間ｔを省略して示してある。
【００３４】
周期１６０ビットのＳＳ信号を切り出す場合を例に挙げて説明しよう。周期１６０ビットは任意に選んだ１つの実施形態にすぎない。ＳＳ信号の周期の中の“０”と“１”の数を数えたとき、その数が同じくらいになる長さとして周期１６０ビットを選ぶ。
【００３５】
ＳＳ信号の周期を決める根拠は、“０”または“１”の連なりの分布である。図１において、“０”または“１”が１ビットずつ孤立している割合は約２０%である。また、“００”または“１１”と２つ連なっている割合は約１５%である。さらに、“０００”または“１１１”と３つ連なった割合は約１０%である。そして、連なりが５個以上の割合は５%以下であるが、最大７個ぐらいまでの連なりは存在している。
【００３６】
１６０ビットを周期としたとき、“０”の連なりの片寄りと“１”の連なりの片寄りが相互に埋め合わさって、“０”も平均すると約８０個となり、“１”もほぼ同数となる。周期をより長くするか、もっと短く選ぶかは、システム設計の要求に依存する。
【００３７】
ＳＳ信号としての１６０ビット周期の取り出し方は、y(0)〜y(159)を１つのＳＳ信号とし、y(160)〜y(319)を他のＳＳ信号とする。そのような取り出し方は一例である。相互に重なり合うように取り出すと、意識して重ねたところで相互相関が大きくなるのは当然である。そのような重なり合う取り出し方は避けた方がよい。
【００３８】
このようにして切り出した１６０ビット周期のＳＳ信号の自己相関係数は、位相が一致したときは当然１６０となるが、位相がずれたところでは０〜３０程度の正負の値をとる。位相がずれたところで同期がとれてしまうということは、逆相関を含めて観測されたことはない。相互相関も０〜３０程度の正負の値を示し、相関和は自己相関、相互相関とも５００〜９００程度である。なお、相関係数を求めるとき、タイムシリーズの“０”を−１とし、“１”を＋１としている。
【００３９】
“０”または“１”の連なりが最大７ぐらいのとき、安全な拡散倍率は１０以上であろう。拡散倍率を１０としたとき、１周期で２バイトの文字が暗号コード化されることになる。
【００４０】
復元において、復元コードも１０倍に拡張されて、一旦は取り出され、“０”の連なりも“１”の連なりも正確に１０でなければならない。その中に反転ビットが１つでもあれば、それはエラーである。伝送におけるエラーの発生を復元の過程で検出でき、修正ができ、システムの信頼性を常に判断できることがスペクトル拡散通信の特徴である。
【００４１】
以上説明した実施形態は直接拡散といわれる手法であるが、周波数ホッピングに適用した場合にも、２値コードをｎビットで束ねた２n のｎ進ビットコードに区分し、ｍ個で１周期（２n ×ｍ）とする利用が可能である。
【００４２】
【発明の効果】
以上説明したように、請求項１に記載の発明によれば、対称な非線形写像であるロジスティックマップと、非線型量子化観察の基本モード（ｎ＝１）から片寄りのない２値コード系列を多数取得して、ＣＤＭＡ多重通信に用いて最適なＳＳ信号を発生する具体的手法を提供することができる。
【００４３】
また、請求項２の発明によれば、工業用汎用ＣＰＵなどのハードウエアチップは、量子化分解能ｎ＝１として得られる２値コード系列y(t)をスペクトル拡散信号として必要なだけ必要なときに出力するので、ハードウエアとしてのスペクトル拡散信号発生器を提供することができる。
【００４４】
さらに、請求項３の発明によれば、例えば通信の用途に用いて最適なきわめて秘匿性が高い暗号コードを生成し得るストリーム暗号化方法を提案することができる。
【００４５】
そして、請求項４の発明によれば、きわめて秘匿性が高いストリーム暗号通信を実現可能となる。具体的には、暗号コードを生成、拡張、混合、転送し、同一のスペクトル拡散信号発生器を有するユーザが同期をとってこれを復元するという、非同期多重マルチユーザストリーム暗号通信を実現可能であるというきわめて優れた効果を奏する。
【００４６】
なお、ディジタルコンピュータは順序回路で構成され、順序の入れ替えは苦手としているが、本発明では、非線形関数と非線型量子化により整数列の順序の入れ替えを可能にし、工業用汎用ＣＰＵなどのハードウエアチップへのインストールにも成功している。
【００４７】
そこでは、初期値x(0)というデータベースは、ハードウエアチップ毎に異なる値がインストールされるという、ハードウエアチップの新しい活用法が見出されている。
【図面の簡単な説明】
【図１】本発明に係るスペクトル拡散信号発生方法を用いて発生したＳＳ信号の一例を示す図である。
【図１】
0003696430.tif 000002