JPH1078864A - 乱数生成器 - Google Patents
乱数生成器Info
- Publication number
- JPH1078864A JPH1078864A JP8232160A JP23216096A JPH1078864A JP H1078864 A JPH1078864 A JP H1078864A JP 8232160 A JP8232160 A JP 8232160A JP 23216096 A JP23216096 A JP 23216096A JP H1078864 A JPH1078864 A JP H1078864A
- Authority
- JP
- Japan
- Prior art keywords
- random number
- register
- ciphering
- data
- encryption means
- 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.)
- Granted
Links
Landscapes
- Storage Device Security (AREA)
Abstract
長で決る最大周期長よりも長い最大周期長の乱数を生成
可能とする。 【解決手段】 128ビット長のM系列シフトレジスタ
200のデータが64ビットづつに分割されてDES,
FEALなどの暗号化手段110,120に供給され、
異なる鍵1,2によりそれぞれ暗号化され、両暗号化出
力は混合手段130で128ビット長又は64ビット長
として結合されて出力される。
Description
送、相手認証等に用いられ、データが更新されるレジス
タと、そのレジスタのデータが供給される暗号化手段と
を備え、特に長周期の乱数を生成することを可能とする
乱数生成器に関する。
できない安全な乱数が必要となっている。一般の乱数に
ついては、Knuth著:『準数値算法/乱数』(サイ
エンス社刊、p.3)で紹介されているように、処理の
正当性検査の再現性、計算機資源のコンパクト化(メモ
リ削減)の要請から、関数を使った乱数生成法が利用さ
れている。
{R1 ,R2 ,R3 ,…}を生成することを考える(こ
こで、添え数字はRの順番を示す)。いま、関数Fによ
り、ある初期値S1 より順番に、Si+1 =F(Si )
(i>1、整数)として、Sを更新していき、このSを
関数Gの入力として用いることにより、Ri =G
(Si )(i>1、整数)として乱数列を生成すること
ができる。この時、初期値が決ると全ての乱数列が決る
ので、理想的な乱数列とは区別し、乱数列{R1 ,
R2 ,R3,…}を疑似乱数列と呼ぶ。
とした時に、上記の乱数生成法における課題は、Ri =
G(Si ),Si+1 =F(Si )で定義される疑似乱数
列の周期が上限の|R|(Rの取り得る値の全数)にい
かに近づくか、つまり(長周期の関数をいかに得るかと
いうことと、値の分布が一様にばらつくかどうかという
ことである。長周期の関数を得る場合には、Sが取り得
る値に依存する。いま、Sが取り得る値は有限の|S|
個であり、S0 =Si となる時があるが、そのiの大き
さが重要となる。また、値の分布がばらつくかどうかに
ついては、統計的な分布により評価できる。
レジスタを、関数Gとして暗号化手段を用いて実現して
おり、その出力系列の周期はレジスタの周期に依存し、
一様分布性については暗号化手段に依存している。この
とき、レジスタとしては、装置の簡易性などの観点か
ら、線形フィードバックシフトレジスタが用いられ、特
に、レジスタ長がNビットのときに周期2N−1を実現
できるM系列シフトレジスタが利用されることが多い。
しかし、M系列は値のばらつきが不十分であるため、一
様分布性を保証するには必ず暗号化手段が必要となる。
どの観点から、既存の秘密鍵暗号方式であるDESやF
EALを用いたものが利用されるが、これらの暗号方式
では、入力されるデータ長が64ビットに制限されてい
るため、レジスタ長が64ビット以上となる長い周期を
持ったレジスタを用いることができなかった。
号方式を用いた乱数生成器は、それに用いられるレジス
タの長さが暗号化手段の入力の長さで制限されてしま
い、長周期の乱数を生成することができなかった。この
発明の目的は、既存の暗号化手段を用いて、その入力長
で決る値よりも長周期の乱数の生成を可能とする乱数生
成器を提案することにある。
長くなれば乱数生成の速度も低下するというトレードオ
フが存在するが、この発明は利用者に必要な乱数周期を
選択可能とさせ、周期が短い場合には、これに応じて乱
数の生成速度を向上させることができる乱数生成器を提
案することを目的とする。
数のビット長以上のビット長のレジスタが用いられ、そ
のレジスタ内に保持されるデータは分割されて、複数の
暗号化手段にそれぞれ入力される。これら複数の暗号化
手段の暗号化出力は混合手段により結合されて乱数とし
て出力される。
ようとした場合には、暗号化手段に、直接、既存の秘密
鍵暗号方式を用いることはできず、新たにその入力長を
もった暗号化方式を設計する必要があったが、この発明
ではその必要がない。また、レジスタとしてM系列シフ
トレジスタを用いる場合、レジスタに保持されるデータ
の周期を、線形シフトレジスタが実現できる最大周期が
保証される。
置を可変とすることにより、最大周期を変更とし、ま
た、帰還位置に応じて、値の更新されないデータが入力
される暗号化手段を無効とする手段が設けられる。一般
にレジスタの動作に必要とされる処理量と暗号化手段に
必要な処理量では、暗号化手段におけるものが圧倒的に
大きいため、不要な暗号化手段を無効にすることは、複
数の暗号化手段をシリアルに処理する場合は全体の処理
量の削減に大きな影響を与えることができる。これによ
り、乱数生成の長周期性よりも生成効率を必要とする場
合に、不要な暗号化手段を無効にすることにより乱数生
成の速度を高めることができる。
を結合するものであり、この場合、この出力乱数が入力
される相手方に応じてビット長を変更できるようにする
ことができる。例えば2つの暗号化手段の出力が各nビ
ットの場合、2nビットの入力をそのまま2nビットの
乱数出力とするもの、あるいは、例えば2nビットの入
力の偶数番目のビットを抜き出してnビットの出力とす
るものや、2nビットの入力をそれぞれnビットずつに
分け、それらのビット毎の排他的論理和をとって出力す
るもの、必要に応じてこれら出力乱数のビット長を変更
できるものなどが考えられる。
例を詳細に説明する。図1は、この発明の第一の実施例
の疑似乱数生成器の構成を示す、保持するデータが更新
されるレジスタ100のデータが、その下位ビット側と
上位ビット側との二つのデータに分割されて暗号化手段
110と暗号化手段120にそれぞれ入力される。暗号
化手段110,120には互いに異なる暗号化鍵1,2
がそれぞれ入力される。暗号化手段110,120の出
力は、混合手段130に入力され、両暗号化出力が結合
され、混合手段130の出力が乱数となる。
成器の構成を示し、図1と対応する部分に同一符号を付
けてある。この実施例ではレジスタ100の代りにM系
列シフトレジスタ200が設けられる。図3は、この発
明の第三の実施例を示し、図2中のM系列シフトレジス
タ200の代りに利用されるレジスタ長を可変とするM
系列シフトレジスタ300が用いられ、その他の点は図
1と同一である。
この例では図3の実施例に対し、周期可変型M系列シフ
トレジスタ300と暗号化手段110,120との間に
無効手段440が設けられる。無効手段440は暗号化
手段110,120にそれぞれ入力されるデータが更新
されないと、これを検出して、対応する暗号化手段の動
作を無効とする。例えば128ビットM系列シフトレジ
スタ300の帰還段が初段より64ビットより前に設定
されると、その帰還段より終段までの64ビット以上の
部分はデータが更新されない状態となる。例えば暗号化
手段110に入力されるデータが更新されないとこれが
検出され、暗号化手段110の動作が無効とされる。従
って暗号化手段110は動作しないため、暗号化手段1
20の出力のみが混合手段130に入力され、これが乱
数として出力される。暗号化手段110,120がリシ
アルに動作するように構成されている場合(電子計算機
による乱数生成は通常このようになる)。一方の暗号化
手段の動作を行わないと、その分処理量が著しく減少
し、乱数生成速度が速くなる。
00の保持データの分割は下位側と上位側とに分割する
場合に限らず、各レジスタの任意の個所のデータを集め
て、暗号化手段110に対する入力データとし、残りの
データを暗号化手段120の入力データとしてもよい。
またレジスタ100,200,300の各長さは暗号化
手段110,120の入力データ長の和よりも長いもの
としてもよい。
20の出力をそのデータ長を加算するように連結した
り、適当な個所のデータを取出したり、2つ以上のデー
タを排他的論理和をとるなどして所望のデータ長として
出力するようにできる。上述においては暗号化手段を2
個用いたが、更に長周期の乱数を発生させたい場合、2
つ以上の暗号化手段を用い、これら暗号化手段の出力を
結合してもよい。
ブロック暗号化手段を用いた乱数生成器の最大周期は2
64−1であるのに対し、この発明によると例えば128
ビットレジスタと二つの64ビットブロック暗号化手段
を用いて最大周期が2128 −1の、十分に長い周期を実
現することができる。しかも既存の暗号化手段を利用で
き、新たな暗号化手段を必要とせず、安価に、かつ簡単
に構成することができる。また発生可能な最大周期より
も短かい周期の乱数を生成させるように構成した場合
は、入力データが更新されない暗号化手段の動作を無効
とすることにより、発生速度を高速にすることができ
る。
例の機能構成を示すブロック図。
スタを用いた実施例の機能構成を示すブロック図。
機能構成を示すブロック図。
Claims (4)
- 【請求項1】 レジスタに保持されているデータを暗号
化手段へ入力し、上記レジスタに保持されているデータ
を更新し、上記暗号化手段の暗号化出力を乱数として出
力乱数生成器において、 上記暗号化手段は互いに暗号化鍵を異にする複数の暗号
化手段で構成され、 これら暗号化手段には上記レジスタに保持されている互
いに別のデータがそれぞれ供給され、 上記複数の暗号化手段の暗号化出力を結合して上記乱数
として出力する混合手段が設けられていることを特徴と
する乱数生成器。 - 【請求項2】 請求項1の乱数生成器において、 上記レジスタは、M系列シフトレジスタであることを特
徴とする乱数生成器。 - 【請求項3】 請求項2の乱数生成器において、 上記M系列シフトレジスタは周期を可変とすることがで
きるものであることを特徴とする乱数生成器。 - 【請求項4】 請求項3の乱数生成器において、 上記各暗号化手段に入力されるデータが更新されない状
態を検出し、対応する暗号化手段の動作を無効とする手
段を具備することを特徴とする乱数生成器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23216096A JP3526504B2 (ja) | 1996-09-02 | 1996-09-02 | 乱数生成器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23216096A JP3526504B2 (ja) | 1996-09-02 | 1996-09-02 | 乱数生成器 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1078864A true JPH1078864A (ja) | 1998-03-24 |
JP3526504B2 JP3526504B2 (ja) | 2004-05-17 |
Family
ID=16934943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23216096A Expired - Fee Related JP3526504B2 (ja) | 1996-09-02 | 1996-09-02 | 乱数生成器 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3526504B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100717240B1 (ko) | 2005-07-20 | 2007-05-11 | 엔에이치엔(주) | 신뢰성 있는 시퀀스 제공 방법 및 시스템 |
WO2007136236A1 (en) * | 2006-05-24 | 2007-11-29 | Sam Pyo Hong | Indicating device of fuel consumption by engine |
JP2007333854A (ja) * | 2006-06-13 | 2007-12-27 | New Japan Radio Co Ltd | 乱数発生回路 |
-
1996
- 1996-09-02 JP JP23216096A patent/JP3526504B2/ja not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100717240B1 (ko) | 2005-07-20 | 2007-05-11 | 엔에이치엔(주) | 신뢰성 있는 시퀀스 제공 방법 및 시스템 |
WO2007136236A1 (en) * | 2006-05-24 | 2007-11-29 | Sam Pyo Hong | Indicating device of fuel consumption by engine |
JP2007333854A (ja) * | 2006-06-13 | 2007-12-27 | New Japan Radio Co Ltd | 乱数発生回路 |
Also Published As
Publication number | Publication date |
---|---|
JP3526504B2 (ja) | 2004-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nandi et al. | Theory and applications of cellular automata in cryptography | |
Eastlake 3rd et al. | Randomness requirements for security | |
KR100435052B1 (ko) | 암호화장치 | |
US6961426B2 (en) | Cascaded stream cipher | |
EP1833190B1 (en) | Table splitting for cryptographic processes | |
EP1081889A2 (en) | Extended key generator, encryption / decryption unit, extended key generation method, and storage medium | |
US7720225B2 (en) | Table splitting for cryptographic processes | |
US20040096056A1 (en) | Method of encryption using multi-key process to create a variable-length key | |
JPWO2004032098A1 (ja) | 疑似乱数発生方法及び疑似乱数発生器 | |
JP2008513811A (ja) | 計算変換の方法及びシステム | |
RU2124814C1 (ru) | Способ шифрования блоков цифровых данных | |
US7024560B2 (en) | Power-residue calculating unit using Montgomery algorithm | |
JP2004258667A (ja) | N個のデジットを含むワードの擬似ランダム置換の生成方法 | |
JPH10240500A (ja) | 乱数生成装置及び方法、暗号化装置及び方法、復号装置及び方法、並びにストリーム暗号システム | |
KR100583495B1 (ko) | 암호화 방법 | |
JP4177526B2 (ja) | 乗算剰余演算方法および乗算剰余回路 | |
JP2950485B2 (ja) | ストリーム暗号処理装置 | |
JP3526504B2 (ja) | 乱数生成器 | |
JP2002217898A (ja) | 擬似乱数生成システム | |
Eastlake 3rd et al. | Rfc 4086: randomness requirements for security | |
JP2002510058A (ja) | 2進データ・ブロックの暗号変換のための方法 | |
JP2007287079A (ja) | 擬似乱数生成装置、擬似乱数生成方法および擬似乱数生成プログラム並びに暗号化装置および復号化装置 | |
JP3606418B2 (ja) | 乱数生成装置 | |
RU2188513C2 (ru) | Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки | |
Kothandan | Modified Blowfish Algorithm to Enhance its Performance and Security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040120 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20040216 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040216 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090227 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090227 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100227 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |