WO2005073842A1 - 擬似乱数生成装置および擬似乱数生成プログラム - Google Patents

擬似乱数生成装置および擬似乱数生成プログラム Download PDF

Info

Publication number
WO2005073842A1
WO2005073842A1 PCT/JP2005/001211 JP2005001211W WO2005073842A1 WO 2005073842 A1 WO2005073842 A1 WO 2005073842A1 JP 2005001211 W JP2005001211 W JP 2005001211W WO 2005073842 A1 WO2005073842 A1 WO 2005073842A1
Authority
WO
WIPO (PCT)
Prior art keywords
shift register
feedback shift
linear feedback
polynomial
primitive polynomial
Prior art date
Application number
PCT/JP2005/001211
Other languages
English (en)
French (fr)
Inventor
Wataru Inoha
Seiji Higurashi
Original Assignee
Victor Company Of Japan, Limited
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 Victor Company Of Japan, Limited filed Critical Victor Company Of Japan, Limited
Priority to JP2005517513A priority Critical patent/JPWO2005073842A1/ja
Priority to US10/587,753 priority patent/US20070174374A1/en
Publication of WO2005073842A1 publication Critical patent/WO2005073842A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/584Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register

Definitions

  • the present invention relates to a pseudo-random number generation device and a pseudo-random number generation program for generating a pseudo random number used for cryptographic communication.
  • Such encryption schemes include a common key encryption scheme and a public key encryption scheme, and are selected in accordance with the conditions of utilizing each feature. In either case, the security of the data transmitted by the encryption key is guaranteed, and the encryption key cannot be easily guessed.
  • RU public key encryption scheme
  • a pseudo-random number sequence having a long data length can be generated from a relatively short initial value for random number generation.
  • a pseudorandom number generation device in which it is difficult to predict a generated pseudorandom number can be realized by combining a plurality of linear feedback shift registers each having a primitive polynomial satisfying a specific condition as a characteristic polynomial. I have. Further, even if the initial values are not shared, it is possible to generate the same pseudo-random number sequence by sharing the selection information of a plurality of linear feedback shift registers (for example, Japanese Patent Application Laid-Open No. H10-91066). reference).
  • pseudo-random numbers are generated by a specific algorithm, and pseudo-random numbers that are subsequently generated may be inferred from initial values or a part of the generated pseudo-random number sequence. was there.
  • the present invention provides a pseudo-random number generation device and a pseudo-random number generator suitable for cryptographic communication in which it is difficult to estimate a pseudo-random number sequence to be generated after observation of a generated pseudo-random number sequence and data to be transmitted and received.
  • the purpose is to provide the program.
  • an invention that generates a pseudorandom number sequence having a predetermined bit length, comprising: a m-stage shift register; A first linear feedback shift register that outputs a bit string having a bit length; a second linear feedback shift register having an n-stage shift register and outputs a bit string having a predetermined bit length; Generating an initial value of each of the shift registers constituting the first linear feedback shift register and the second linear feedback shift register, and converting the respective initial values to the first linear feedback shift register and the second linear feedback shift.
  • An initial value generator for supplying a register, and the second linear feedback shift according to predetermined conditions.
  • a polynomial coefficient generator for generating a coefficient of a characteristic polynomial of a register and supplying the coefficient to the second linear feedback shift register; a primitive polynomial as the characteristic polynomial of the first linear feedback shift register; and specifying the primitive polynomial.
  • a primitive polynomial storage section for storing a plurality of pieces together with identification information, and one primitive polynomial stored in the primitive polynomial storage section is selected according to a predetermined condition, and the primitive polynomial is selected.
  • a primitive polynomial selector for supplying a coefficient of a polynomial as a coefficient of a characteristic polynomial to the first linear feedback shift register; a bit string output from the first linear feedback shift register; and a second linear feedback shift register And a pseudo-random number output unit that generates and outputs a pseudo-random number sequence having a predetermined bit length from a logical operation of each bit based on the bit sequence output from.
  • the pseudorandom number generation device includes identification information of the primitive polynomial selected by the primitive polynomial selector, Initial values of the shift registers constituting the first linear feedback shift register and the second linear feedback shift register generated by the generation unit, and the initial values of the coefficients of the characteristic polynomial generated by the polynomial coefficient generation unit
  • the initial data is generated, the initial data is transmitted to another pseudo-random number generating device, and when the initial data is received from another pseudo-random number generating device, the initial data is generated from the initial data.
  • the initial values of the feedback shift register and the second feedback shift register are extracted to obtain the first line.
  • a feedback shift register and the second linear feedback shift register are supplied with the initial data, the coefficient of the characteristic polynomial is extracted and supplied to the second linear feedback shift register, and the primitive polynomial is extracted from the initial data.
  • a communication unit that extracts identification information and supplies the identification information to the primitive polynomial selection unit, wherein the primitive polynomial selection unit is stored in the primitive polynomial storage unit based on the identification information extracted by the communication unit. The point is that one primitive polynomial is selected and the coefficients of the primitive polynomial are supplied to the first linear feedback shift register.
  • an invention according to a third aspect is a pseudorandom number generation program executed by a computer for generating a pseudorandom number sequence having a predetermined bit length.
  • the generation program includes a first linear feedback shift register having an m-stage shift register and outputting a bit sequence having a predetermined bit length, and an n-stage shift register having a shift register having an m-stage. And a second linear feedback shift register that outputs the first linear feedback shift register and the second linear feedback shift register that form the second linear feedback shift register according to predetermined conditions.
  • Initial value generating means for generating an initial value and supplying each of the initial values to the first linear feedback shift register and the second linear feedback shift register; and A polynomial coefficient generating means for generating a coefficient of a characteristic polynomial of the shift register and supplying the coefficient to the second linear feedback shift register; a primitive polynomial as a characteristic polynomial of the first linear feedback shift register; A primitive polynomial storage means for storing a plurality of pieces together with identification information to be specified, and one primitive polynomial stored in the primitive polynomial storage means according to a predetermined condition, and a coefficient of the primitive polynomial as a coefficient of a characteristic polynomial.
  • Primitive polynomial selection means for supplying to the first linear feedback shift register; Based on a bit string output from the first linear feedback shift register and a bit string output from the second linear feedback shift register, a pseudo-random number of a predetermined bit length is obtained from a logical operation of each bit.
  • the gist is a pseudorandom number generation program that functions as a pseudorandom number output unit that generates and outputs a sequence.
  • the pseudo random number generation program stores the identification information of the primitive polynomial selected by the primitive polynomial selecting means, An initial value of each shift register included in the first linear feedback shift register and the second linear feedback shift register generated by the value generation unit, and a coefficient of the characteristic polynomial generated by the polynomial coefficient generation unit. If the initial data is transmitted to another pseudorandom number generator and the initial data is received from another pseudorandom number generator, the first feedback is generated from the initial data. Each of a shift register and the second feedback shift register.
  • An initial value is extracted and supplied to the first linear feedback shift register and the second linear feedback shift register, and the coefficient of the characteristic polynomial is extracted from the initial data to obtain the second linear feedback shift register.
  • One of the primitive polynomials stored in the primitive polynomial storage means is selected based on the identification information.
  • the gist is that the coefficients of the primitive polynomial are supplied to the first linear feedback shift register.
  • FIG. 1 is a diagram illustrating a functional configuration of a pseudo-random number generation device according to a first embodiment.
  • FIG. 2 is a diagram showing a circuit configuration of a first linear feedback shift register.
  • FIG. 3 is a diagram showing a circuit configuration of a second linear feedback shift register.
  • FIG. 4 is a flowchart showing a pseudo random number generation process according to the first embodiment.
  • FIG. 5 is a diagram showing transition of values of a first linear feedback shift register and a second linear feedback shift register.
  • FIG. 6 is a diagram showing a functional configuration of a pseudo-random number generation device according to a second embodiment.
  • FIG. 7 is a flowchart showing a pseudo random number generation process according to the second embodiment.
  • FIG. 8 is a diagram showing a functional configuration of a pseudorandom number generation device according to a third embodiment.
  • FIG. 9 is a flowchart showing a pseudo random number generation process according to the third embodiment.
  • bit length of the pseudo-random number generated by the pseudo-random number generation device 1 is h + 1.
  • a pseudo-random number generator 1A includes a first linear feedback shift register 2, a second linear feedback shift register 3, an initial value generator 4, a polynomial coefficient generator 5, And a pseudo random number output unit 6.
  • the first linear feedback shift register 2 is an m-th order linear feedback shift register, and has m flip-flop circuits (details will be described later). Also, the second linear (The details will be described later).
  • the initial value generation unit 4 obtains using initial information input from the outside or predetermined conditions such as constantly changing information such as date and time information and physical phenomena such as thermal noise.
  • the first linear feedback shift register 2 generates an initial value ia (ia, ia, ⁇ , ia, ia) of each flip-flop that composes the first linear feedback shift
  • the polynomial coefficient generating unit 5 uses initial information input from the outside or predetermined conditions such as constantly changing information such as date and time information and physical phenomena such as thermal noise. S (s, s, s, s, s) of the characteristic polynomial of the second linear feedback shift register 3 in accordance with the condition obtained by the second linear feedback shift register 3.
  • the pseudo-random number output unit 6 includes a bit string ra (ra, ra,..., Ra, ra) sequentially output from the first linear feedback shift register 2, and a second linear feedback shift register.
  • the first linear feedback shift register 2 includes m flip-flop circuits, an AND circuit, and an X ⁇ R circuit.
  • the characteristic polynomial of the first linear feedback shift register 2 is a predetermined primitive polynomial ax m + ax " 1 + ax m — 2 +
  • the coefficient a (a, ⁇ ⁇ ⁇ , a) of the equation is set.
  • the second linear feedback shift register 3 includes n flip-flop circuits, an AND circuit, and an X ⁇ R circuit. If the characteristic polynomial of the second linear feedback shift register 3 is bx n + bx " 1 + bx n — 2 +... + bx 2 + bx + b, A n n-1 n-2 2 1 0
  • the initial value generation unit 1A When the pseudorandom number generation device 1A starts the pseudorandom number generation process, first, the initial value generation unit
  • the polynomial coefficient generation unit 5 calculates the coefficients s (s, s, s, , S, s) (step S02), and the second linear feedback shift register nl n-2 2 1
  • initial values ia ia, ia,
  • FB,..., FB, FB are set to the initial ib (ib, ib,..., ib, ib), and each AND circuit Is set to the coefficient s (s, s,..., S, s) of the characteristic polynomial. Note that the second linear
  • step S 04 when a clock signal is input to the first linear feedback shift register 2 (step S 04), the first linear feedback shift register 2 performs an operation and outputs a bit ra (step S 04).
  • step S05 when a clock signal is input to the second linear feedback shift register 3 (step S06), the second linear feedback shift register 3 performs an operation and outputs bit rb.
  • the first linear feedback shift register 2 and the second linear feedback shift register 3 increment the value of the counter k by one (k ⁇ k + l) (Step S09), and the value of the counter k Is determined (step S10). If the value of the counter k is equal to or smaller than h, the first linear feedback shift register 2 returns to step S04 and outputs bit ra, and the k + 1 second linear feedback shift register 3 returns to step S06 and outputs bit rb. Then pseudo k + 1
  • the pseudo random number output unit 6 generates a bit r.
  • the pseudorandom number generation device 1 ends the pseudorandom number generation process, and the bit r generated so far
  • R, r are pseudorandom numbers r (r, r
  • step S I 1 It is output as h-1 h (step S I 1).
  • an 8-bit pseudorandom number r is output
  • the primitive polynomial of the first linear feedback shift register 2 is x 7 + x 3 + l
  • the flip-flop circuit of the first linear feedback shift register 2 is 7
  • the initial value ib (ib, ib, ..., ib, ib) (1, 1, 1, 1, 0, 0, 0, 0)
  • the first linear feedback shift register 2 In the bits shift to FA ⁇ FA, FA ⁇ FA, ⁇ , FA ⁇ FA (FA, FA, FA), FA
  • the feedback shift register 2 outputs "0" as ra.
  • the second linear feedback shift register 3 bit-counts FB ⁇ FB, FB ⁇ FB,... FB ⁇ FB (FB ⁇ FB). , FB, FB,
  • Rb, rb, rb (1, 1, 1, 1, 1, 0, 0, 1) and outputs (ra, ra, ..., ra
  • a pseudorandom number r (r, r, ⁇ ⁇ ⁇ , r, r) (l, 1, 1, 1, 0, 0, 1, 0) is output from the other logical sum.
  • a pseudorandom number generator 1B includes a first linear feedback shift register 2, a second linear feedback shift register 3, an initial value generator 4, a polynomial coefficient generator 5, It has a pseudo-random number output unit 6, a primitive polynomial selection unit 7, and a primitive polynomial storage unit 8.
  • the same components as those in the first embodiment are denoted by the same reference numerals, and detailed description thereof will be omitted.
  • the primitive polynomial selection unit 7 selects one primitive polynomial stored in the primitive polynomial storage unit 8 according to initial information input from the outside, and as a characteristic polynomial, a coefficient a (a, ⁇ ⁇ , &) Are supplied to the first linear feedback shift register 2.
  • the primitive polynomial storage unit 8 stores a plurality of primitive polynomials for setting each AND circuit of the first linear feedback shift register 2 together with identification information.
  • a number can be used as identification information for specifying a primitive polynomial.
  • it is referred to as an identification number.
  • this identification number it is possible to set each AND circuit with a smaller amount of information than the coefficients of the primitive polynomial.
  • the primitive polynomial storage unit 8 Identification number ⁇ . "00 ⁇ 7 + ⁇ 3 +1, identification number ⁇ .” 0 ⁇ ⁇ 7 + ⁇ 3 + ⁇ 2 + ⁇ + 1, identification number No.
  • the primitive polynomial selection unit 7 selects one primitive polynomial from the primitive polynomial storage unit 8 according to initial information input from the outside. Select (step S21), and supply the selected coefficients of the primitive polynomial to the first linear feedback shift register 2 as the coefficients a (a,..., A) of the characteristic polynomial.
  • the initial value generation unit 4 generates an initial value ia (ia, ia,..., Ia, ia) and an initial value ib (ib) in accordance with initial information input from the outside or predetermined conditions. , ib,
  • Step S22 (Step S22), and supplies the respective initial values to the first linear feedback shift register 2 and the second linear feedback shift register 3.
  • the polynomial coefficient generating unit 5 calculates the coefficients s (s, s, s, s, s, s, ⁇ ⁇ ⁇ , s, s) (Step S23) and supplies it to the second linear feedback shift register 3.
  • the first linear feedback shift register 2 and the second linear feedback shift register 3 include a primitive polynomial selection unit 7, an initial value generation unit 4, and a polynomial coefficient generation unit 5.
  • the initial value ia (ia, ia, ⁇ ⁇ ⁇ , ia, ia) is set to 0, and the primitive polynomial
  • the coefficient a (a,..., A) of the characteristic polynomial supplied from the selection unit 7 is set. Also, the second line
  • n-l n-2 10 is set to the initial value ib (ib, ib, ⁇ ⁇ ⁇ ,-, ib), and each AND circuit has a characteristic polynomial
  • the coefficient s (s, s, ⁇ ⁇ ⁇ , s, s) is set. Note that the second linear feedback shift shift n-l n-2 2 1 in FIG.
  • step S04 step S11
  • step S25 step S25, step S32
  • the coefficients of the characteristic polynomial in two pseudo-random number generators for example, the pseudo-random number generator 1 provided on the transmitting device side and the pseudo random number generating device 1 provided on the receiving device side
  • the pseudo-random number generation device 1 C includes a first linear feedback shift register 2, a second linear feedback shift register 3, an initial value generation unit 4, a polynomial coefficient generation It has a unit 5, a pseudo-random number output unit 6, a primitive polynomial selection unit 7, a primitive polynomial storage unit 8, and a communication unit 9.
  • the same components as those in the first embodiment and the second embodiment are denoted by the same reference numerals, and detailed description thereof will be omitted.
  • the letter “t” is attached to the constituent elements of the pseudorandom number generator 1 on the initial data transmitting side, and the letter “r” is added to the constituent elements of the pseudorandom number generator 1 on the initial data receiving side. .
  • the communication unit 9 includes an identification number of the primitive polynomial selected by the primitive polynomial selector 7, an initial value ia (ia, ia, ..., ia, ia) generated by the initial value generator 4, and an initial value ib (ib , ib, ⁇ ⁇ ⁇ , 3 ⁇ 4,
  • nl n-2 2 1 contains the identification number of the primitive polynomial, the initial value of the coefficient of the characteristic polynomial, and that of each initial value. It has a function of generating initial data composed of each bit string, and a function of transmitting and receiving the initial data to and from another pseudo-random number generator 1.
  • the initial value ib (ib, ib,..., Ib, ib) and the coefficient s (s, s,%) Of the characteristic polynomial are obtained from the initial data.
  • the primitive polynomial selection unit 7t selects one primitive polynomial from the primitive polynomial storage unit 8t in accordance with externally input initial information.
  • the coefficients of the selected primitive polynomial are supplied to the first linear feedback shift register 2t as the coefficients a (a, ..., a) of the characteristic polynomial and
  • the initial value generation unit 4t generates an initial value ia (ia, ia, ..., ia, ia) and an initial value ib (ib) in accordance with initial information input from the outside or a predetermined condition. , ib,
  • step S42 each initial value is stored in the first linear feedback shift register.
  • the polynomial coefficient generation unit 5t calculates the coefficient s (s, s,%) Of the characteristic polynomial of the second linear feedback shift register 3t according to the initial information input from the outside or a predetermined condition. ⁇ ⁇ , s, s) (step S43), and the second linear feedback shift register n-1 n-2 2 1
  • the coefficient a (a,..., A) of the characteristic polynomial supplied from the starting polynomial selector 7t is set.
  • FB, FB are set to the initial ib (ib, ib,..., ib, ib), and each AND circuit is
  • the coefficient s (s, s, ⁇ ⁇ ⁇ , s, s) of the characteristic polynomial is set. Note that the second linear feed shown in Fig. 3
  • an arbitrary value may be set similarly to the other coefficients.
  • the communication unit 9t generates initial data including the identification number of the primitive polynomial, the coefficient of the characteristic polynomial, and the bit value of each initial value, and transmits the initial data to the pseudorandom number generator lCr (step S45). .
  • the communication unit 9t may encrypt and transmit the initial data by a predetermined encoding method.
  • the identification number of the primitive polynomial is 2 bits ("10")
  • the initial value ia is 7 bits (“1010101")
  • the initial value ib is 8 bits ("11110000")
  • the coefficient s of the characteristic polynomial is 7 If it is a bit (“0111011")
  • the initial data is a 24-bit data system IK identification number I Initial value ia I Initial value ib
  • the pseudorandom number generation device ICt operates according to the first embodiment (step S04,
  • step S46 step S46
  • the communication unit 9r of the pseudo-random number generator lCr receives the initial values ib (ib, ib,%) From the initial data.
  • the initial value ia (ia, ia, ..., ia, ia) m-1 m-2 10 is extracted from the initial data, and supplied to the first linear feedback shift register 2r.
  • the identification number of the primitive polynomial is extracted from, and supplied to the primitive polynomial selector 7r. If the received initial data is encoded, the communication unit 9 decodes the initial data to obtain the initial data.
  • the primitive polynomial selection unit 7r selects one primitive polynomial corresponding to the identification number from the primitive polynomial storage unit 8r (step S53).
  • the coefficient of the selected primitive polynomial is used as the characteristic polynomial coefficient a (a,
  • the pseudorandom number generation device lCr outputs the pseudorandom number r (r, r,..., R, r) by performing the same processing as in the first embodiment (step S04 and step S11) (step S55).
  • the pseudorandom number generation device 1 may be realized by causing a general-purpose computer to execute a pseudorandom number generation program describing the above functions.
  • This pseudorandom number generation program may be read from a recording medium and executed by a general-purpose computer, or may be transmitted from the outside via a network and executed by a general-purpose computer.
  • the present invention it is possible to always generate a pseudo-random number sequence having a period longer than a predetermined M sequence, and it is possible to arbitrarily set coefficients of a characteristic polynomial that is not limited to only initial values. Even if a random number sequence is observed, it is difficult to guess the pseudo-random number system IJ that will be generated thereafter, and the security of the generated pseudo-random number sequence can be ensured, and the security of the transmitted data is guaranteed. You. Unless the correspondence between the identification information and the primitive polynomial is weak, it is difficult to decipher the transmitted data.
  • the selection of the primitive polynomial set as the characteristic polynomial of the first linear feedback shift register uses the identification information, so that a smaller amount of data is required than when the coefficient is transmitted and received. That is, if the identification information is smaller than the primitive polynomial, the information amount can be reduced.

Abstract

 擬似乱数生成装置(1)は、第1線形フィードバックシフトレジスタ(2)、第2線形フィードバックシフトレジスタ(3)、初期値生成部(4)、多項式係数生成部(5)および擬似乱数出力部(6)を有する。初期値生成部(4)は、初期値を生成し、第1線形フィードバックシフトレジスタ(2)および第2線形フィードバックシフトレジスタ(3)へ供給する。多項式係数生成部(5)は、特性多項式の係数を生成して第2線形フィードバックシフトレジスタ(3)へ供給する。擬似乱数出力部(6)は、第1線形フィードバックシフトレジスタ(2)および第2線形フィードバックシフトレジスタ(3)から順次出力されるビット列を基に、各ビットの排他的論理和から擬似乱数列を生成、出力する。

Description

明 細 書
擬似乱数生成装置および擬似乱数生成プログラム
技術分野
[0001] 本発明は、暗号通信に利用される擬似乱数を生成する擬似乱数生成装置および 擬似乱数生成プログラムに関する。
背景技術
[0002] 現在、電話や無線、インターネット等におけるデータ通信では、通信されるデータを 第三者による盗聴や改ざんから保護するために、データの暗号化が行われている。 データの送信側では、暗号鍵を用いて送信するデータを喑号ィ匕した後送信し、受信 側では、その暗号化されたデータを受信すると、復号鍵を用いて復号化しデータを 得ている。もしこの時、第三者がデータを傍受しても、正当な復号鍵を持たないため 暗号化されたデータを復号することができず、また、意図したデータの改ざんを行うこ ともできない。
[0003] このような暗号ィヒの方式には、共通鍵暗号方式や公開鍵暗号方式があり、それぞ れの特徴をいかして利用される条件に応じて選択される。いずれの方式であっても、 暗号鍵によって通信されるデータの安全性が保障されており、その暗号鍵は容易に 推測されなレ、ように擬似乱数を用レ、る方法が知られてレ、る。
[0004] 例えば、線形フィードバックシフトレジスタによる擬似乱数の生成方法では、乱数生 成のための比較的短い初期値からデータ長の長い擬似乱数列を生成することができ るため、複数の装置で同じ擬似乱数を生成しょうとするとき、初期値を共有するだけ で良い。また、一般に、特定の条件を満たす原始多項式を特性多項式とする複数の 線形フィードバックシフトレジスタを組み合わせることで、生成される擬似乱数の予測 が困難な擬似乱数生成装置を実現可能なことが知られている。さらに、初期値を共 有しなくても、複数の線形フィードバックシフトレジスタの選択情報を共有化することで 、同じ擬似乱数列を生成することも可能である(例えば、特開平 10-91066号公報 参照)。
[0005] し力 ながら、線形フィードバックシフトレジスタを用いた擬似乱数生成装置では、 たとえ非線形な処理を組み合わせた方法であっても、ある特定のアルゴリズムで擬似 乱数が生成されるため、初期値や生成される擬似乱数列の一部からその後生成され る擬似乱数が推測される恐れがあった。
[0006] また、複数の線形フィードバックシフトレジスタ力 いくつかのレジスタを選択して擬 似乱数を生成する場合には、生成される擬似乱数列の推測は困難になるものの、任 意の係数を特性多項式とする線形フィードバックシフトレジスタを組み合わせると、生 成される擬似乱数列が必ずしも M系列(Maximum length sequences)とはならずに、 短い周期で同じ擬似乱数列を繰り返し生成してしまうという問題があるため、予め特 定の条件を満たす多項式を多数用意した中から選択して組み合わせる必要があつ た。これは実際の処理では、常に利用するわけではない線形フィードバックシフトレジ スタを実装する必要があり効率的ではなかった。
発明の開示
[0007] 本発明は、生成される擬似乱数列や送受信されるデータを観測されても、その後生 成される擬似乱数列の推測が困難な暗号通信に好適な擬似乱数生成装置および 擬似乱数生成プログラムを提供することを目的とする。
[0008] 上記目的を達成するために、第 1の態様に係る発明は、所定のビット長の擬似乱数 列を生成する擬似乱数生成装置であって、 m段のシフトレジスタを有し、所定のビット 長のビット列を出力する第 1の線形フィードバックシフトレジスタと、 n段のシフトレジス タを有し、所定のビット長のビット列を出力する第 2の線形フィードバックシフトレジスタ と、所定の条件に従って、前記第 1の線形フィードバックシフトレジスタおよび前記第 2の線形フィードバックシフトレジスタを構成する各シフトレジスタの初期値を生成し、 それぞれの当該初期値を前記第 1の線形フィードバックシフトレジスタおよび前記第 2の線形フィードバックシフトレジスタへ供給する初期値生成部と、所定の条件に従つ て、前記第 2の線形フィードバックシフトレジスタの特性多項式の係数を生成し、前記 第 2の線形フィードバックシフトレジスタへ供給する多項式係数生成部と、前記第 1の 線形フィードバックシフトレジスタの特性多項式として原始多項式を、前記原始多項 式を指定する識別情報と共に複数記憶する原始多項式記憶部と、所定の条件に従 つて、前記原始多項式記憶部に記憶されている原始多項式を 1つ選択し、その原始 多項式の係数を特性多項式の係数として前記第 1の線形フィードバックシフトレジス タへ供給する原始多項式選択部と、前記第 1の線形フィードバックシフトレジスタから 出力されるビット列と、前記第 2の線形フィードバックシフトレジスタから出力されるビッ ト列とに基づいて、各ビットの論理演算から所定のビット長の擬似乱数列を生成し、 出力する擬似乱数出力部と、を備える擬似乱数生成装置を要旨とする。
[0009] また、第 2の態様に係る発明は、第 1の態様に係る発明において、前記擬似乱数生 成装置は、前記原始多項式選択部によって選択された前記原始多項式の識別情報 、前記初期値生成部によって生成された前記第 1の線形フィードバックシフトレジスタ および前記第 2の線形フィードバックシフトレジスタを構成する各シフトレジスタの初 期値、前記多項式係数生成部によって生成された前記特性多項式の係数のそれぞ れからなるイニシャルデータを生成し、当該イニシャルデータを他の擬似乱数生成装 置へ送出し、当該イニシャルデータを他の擬似乱数生成装置から受信した場合は、 当該イニシャルデータ力ら前記第 1のフィードバックシフトレジスタと前記第 2のフィー ドバックシフトレジスタとの各初期値を抽出して前記第 1の線形フィードバックシフトレ ジスタと前記第 2の線形フィードバックシフトレジスタに供給し、当該イニシャルデータ 力 前記特性多項式の係数を抽出して前記第 2の線形フィードバックシフトレジスタ へ供給し、当該イニシャルデータから前記原始多項式の識別情報を抽出して前記原 始多項式選択部に供給する通信部を備え、前記原始多項式選択部は、前記通信部 によって抽出された前記識別情報を基に、前記原始多項式記憶部に記憶されてレ、る 原始多項式を 1つ選択し、その原始多項式の係数を前記第 1の線形フィードバックシ フトレジスタへ供給することを要旨とする。
[0010] また、上記目的を達成するために、第 3の態様に係る発明は、所定のビット長の擬 似乱数列を生成するコンピュータによって実行される擬似乱数生成プログラムであつ て、当該擬似乱数生成プログラムは、前記コンピュータを、 m段のシフトレジスタを有 し、所定のビット長のビット列を出力する第 1の線形フィードバックシフトレジスタと、 n 段のシフトレジスタを有し、所定のビット長のビット列を出力する第 2の線形フィードバ ックシフトレジスタと、所定の条件に従って、前記第 1の線形フィードバックシフトレジ スタおよび前記第 2の線形フィードバックシフトレジスタを構成する各シフトレジスタの 初期値を生成し、それぞれの当該初期値を前記第 1の線形フィードバックシフトレジ スタおよび前記第 2の線形フィードバックシフトレジスタへ供給する初期値生成手段と 、所定の条件に従って、前記第 2の線形フィードバックシフトレジスタの特性多項式の 係数を生成し、前記第 2の線形フィードバックシフトレジスタへ供給する多項式係数 生成手段と、前記第 1の線形フィードバックシフトレジスタの特性多項式として原始多 項式を、前記原始多項式を指定する識別情報と共に複数記憶する原始多項式記憶 手段と、所定の条件に従って、前記原始多項式記憶手段に記憶されている原始多 項式を 1つ選択し、その原始多項式の係数を特性多項式の係数として前記第 1の線 形フィードバックシフトレジスタへ供給する原始多項式選択手段と、前記第 1の線形フ イードバックシフトレジスタから出力されるビット列と、前記第 2の線形フィードバックシ フトレジスタから出力されるビット列とに基づいて、各ビットの論理演算から所定のビッ ト長の擬似乱数列を生成し、出力する擬似乱数出力手段として機能させる擬似乱数 生成プログラムを要旨とする。
また、第 4の態様に係る発明は、第 3の態様に係る発明において、前記擬似乱数生 成プログラムは、前記コンピュータを、前記原始多項式選択手段によって選択された 前記原始多項式の識別情報、前記初期値生成手段によって生成された前記第 1の 線形フィードバックシフトレジスタおよび前記第 2の線形フィードバックシフトレジスタを 構成する各シフトレジスタの初期値、前記多項式係数生成手段によって生成された 前記特性多項式の係数のそれぞれからなるイニシャルデータを生成し、当該ィニシ ャルデータを他の擬似乱数生成装置へ送出し、当該イニシャルデータを他の擬似乱 数生成装置から受信した場合は、当該イニシャルデータから前記第 1のフィードバッ クシフトレジスタと前記第 2のフィードバックシフトレジスタとの各初期値を抽出して前 記第 1の線形フィードバックシフトレジスタと前記第 2の線形フィードバックシフトレジス タに供給し、当該イニシャルデータから前記特性多項式の係数を抽出して前記第 2 の線形フィードバックシフトレジスタへ供給し、当該イニシャルデータから前記原始多 項式の識別情報を抽出して前記原始多項式選択手段に供給する通信手段としても 機能させ、前記原始多項式選択手段は、前記通信手段によって抽出された前記識 別情報を基に、前記原始多項式記憶手段に記憶されている原始多項式を 1つ選択 し、その原始多項式の係数を前記第 1の線形フィードバックシフトレジスタへ供給する ことを要旨とする。
図面の簡単な説明
[0012] [図 1]図 1は、第 1の実施形態における擬似乱数生成装置の機能構成を示す図であ る。
[図 2]図 2は、第 1線形フィ一ドバックシフトレジスタの回路構成を示す図である。
[図 3]図 3は、第 2線形フィードバックシフトレジスタの回路構成を示す図である。
[図 4]図 4は、第 1の実施形態における擬似乱数生成の処理を示すフローチャートで ある。
[図 5]図 5は、第 1線形フィードバックシフトレジスタと第 2線形フィードバックシフトレジ スタの値の遷移を示す図である。
[図 6]図 6は、第 2の実施形態における擬似乱数生成装置の機能構成を示す図であ る。
[図 7]図 7は、第 2の実施形態における擬似乱数生成の処理を示すフローチャートで ある。
[図 8]図 8は、第 3の実施形態における擬似乱数生成装置の機能構成を示す図であ る。
[図 9]図 9は、第 3の実施形態における擬似乱数生成の処理を示すフローチャートで ある。
発明を実施するための最良の形態
[0013] 本発明の実施形態を、図 1一図 9を用いて説明する。なお、擬似乱数生成装置 1が 生成する擬似乱数のビット長を h+ 1とする。
[0014] <第 1の実施形態 >
第 1の実施形態における擬似乱数生成装置 1Aは、図 1に示すように、第 1線形フィ ードバックシフトレジスタ 2、第 2線形フィードバックシフトレジスタ 3、初期値生成部 4、 多項式係数生成部 5、および擬似乱数出力部 6を有する。
[0015] 第 1線形フィードバックシフトレジスタ 2は、 m次の線形フィードバックシフトレジスタ であり、 m個のフリップフロップ回路を有する(詳細については後述)。また、第 2線形 のフリップフロップ回路を有する(詳細については後述)。
[0016] 初期値生成部 4は、外部から入力される初期情報、あるいは予め定められた所定の 条件、例えば、 日時情報のように常に変化する情報や熱雑音等の物理現象を利用し て得られる条件に従って、第 1線形フィードバックシフトレジスタ 2を構成する各フリツ プフロップの初期値 ia(ia , ia , ·■·, ia , ia )を生成し、第 1線形フィードバックシフト
m-1 m-2 1 0
レジスタ 2へ供給する機能と、第 2線形フィードバックシフトレジスタ 3を構成する各フリ ップフ口ップの初期値 ib(ib , ib , …, ib , ib )を生成し、第 2線形フィードバックシフ
-1 -2 1 0
トレジスタ 3へ供給する機能を有する。ただし、第 1線形フィードバックシフトレジスタ 2 からの出力が常に" 0"にならないよう、少なくとも初期値 ia 乃至 iaのいずれか 1つが
m-1 0
値 "1"であり、同様に、少なくとも初期値 ib 乃至 ibのいずれ力、 1つが値" 1"であること
-1 0
とする。
[0017] また、多項式係数生成部 5は、外部から入力される初期情報、あるいは予め定めら れた所定の条件、例えば、 日時情報のように常に変化する情報や熱雑音等の物理 現象を利用して得られる条件に従って、第 2線形フィードバックシフトレジスタ 3の特 性多項式の係数 s(s , s , ···, s , s )を生成し、第 2線形フィードバックシフトレジス
n-l n-2 2 1
タ 3へ供給する機能を有する。
[0018] また、擬似乱数出力部 6は、第 1線形フィードバックシフトレジスタ 2から順次出力さ れるビット列 ra(ra , ra , ···, ra , ra )と、および第 2線形フィードバックシフトレジスタ
0 1 h-1
3から順次出力されるビット列 rb (rb , rb , ···, rb , rb )とに基づいて、各ビットの排他
0 1 h-1
的論理和を求め所定のビット長の擬似乱数 r(r , r, ···, r , r )を生成し、出力する
0 1 h-1
機能を有する。
[0019] 第 1線形フィードバックシフトレジスタ 2は、図 2に示すように、 m個のフリップフロップ 回路と AND回路、および X〇R回路から構成される。この第 1線形フィードバックシフ トレジスタ 2の特性多項式は、予め定められた原始多項式 a xm + a x"1 + a xm2 +
m-2
■·■ + ax +ax + a (ただし、 a =1及び a =1)であり、 AND回路それぞれに原始多項
2 1 0 m 0
式の係数 a (a , ·■·, a )が設定される。
m-1 1
[0020] 従って、 a=0(0く Km)の時は、フリップフロップ FA (0く Km)力 出力される値に関係 なく AND回路からは" 0"が出力され、 a =l (0<i<m)の時は、フリップフロップ FA (0<i< i i-1 m)から出力される値が出力される。
[0021] 第 2線形フィードバックシフトレジスタ 3は、図 3に示すように、 n個のフリップフロップ 回路と AND回路、および X〇R回路から構成される。この第 2線形フィードバックシフ トレジスタ 3の特 '性多項式を b xn + b x"1 + b xn2 +… + b x2 + b x + bとすると、 A n n-1 n-2 2 1 0
ND回路それぞれに特性多項式の係数 b (b , ·■·, b =係数 s)が設定される。
n-l 1
[0022] 従って、 b =0 (0<j〈n)の時は、フリップフロップ FB (0く j〈n)力 出力される値に関係 j M
なく AND回路からは" 0"が出力され、 b =l (0<j〈n)の時は、フリップフロップ FB (0く K j M n)から出力される値が出力される。
[0023] 次に、擬似乱数生成装置 1Aの動作について、図 4のフローチャートに基づいて説 明する。
[0024] 擬似乱数生成装置 1Aが擬似乱数生成の処理を開始すると、まず、初期値生成部
4が、外部から入力される初期情報、あるいは予め定められた所定の条件に従って、 初期値 ia (ia , ia , · · ·, ia , ia )と初期値 ib (ib , ib ,…, ib , ib )を生成し (ステツ
m-1 m-2 1 0 n-l n-2 1 0 プ SOI)、それぞれの初期値を第 1線形フィードバックシフトレジスタ 2と第 2線形フィ ードバックシフトレジスタ 3へ供給する。
[0025] また、多項式係数生成部 5が、外部から入力される初期情報、あるいは予め定めら れた所定の条件に従って、第 2線形フィードバックシフトレジスタ 3の特性多項式の係 数 s (s , s , · · ·, s , s )を生成し (ステップ S02)、第 2線形フィードバックシフトレジス n-l n-2 2 1
タ 3へ供給する。
[0026] 第 1線形フィードバックシフトレジスタ 2と第 2線形フィードバックシフトレジスタ 3は、 初期値生成部 4と多項式係数生成部 5から各初期値と係数が供給されると、各フリツ プフロップ回路と AND回路に各初期値と係数を設定し、出力ビット数をカウントする カウンタ kの値を k = 0に設定する(ステップ S03)。第 1線形フィードバックシフトレジス タ 2の各フリップフロップ回路 FA , FA , ·■·, FA , FAには、初期値 ia (ia , ia ,
m - 1 m-2 1 0 m-1 m - 2
■· -, ia , ia )が設定され、各 AND回路には、原始多項式の係数 a (a , …, a )が設定
1 0 m-1 1 される。また、第 2線形フィ
n-l
FB , …, FB , FBには、初期ィ直 ib (ib , ib , …, ib , ib )が設定され、各 AND回路 には、特性多項式の係数 s (s , s , · · · , s , s )が設定される。なお、図 3の第 2線形
n-1 n-2 2 1
フィードバックシフトレジスタ 3では、 b =1, b =1としているが、 bおよび bに AND回路
n 0 n 0
を設けて、他の係数と同様に任意の値を設定できるようにしてもよい。
[0027] 次に、第 1線形フィードバックシフトレジスタ 2にクロック信号を入力すると (ステップ S 04)、第 1線形フィードバックシフトレジスタ 2は演算を行レ、、ビット raを出力する (ステ
k
ップ S05)。同様に、第 2線形フィードバックシフトレジスタ 3にクロック信号を入力する と (ステップ S06)、第 2線形フィードバックシフトレジスタ 3は演算を行レ、、ビット rbを出
k 力する(ステップ S07)。
[0028] 擬似乱数出力部 6は、第 1線形フィードバックシフトレジスタ 2からビット raが出力さ k れ、第 2線形フィードバックシフトレジスタ 3からビット rbが出力されると、両ビット値の
k
排他的論理和を求めビット rを生成する (ステップ S08)
k 。
[0029] 次に、第 1線形フィードバックシフトレジスタ 2と第 2線形フィードバックシフトレジスタ 3は、カウンタ kの値を 1つインクリメント(k—k+ l)し(ステップ S09)、カウンタ kの値 力 の値を超えたかどうか判定する(ステップ S 10)。カウンタ kの値が h以下の場合は 、第 1線形フィードバックシフトレジスタ 2はステップ S04に戻ってビット ra を出力し、 k+1 第 2線形フィードバックシフトレジスタ 3はステップ S06に戻ってビット rb を出力し、擬 k+1
似乱数出力部 6は、ビット r を生成する。
k+1
[0030] カウンタ kの値力 ¾より大きい場合は、擬似乱数生成装置 1は擬似乱数生成処理を 終了し、これまでに生成されたビット r
0, r , · · · , r , rが擬似乱数 r (r , r
1 h-1 h 0 1, · · · , r , r )
h-1 h として出力される(ステップ S I 1)。
[0031] ここで、図 5を用いて具体的に説明する。一例として、 8ビットの擬似乱数 rを出力す るものとし、第 1線形フィードバックシフトレジスタ 2の原始多項式を x7+x3+lとし、第 1線 形フィードバックシフトレジスタ 2のフリップフロップ回路を 7段構成として初期値 ia (ia ,
6 ia,…, ia, ia ) = (1, 0, 1, 0, 1, 0, 1)、第 2線形フィードバックシフトレジスタ 3のフリツ
5 1 0
プフロップ回路を 8段構成として初期値 ib (ib, ib,…, ib, ib ) = (1, 1, 1, 1, 0, 0, 0, 0
7 6 1 0
)、第 2線形フィードバックシフトレジスタ 3の特性多項式の係数 s (s , s, ·■· , s, s ) = (
7 6 2 1
0, 1, 1, 1, 0, 1, 1)がそれぞれ設定されたとする。
[0032] まず、 1回目のクロック信号が入力されると、第 1線形フィードバックシフトレジスタ 2 においては、 FA→FA 、 FA→FA 、 · · ·、 FA→FAとビットがシフトして(FA , FA , FA
0 1 1 2 5 6 6 5 4
, FA , FA , FA ) = (0, 1, 0, 1, 0, 1)となる。第 1線形フィードバックシフトレジスタ 2の
3 2 1
原始多項式を x7+x3+lなので、 FAのビッド 1"は FAから FAへ出力されるビッド 1"と
6 2 3
の排他的論理和" 0"を FAにフィードバックして図 5の +1の状態になり、第 1線形フィ
0
ードバックシフトレジスタ 2は" 0"を raとして出力する。
0
[0033] また、 1回目のクロック信号が入力されると、第 2線形フィードバックシフトレジスタ 3 におレヽては、 FB→FB 、 FB→FB 、 …ゝ FB→FBとビットカ ンフ卜して(FB , FB , FB ,
0 1 1 2 6 7 7 6 5
FB , FB , FB , FB ) = (1, 1, 1, 0, 0, 0, 0)となる。特性多項式の係数 s (s , s , …, s ,
4 3 2 1 7 6 2 s ) = (0, 1, 1, 1, 0, 1, 1)から、特性多項式は x8+x6+x5+x4+x2+x+lなので、 FBから FB
1 5 6 へ出力されるビッド '1"と、 FBから FB へ出力されるビッド '0"と、 FBから FB へ出力さ
3 4 1 2 れるビッド' 0"と、 FBから FB へ出力されるビッド '0"との排他的論理禾ロ "1"を FBにフ
0 1 0 イードバックして図 5の +1の状態になり、第 2線形フィードバックシフトレジスタ 3は" 1" を rbとして出力する。
0
[0034] 2回目のクロック信号が入力されると、第 1線形フィードバックシフトレジスタ 2および 第 2線形フィードバックシフトレジスタ 3は、同様にビットシフトを行い、原始多項式と特 性多項式に基づいてフィードバックを行い、図 5の +2の状態となり、それぞれ ra =0お
1 よび rb =1を出力する。
1
[0035] このように演算を繰り返すことによって、第 1線形フィードバックシフトレジスタ 2から は(ra , ra , · · · , ra , ra ) = (0, 0, 0, 0, 1, 0, 1, 1)、第 2線形フィードバックシフトレジス
0 1 6 7
タ 3からは(rb , rb , · · · , rb , rb ) = (1, 1, 1, 1, 1, 0, 0, 1)が出力され、(ra , ra , · · · , ra
0 1 6 7 0 1 6
, ra ) = (0, 0, 0, 0, 1, 0, 1, 1)と(rb , rb , · · · , rb , rb ) = (1, 1, 1, 1, 1, 0, 0, 1)との排
7 0 1 6 7
他的論理和から擬似乱数 r (r , r , ·■· , r , r ) = (l, 1, 1, 1, 0, 0, 1, 0)が出力される。
0 1 6 7
[0036] ぐ第 2の実施形態 >
第 2の実施形態における擬似乱数生成装置 1Bは、図 6に示すように、第 1線形フィ ードバックシフトレジスタ 2、第 2線形フィードバックシフトレジスタ 3、初期値生成部 4、 多項式係数生成部 5、擬似乱数出力部 6、原始多項式選択部 7、および原始多項式 記憶部 8を有する。なお、第 1の実施形態と同じものについては、同じ番号を付し、そ の詳細な説明を省略する。 [0037] 原始多項式選択部 7は、外部から入力される初期情報に従って、原始多項式記憶 部 8に記憶されている原始多項式を 1つ選択し、特性多項式としてその原始多項式 の係数 a (a , · · · , & )を第 1線形フィードバックシフトレジスタ 2へ供給する機能を有す る。
[0038] 原始多項式記憶部 8は、第 1線形フィードバックシフトレジスタ 2の各 AND回路を設 定するための原始多項式を識別情報と共に複数記憶する。なお、原始多項式を指 定する識別情報としては番号を用いることができる。以下、識別番号と称する。この識 別番号によって、原始多項式の係数より少ない情報量で各 AND回路を設定すること が可能であり、例えば、図 6に示すように、ビット長を 2ビットとすると、原始多項式記憶 部 8は、識別番号 Νο."00Ίΐχ73+1、識別番号 Νο."0 Ίΐχ732+χ+1、識別番号 No. "lCH x7+x4+x3+x2+l、識別番号 Νο.'Ί 'は x7+x6+x5+x4+x2+x+lとレ、うような原始多 項式を記憶する。
[0039] 次に、擬似乱数生成装置 1Bの動作について、図 7のフローチャートに基づいて説 明する。
[0040] 擬似乱数生成装置 1Bが擬似乱数生成の処理を開始すると、まず、原始多項式選 択部 7が、外部から入力される初期情報に従って、原始多項式記憶部 8から原始多 項式を 1つ選択し (ステップ S21)、その選択した原始多項式の係数を特性多項式の 係数 a (a , · · · , a )として第 1線形フィードバックシフトレジスタ 2へ供給する。
[0041] また、初期値生成部 4は、外部から入力される初期情報、あるいは予め定められた 所定の条件に従って、初期値 ia (ia , ia ,…, ia, ia )と初期値 ib (ib , ib , · · · , ib
, ib )を生成し (ステップ S22)、それぞれの初期値を第 1線形フィードバックシフトレジ スタ 2と第 2線形フィードバックシフトレジスタ 3へ供給する。
[0042] また、多項式係数生成部 5が、外部から入力される初期情報、あるいは予め定めら れた所定の条件に従って、第 2線形フィードバックシフトレジスタ 3の特性多項式の係 数 s (s , s , ·■· , s, s )を生成し (ステップ S23)、第 2線形フィードバックシフトレジス タ 3へ供給する。
[0043] 第 1線形フィードバックシフトレジスタ 2と第 2線形フィードバックシフトレジスタ 3は、 原始多項式選択部 7、初期値生成部 4、および多項式係数生成部 5から各初期値と 係数が供給されると、各フリップフロップ回路と AND回路に各初期値と係数を設定し 、出力ビット数をカウントするカウンタ kの値を k=0に設定する (ステップ S24)。第 1線 形フィードバックシフトレジスタ 2の各フリップフロップ回路 FA FA
m-1, FA , · · ·,
m-2 1, FA
0 には、初期値 ia (ia , ia , ·■·, ia, ia )が設定され、各 AND回路には、原始多項式
m-1 m-2 1 0
選択部 7から供給された特性多項式の係数 a (a , ·■·, a )が設定される。また、第 2線
m-1 1
形フィードバックシフトレジスタ 3の各フリップフロップ回路 FB , FB ,…, FB, FBに
n-l n-2 1 0 は、初期値 ib (ib , ib ,■·■,¾, ib )が設定され、各 AND回路には、特性多項式の
n-l n-2 1 0
係数 s (s , s , ·■·, s, s )が設定される。なお、図 3の第 2線形フィードバックシフトレ n-l n-2 2 1
ジスタ 3では、 b =1, b =1としているが、 bおよび bに AND回路を設けて、他の係数と n 0 n 0
同様に任意の値を設定できるようにしてもよい。
[0044] 以降、第 1の実施形態 (ステップ S04—ステップ S11)と同様の処理を行って擬似乱 数 r (r,r ,■· -, r , r )を出力する(ステップ S25 ステップ S32)。
0 1 h - 1 h
[0045] <第 3の実施形態 >
第 3の実施形態として、 2つの擬似乱数生成装置 1、例えば送信装置側に設けられ た擬似乱数生成装置 1と受信装置側に設けられた擬似乱数生成装置 1とで特性多 項式の係数と初期値 (イニシャルデータ)を共有して、同じ擬似乱数を生成する擬似 乱数生成装置 1Cを示す。
[0046] 第 3の実施形態における擬似乱数生成装置 1Cは、図 8に示すように、第 1線形フィ ードバックシフトレジスタ 2、第 2線形フィードバックシフトレジスタ 3、初期値生成部 4、 多項式係数生成部 5、擬似乱数出力部 6、原始多項式選択部 7、原始多項式記憶部 8、および通信部 9を有する。なお、第 1の実施形態および第 2の実施形態と同じもの については、同じ番号を付し、その詳細な説明を省略する。また、便宜的に、ィニシ ャルデータ送信側の擬似乱数生成装置 1の構成要件には" t"の文字を、イニシャル データ受信側の擬似乱数生成装置 1の構成要件には" r"の文字を付す。
[0047] 通信部 9は、原始多項式選択部 7が選択した原始多項式の識別番号、初期値生成 部 4が生成した初期値 ia (ia , ia ,…, ia , ia )および初期値 ib (ib , ib ,■·■,¾,
m-1 m-2 1 0 n-l n-2 1 ib )、多項式係数生成部 5が生成した特性多項式の係数 s (s , s ,…, s, s )を基
0 n-l n-2 2 1 に、原始多項式の識別番号、特性多項式の係数の初期値、および各初期値のそれ ぞれのビット列からなるイニシャルデータを生成する機能、およびそのイニシャルデー タを他の擬似乱数生成装置 1と送受信する機能を有する。
[0048] また、通信部 9は、イニシャルデータを受信した場合は、イニシャルデータから初期 値 ib (ib ,ib , ·■· , ib , ib )と特性多項式の係数 s (s , s , ·■· , s , s )とを抽出し、 n-1 n-2 1 0 n - 1 n-2 2 1 第 2線形フィードバックシフトレジスタ 3に供給する機能、イニシャルデータから初期値 ia (ia , ia , ·■· , ia, ia )を抽出し、第 1線形フィードバックシフトレジスタ 2に供給す m-1 m-2 1 0
る機能、イニシャルデータから原始多項式の識別番号を抽出し、原始多項式選択部 7に供給する機能を有する。
[0049] 次に、 2つの擬似乱数生成装置 1 Cで同じ擬似乱数を生成する際の動作について 、図 9のシーケンス図に基づいて説明する。
[0050] 擬似乱数生成装置 ICtが擬似乱数生成の処理を開始すると、まず、原始多項式選 択部 7tが、外部から入力される初期情報に従って、原始多項式記憶部 8tから原始 多項式を 1つ選択し (ステップ S41)、その選択した原始多項式の係数を特性多項式 の係数 a (a , · · · , a )として第 1線形フィードバックシフトレジスタ 2tへ供給すると共に
m-1 1
、通信部 9tへ原始多項式の識別番号を供給する。
[0051] また、初期値生成部 4tは、外部から入力される初期情報、あるいは予め定められた 所定の条件に従って、初期値 ia (ia , ia ,…, ia, ia )と初期値 ib (ib , ib , · · · , ib
m-1 m-2 1 0 n-1 n-2 1
, ib )を生成し (ステップ S42)、それぞれの初期値を第 1線形フィードバックシフトレジ
0
スタ 2t、第 2線形フィードバックシフトレジスタ 3t、および通信部 9tへ供給する。
[0052] また、多項式係数生成部 5tが、外部から入力される初期情報、あるいは予め定めら れた所定の条件に従って、第 2線形フィードバックシフトレジスタ 3tの特性多項式の 係数 s (s , s , ·■· , s, s )を生成し (ステップ S43)、第 2線形フィードバックシフトレジ n-1 n-2 2 1
スタ 3tと通信部 9tへ供給する。
[0053] 第 1線形フィードバックシフトレジスタ 2tと第 2線形フィードバックシフトレジスタ 3tは 、原始多項式選択部 7t、初期値生成部 4t、および多項式係数生成部 5tから各初期 値と係数が供給されると、各フリップフロップ回路と AND回路に各初期値と係数を設 定し、出力ビット数をカウントするカウンタ kの値を k = 0に設定する (ステップ S44)。 第 1線形フィードバックシフトレジスタ 2tの各フリップフロップ回路 FA , FA ,…, m-1 m-2 FA , FAには、初期値 ia (ia , ia , · · · , ia , ia )が設定され、各 AND回路には、原
1 0 m-1 m-2 1 0
始多項式選択部 7tから供給された特性多項式の係数 a (a , · · · , a )が設定される。
m-1 1
また、第 2線形フィードバックシフトレジスタ 3tの各フリップフロップ回路 FB , FB ,
n-1 n-2
…, FB, FBには、初期ィ直 ib (ib ,ib ,…, ib, ib )が設定され、各 AND回路には、
1 0 n-l n-2 1 0
特性多項式の係数 s (s , s , ·■· , s , s )が設定される。なお、図 3の第 2線形フィード
n-l n-2 2 1
バックシフトレジスタ 3tでは、 b =1, b =1としている力 bおよび bに AND回路を設け
n 0 n 0
て、他の係数と同様に任意の値を設定できるようにしてもよい。
[0054] また、通信部 9tは、原始多項式の識別番号、特性多項式の係数、および各初期値 のそれぞれのビット値からなるイニシャルデータを生成し擬似乱数生成装置 lCrへ送 信する(ステップ S45)。この時、通信部 9tは、所定の喑号ィ匕方式でイニシャルデータ を暗号化して送信しても良レ、。
[0055] 例えば、原始多項式の識別番号が 2ビット ("10")、初期値 iaが 7ビット ("1010101") 、初期値 ibが 8ビット("11110000")、特性多項式の係数 sが 7ビット("0111011")であ つた場合、イニシャルデータは 24ビットのデータ歹 IK識別番号 I初期値 ia I初期値 ib
I係数 s) = (101010101111100000111011)となる。
[0056] 以降、擬似乱数生成装置 ICtは、第 1の実施形態 (ステップ S04、
同様の処理を行って擬似乱数 r (r , r , · · · , r , r )を出力する(ステップ S46—ステツ
0 1 h - 1 h
プ S51)。
[0057] 一方、擬似乱数生成装置 lCrの通信部 9rは、擬似乱数生成装置 ICtからィニシャ ルデータを受信すると(ステップ S52)、イニシャルデータから初期値 ib (ib , ib ,…,
n-l n-2 ib , ib )と特性多項式の係数 s (s , s , · · · , s , s )とを抽出し、第 2線形フィードバッ
1 0 n-l n-2 2 1
クシフトレジスタ 3rに供給し、イニシャルデータから初期値 ia (ia , ia ,…, ia , ia ) m-1 m-2 1 0 を抽出し、第 1線形フィードバックシフトレジスタ 2rに供給し、イニシャルデータから原 始多項式の識別番号を抽出し、原始多項式選択部 7rに供給する。なお、受信したィ 二シャルデータが喑号ィ匕されている場合は、通信部 9は、復号化してイニシャルデー タを得る。
[0058] 原始多項式選択部 7rは、原始多項式の識別番号が供給されると、その識別番号に 該当する原始多項式を原始多項式記憶部 8rから 1つ選択し (ステップ S53)、その選 択した原始多項式の係数を特性多項式の係数 a (a , · · ·, a )として第 1線形フィード
Figure imgf000016_0001
[0059] また、第 1線形フィードバックシフトレジスタ 2rと第 2線形フィードバックシフトレジスタ 3rは、原始多項式選択部 7r、および通信部 9rから各初期値と各係数が供給されると 、各フリップフロップ回路と AND回路に各初期値と係数を設定し、出力ビット数をカウ ントするカウンタ kの値を k = 0に設定する(ステップ S54)。
[0060] 以降、擬似乱数生成装置 lCrは、第 1の実施形態 (ステップ S04 ステップ S11)と 同様の処理を行って擬似乱数 r (r, r ,…, r , r )を出力する(ステップ S55 ステツ
0 1 h - 1 h
プ S60)。
[0061] このようにして、 2つの擬似乱数生成装置 1でイニシャルデータを共有することによ つて、同じ擬似乱数を生成することが可能となる。
[0062] なお、擬似乱数生成装置 1は、上記の機能を記述した擬似乱数生成プログラムを 汎用コンピュータに実行させることによって実現させても良レ、。この擬似乱数生成プ ログラムは、記録媒体から読み取られて汎用コンピュータに実行されても良いし、ネッ トワークを介して外部から伝送されて汎用コンピュータに実行されても良い。
産業上の利用可能性
[0063] 本発明によれば、常に所定の M系列より長い周期の擬似乱数列を生成することが 可能となり、初期値だけでなぐ特性多項式の係数も任意に設定できるため、生成さ れた擬似乱数列を観測されてもその後生成される擬似乱数歹 IJを推測することは困難 であり、生成される擬似乱数列の安全性を確保することができ、通信されるデータの 安全性が保障される。識別情報と原始多項式との対応が分力 なければ、通信され るデータの解読は困難である。
[0064] また、第 1の線形フィードバックシフトレジスタの特性多項式として設定される原始多 項式の選択には、その識別情報を用いることにより、係数を送受信するより少ないデ ータ量で済む。つまり、識別情報を原始多項式より少ない情報量とすれば、情報量を 少なくすることができる。

Claims

請求の範囲
[1] 所定のビット長の擬似乱数列を生成する擬似乱数生成装置(1)であって、
m段のシフトレジスタを有し、所定のビット長のビット列を出力する第 1の線形フィ一 n段のシフトレジスタを有し、所定のビット長のビット列を出力する第 2の線形フィード 所定の条件に従って、前記第 1の線形フィードバックシフトレジスタ(2)および前記 第 2の線形フィードバックシフトレジスタ(3)を構成する各シフトレジスタの初期値を生 成し、それぞれの当該初期値を前記第 1の線形フィードバックシフトレジスタ(2)およ び前記第 2の線形フィードバックシフトレジスタ(3)へ供給する初期値生成部(4)と、 所定の条件に従って、前記第 2の線形フィードバックシフトレジスタ(3)の特性多項 式の係数を生成し、前記第 2の線形フィードバックシフトレジスタ(3)へ供給する多項 式係数生成部(5)と、
前記第 1の線形フィードバックシフトレジスタ(2)の特性多項式として原始多項式を 、前記原始多項式を指定する識別情報と共に複数記憶する原始多項式記憶部 (8) と、
所定の条件に従って、前記原始多項式記憶部(8)に記憶されている原始多項式を 1つ選択し、その原始多項式の係数を特性多項式の係数として前記第 1の線形フィ ードバックシフトレジスタ(2)へ供給する原始多項式選択部(7)と、
前記第 1の線形フィードバックシフトレジスタ(2)から出力されるビット列と、前記第 2 の線形フィードバックシフトレジスタ(3)から出力されるビット列とに基づいて、各ビット の論理演算から所定のビット長の擬似乱数列を生成し、出力する擬似乱数出力部(6 )と、
を備えることを特徴とする擬似乱数生成装置(1)。
[2] 前記擬似乱数生成装置(1C)は、
前記原始多項式選択部(7)によって選択された前記原始多項式の識別情報、前 記初期値生成部(4)によって生成された前記第 1の線形フィードバックシフトレジスタ (2)および前記第 2の線形フィードバックシフトレジスタ(3)を構成する各シフトレジス タの初期値、前記多項式係数生成部(5)によって生成された前記特性多項式の係 数のそれぞれからなるイニシャルデータを生成し、当該イニシャルデータを他の擬似 乱数生成装置(1C)へ送出し、当該イニシャルデータを他の擬似乱数生成装置(1C )から受信した場合は、当該イニシャルデータから前記第 1のフィードバックシフトレジ スタ(2)と前記第 2のフィードバックシフトレジスタ(3)との各初期値を抽出して前記第 1の線形フィードバックシフトレジスタ(2)と前記第 2の線形フィードバックシフトレジス タ(3)に供給し、当該イニシャルデータから前記特性多項式の係数を抽出して前記 第 2の線形フィードバックシフトレジスタ(3)へ供給し、当該イニシャルデータから前記 原始多項式の識別情報を抽出して前記原始多項式選択部(7)に供給する通信部( 9)を備え、
前記原始多項式選択部(7)は、前記通信部(9)によって抽出された前記識別情報 を基に、前記原始多項式記憶部(8)に記憶されている原始多項式を 1つ選択し、そ の原始多項式の係数を前記第 1の線形フィードバックシフトレジスタ(2)へ供給するこ とを特徴とする請求の範囲第 1項に記載の擬似乱数生成装置。
所定のビット長の擬似乱数列を生成するコンピュータによって実行される擬似乱数生 成プログラムであって、
当該擬似乱数生成プログラムは、前記コンピュータを、
m段のシフトレジスタを有し、所定のビット長のビット列を出力する第 1の線形フィー ドバックシフトレジスタと、
n段のシフトレジスタを有し、所定のビット長のビット列を出力する第 2の線形フィード バックシフトレジスタと、
所定の条件に従って、前記第 1の線形フィードバックシフトレジスタおよび前記第 2 の線形フィードバックシフトレジスタを構成する各シフトレジスタの初期値を生成し、そ れぞれの当該初期値を前記第 1の線形フィードバックシフトレジスタおよび前記第 2 の線形フィードバックシフトレジスタへ供給する初期値生成手段と、
所定の条件に従って、前記第 2の線形フィードバックシフトレジスタの特性多項式の 係数を生成し、前記第 2の線形フィードバックシフトレジスタへ供給する多項式係数 生成手段と、 前記第 1の線形フィードバックシフトレジスタの特性多項式として原始多項式を、前 記原始多項式を指定する識別情報と共に複数記憶する原始多項式記憶手段と、 所定の条件に従って、前記原始多項式記憶手段に記憶されてレ、る原始多項式を 1 つ選択し、その原始多項式の係数を特性多項式の係数として前記第 1の線形フィー ドバックシフトレジスタへ供給する原始多項式選択手段と、
前記第 1の線形フィードバックシフトレジスタから出力されるビット列と、前記第 2の線 形フィードバックシフトレジスタから出力されるビット列とに基づいて、各ビットの論理 演算から所定のビット長の擬似乱数列を生成し、出力する擬似乱数出力手段と、 して機能させることを特徴とする擬似乱数生成プログラム。
前記擬似乱数生成プログラムは、前記コンピュータを、
前記原始多項式選択手段によって選択された前記原始多項式の識別情報、前記 初期値生成手段によって生成された前記第 1の線形フィードバックシフトレジスタおよ び前記第 2の線形フィードバックシフトレジスタを構成する各シフトレジスタの初期値、 前記多項式係数生成手段によって生成された前記特性多項式の係数のそれぞれか らなるイニシャルデータを生成し、当該イニシャルデータを他の擬似乱数生成装置へ 送出し、当該イニシャルデータを他の擬似乱数生成装置から受信した場合は、当該 イニシャルデータ力 前記第 1のフィードバックシフトレジスタと前記第 2のフィードバ ックシフトレジスタとの各初期値を抽出して前記第 1の線形フィードバックシフトレジス タと前記第 2の線形フィードバックシフトレジスタに供給し、当該イニシャルデータから 前記特性多項式の係数を抽出して前記第 2の線形フィードバックシフトレジスタへ供 給し、当該イニシャルデータから前記原始多項式の識別情報を抽出して前記原始多 項式選択手段に供給する通信手段としても機能させ、
前記原始多項式選択手段は、前記通信手段によって抽出された前記識別情報を 基に、前記原始多項式記憶手段に記憶されている原始多項式を 1つ選択し、その原 始多項式の係数を前記第 1の線形フィードバックシフトレジスタへ供給する手段であ ることを特徴とする請求の範囲第 3項に記載の擬似乱数生成プログラム。
PCT/JP2005/001211 2004-01-30 2005-01-28 擬似乱数生成装置および擬似乱数生成プログラム WO2005073842A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005517513A JPWO2005073842A1 (ja) 2004-01-30 2005-01-28 擬似乱数生成装置および擬似乱数生成プログラム
US10/587,753 US20070174374A1 (en) 2004-01-30 2005-01-28 Pseudorandom number generator and pseudorandom number generation program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004023335 2004-01-30
JP2004-023335 2004-01-30

Publications (1)

Publication Number Publication Date
WO2005073842A1 true WO2005073842A1 (ja) 2005-08-11

Family

ID=34823869

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/001211 WO2005073842A1 (ja) 2004-01-30 2005-01-28 擬似乱数生成装置および擬似乱数生成プログラム

Country Status (4)

Country Link
US (1) US20070174374A1 (ja)
JP (1) JPWO2005073842A1 (ja)
CN (1) CN100472430C (ja)
WO (1) WO2005073842A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010263776A (ja) * 2009-04-10 2010-11-18 Denso Corp 車載モータの駆動制御方法
CN102565665A (zh) * 2010-12-17 2012-07-11 炬力集成电路设计有限公司 一种电路检测装置及方法
JP2013243656A (ja) * 2012-05-19 2013-12-05 Freescale Semiconductor Inc セキュアモジュールのための改ざん検出器
US9600237B2 (en) 2014-04-16 2017-03-21 Panasonic Intellectual Property Management Co., Ltd. Random number processing apparatus and random number processing method
WO2017150672A1 (ja) * 2016-03-03 2017-09-08 国立大学法人京都大学 乱数発生装置、乱数発生方法及びコンピュータプログラム

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4734089B2 (ja) * 2005-10-27 2011-07-27 日立オートモティブシステムズ株式会社 車載端末
CN101127575B (zh) * 2007-09-12 2010-09-01 中兴通讯股份有限公司 一种均匀分布随机数发生器及均匀分布随机数产生方法
JP5191727B2 (ja) * 2007-12-21 2013-05-08 株式会社ジャパンディスプレイイースト 表示装置
US8788552B2 (en) * 2008-01-25 2014-07-22 Tata Consultancy Services Ltd. Deterministic random number generator for cryptography and digital watermarking
KR101685173B1 (ko) * 2009-07-13 2016-12-12 주식회사 팬택 무선통신 시스템에서의 시퀀스 생성 방법 및 그 장치
CN102025389B (zh) * 2009-09-09 2014-06-11 中兴通讯股份有限公司 一种伪随机序列的生成方法及装置
US10635062B2 (en) * 2010-06-29 2020-04-28 International Business Machines Corporation Systems and methods for highly parallel processing of parameterized simulations
CN102707923A (zh) * 2011-04-25 2012-10-03 中国电子科技集团公司第三十八研究所 一种伪随机数生成电路及伪随机数产生方法
US8832167B2 (en) * 2011-07-21 2014-09-09 Vixs Systems, Inc. Random number generator
CN102314332B (zh) * 2011-07-27 2014-04-09 中国科学院计算机网络信息中心 伪随机数生成装置和方法
CN102495717A (zh) * 2011-11-24 2012-06-13 安徽建筑工业学院 第一类非线性m子序列发生器
JP2014164342A (ja) * 2013-02-21 2014-09-08 Fujitsu Semiconductor Ltd 擬似乱数生成回路および擬似乱数生成方法
US9201629B2 (en) 2013-03-14 2015-12-01 International Business Machines Corporation Instruction for performing a pseudorandom number seed operation
US8873750B2 (en) * 2013-03-14 2014-10-28 International Business Machines Corporation Instruction for performing a pseudorandom number generate operation
CN104579630A (zh) * 2013-10-25 2015-04-29 上海华力创通半导体有限公司 系统随机数生成方法
CN104636115B (zh) * 2013-11-14 2017-12-15 国家电网公司 一种真随机数后处理装置及方法
CN103645882A (zh) * 2013-12-09 2014-03-19 中颖电子股份有限公司 基于单片机的批量乱序随机数的生成方法
CN105183428A (zh) * 2015-08-12 2015-12-23 中国电子科技集团公司第四十一研究所 一种伪随机信号产生方法
CN105045561A (zh) * 2015-08-12 2015-11-11 中国电子科技集团公司第四十一研究所 一种伪随机数产生方法
CN105138306A (zh) * 2015-08-12 2015-12-09 中国电子科技集团公司第四十一研究所 一种数据位数可选的伪随机信号发生方法
CN105159652A (zh) * 2015-08-12 2015-12-16 中国电子科技集团公司第四十一研究所 一种多通道伪随机信号发生方法
US10599796B2 (en) * 2017-04-28 2020-03-24 Taiwan Semiconductor Manufacturing Co., Ltd. Metastable flip-flop based true random number generator (TRNG) structure and compiler for same
WO2020218954A1 (en) * 2019-04-23 2020-10-29 Telefonaktiebolaget Lm Ericsson (Publ) Network entities, methods, appartuses and communications networks for authenticating an event
CN111262686A (zh) * 2020-01-17 2020-06-09 通号万全信号设备有限公司 一种rssp-i安全通信的安全校验方法
CN111813374A (zh) * 2020-07-01 2020-10-23 浙江三维利普维网络有限公司 基于dsp的伪随机序列的生成方法和装置、存储介质
CN115424391B (zh) * 2022-07-20 2024-05-07 兰州大学 一种基于fpga的随机小数发生器及其生成方法
CN116382634B (zh) * 2023-05-29 2023-08-08 牛芯半导体(深圳)有限公司 伪随机码生成电路、方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61141231A (ja) * 1984-12-13 1986-06-28 Sony Corp 送信方式
JPH09179726A (ja) * 1995-12-25 1997-07-11 Nec Corp 擬似乱数発生装置
JPH11234096A (ja) * 1998-02-18 1999-08-27 Fujitsu Ltd 擬似雑音発生装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4032764A (en) * 1975-12-01 1977-06-28 Savage John E Means and method for generating permutations of a square
US5258936A (en) * 1992-08-05 1993-11-02 Motorola, Inc. Method and apparatus for generating pseudo-random numbers
US5974443A (en) * 1997-09-26 1999-10-26 Intervoice Limited Partnership Combined internet and data access system
US6188714B1 (en) * 1998-12-29 2001-02-13 Texas Instruments Incorporated Parallel M-sequence generator circuit
US6353842B1 (en) * 1999-11-23 2002-03-05 Janusz Rajski Method for synthesizing linear finite state machines

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61141231A (ja) * 1984-12-13 1986-06-28 Sony Corp 送信方式
JPH09179726A (ja) * 1995-12-25 1997-07-11 Nec Corp 擬似乱数発生装置
JPH11234096A (ja) * 1998-02-18 1999-08-27 Fujitsu Ltd 擬似雑音発生装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010263776A (ja) * 2009-04-10 2010-11-18 Denso Corp 車載モータの駆動制御方法
CN102565665A (zh) * 2010-12-17 2012-07-11 炬力集成电路设计有限公司 一种电路检测装置及方法
JP2013243656A (ja) * 2012-05-19 2013-12-05 Freescale Semiconductor Inc セキュアモジュールのための改ざん検出器
US9600237B2 (en) 2014-04-16 2017-03-21 Panasonic Intellectual Property Management Co., Ltd. Random number processing apparatus and random number processing method
WO2017150672A1 (ja) * 2016-03-03 2017-09-08 国立大学法人京都大学 乱数発生装置、乱数発生方法及びコンピュータプログラム
JPWO2017150672A1 (ja) * 2016-03-03 2018-12-27 国立大学法人京都大学 乱数発生装置、乱数発生方法及びコンピュータプログラム

Also Published As

Publication number Publication date
JPWO2005073842A1 (ja) 2007-09-13
CN100472430C (zh) 2009-03-25
CN1914590A (zh) 2007-02-14
US20070174374A1 (en) 2007-07-26

Similar Documents

Publication Publication Date Title
WO2005073842A1 (ja) 擬似乱数生成装置および擬似乱数生成プログラム
JP4905000B2 (ja) 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
JP4828068B2 (ja) コンピュータで効率的な線形フィードバック・シフト・レジスタ
JP5822970B2 (ja) 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化デバイス
JP4052480B2 (ja) 疑似乱数発生方法、疑似乱数発生器、及び疑似乱数発生プログラム
EP0839418B1 (en) Cryptographic method and apparatus for non-linearly merging a data block and a key
EP1225507B1 (en) Pseudorandom number generating apparatus or encryption or decryption apparatus using the same
JP6406350B2 (ja) 暗号処理装置、および暗号処理方法、並びにプログラム
JP2002366029A (ja) Dpaに対して安全な暗号化
JPH1153173A (ja) 擬似乱数発生方法及び装置
Lamba Design and analysis of stream cipher for network security
US8122075B2 (en) Pseudorandom number generator and encryption device using the same
JPH10240500A (ja) 乱数生成装置及び方法、暗号化装置及び方法、復号装置及び方法、並びにストリーム暗号システム
Ghazi et al. Robust and Efficient Dynamic Stream Cipher Cryptosystem
JP4470135B2 (ja) 擬似乱数生成システム
JP4857230B2 (ja) 疑似乱数生成装置及びそれを用いた暗号化処理装置
JP3358953B2 (ja) 擬似ランダムビット列生成器及びそれを使用する暗号通信方法
JP3358954B2 (ja) 擬似ランダムビット列生成器及びそれを使用する暗号通信方法
JPH1117673A (ja) 共通鍵暗号通信方法及びその通信ネットワーク
KR101076747B1 (ko) 스트림 모듈의 계층적 트리 구조를 통한 무작위 접근이 가능한 암호화/복호화 방법 및 장치
WO2009104827A1 (en) Method and apparatus for generating key stream for stream cipher, s-box for block cipher and method for substituting input vector using the s-box
Bajaj et al. Enhancement of RC5 for image encryption
KR100497130B1 (ko) 이진코드정보의암호화방법
KR100226867B1 (ko) 무선 통신의 스트림 암호 시스템
RU2239290C2 (ru) Способ поточного шифрования данных

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2007174374

Country of ref document: US

Ref document number: 200580003531.5

Country of ref document: CN

Ref document number: 2005517513

Country of ref document: JP

Ref document number: 10587753

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase
WWP Wipo information: published in national office

Ref document number: 10587753

Country of ref document: US