JPH11224183A - Pseudo-random number generating device - Google Patents

Pseudo-random number generating device

Info

Publication number
JPH11224183A
JPH11224183A JP10039677A JP3967798A JPH11224183A JP H11224183 A JPH11224183 A JP H11224183A JP 10039677 A JP10039677 A JP 10039677A JP 3967798 A JP3967798 A JP 3967798A JP H11224183 A JPH11224183 A JP H11224183A
Authority
JP
Japan
Prior art keywords
register
shift register
linear feedback
feedback shift
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.)
Pending
Application number
JP10039677A
Other languages
Japanese (ja)
Inventor
Koichi Sugimoto
浩一 杉本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyo Communication Equipment Co Ltd
Original Assignee
Toyo Communication Equipment Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyo Communication Equipment Co Ltd filed Critical Toyo Communication Equipment Co Ltd
Priority to JP10039677A priority Critical patent/JPH11224183A/en
Publication of JPH11224183A publication Critical patent/JPH11224183A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a filter generator (pseudo-random number generating device) which can generate a cryptograph of a stream cryptographic system at a high speed wherein linear complexity is logically larger than a specific value by using a linear feedback shift register. SOLUTION: The pseudo-random number generating device has a linear feedback shift register 101, a nonlinear converting function circuit 102 which outputs 1-bit pseudo-random numbers for every synchronizing signal by nonlinearly converting respective register values of a linear feedback register 101 through the use of a nonlinear converting function having a term of the highest order constituted by ANDing the register values of a specific number of successive stages from the initial stage of the linear feedback shift register 101, an initial value setting terminal 104 which sets an initial value in the linear feedback shift register 101, and a synchronizing signal input terminal 105 which inputs the synchronizing signals to the linear feedback shift register 101.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、音声や情報の通信
分野の暗号通信装置で用いられるストリーム暗号方式の
擬似乱数発生装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a stream cryptographic pseudo-random number generator used in a cryptographic communication device in the field of voice and information communication.

【0002】[0002]

【従来の技術】従来から、例えば、電話機や無線通信装
置やデータ通信装置のような通信システムにおいては、
その通信システムの両端の通信当事者以外の第3者がそ
の通信システムで伝送される情報を知ることができない
ようにするために、その通信システムで伝送される伝送
情報を暗号化することが行われている。この暗号化の方
式としては多種の方式が知られているが、高速なデータ
通信に利用可能な方式としてはストリーム暗号方式が有
る。以下に、ストリーム暗号装置の概略構成を示すブロ
ック図である図2を用いてストリーム暗号装置を説明す
る。ストリーム暗号装置200は、入力するデータスト
リームを、後述する擬似乱数発生装置201により出力
された擬似乱数と、後述する排他的論理和演算素子20
2で排他論理和演算して暗号出力として出力する暗号装
置である。擬似乱数発生装置201は、ストリーム暗号
装置200における擬似乱数を発生するための装置であ
り、後述する初期設定用入力端子203とクロック入力
用端子204からの入力が有り、擬似乱数が出力され
る。排他的論理和演算素子202は、上記した擬似乱数
発生装置201から出力された擬似乱数と暗号化される
前の入力データストリームの排他的論理和演算を行うも
のである。初期値設定入力用端子203は、上記した擬
似乱数発生装置201に初期設定のための入力を行うた
めの端子である。クロック入力端子204は、同期入力
としてのクロック信号を上記擬似乱数発生装置201に
入力するための端子である。平文入力端子205は、暗
号化される前のデータストリーム信号(平文)が入力さ
れる端子である。暗号出力端子206は、ストリーム暗
号装置200で暗号化されたデータストリーム信号が出
力される端子である。このストリーム暗号装置により、
平文のデータストリーム信号は、擬似乱数と1ビット単
位で排他的論理和演算されることで暗号化されて出力さ
れる。
2. Description of the Related Art Conventionally, in communication systems such as telephones, wireless communication devices, and data communication devices, for example,
In order to prevent a third party other than the communicating parties at both ends of the communication system from knowing the information transmitted by the communication system, the transmission information transmitted by the communication system is encrypted. ing. Although various types of encryption methods are known, a stream encryption method can be used for high-speed data communication. Hereinafter, the stream encryption device will be described with reference to FIG. 2 which is a block diagram illustrating a schematic configuration of the stream encryption device. The stream encryption device 200 converts the input data stream into a pseudo-random number output from a pseudo-random number generator 201 described later and an exclusive-OR element 20 described later.
This is an encryption device that performs an exclusive OR operation at 2 and outputs the result as an encrypted output. The pseudo-random number generation device 201 is a device for generating a pseudo-random number in the stream encryption device 200. The pseudo-random number generation device 201 receives an input from an initial setting input terminal 203 and a clock input terminal 204, which will be described later, and outputs a pseudo random number. The exclusive OR operation element 202 performs an exclusive OR operation of the pseudorandom number output from the pseudorandom number generator 201 and the input data stream before being encrypted. The initial value setting input terminal 203 is a terminal for performing input for initial setting to the pseudorandom number generator 201 described above. The clock input terminal 204 is a terminal for inputting a clock signal as a synchronization input to the pseudorandom number generator 201. The plaintext input terminal 205 is a terminal to which a data stream signal (plaintext) before being encrypted is input. The encryption output terminal 206 is a terminal to which a data stream signal encrypted by the stream encryption device 200 is output. With this stream encryption device,
The plaintext data stream signal is encrypted and output by performing an exclusive OR operation on the pseudorandom number and bit by bit.

【0003】次に、上記した図2に示す擬似乱数発生装
置201の一例である、フィルタジェネレータの構成を
示すブロック図である図3を用いてフィルタジェネレー
タを説明する。擬似乱数発生装置300は、上記したよ
うに図2に示す擬似乱数発生装置201の一例としての
フィルタジェネレータである。線形フィードバックシフ
トレジスタ301は、擬似乱数を発生させるための元に
なる数値を得るためのレジスタである。非線形変換関数
回路302は、上記線形フィードバックシフトレジスタ
301の各レジスタの値を入力として非線形変換関数に
より変換して擬似乱数を生成して出力する。シフトレジ
スタ初期値設定用入力端子303は、非線形フィードバ
ックシフトレジスタ301の各レジスタへ初期値を設定
するための入力端子である。クロック入力用端子304
は、線形フィードバックシフトレジスタ301へ同期用
のクロックを入力する入力端子である。擬似乱数出力端
子305は、非線形変換関数回路302から出力された
擬似乱数系列を出力する端子であり、その出力は、例え
ば、図2に示す排他的論理和演算回路202に入力され
るものである。ここで、図3に示すフィルタジェネレー
タの暗号学的強度を示す指標の1つである線形複雑度に
ついて説明する。線形複雑度は、擬似乱数出力端子30
5からの擬似乱数系列の出力を模倣することが可能であ
る等価な線形フィードバックシフトレジスタのレジスタ
長で定義される。また、線形フィードバックシフトレジ
スタの初期値は、その線形フィードバックシフトレジス
タ内のある1個のレジスタの値をその線形フィードバッ
クシフトレジスタのレジスタ長の2倍分だけ特定できれ
ば、その特定値に基づいた連立1次方程式を解くことで
決定することができる。従って、レジスタ長で定義され
る線形複雑度の小さいフィルタジェネレータの擬似乱数
系列は、初期値を得るのに必要なそのレジスタ長の2倍
分のレジスタの値も少ないことになるので、擬似乱数系
列は容易に推定が可能で、暗号用としての使用は難し
い。線形フィードバックシフトレジスタのレジスタ長と
その中の1個のレジスタの値の関係については、更に、
レジスタ長がLである線形フィードバックシフトレジス
タの1個のレジスタの値がクロック入力により変遷する
周期が2L −1で繰り返されるときに、その周期的なレ
ジスタの値の系列をm系列であると言う。そして、ある
時刻tにおけるm系列のレジスタ値をs(t)で表し、
数式(数1)の線形複雑度z(t)は、理論的に2項係
数の数式(数2)以上であることが、文献(Rainer A.
Rueppel 著の"Analysis and Design of stream Cipher
s," Springer-Verlagのp84-86)により証明されてい
る。但し、fの最高次数はk未満であり、且つ、次の数
式(数3)の最大公約数を満たすことが条件となってい
る。
Next, the filter generator will be described with reference to FIG. 3, which is a block diagram showing the configuration of the filter generator, which is an example of the pseudorandom number generator 201 shown in FIG. As described above, the pseudo random number generation device 300 is a filter generator as an example of the pseudo random number generation device 201 shown in FIG. The linear feedback shift register 301 is a register for obtaining a numerical value serving as a source for generating a pseudo random number. The non-linear conversion function circuit 302 receives a value of each register of the linear feedback shift register 301 as an input, converts the value by a non-linear conversion function, and generates and outputs a pseudo random number. The shift register initial value setting input terminal 303 is an input terminal for setting an initial value to each register of the nonlinear feedback shift register 301. Clock input terminal 304
Is an input terminal for inputting a synchronization clock to the linear feedback shift register 301. The pseudorandom number output terminal 305 is a terminal that outputs the pseudorandom number sequence output from the non-linear conversion function circuit 302, and the output is input to, for example, the exclusive OR operation circuit 202 illustrated in FIG. . Here, the linear complexity which is one of the indexes indicating the cryptographic strength of the filter generator shown in FIG. 3 will be described. The linear complexity is determined by the pseudo random number output terminal 30.
5 is defined by the register length of an equivalent linear feedback shift register capable of imitating the output of the pseudo-random number sequence from No. 5. In addition, if the initial value of the linear feedback shift register can specify the value of a certain register in the linear feedback shift register by twice the register length of the linear feedback shift register, the initial value based on the specific value It can be determined by solving the following equation. Therefore, the pseudo-random number sequence of the filter generator having a small linear complexity defined by the register length also has a register value twice as long as the register length required for obtaining the initial value. Can be easily estimated and is difficult to use for encryption. Regarding the relationship between the register length of the linear feedback shift register and the value of one of the registers,
When the cycle in which the value of one register of the linear feedback shift register whose register length is L changes due to the clock input is repeated at 2 L −1, the periodic series of register values is assumed to be an m series. To tell. Then, an m-series register value at a certain time t is represented by s (t),
The linear complexity z (t) of the equation (Equation 1) is theoretically greater than or equal to the equation of the binomial coefficient (Equation 2).
"Analysis and Design of stream Cipher by Rueppel
s, "Springer-Verlag p84-86), provided that the highest order of f is less than k and that the greatest common divisor of the following equation (Equation 3) is satisfied. I have.

【0004】[0004]

【数1】 (Equation 1)

【0005】[0005]

【数2】 (Equation 2)

【0006】[0006]

【数3】 次に、上記図3に示す線形フィードバックシフトレジス
タ301について、線形フィードバックシフトレジスタ
の概略構成を示すブロック図である図4を用いて説明す
る。線形フィードバックシフトレジスタ400は、上記
したように従来から図3に示すフィルタジェネレータ
(擬似乱数発生装置300)で用いられているものであ
る。この図4に示す線形フィードバックシフトレジスタ
400の各レジスタは、Dフリップフロップ素子402
で構成され、各Dフリップフロップ素子402の出力は
次段のDフリップフロップ素子402に出力されると共
に各Dフリップフロップ素子毎に定められた所定の係数
により変換されて排他的論理和演算素子401で最終段
のDフリップフロップ素子から順次排他的論理和演算素
子401で演算された値と排他的論理和の演算が行われ
る。この図4に示す線形フィードバックシフトレジスタ
の各レジスタの値を示すのが次の数式(数4)である。
(Equation 3) Next, the linear feedback shift register 301 shown in FIG. 3 will be described with reference to FIG. 4, which is a block diagram showing a schematic configuration of the linear feedback shift register. As described above, the linear feedback shift register 400 has been conventionally used in the filter generator (pseudo random number generation device 300) shown in FIG. Each register of the linear feedback shift register 400 shown in FIG.
The output of each D flip-flop element 402 is output to the next stage D flip-flop element 402 and is converted by a predetermined coefficient determined for each D flip-flop element to obtain an exclusive OR operation element 401 Then, the exclusive OR operation with the value calculated by the exclusive OR operation element 401 is sequentially performed from the last stage D flip-flop element. The value of each register of the linear feedback shift register shown in FIG. 4 is shown by the following equation (Equation 4).

【0007】[0007]

【数4】 この図4に示す線形フィードバックシフトレジスタで上
記した線形複雑度z(t)を保証するためには、数式
(数4)の非線形関数の最高次数の項において、上記数
式(数3)を満たすδの間隔で連続するk個のレジスタ
により線形フィードバックシフトレジスタを構成すれ
ば、上記線形複雑度以上の複雑度が得られるので保証で
きることになる。一方、線形フィードバックシフトレジ
スタとして、図4に示したもの以外の構成のものでは図
5に示すものが知られている。この図5に示した線形フ
ィードバックシフトレジスタでは、図4に示したものよ
りも高速で動作が可能である。その高速動作が可能な理
由としては、次の理由による。線形フィードバックシフ
トレジスタ500の各レジスタを構成するDフリップフ
ロップ502の処理による遅延時間をu、Dフリップフ
ロップ502間の排他的論理和演算素子501の処理に
よる遅延時間をvとし、比較するために、図4に示す線
形フィードバックシフトレジスタ400の各レジスタを
構成するDフリップフロップ402の処理による遅延時
間も図5に示すものと同様にu、排他的論理和演算素子
401の処理による遅延時間も図5に示すものと同様に
vとすると、図4に示す線形フィードバックシフトレジ
スタの場合には、各レジスタ間で最も遅延の起こる部分
は、最終段のDフリップフロップXL (t)からL−1
個の排他的論理和演算素子を経て、初段のDフリップフ
ロップX1 (t)に至るフィードバック経路であり、そ
の遅延時間は次の数式(数5)で示される。
(Equation 4) In order to guarantee the above-mentioned linear complexity z (t) in the linear feedback shift register shown in FIG. 4, in the term of the highest order of the nonlinear function of Expression (Equation 4), δ satisfying Expression (Equation 3) is satisfied. If the linear feedback shift register is constituted by k registers that are continuous at intervals of, a complexity higher than the linear complexity described above can be obtained, which can be guaranteed. On the other hand, as a linear feedback shift register, one having a configuration other than that shown in FIG. 4 is known as shown in FIG. The linear feedback shift register shown in FIG. 5 can operate at a higher speed than that shown in FIG. The reason why the high-speed operation is possible is as follows. In order to compare the delay time due to the processing of the D flip-flop 502 constituting each register of the linear feedback shift register 500 with u and the delay time due to the processing of the exclusive OR operation element 501 between the D flip-flops 502 as v, The delay time due to the processing of the D flip-flop 402 constituting each register of the linear feedback shift register 400 shown in FIG. 4 is u, and the delay time due to the processing of the exclusive OR operation element 401 is also the same as that shown in FIG. In the case of the linear feedback shift register shown in FIG. 4, the portion where the delay occurs most between the registers is the last stage D flip-flop X L (t) to L−1
This is a feedback path through the exclusive OR operation elements to the first stage D flip-flop X 1 (t), and its delay time is represented by the following equation (Equation 5).

【0008】[0008]

【数5】 それに対して、図5に示す線形フィードバックシフトレ
ジスタにおいては、各レジスタ間で最も遅延の起こる部
分は、最終段から初段以外の各Dフリップフロップへ入
力される経路のどれかであり、何れも1個の排他的論理
和演算素子501が入るだけで同様である。その場合の
遅延時間は、次の数式(数6)に示すように1個のDフ
リップフロップの処理による遅延uと1個の排他的論理
和演算素子の処理による遅延vの和となる。
(Equation 5) On the other hand, in the linear feedback shift register shown in FIG. 5, the portion where the delay occurs most between the registers is any one of the paths input from the last stage to each of the D flip-flops other than the first stage. The same applies only to the exclusive OR operation elements 501. The delay time in that case is the sum of the delay u due to the processing of one D flip-flop and the delay v due to the processing of one exclusive OR operation element, as shown in the following equation (Equation 6).

【0009】[0009]

【数6】 ここで、図3に示すフィルタジェネレータ(擬似乱数発
生装置300)の同期用のクロック間隔の最大は、上記
したような最も遅延の起こる部分の遅延時間により決定
されるので、フィルタジェネレータの擬似乱数発生装置
では、図5に示す線形フィードバックシフトレジスタを
使用することは、高速にストリーム暗号方式の暗号を生
成するには有効であるように考えられる。
(Equation 6) Here, the maximum clock interval for synchronization of the filter generator (pseudo-random number generator 300) shown in FIG. 3 is determined by the delay time of the portion where the most delay occurs, as described above. In the device, the use of the linear feedback shift register shown in FIG. 5 seems to be effective for generating a stream cipher at high speed.

【0010】[0010]

【発明が解決しようとする課題】しかしながら、図5に
示す線形フィードバックシフトレジスタの動作は、図4
に示す線形フィードバックシフトレジスタよりも複雑で
あり、初段以外の各レジスタの値も複雑になるため、上
記した線形複雑度の大きさを理論的に保証でき、且つ、
図5に示す線形フィードバックシフトレジスタを用いた
図3に示す非線形変換関数回路302に相当する非線形
変換関数回路の構成は知られておらず、そのため、図5
に示す線形フィードバックシフトレジスタを用いたフィ
ルタジェネレータにおいて、線形複雑度を数式(数2)
以上とする方法は知られていなかった。本発明では、上
記問題に鑑みて、図5に示す線形フィードバックシフト
レジスタを用いて、線形複雑度が理論的に上記数式(数
2)以上である高速にストリーム暗号方式の暗号を生成
可能なフィルタジェネレータ(擬似乱数発生装置)を提
供することを目的とする。
However, the operation of the linear feedback shift register shown in FIG.
And the values of the registers other than the first stage are also complicated, so that the magnitude of the linear complexity can be theoretically guaranteed, and
The configuration of the non-linear conversion function circuit corresponding to the non-linear conversion function circuit 302 shown in FIG. 3 using the linear feedback shift register shown in FIG. 5 is not known.
In the filter generator using the linear feedback shift register shown in FIG.
A method for performing the above has not been known. In the present invention, in view of the above-described problem, a filter capable of generating a stream cipher cipher whose linear complexity is theoretically equal to or more than the above equation (Equation 2) using the linear feedback shift register shown in FIG. An object of the present invention is to provide a generator (pseudo random number generator).

【0011】[0011]

【課題を解決するための手段】上記目的を達成するため
に、本発明では、同期信号に同期して動作する複数段の
レジスタと各レジスタ間に排他的論理和演算素子を有
し、前記各レジスタに初期値の設定後、最終段のレジス
タの設定値と前記各排他的論理和演算素子毎に設定され
た所定値との論理積のフィードバック値を前記排他的論
理和演算素子に入力し、該排他的論理和演算素子では前
段のレジスタの出力値と前記フィードバック値の排他的
論理和演算を行い次段のレジスタに出力する線形フィー
ドバックレジスタと、前記線形フィードバックレジスタ
の初段から連続する所定段数のレジスタ値の論理積によ
り構成される最高次の項を有する非線形変換関数を用い
て前記線形フィードバックレジスタの各レジスタ値を非
線形変換して1ビットの擬似乱数出力を前記同期信号毎
に出力する非線形変換関数回路と、前記線形フィードバ
ックレジスタに初期値を設定する初期値設定手段と、前
記線形フィードバックレジスタに同期信号を入力する同
期信号入力手段とを有することを特徴とし、前記線形フ
ィードバックシフトレジスタに対応可能な非線形変換関
数回路を提供したことで、高速なストリーム暗号方式の
暗号の生成が可能になった。
In order to achieve the above object, according to the present invention, there are provided a plurality of stages of registers operating in synchronization with a synchronization signal, and an exclusive OR operation element between the registers. After setting the initial value in the register, a feedback value of the logical product of the set value of the final stage register and a predetermined value set for each of the exclusive OR elements is input to the exclusive OR element, The exclusive-OR element performs an exclusive-OR operation on the output value of the previous-stage register and the feedback value and outputs the result to the next-stage register, and a predetermined number of stages that are continuous from the first stage of the linear feedback register. Each register value of the linear feedback register is non-linearly converted to 1 bit using a non-linear conversion function having the highest order term formed by a logical product of the register values. A non-linear conversion function circuit that outputs a pseudo random number output for each synchronization signal, an initial value setting unit that sets an initial value in the linear feedback register, and a synchronization signal input unit that inputs a synchronization signal to the linear feedback register. By providing a non-linear conversion function circuit capable of supporting the linear feedback shift register, a high-speed stream cipher can be generated.

【0012】[0012]

【発明の実施の形態】以下に本発明の実施の形態を図を
用いて説明する。図1は、本発明の一実施形態の構成を
示すブロック図である。擬似乱数発生装置100は、従
来技術の図5に示したタイプと同タイプの線形フィード
バックシフトレジスタ101と非線形変換関数回路10
2を有する擬似乱数発生装置である。線形フィードバッ
クシフトレジスタ101における各レジスタの値は次の
数式(数7)のように表される。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing the configuration of one embodiment of the present invention. The pseudorandom number generator 100 includes a linear feedback shift register 101 of the same type as that shown in FIG.
2 is a pseudo-random number generator. The value of each register in the linear feedback shift register 101 is represented by the following equation (Equation 7).

【0013】[0013]

【数7】 ここで、初段のレジスタの値x1(t)をs(t)とお
くと、図1の各レジスタの値は次の数式(数8)のよう
になる。
(Equation 7) Here, assuming that the value x1 (t) of the first-stage register is s (t), the value of each register in FIG. 1 is represented by the following equation (Equation 8).

【0014】[0014]

【数8】 更に、この数式(数8)の最下段の式、即ち、線形フィ
ードバックシフトレジスタの初段の式の生成多項式を数
式(数9)とする。
(Equation 8) Further, the lowermost equation of this equation (Equation 8), that is, the generator polynomial of the first-stage equation of the linear feedback shift register is represented by Equation (Equation 9).

【0015】[0015]

【数9】 この数式(数9)が、根が原始根(原始元)の既約多項
式であるならば、そのある時刻tにおけるレジスタの値
s(t)はm系列になることを示すので、各レジスタの
値は、このs(t)の時間遅延項の線形結合により表す
ことができる。この図1の線形フィードバックシフトレ
ジスタ101で、上記した線形複雑度の下限の数式(数
2)を満足させるには、数式(数8)における初段側の
レジスタから連続したk個のレジスタの値の論理積を生
成して、その生成値を非線形変換関数回路103の最高
次の項にする。実際の初段側のレジスタから連続したk
個のレジスタの値の論理積は、次の数式(数10)のよ
うになる。
(Equation 9) If the equation (Equation 9) is an irreducible polynomial whose root is a primitive root (primitive element), it indicates that the register value s (t) at a certain time t is an m-sequence. The value can be represented by a linear combination of this s (t) time delay term. In the linear feedback shift register 101 of FIG. 1, in order to satisfy the lower limit equation (Equation 2) of the linear complexity described above, the values of k registers consecutive from the first-stage register in the equation (Equation 8) are obtained. A logical product is generated, and the generated value is set to the highest order term of the nonlinear conversion function circuit 103. K consecutive from the actual first stage register
The logical product of the values of the registers is given by the following equation (Equation 10).

【0016】[0016]

【数10】 尚、数式(数10)におけるO(k−1)は、k−1の
次以下の項の全てを表すものである。また、s(t−
α)s(t−α)=s(t−α)である。上記のように
非線形変換回路を構成することにより、図1に示したよ
うに線形複雑度は理論的に数式(数2)以上であるフィ
ルタジェネレータ(擬似乱数発生装置)を構成すること
ができる。
(Equation 10) Note that O (k-1) in the equation (Equation 10) represents all of the following terms following k-1. Also, s (t−
α) s (t−α) = s (t−α). By configuring the nonlinear conversion circuit as described above, it is possible to configure a filter generator (pseudo-random number generator) whose linear complexity is theoretically equal to or more than the mathematical expression (Equation 2) as shown in FIG.

【0017】図1の構成による動作は以下のようにな
る。まず、線形フィードバックシフトレジスタ101内
のDフリップフロップ107〜111に初期値設定用端
子104から初期値を入力して設定する。そして、クロ
ック入力用端子105からクロック入力が線形フィード
バックシフトレジスタ101に入ると、各Dフリップフ
ロップには最終段のDフリップフロップ111に記憶さ
れていた値と所定値ai の論理積をとった値と、前段の
Dフリップフロップに記憶されていた値の論理和が各々
の排他的論理和素子112〜114により生成されて記
憶される。尚、初段のDフリップフロップ107には、
例外的に終段のDフリップフロップ111に記憶されて
いた値がそのままで記憶される。非線形変換関数回路1
02では、線形フィードバックシフトレジスタ101の
各レジスタの出力中で、初段のDフリップフロップ10
7から連続してk個のDフリップフロップの入力を論理
演算素子116に入力してk次の論理積出力をその論理
積演算素子116から得る。一方、次数がk次未満の非
線形変換関数回路103では、線形フィードバックシフ
トレジスタ101の各レジスタ(Dフリップフロップ)
の出力を入力にして1ビットの非線形変換値を出力す
る。上記した論理積演算素子116からのk次の論理積
出力と、非線形変換関数回路103からの非線形変換値
は、排他的論理和演算素子106において排他的論理和
の演算が行われて擬似乱数として出力される。上記のよ
うに構成して動作させることで、図5(図1)の線形フ
ィードバックシフトレジスタを用いて、線形複雑度が理
論的に上記数式(数2)以上である高速にストリーム暗
号方式の暗号を生成可能なフィルタジェネレータ(擬似
乱数発生装置)を提供することを提供することができ
た。
The operation of the configuration shown in FIG. 1 is as follows. First, an initial value is input from the initial value setting terminal 104 to the D flip-flops 107 to 111 in the linear feedback shift register 101 and set. Then, when the clock input from the clock input terminal 105 enters the linear feedback shift register 101, each D flip-flop takes the logical product of the value stored in the last D flip-flop 111 and the predetermined value a i . The logical sum of the value and the value stored in the preceding D flip-flop is generated and stored by each of the exclusive OR elements 112 to 114. The first stage D flip-flop 107 has
Exceptionally, the value stored in the last D flip-flop 111 is stored as it is. Nonlinear transformation function circuit 1
02, in the output of each register of the linear feedback shift register 101, the first stage D flip-flop 10
The inputs of the k D flip-flops are input to the logical operation element 116 continuously from step 7, and the k-th logical product output is obtained from the logical product operation element 116. On the other hand, in the nonlinear conversion function circuit 103 whose order is less than the k-th order, each register (D flip-flop) of the linear feedback shift register 101
And outputs a 1-bit nonlinear conversion value. The k-th AND output from the AND operation element 116 and the non-linear conversion value from the non-linear conversion function circuit 103 are subjected to exclusive-OR operation in the exclusive-OR operation element 106 to generate pseudo-random numbers. Is output. With the configuration and operation as described above, using the linear feedback shift register of FIG. 5 (FIG. 1), a high-speed stream cipher cipher whose linear complexity is theoretically equal to or more than the above equation (Equation 2) is obtained. To provide a filter generator (pseudo-random number generation device) capable of generating.

【0018】[0018]

【発明の効果】上記のように本発明では、同期信号に同
期して動作する複数段のレジスタと各レジスタ間に排他
的論理和演算素子を有し、各レジスタに初期値の設定
後、最終段のレジスタの設定値と各排他的論理和演算素
子毎に設定された所定値との論理積のフィードバック値
を排他的論理和演算素子に入力し、排他的論理和演算素
子では前段のレジスタの出力値とフィードバック値の排
他的論理和演算を行い次段のレジスタに出力する線形フ
ィードバックレジスタを用いて、線形フィードバックレ
ジスタの初段から連続する所定段数のレジスタ値の論理
積により構成される最高次の項を有する非線形変換関数
を用いて線形フィードバックレジスタの各レジスタ値を
非線形変換して1ビットの擬似乱数出力を同期信号毎に
出力する非線形変換関数回路により、高速で、且つ、暗
号用として安全に使用で擬似乱数発生装置を提供するこ
とができる。
As described above, according to the present invention, a plurality of stages of registers operating in synchronization with a synchronization signal and an exclusive OR operation element between the registers are provided. The feedback value of the logical product of the set value of the register of the stage and the predetermined value set for each exclusive OR operation element is input to the exclusive OR operation element. Using a linear feedback register that performs an exclusive OR operation on the output value and the feedback value and outputs the result to the next-stage register, the highest-order logical product of the register values of a predetermined number of successive stages from the first stage of the linear feedback register Nonlinear conversion for nonlinearly converting each register value of a linear feedback register using a nonlinear conversion function having a term and outputting a 1-bit pseudorandom number output for each synchronization signal The number circuit, fast, and can provide a pseudo-random number generator safely used for encryption.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態の構成を示すブロック図で
ある。
FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.

【図2】ストリーム暗号装置の概略構成を示すブロック
図である。
FIG. 2 is a block diagram illustrating a schematic configuration of a stream encryption device.

【図3】フィルタジェネレータの構成を示すブロック図
である。
FIG. 3 is a block diagram showing a configuration of a filter generator.

【図4】線形フィードバックシフトレジスタの概略構成
を示すブロック図である。
FIG. 4 is a block diagram illustrating a schematic configuration of a linear feedback shift register.

【図5】図4と異なる線形フィードバックシフトレジス
タの概略構成を示すブロック図である。
FIG. 5 is a block diagram illustrating a schematic configuration of a linear feedback shift register different from FIG. 4;

【符号の説明】[Explanation of symbols]

100、201、300・・・擬似乱数発生装置、10
1、301、400、500・・・線形フィードバック
シフトレジスタ、102、103、302、・・・非線
形変換関数回路、104、203、・・・初期値設定用
入力端子、105、204、304、・・・クロック入
力用端子、106、305・・・擬似乱数出力端子、1
07〜111、402、502・・・Dフリップフロッ
プ素子、112〜115、202、401、501・・
・排他的論理和演算素子、116、・・・論理積演算素
子、200・・・ストリーム暗号装置、205・・・平
文入力端子、206・・・暗号文出力端子、303・・
・シフトレジスタ初期値設定用入力端子
100, 201, 300... Pseudorandom number generator, 10
1, 301, 400, 500 ... linear feedback shift register, 102, 103, 302 ... nonlinear conversion function circuit, 104, 203 ... input terminal for initial value setting, 105, 204, 304, ... ..Clock input terminals, 106 and 305... Pseudorandom number output terminals, 1
07 to 111, 402, 502... D flip-flop elements, 112 to 115, 202, 401, 501,.
An exclusive OR operation element, 116, an AND operation element, 200, a stream encryption device, 205, a plaintext input terminal, 206, a ciphertext output terminal, 303
・ Input terminal for shift register initial value setting

【手続補正書】[Procedure amendment]

【提出日】平成10年8月12日[Submission date] August 12, 1998

【手続補正1】[Procedure amendment 1]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0003[Correction target item name] 0003

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【0003】次に、上記した図2に示す擬似乱数発生装
置201の一例である、フィルタジェネレータの構成を
示すブロック図である図3を用いてフィルタジェネレー
タを説明する。擬似乱数発生装置300は、上記したよ
うに図2に示す擬似乱数発生装置201の一例としての
フィルタジェネレータである。線形フィードバックシフ
トレジスタ301は、擬似乱数を発生させるための元に
なる数値を得るためのレジスタである。非線形変換関数
回路302は、上記線形フィードバックシフトレジスタ
301の各レジスタの値を入力として非線形変換関数に
より変換して擬似乱数を生成して出力する。シフトレジ
スタ初期値設定用入力端子303は、非線形フィードバ
ックシフトレジスタ301の各レジスタへ初期値を設定
するための入力端子である。クロック入力用端子304
は、線形フィードバックシフトレジスタ301へ同期用
のクロックを入力する入力端子である。擬似乱数出力端
子305は、非線形変換関数回路302から出力された
擬似乱数系列を出力する端子であり、その出力は、例え
ば、図2に示す排他的論理和演算回路202に入力され
るものである。ここで、図3に示すフィルタジェネレー
タの暗号学的強度を示す指標の1つである線形複雑度に
ついて説明する。線形複雑度は、擬似乱数出力端子30
5からの擬似乱数系列の出力を模倣することが可能であ
る等価な線形フィードバックシフトレジスタのレジスタ
長で定義される。また、線形フィードバックシフトレジ
スタの初期値は、その線形フィードバックシフトレジス
タ内のある1個のレジスタの値をその線形フィードバッ
クシフトレジスタのレジスタ長の2倍分だけ特定できれ
ば、その特定値に基づいた連立1次方程式を解くことで
決定することができる。従って、レジスタ長で定義され
る線形複雑度の小さいフィルタジェネレータの擬似乱数
系列は、初期値を得るのに必要なそのレジスタ長の2倍
分のレジスタの値も少ないことになるので、擬似乱数系
列は容易に推定が可能で、暗号用としての使用は難し
い。線形フィードバックシフトレジスタのレジスタ長と
その中の1個のレジスタの値の関係については、更に、
レジスタ長がLである線形フィードバックシフトレジス
タの1個のレジスタの値がクロック入力により変遷する
周期が2−1で繰り返されるときに、その周期的なレ
ジスタの値の系列をm系列であると言う。そして、ある
時刻tにおけるm系列のレジスタ値をs(t)で表し、
数式(数1)の線形複雑度は、理論的に2項係数の数式
(数2)以上であることが、文献(RainerA.R
ueppel著の“Analysis and Des
ignof stream Ciphers,”Spr
inger−Verlagのp84−86)により証明
されている。但し、fの最高次数はk未満であり、且
つ、次の数式(数3)の最大公約数を満たすことが条件
となっている。
Next, the filter generator will be described with reference to FIG. 3, which is a block diagram showing the configuration of the filter generator, which is an example of the pseudorandom number generator 201 shown in FIG. As described above, the pseudo random number generation device 300 is a filter generator as an example of the pseudo random number generation device 201 shown in FIG. The linear feedback shift register 301 is a register for obtaining a numerical value serving as a source for generating a pseudo random number. The non-linear conversion function circuit 302 receives a value of each register of the linear feedback shift register 301 as an input, converts the value by a non-linear conversion function, and generates and outputs a pseudo random number. The shift register initial value setting input terminal 303 is an input terminal for setting an initial value to each register of the nonlinear feedback shift register 301. Clock input terminal 304
Is an input terminal for inputting a synchronization clock to the linear feedback shift register 301. The pseudorandom number output terminal 305 is a terminal that outputs the pseudorandom number sequence output from the non-linear conversion function circuit 302, and the output is input to, for example, the exclusive OR operation circuit 202 illustrated in FIG. . Here, the linear complexity which is one of the indexes indicating the cryptographic strength of the filter generator shown in FIG. 3 will be described. The linear complexity is determined by the pseudo random number output terminal 30.
5 is defined by the register length of an equivalent linear feedback shift register capable of imitating the output of the pseudo-random number sequence from No. 5. In addition, if the initial value of the linear feedback shift register can specify the value of a certain register in the linear feedback shift register by twice the register length of the linear feedback shift register, the initial value based on the specific value It can be determined by solving the following equation. Therefore, the pseudo-random number sequence of the filter generator having a small linear complexity defined by the register length also has a register value twice as large as the register length required for obtaining the initial value. Can be easily estimated and is difficult to use for encryption. Regarding the relationship between the register length of the linear feedback shift register and the value of one of the registers,
When the cycle in which the value of one register of the linear feedback shift register whose register length is L changes due to clock input is repeated at 2 L −1, the periodic series of register values is assumed to be an m series. To tell. Then, an m-series register value at a certain time t is represented by s (t),
The linear complexity of the equation (Equation 1) is theoretically greater than or equal to the equation of the binomial coefficient (Equation 2).
ueppel, "Analysis and Des
ignof stream Ciphers, "Spr
inger-Verlag p84-86). However, the condition is that the highest order of f is less than k and the greatest common divisor of the following equation (Equation 3) is satisfied.

【手続補正2】[Procedure amendment 2]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0007[Correction target item name] 0007

【補正方法】変更[Correction method] Change

【補正内容】[Correction contents]

【0007】[0007]

【数4】この図4に示す線形フィードバックシフトレジ
スタで上記した線形複雑度を保証するためには、数式
(数4)の非線形関数の最高次数の項において、上記数
式(数3)を満たすδの間隔で連続するk個のレジスタ
により線形フィードバックシフトレジスタを構成すれ
ば、上記線形複雑度以上の複雑度が得られるので保証で
きることになる。一方、線形フィードバックシフトレジ
スタとして、図4に示したもの以外の構成のものでは図
5に示すものが知られている。この図5に示した線形フ
ィードバックシフトレジスタでは、図4に示したものよ
りも高速で動作が可能である。その高速動作が可能な理
由としては、次の理由による。線形フィードバックシフ
トレジスタ500の各レジスタを構成するDフリップフ
ロップ502の処理による遅延時間をu、Dフリップフ
ロップ502間の排他的論理和演算素子501の処理に
よる遅延時間をvとし、比較するために、図4に示す線
形フィードバックシフトレジスタ400の各レジスタを
構成するDフリップフロップ402の処理による遅延時
間も図5に示すものと同様にu、排他的論理和演算素子
401の処理による遅延時間も図5に示すものと同様に
vとすると、図4に示す線形フィードバックシフトレジ
スタの場合には、各レジスタ間で最も遅延の起こる部分
は、最終段のDフリップフロップX(t)からL−1
個の排他的論理和演算素子を経て、初段のDフリップフ
ロップX(t)に至るフィードバック経路であり、そ
の遅延時間は次の数式(数5)で示される。
## EQU4 ## In order to guarantee the above-mentioned linear complexity in the linear feedback shift register shown in FIG. 4, in the term of the highest order of the nonlinear function of equation (4), δ satisfying the above equation (3) If the linear feedback shift register is constituted by k registers that are continuous at intervals of, a complexity higher than the linear complexity described above can be obtained, which can be guaranteed. On the other hand, as a linear feedback shift register, one having a configuration other than that shown in FIG. 4 is known as shown in FIG. The linear feedback shift register shown in FIG. 5 can operate at a higher speed than that shown in FIG. The reason why the high-speed operation is possible is as follows. In order to compare the delay time due to the processing of the D flip-flop 502 constituting each register of the linear feedback shift register 500 with u and the delay time due to the processing of the exclusive OR operation element 501 between the D flip-flops 502 as v, The delay time due to the processing of the D flip-flop 402 constituting each register of the linear feedback shift register 400 shown in FIG. 4 is u, and the delay time due to the processing of the exclusive OR operation element 401 is also the same as that shown in FIG. In the case of the linear feedback shift register shown in FIG. 4, the portion where the delay occurs most between the registers is the last stage D flip-flop XL (t) to L-1
This is a feedback path through the exclusive OR operation elements to the first stage D flip-flop X 1 (t), and its delay time is represented by the following equation (Equation 5).

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 同期信号に同期して動作する複数段のレ
ジスタと各レジスタ間に排他的論理和演算素子を有し、
前記各レジスタに初期値の設定後、最終段のレジスタの
設定値と前記各排他的論理和演算素子毎に設定された所
定値との論理積のフィードバック値を前記排他的論理和
演算素子に入力し、該排他的論理和演算素子では前段の
レジスタの出力値と前記フィードバック値の排他的論理
和演算を行い次段のレジスタに出力する線形フィードバ
ックシフトレジスタと、前記線形フィードバックシフト
レジスタの初段から連続する所定段数のレジスタ値の論
理積により構成される最高次の項を有する非線形変換関
数を用いて前記線形フィードバックシフトレジスタの各
レジスタ値を非線形変換して1ビットの擬似乱数出力を
前記同期信号毎に出力する非線形変換関数回路と、前記
線形フィードバックレジスタに初期値を設定する初期値
設定手段と、前記線形フィードバックシフトレジスタに
同期信号を入力する同期信号入力手段とを有することを
特徴とする擬似乱数発生装置。
An exclusive OR operation element is provided between a plurality of registers operating in synchronization with a synchronization signal and each register.
After setting the initial value in each of the registers, a feedback value of a logical product of the set value of the register in the final stage and a predetermined value set for each of the exclusive OR elements is input to the exclusive OR element. The exclusive-OR operation element performs an exclusive-OR operation on the output value of the previous-stage register and the feedback value, and outputs the result to the next-stage register. Each register value of the linear feedback shift register is non-linearly converted by using a non-linear conversion function having the highest order term formed by a logical product of register values of a predetermined number of stages, and a 1-bit pseudo random number output is output for each of the synchronization signals. A non-linear conversion function circuit for outputting to the initial value setting means for setting an initial value in the linear feedback register; Pseudorandom number generator and having a synchronization signal input means for inputting a synchronizing signal to form a feedback shift register.
JP10039677A 1998-02-05 1998-02-05 Pseudo-random number generating device Pending JPH11224183A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10039677A JPH11224183A (en) 1998-02-05 1998-02-05 Pseudo-random number generating device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10039677A JPH11224183A (en) 1998-02-05 1998-02-05 Pseudo-random number generating device

Publications (1)

Publication Number Publication Date
JPH11224183A true JPH11224183A (en) 1999-08-17

Family

ID=12559739

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10039677A Pending JPH11224183A (en) 1998-02-05 1998-02-05 Pseudo-random number generating device

Country Status (1)

Country Link
JP (1) JPH11224183A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285830A (en) * 2005-04-04 2006-10-19 National Institute Of Information & Communication Technology Intensity evaluation device for pseudo-random number generator and coder
JP2007532935A (en) * 2003-09-05 2007-11-15 ナグラビジョン エス アー Method for generating pseudo-random sequences
JP2007318547A (en) * 2006-05-26 2007-12-06 Kddi Corp Encrypting device of autosynchronous type stream cipher, decrypting device, autosynchronous type stream cipher system, mac generating device, encrypting method, decrypting method, mac generating method and program
JP4828068B2 (en) * 1999-12-02 2011-11-30 ハネウェル・インターナショナル・インコーポレーテッド Computer efficient linear feedback shift register
JP2013016173A (en) * 2011-06-30 2013-01-24 Samsung Electronics Co Ltd Data processing device and operation method thereof
RU173172U1 (en) * 2016-02-01 2017-08-15 Открытое Акционерное Общество "Пеленг" NON-LINEAR FEEDBACK Pseudorandom Generator
JP2018530280A (en) * 2015-09-15 2018-10-11 グローバル リスク アドバイザーズ Device and method for resonant encryption

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4828068B2 (en) * 1999-12-02 2011-11-30 ハネウェル・インターナショナル・インコーポレーテッド Computer efficient linear feedback shift register
JP2007532935A (en) * 2003-09-05 2007-11-15 ナグラビジョン エス アー Method for generating pseudo-random sequences
JP2006285830A (en) * 2005-04-04 2006-10-19 National Institute Of Information & Communication Technology Intensity evaluation device for pseudo-random number generator and coder
JP2007318547A (en) * 2006-05-26 2007-12-06 Kddi Corp Encrypting device of autosynchronous type stream cipher, decrypting device, autosynchronous type stream cipher system, mac generating device, encrypting method, decrypting method, mac generating method and program
JP2013016173A (en) * 2011-06-30 2013-01-24 Samsung Electronics Co Ltd Data processing device and operation method thereof
JP2018530280A (en) * 2015-09-15 2018-10-11 グローバル リスク アドバイザーズ Device and method for resonant encryption
US10778413B2 (en) 2015-09-15 2020-09-15 Global Risk Advisors Device and method for resonant cryptography
US10903984B2 (en) 2015-09-15 2021-01-26 Global Risk Advisors Device and method for resonant cryptography
RU173172U1 (en) * 2016-02-01 2017-08-15 Открытое Акционерное Общество "Пеленг" NON-LINEAR FEEDBACK Pseudorandom Generator

Similar Documents

Publication Publication Date Title
CA2723405C (en) Cryptographic system including a random number generator using finite field arithmetics
CA2633923C (en) Mixed radix number generator with chosen statistical artifacts
KR101246490B1 (en) A closed galois field cryptographic system
JP4052480B2 (en) Pseudorandom number generation method, pseudorandom number generator, and pseudorandom number generation program
US6192385B1 (en) Pseudorandom number generating method and pseudorandom number generator
JPH04250490A (en) Encrypting system based on chaos theory
JP2009528559A (en) Encryption and decryption processing method and system for realizing SMS4 encryption algorithm
JP3556461B2 (en) M-sequence phase shift coefficient calculation method
Cardell et al. Discrete linear models for the generalized self-shrunken sequences
JP3180836B2 (en) Cryptographic communication device
Fúster-Sabater et al. A simple linearization of the self-shrinking generator by means of cellular automata
Ghazi et al. Robust and efficient dynamic stream cipher cryptosystem
JPH11224183A (en) Pseudo-random number generating device
JP2950485B2 (en) Stream cipher processor
JP2000209195A (en) Cipher communication system
Kocheta et al. A review of some recent stream ciphers
Fúster-Sabater et al. Linear solutions for cryptographic nonlinear sequence generators
Pandian et al. Five decade evolution of feedback shift register: algorithms, architectures and applications
JP3533956B2 (en) Pseudo random number generator
KR100434558B1 (en) A fast block encryption algorithm
Shaker et al. New design of efficient non-linear stream key generator
Fúster-Sabater et al. Computing the linear complexity in a class of cryptographic sequences
Fúster-Sabater et al. Deterministic computation of pseudorandomness in sequences of cryptographic application
RU2140716C1 (en) Method for cryptographic conversion of digital data blocks
JP2000020284A (en) Pseudo random number generator