JPH04115616A - Random code generating device - Google Patents

Random code generating device

Info

Publication number
JPH04115616A
JPH04115616A JP2231481A JP23148190A JPH04115616A JP H04115616 A JPH04115616 A JP H04115616A JP 2231481 A JP2231481 A JP 2231481A JP 23148190 A JP23148190 A JP 23148190A JP H04115616 A JPH04115616 A JP H04115616A
Authority
JP
Japan
Prior art keywords
code
shift register
codes
generator
random
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
JP2231481A
Other languages
Japanese (ja)
Inventor
Shigeru Okita
茂 沖田
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2231481A priority Critical patent/JPH04115616A/en
Publication of JPH04115616A publication Critical patent/JPH04115616A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To shorten the time required for generating a code by reading in every NS piece of the codes of length (k) generated sequentially from a code converting means, and outputting them after rearranging every NS pieces of the codes in random order by an address generated not from a logical system. CONSTITUTION:A shift register sequence generator 131 consists of k-pieces of registers and coefficient multipliers and adders less than k-pieces, and generates shift register sequence whose period (n) is longer than NC. The code converting means 123 takes out the required signal sequence from the shift register sequence generator 131, and converts it into the code of the length (k). A code parallel substituting means 133 takes in every NS pieces of the codes of the length (k) generated sequentially from the code converting means 132 in the memory, and rearranges them by every NS pieces in the random order by a means equivalent to the retrieval of a table not by the logical system, and outputs them. But NS is selected so that an integer (m) to satisfy NS <=mXNS <=n exists. Thus, the time required for generating the code can be shortened.

Description

【発明の詳細な説明】[Detailed description of the invention]

〔発明の目的〕 (産業上の利用分野) 本発明は、パケット伝送、データ通信、データ放送、有
料放送等に利用できるランダム符号発生装置に関する。 (従来の技術) 高度なセキュリティが要求されるシステムでは、データ
パケットを伝送する場合に、データパケットに暗号をか
けることが多い。 このようなデータパケットDpは、第16図に示すよう
に、有料放送、データ放送等サービスを識別するための
ヘッダHdと、受信者を特定するための個別識別番号1
dとが、暗号化領域O8に付加されており、このような
構造のデータパケットDpが伝送路を伝送される。これ
により、当該データパケットDpは、伝達先の受信者に
確実に受信させることができる。 第17図は、上記データ構造を有するデータパケットが
伝送される通信システムを示すブロック図である。 第17図において、個別識別番号1dと、暗号化鍵符号
Keyとは、次のように使用される。 送信装2 iooは、伝送路200を介して受信装置3
00(0)〜300(Nc−1)にデータパケットDI
)を送出するようになっている。 上記送信装W100は、個別識別番号Idと暗号化鍵符
号Keyとを対応させたテーブル101を有している。 この送信装置100は、例えば受信装置300(0)に
データパケットを送信する場合、当該テーブル101か
ら個別識別番号1d(0)と暗号化鍵符号Key(0)
を取り出し、暗号化鍵符号Key(0)により暗号化回
路102において送信情報Ifを暗号化し、第2図に示
すように、この暗号化したデータを暗号化領域Dsに配
置し、かつ暗号化していない個別識別番号Idを付加し
て伝送路200に送出する。なお、このテーブル101
に個別識別番号Idに対応させた暗号化鍵符号Keyは
、ランダム符号発生装置103から得られる。 受信装置300(0) 〜300(Nc −1)側では
、上述の場合、複号、3301(0)は個別識別番号I
d(0)が一致するので暗号解読を行うが、その他の複
号器301(1)〜301(Nc −1)は個別識別番
号Id(1) 〜Id(Nc −1)が不一致であるの
で暗号解読ができない。暗号解読には、各受信装W30
0(0) 〜300(Nc −1)とも、同一の暗号化
鍵符号Keyが必要である。この暗号化鍵符号Keyは
、複号器301 (0) 〜301 (NC−1)の内
部メモリ(図示せず)に個別識別番号1d(0)〜Id
(NC−1)とともに書き込まれており、容易には読み
出せないようになっている。 ところで、故意に他人の情報を盗用しようとする者に対
しては、伝送路200から個別識別番号1dを比較的容
易に取り出すことができても、暗号化鍵符号Keyがな
ければ暗号解読ができないようなシステムとすることに
より、他人の情報の盗用を不可能にする安全対策を施し
ている。すなわち、このようなシステムにおいては、個
別識別番号1dは暗号解読のアクションの役割しかして
おらず、安全対策上は暗号化鍵符号Keyが重要な役割
を持っていることを意味している。 しかしながら、個別識別番号1dに対する暗号化鍵符号
Keyの対応づけにおいては、以下の点に留意する必要
がある。 (i)個別識別番号1dと暗号化鍵符号Keyとの関係
は、容易に判明する線形結合等で表現され得るものであ
ってはならないこと。 このようにする理由は、個別識別番号Idが伝送路20
0上から比較的容易に取り出すことができるので、個別
識別番号1dが判明すれば一定の計算により暗号化鍵符
号Keyがわかってし才うからである。これでは、高度
なセキュリティは実現できないことになる。 < rr>個別識別番号1dと暗号化鍵符号Keyは一
対一の対応とし、同一の暗号化鍵符号Keyが異なる個
別識別番号1dの組とならないこと。 このようにする理由は、故意に、複号器に入力されるパ
ケットモニタの個別識別番号1dをすげかえることによ
り、同じ暗号化鍵符号Keyをもつ他人の情報を盗用す
る可能性を防ぐためである。また、偶然にも伝送路20
0上で個別識別番号1dの部分がエラーして他人の個別
識別番号1dに化け、その化けた個別識別番号1dに対
する暗号化鍵符号Keyが自分のものとたまたま同一で
あって、自分の情報が他人に漏れてしまうことがあり得
るからである。 さて、上記(i)項については、ランダムな符号系列を
用いることによって実現するのが望ましい。例えば個別
識別番号1dを順に並べ、遂次的にランダムな符号系列
を発生させ、暗号化鍵符号Keyとして順に対応させて
ゆく。 また、上記(ii)項の条件を満たすため、過去に発生
した符号をメモリに書き込んでおき、発生した符号が過
去に発生した符号と重複しないように逐次比較すること
が必要となる。 第18図は、上述した暗号化鍵符号Keyの発生動作を
説明するためのフローチャートであり、このフローチャ
ートはランダム符号発生手段103で処理される。 第18図において、ランダム符号発生手段103が動作
しくステップ2001)、初期設定(1=0゜tc= 
O)がなされる(ステップ2002 )。ついで、ラン
ダム符号発生手段103はランダム符号C(tC)を発
生する(ステップ2003 )。ついで、定数jをリセ
ットし、j−Oとする(ステップ2004 >。そして
、定数j=tか否かを判定しくステップ2005 )、
定数j−I=tでなければ符号C(tC)が暗号化鍵符
号Key(j)であるか否かを判定しくステップ200
6 )、C(tC)≠Key(j)でなければjをイン
クリメント(j=j+1)してから(ステップ2007
) 、再びステップ2005に戻す。 また、定数j=tか否かを判定しくステップ2005)
、定数j=tであれば符号C(tC)を暗号化鍵符号K
ey(j)として出力する(ステップ2008 )。つ
いで、tをインクリメント(t=t+1)したのち(ス
テップ2009) + tが必要な符号の数Ncかを判
定しくステップ2010) 、t≠Ncの場合にtcを
インクリメント(tC= tC+ 1 )する(ステッ
プ2011 )。なお、上記インクリメント(ステップ
2011)の場合、ステップ2006でc (tc)=
 Key(j)ノときにも処理される。このインクリメ
ント(ステップ2011 )の処理が終了すると、ラン
ダム符号C(tc)の発生処理に戻る(ステップ200
3 )。なお、t=Ncの場合に終了とする(ステップ
2012)。 このような処理フローにより、例えば、第6番めの個別
識別番号1d(5)に対応する暗号化鍵符号Key(5
)については、ランダム符号発生手段103が発生した
符号C(tc) (ここで、tc≧5とする)が、過去
に発生した暗号化鍵符号Key(0)〜にey(4)の
すべて不一致のとき(ステップ2003〜2011) 
、暗号化鍵符号Key(5)= C(tc)としてメモ
リに書込み出力する(ステップ2008〜2010.2
012) 、もし、C(tc)がKey (0) 〜K
ey (4)のどれかと一致するならば、次のランダム
符号であるC(tc+1)を発生させ、それとKey(
0)〜Key(4)のそれぞれと比較する。これを全部
不一致となるまでくり返す。 このようにして、相異なるランダム符号が順次発生され
る。 なお、ここでとり上げたランダム符号発生の手段103
は、詳しくは、理論的体系をもたない符号を発生する手
段のことを意味し、例えば、さいころを振って出た目の
数字で符号が決まる符号発生手段のことを指す。以下ラ
ンダム符号とはこのような発生手段により発せられた符
号とする。 (発明が解決しようとする課題) ところで、所要の符号の数Ncが非常に大きい場合、問
題が発生する。例えば上記個別識別番号Idが30(b
it)で構成されている場合、暗号化鍵符号Keyは、
2”=11億個必要となる。このような場合、(10億
+1〉番めの暗号化鍵符号Keyを発生させるためには
、過去の10億個の符号と重複しないように少なくとも
10億回もの比較を行なう必要がある0例えば、1回当
たりの比較に要する時間が10〔μS〕であるとすると
、10億回の比較には10’  C3)の所要時間がか
かり、これは比較するのに2時間半以上時間がかかって
しまうという問題がある。 本発明は、上述して問題点に鑑みてなされてものであり
、比較の回数を小さくし、かつ符号発生に要する時間を
短くすることができるランダム符号発生装置を提供する
ことを目的とする。 〔発明の構成〕 (課題を解決するための手段) 本発明は、上記目的を達成するため、相異なる長さkの
符号をNC個発生するランダム符号発生装置において、
周期nがNCより大なるシフトレジスタ系列を発生する
に次のシフトレジスタ系列発生器と、前記シフトレジス
タ系列発生器からの所要の信号系列を取り出し、長さk
の符号に変換する符号変換手段と、前記符号変換手段か
ら遂次的に発生する長さkの符号をNS個ずつメモリー
に取込み、理論的体系でなく発生したアドレスをもって
、NS個分ずつランダムな順序に並べ換えて出力する符
号並換手段とを備えたことを特徴とする。ただし、NC
5mXN5≦nを満たす整数mが存在するように、NS
を選ぶ。 また、上記符号並換手段は、検索数NSを並べ換えるご
とに変化させればよい。 (作用) 上記従来技術においては、(t+i)番めのにey(t
)の発生にId(t)を対応させた。一般には、Idを
連番とすると、Key(t)の引数tとId(t)は同
一のものになる。tとId(t)との関係は、ランダム
か否かは問題ではない。Key(t)とtと関係かラン
ダムで、tとId(t)もこれとは独立にランダムなら
ばKey(t)とId(t)の関係もランダムである。 もちろん、tとId(t)が線形結合の関係にあっても
、Key(t)とtがランダムならば、Key(t)と
Td(t)もランダムである。したがって、本発明では
、次の条件を満たす符号を短時間に発生することである
。 第0項 発生順tと無関係な符号(ランダム符号RC(t) )
であること。 第0項 所要の符号数をNcとしたとき、(t−1)≦HeでR
c(1)は互いに同一なものが存在しない(重複しない
)。 (実施例) 以下、図面に基づいて本発明を説明する。 第1図は本発明の一実施例を示すブロック図である。 第1図において、送信装置1は、伝送路2を介して受信
袋W 3 (0)〜3(Nc −1)にテータバケッ1
−Dpを送出するようになっている。 上記送信装置1は、個別識別番号1dと暗号化鍵符号K
eyとを対応させたテーブル11を有している。この送
信装置1は、例えば受信装置3(1)(iは任意の整数
)にデータパケットを送信する場合、当該テーブル11
から個別派別番号1d(i)と暗号化鍵符号Key(i
)を取り出し、暗号化鍵符号にey(i)により暗号化
回路]2において送信情報Ifを暗号化し、この暗号化
したデータを暗号化領域O8に配置し、かつ暗号化して
いない個別識別番号向を付加して伝送路2に送出する。 なお、このテーブル11に個別識別番号1dに対応させ
た暗号化鍵符号Keyは、ランダム符号発生装置13か
ら得られる。 ここで、ランダム符号発生装置13は、相異なる長さk
の符号をNC個発生する装置であって、シフトレジスタ
系列発生器131と、符号変換手段132と、符号並換
手段133とで次のように構成されている。 上記シフトレジスタ系列発生器131は、k個のレジス
タ、1個以上に個以下の係数器、1個以上に個以下の加
算器からなり、周期nがNCより大なるシフトレジスタ
系列を発生する。 上記符号変換手段132は、前記シフトレジスタ系列発
生器131のシフトレジスタの出力、係数器の出力、あ
るいは加算器の出力から所要の信号系列を取り出して長
さkの符号に変換する。 上記符号並換手段133は、前記符号変換手段132か
ら遂次的に発生する長さkの符号をNS個ずつメモリー
に取込み、理論的体系によらないテーブルの検索に準す
る手段によりNS個分ずつランダムな順序に並べ換えて
出力する。 ただし、N05mXN5 ’;nを満たす整数mが存在
するように、NSは選ばれている。 ランダム符号発生装置13は、上述したように構成され
ている。 第2図は、シフトレジスタ系列発生器131の一例であ
って、線形帰還シフトレジスタ回路で構成した例を示す
ブロック図である。 この線形帰還シフトレジスタ回路で構成したシフトレジ
スタ系列発生器131は、クロック入力端子CTを設け
たに個のレジスタRE 10〜RE1に−1を直列接続
してなるレジスタと、係数(−り。 〜−hk−1)のに個の係数器KIO〜K Ik−1と
、(k +1 )個の加算器AD11〜AD1にと、ス
イッチSWとからなり、加算器AD1kに入力端子TI
を接続し、レジスタRE11の出力に出力端子TOを接
続している。 各レジスタRE 10〜RE Ik−1の各出力はa 
t+に一1〜atで示され、係数器に1iの出力はく〜
h・at++)で示され、加算器AD1iの出力は(−
hi  ・at+i)をO〜iまで加算した値を示して
いる。 このようなシフトレジスタ系列発生器101において、
まず、スイッチSWを最初に初期値を入力端子TIより
入力するときに開いておき、クロック入端子CTよりク
ロックをに個入力すると、各レジスタRE10〜RE 
Ik−1に初期値がセ・71−される。その後、入力端
子TIの入力信号を0“′とし、スイッチS Wを閉し
てクロック入端子CTからクロック信号を入力する。こ
れにより、各レジスタRE10〜RE Ik−1の内容
を次々に移すことをくり返すと、出力端子TOからシフ
トレジスタ系列が出力される。そして、(n−1)クロ
・ンク目に各レジスタREIO〜RE1に−1の内容が
元の初期値に戻る。このとき、このに次のシフトレジス
タ系列は周期nをもつという。 第3図は、シフトレジスタ系列発生器131の他の例で
あって、線形シフトレジスタ回路で構成した例を示すブ
ロック図である。 この線形シフトレジスタ回路で構成したシフ1ヘレジス
タ系列発生器131は、クロック入力端子CTを設けた
に個のレジスタRE21〜RE2kを直列接続してなる
レジスタと、係数(−ho〜−hk−1)のに個の係数
器に20〜K 2に−1と、k個の加算器AD20〜A
、D2に−1と、スイッチSWとからなり、加算器A 
D 20に入力端子TIを接続し、レジスタRE2にの
出力に出力端子TOを接続している。 なお、スイッチSWは、最初初期値を入力端子TIより
入力するときに開いておく。 このような線形シフトレジスタ回路で構成したシフトレ
ジスタ系列発生器131によっても第2図と同様にに次
のシフトレジスタ系列を得ることができる。 ところで、上記各シフトレジスタ系列発生器131にお
いて、扱う符号が2元シンボル(”O”°′1°“)で
構成されるならば、これらは2を法とする乗算、加算に
なる。また、9元シンボル(01、・・・、q−1)な
らば、qを法とする乗算、加算になる。したがって、例
えばq=−3の場合には、k=3次のシフトレジスタ系
列が発生することになる。 第4図は、q=3の場合のシフトレジスタ系列発生器1
31の実構成例であって、3元M系列符号発生回路を示
している。 この3元M系列符号のシフトレジスタ系列発生器131
aは、3個のレジスタRE30〜RE32を直列接続し
てなるレジスタと、係数(−hoまたは−h1)の1個
の係数器に30と、2個の加算器A D 31〜A D
 32と、スイッチSWとからなり、加算器A D 3
2に入力端子TIを接続している。各レジスタRE 3
0〜RE 32の出力をQ
[Object of the Invention] (Industrial Application Field) The present invention relates to a random code generator that can be used for packet transmission, data communication, data broadcasting, paid broadcasting, etc. (Prior Art) In systems that require a high level of security, data packets are often encrypted when they are transmitted. As shown in FIG. 16, such a data packet Dp includes a header Hd for identifying services such as paid broadcasting and data broadcasting, and an individual identification number 1 for identifying the recipient.
d is added to the encrypted area O8, and a data packet Dp having such a structure is transmitted through the transmission path. Thereby, the data packet Dp can be reliably received by the destination recipient. FIG. 17 is a block diagram showing a communication system through which data packets having the above data structure are transmitted. In FIG. 17, the individual identification number 1d and the encryption key code Key are used as follows. The transmitting device 2 ioo is connected to the receiving device 3 via the transmission path 200.
Data packet DI from 00 (0) to 300 (Nc-1)
) is sent. The transmitting device W100 has a table 101 that associates individual identification numbers Id with encryption key codes Key. For example, when transmitting a data packet to the receiving device 300(0), the transmitting device 100 generates the individual identification number 1d(0) and the encryption key code Key(0) from the table 101.
is extracted, the transmission information If is encrypted in the encryption circuit 102 using the encryption key code Key (0), and the encrypted data is placed in the encryption area Ds and encrypted as shown in FIG. It is sent to the transmission path 200 with an individual identification number Id added thereto. Note that this table 101
The encryption key code Key that corresponds to the individual identification number Id is obtained from the random code generator 103. On the receiving devices 300(0) to 300(Nc-1) side, in the above case, the multiple code and 3301(0) are the individual identification numbers I
d(0) match, so decryption is performed, but the other decoders 301(1) to 301(Nc -1) have individual identification numbers Id(1) to Id(Nc -1) that do not match. Unable to decipher the code. For decoding, each receiver W30
0(0) to 300(Nc-1) require the same encryption key code Key. This encryption key code Key is stored in the internal memory (not shown) of the decoders 301 (0) to 301 (NC-1) as individual identification numbers 1d (0) to Id.
(NC-1) and cannot be read easily. By the way, for those who intentionally try to steal someone else's information, even if the individual identification number 1d can be retrieved relatively easily from the transmission path 200, the code cannot be decoded without the encryption key code Key. By creating a system like this, we have taken security measures to make it impossible to steal someone else's information. That is, in such a system, the individual identification number 1d only plays the role of decryption action, and the encryption key code Key has an important role in terms of security measures. However, in associating the encryption key code Key with the individual identification number 1d, it is necessary to pay attention to the following points. (i) The relationship between the individual identification number 1d and the encryption key code Key must not be expressed by an easily obvious linear combination or the like. The reason for doing this is that the individual identification number Id is
This is because it can be retrieved relatively easily from above 0, so once the individual identification number 1d is known, the encryption key code Key can be found by a certain calculation. In this case, a high level of security cannot be achieved. <rr> The individual identification number 1d and the encryption key code Key should have a one-to-one correspondence, and the same encryption key code Key should not be paired with a different individual identification number 1d. The reason for doing this is to prevent the possibility of someone else's information having the same encryption key code being stolen by intentionally changing the individual identification number 1d of the packet monitor that is input to the decoder. be. Also, coincidentally, the transmission line 20
0, the individual identification number 1d part makes an error and becomes someone else's individual identification number 1d, and the encryption key code Key for that garbled individual identification number 1d happens to be the same as your own, and your information is This is because the information may be leaked to others. Now, regarding the above item (i), it is desirable to implement it by using a random code sequence. For example, the individual identification numbers 1d are arranged in order, and random code sequences are successively generated, which are then made to correspond to each other as the encryption key code Key. Furthermore, in order to satisfy the condition (ii) above, it is necessary to write codes that have occurred in the past into a memory, and to perform successive comparisons so that the codes that have occurred do not overlap with codes that have occurred in the past. FIG. 18 is a flowchart for explaining the operation of generating the encryption key code Key described above, and this flowchart is processed by the random code generation means 103. In FIG. 18, when the random code generating means 103 starts operating, step 2001), initial setting (1=0°tc=
O) is performed (step 2002). Next, the random code generating means 103 generates a random code C (tC) (step 2003). Next, the constant j is reset and set to j-O (step 2004 >. Then, it is determined whether the constant j=t or not (step 2005 ),
If the constant j-I=t, it is determined whether the code C (tC) is the encryption key code Key (j) or not.Step 200
6), unless C(tC)≠Key(j), increment j (j=j+1) and then (step 2007
), the process returns to step 2005. Also, it is determined whether the constant j=t (step 2005)
, if the constant j=t, the code C (tC) is the encryption key code K
It is output as ey(j) (step 2008). Next, after incrementing t (t=t+1) (step 2009), it is determined whether +t is the required number of codes Nc (step 2010), and if t≠Nc, tc is incremented (tC=tC+1) (step 2010). step 2011). In addition, in the case of the above increment (step 2011), c (tc)=
It is also processed when Key(j) is detected. When this increment process (step 2011) is completed, the process returns to the random code C(tc) generation process (step 200).
3). Note that the process ends when t=Nc (step 2012). Through such a processing flow, for example, the encryption key code Key(5) corresponding to the sixth individual identification number 1d(5) is
), the code C(tc) generated by the random code generation means 103 (here, tc≧5) is the same as the previously generated encryption key codes Key(0) to ey(4). When (steps 2003 to 2011)
, writes and outputs the encryption key code Key(5)=C(tc) to the memory (steps 2008 to 2010.2).
012), if C(tc) is Key (0) ~K
If it matches any of ey (4), generate the next random code C(tc+1) and combine it with Key(
0) to Key(4). Repeat this until there are no discrepancies. In this way, different random codes are generated sequentially. Note that the random code generation means 103 discussed here
Specifically, it refers to a means of generating a code that does not have a theoretical system; for example, it refers to a code generating means in which the code is determined by the number that appears when a die is rolled. Hereinafter, the term "random code" refers to a code generated by such a generating means. (Problem to be Solved by the Invention) By the way, a problem occurs when the number of required codes Nc is very large. For example, the above individual identification number Id is 30 (b
it), the encryption key code Key is
2" = 1.1 billion pieces are required. In such a case, in order to generate the (1 billion + 1)th encryption key code Key, at least 1 billion pieces are required so as not to overlap with the past 1 billion codes. For example, if the time required for each comparison is 10 [μS], it will take 10' C3) to compare 1 billion times, which is The present invention has been made in view of the above-mentioned problems, and aims to reduce the number of comparisons and shorten the time required for code generation. [Structure of the Invention] (Means for Solving the Problem) In order to achieve the above object, the present invention provides a random code generator that can generate codes of different lengths k by NC. In a random code generator that generates
To generate a shift register sequence with a period n greater than NC, extract the next shift register sequence generator and the required signal sequence from the shift register sequence generator, and set the length k.
A code conversion means converts the code into a code, and a code conversion means takes NS codes of length k sequentially generated from the code conversion means into the memory, and randomly converts each NS code using the generated addresses instead of a theoretical system. The present invention is characterized by comprising a code rearrangement means for rearranging the codes in order and outputting the rearranged codes. However, N.C.
NS so that there is an integer m that satisfies 5mXN5≦n
Choose. Further, the code rearranging means may be changed every time the search number NS is rearranged. (Operation) In the above-mentioned conventional technology, ey(t
) was made to correspond to the occurrence of Id(t). Generally, if Id is a serial number, the argument t of Key(t) and Id(t) will be the same. It does not matter whether the relationship between t and Id(t) is random or not. If the relationship between Key(t) and t is random, and t and Id(t) are also random independently of this, then the relationship between Key(t) and Id(t) is also random. Of course, even if t and Id(t) are in a linear combination relationship, if Key(t) and t are random, Key(t) and Td(t) are also random. Therefore, the object of the present invention is to generate a code that satisfies the following conditions in a short time. Code unrelated to the order of occurrence of the 0th term t (random code RC(t))
To be. When the number of codes required for the 0th term is Nc, (t-1)≦He and R
c(1) does not have the same items (does not overlap). (Example) The present invention will be described below based on the drawings. FIG. 1 is a block diagram showing one embodiment of the present invention. In FIG. 1, a transmitting device 1 transmits data buckets 1 to receiving bags W 3 (0) to 3 (Nc −1) via a transmission path 2.
-Dp is transmitted. The transmitting device 1 has an individual identification number 1d and an encryption key code K.
It has a table 11 that corresponds to ey. For example, when transmitting a data packet to a receiving device 3(1) (i is an arbitrary integer), the transmitting device 1 uses the table 11
, the individual division number 1d(i) and the encryption key code Key(i
) is extracted, and the transmission information If is encrypted in the encryption circuit]2 using the encryption key code ey(i), and this encrypted data is placed in the encryption area O8, and the data is sent to the unencrypted individual identification number. is added and sent to transmission line 2. The encryption key code Key associated with the individual identification number 1d in this table 11 is obtained from the random code generator 13. Here, the random code generator 13 has different lengths k
This device generates NC codes of , and is composed of a shift register sequence generator 131, code converting means 132, and code rearranging means 133 as follows. The shift register sequence generator 131 includes k registers, one or more coefficient units and one or more coefficient units, and one or more and one or less adders, and generates a shift register sequence whose period n is greater than NC. The code conversion means 132 extracts a desired signal sequence from the output of the shift register, the output of the coefficient unit, or the output of the adder of the shift register sequence generator 131 and converts it into a code of length k. The code rearranging means 133 fetches the codes of length k sequentially generated from the code converting means 132 into the memory, NS pieces at a time, and uses a means similar to a table search not based on a theoretical system to divide the codes into NS pieces. output in random order. However, NS is selected such that there is an integer m that satisfies N05mXN5';n. The random code generator 13 is configured as described above. FIG. 2 is a block diagram showing an example of the shift register sequence generator 131, which is constructed from a linear feedback shift register circuit. The shift register series generator 131 constituted by this linear feedback shift register circuit includes a register in which -1 is connected in series to two registers RE10 to RE1 provided with a clock input terminal CT, and a coefficient (-). -hk-1), (k+1) adders AD11 to AD1, and switches SW, and the adder AD1k has an input terminal TI.
is connected, and the output terminal TO is connected to the output of the register RE11. Each output of each register RE 10 to RE Ik-1 is a
t+ is indicated by -1~at, and the output of 1i is written to the coefficient multiplier.
h・at++), and the output of the adder AD1i is (-
It shows the value obtained by adding hi·at+i) from O to i. In such a shift register sequence generator 101,
First, the switch SW is opened when the initial value is first input from the input terminal TI, and when clocks are input from the clock input terminal CT, each register RE10 to RE
An initial value is set to Ik-1. Thereafter, the input signal at the input terminal TI is set to 0'', the switch SW is closed, and the clock signal is input from the clock input terminal CT.As a result, the contents of each register RE10 to RE Ik-1 can be transferred one after another. By repeating , the shift register series is output from the output terminal TO.Then, at the (n-1)th clock, the contents of -1 in each register REIO to RE1 are returned to their original initial values.At this time, The next shift register series is said to have a period n. Fig. 3 is a block diagram showing another example of the shift register series generator 131, which is configured with a linear shift register circuit. The shift 1 register sequence generator 131, which is configured with a shift register circuit, has a register formed by connecting registers RE21 to RE2k in series each provided with a clock input terminal CT, and a register having coefficients (-ho to -hk-1). 20~K for coefficient multipliers, -1 for 2, and k adders AD20~A
, -1 to D2, and a switch SW, and the adder A
An input terminal TI is connected to D20, and an output terminal TO is connected to the output of the register RE2. Note that the switch SW is initially opened when the initial value is input from the input terminal TI. The next shift register series can also be obtained by the shift register series generator 131 constituted by such a linear shift register circuit in the same manner as shown in FIG. By the way, in each of the shift register sequence generators 131, if the codes handled are composed of binary symbols ("O"°'1°"), these will be multiplication and addition modulo 2. Also, If it is a 9-element symbol (01, ..., q-1), it will be multiplication and addition modulo q. Therefore, for example, if q = -3, a k = 3rd order shift register series will be generated. Figure 4 shows the shift register sequence generator 1 when q=3.
31, which shows a three-dimensional M-sequence code generation circuit. Shift register sequence generator 131 for this ternary M sequence code
a is a register formed by connecting three registers RE30 to RE32 in series, one coefficient unit for coefficients (-ho or -h1), and two adders AD31 to AD.
32 and a switch SW, and an adder A D 3
2 is connected to the input terminal TI. Each register RE 3
0~RE 32 output Q

〔0〕〜Q〔2〕とする。 この実施例は、シフトレジスタ系列の中でも同一の段数
で周期が最大の系列(M系列)を発生する。一般にM系
列の周期は、n=qk−1である。 このような周期nをもつに次のシフトレジスタ系列発生
器からは、適当に符号を取り出すことにより長さkの符
号が周期nで得られる0例えば、第4図の実例のように
、CI=3の場合のに=3次のシフトレジスタ系列発生
器131aからは、n(3’−1) −(27−1)=
26が得られ、周期が26をもつシフトレジスタ系列が
発生することになる。 ここで、係数器に30は、(−ho−(−1mod3)
=2)、または(−hl = (−2mod 3)1)
となる。また、mod 3は、3を法とする演算を意味
し、上記シフトレジスタ系列発生器131aは生成多項
式H(X)=x’ +2x+1を満足する。 このようなシフトレジスタ系列発生器131aにより得
られたシフ)〜レジスタ系列を第5図に示す。 第5図(a)は、レジスタRE30〜RE32に初期値
(“O”1°“”O”)をセットしたときに、シフトレ
ジスタ系列発生器131aから得られるシフトレジスタ
系列の説明図である。 時間(time)の経過に伴う、各レジスタRE 30
〜RE 32の出力Q [2]、 Q [1]、 Q 
[01の値と、十進法(ma)の値とが示されている。 ここで、各レジスタRE30〜RE 32の出力Q[2
]、 Q [1]、 Q [01の値を十進法(g+a
)に変換するためには、 1a=3” XQ[2] +3XQ[1] +Q[O]
を使用すればよい。 第5図(b)は、レジスタRE 30〜RE 32に初
期値(“2“ ”o”’“O″)をセットした場合に、
シフトシ・ジスタ系列発生器131aから得られるシフ
トレジスタ系列の説明図である。 このような初期値の場合の時間(口me)の経過に対す
る、各レジスタRE 30〜RE 32の出力Q[2]
Q[1]、Q[0]の値と、十進法(ma)ノ値とが示
されている。 この符号系列の特徴は、シフトレジスタ系列の状態が、
各レジスタRE 30〜RE 32の内部状態の組合せ
で一意に決まる点である。したがって、この例では、第
5図(a)または同図(b)に示すように、初期値のい
かんによらず、 (Q[2]、Q[1]、Q[0] )−(200)の次
のタイムスロットでは、必ず(Q [2]、 Q [1
]、 Q [01)(020)となる。 次に、符号変換手段132の構成例を説明することにす
る。 符号変換手段132の一番簡単な構成は、シフトレジス
タ系列発生器131の具体例として第4図に示した回路
における各レジスタRE 30〜RE32の出力をその
まま取り出すようにした回路構成とすればよい。 このような符号変換手段132によれは、遂次的(シー
ケンシャル)に出力される符号系列の連続したn個は互
いに重複することがない(同一のものはない)。 これらの符号系列は、n≧Ncとすることにより、上記
条件0項を満足することになる。また、この条件0項を
満足するために、従来必要だった過去に発生した符号と
の比較は、本実施例では不要となる。しかしながら、こ
の構成例は、上記の条件0項を満たしてはいない。なぜ
なら、これらの符号系列は、線形演算により発生された
ものだからである。 そこで、上記条件0項を満たすためには、上記符号変換
手段132の出力L (t)に対して、符号並換手段1
33を用いて符号の並べ換えをすればよい。 まず、符号並換手段133は、上記符号変換手段132
の出力L (t)より遂次的に得られるNs個の符号の
組L(t) 、 L(t+1)、  ・、 L (t+
 N sl)をメモリに、順に書き込む。次に、符号並
換手段133は、理論的体系を持たないメモリアドレス
を発生させる手段により、前記データを前記メモリから
取り出してランダムに並べ換える。この出力を、R(t
) 、 R(t+1)、・・・、 R(を十N sJと
する。このとき、並べ換えるのは、NS個の符号の範囲
内である。したがって、過去に発生した符号と重複しな
いように比較する符号の対象は、(1+N5−1)番め
の符号発生のとき最大であって、(NS−1)個である
。すなわち、1億番目の符号発生においても、10億番
目の符号発生においても、比較する符号の対象は(Ns
 −1)個以下となる。 第6図は、上記構成の動作を説明をするために示すフロ
ーチャー1・である。 まず、送信装置1において動作が開始する(ステップ6
01)。ついで、送信袋W1がリセットされ、ランダム
符号発生装W1Bもリセット〈to、tc =O)され
ることになる(ステップ601)。ついで、ランダム符
号発生装置13のシフトレジスタ系列発生器131は、
シフトレジスタ系列を発生ずる(ステップ602)。つ
いで、例えば第4図のシフトレジスタ系列発生器131
aの各レジスタの出力から直接取り出すことにより構成
された符号変換手段]32をもって、長さkの符号への
変換を行い、出力Lm 、L(t+1)、  ・、L(
t+N5−1)を得る(ステップ604)。 ついで、符号並換手段133は、上記符号変換手段13
2の出力L (t)より遂次的に得られるNS個の符号
の組L(t)、L(t+1)、  ・・、L(t+MS
−1)をメモリに、順に書き込む(ステップ605)。 これは、以下のようにする。 符号並換手段133のメモリの 0番地のアドレスにL (t)を、 i番地のアドレスにL (t+ 1)を、i番地のアド
レスにL (t+i)を、(Ns −1)番地のアドレ
スにL(tlNs −1)をそれぞれ書き込む。 次に、i=0とする(ステップ606)。そして、理論
的体系を持たないメモリアドレスを発生させる手段によ
り、ランタムアドレスc Hを発生させる(ステップ6
07)。ただし、ランダムアドレスC(t)は、0≦c
 H≦(Ns −1)の関係が成立するものとする。 ついて、定数jをリセットし、j−0とする(ステップ
608)。そして、定数j−jか否かを判定しくステッ
プ609 ) 、定数j−1でなければL (tl C
(t))= R(tl j)であるか否かを判定しくス
テップ610 ) 、L (tl C(t))−R(を
十j)でなければjをインクリメント(j=j+1)し
てから〈ステップ611)、再び定数j=iか否かの判
定(ステップ609)に戻す。 また、定数j=tか否かを判定しくステップ609)、
定数j=tであればR(tlj)をL (tl C(t
))として出力する(ステップ612)。ついで、jを
インクリメント(i=i+1)したのち(ステ、・71
613 ) −iが必要な符号の数NCかを判定しくス
テップ614 ) 、i #NCの場合にtcをインク
リメン)(tc =tc±1)する(ステップ615)
。 なお、上記tcのインクリメント(ステップ615)の
処理は、L (C+ C(tl)= R(tl J)と
判定されたときにも(ステップ610)、実行される。 このインクリメント(ステップ615)の処理が終了す
ると、ランダムアドレスC(tC)の発生処理に戻る(
ステップ607)。 なお、i =Ncの場合(ステップ614)、t=t 
十N Sの処理をしくステップ616)、ついで、〔t
≦NC−1,1であるならくステップ617)、シスト
レジスタ系列の発生処理(ステップ602)に戻る。ま
た、〔t>Nc−1)であるならくステップ617 )
 、全ての処理を終了する(ステップ618)。 このように動作することにより、シフトレジスタ系列発
生器131からシフトレジスタ系列が発生し、このシフ
トレジスタ系列を符号変換手段132で符号変換し、そ
の符号変換した出力を符号並換手段133でランダムに
並べ換えることにより、ランダム符号が発生することに
なる。 このように本実施例で発生するランダム符号は、従来の
ものと比べて短時間で得ることができることになる。こ
れを以下に説明する。 従来の方法では、第18図のフローチャートに示すよう
にt番めの出力は、比較の対象が(tl)個存在した。 これと同様なフローでNs個の符号をランダムな順序に
出力するとすれば、R(tli)、  Cただし、0≦
i≦(Ns−1)である〕の発生においては、(i−1
>個が比較の対象となる。第6図に示すフローチャート
において、ステップ605以降のステップが符号並換手
段133で処理される。 上記メモリアドレスC(t)の発生確率を一様(それぞ
れ1/Ns)とすると、R(tlNs −1)を発生す
るのに必要なメモリの読み出し回数は、平均N8回であ
る。このうち、(Ns −1)回は、(Ns −2)個
の符号R(t)、 R(tl 1)  ・・・、R(を
十N5−2)のいずれかと一致する。このとき読み出し
た符号について、この順に比較するとすれば、それぞれ
と一致する確率は等しく、1/NSである。また、一致
検出までの比較(第6図のステップ607〜609によ
る)の回数は、それぞれ、12、・・・、(Ns−1)
であるから、この場合の平均比較回数は (1/(Ns −1)) X (1+2+ (Ns −
1))Ns/Ns −1・・・(1) である。 最後のNs回口は、必ず(Ns −1)回の比較を行う
ので、R(tlNs −1)を発生するのに比較する平
均回数N cmpは、 Ncmp = (Ns −1)x (Ns / (Ns
 −1))+ (Ns −7)−2Ns −1・・・(
2)である。 R(を十i)、ただし、O≦i < (NS −1) 
 を発生するときの比較対象は、(i−1)個の符号な
ので、平均比較回数は、上記(2)式のN C1apよ
り小である。 例えば、N5=100としたとき、上記(2)式より平
均比較回数は、せいぜい199程度であり、従来では(
10億+1)番目の符号出力に対して。 10億回以上の比較を必要としていた方法に比I\格段
に発生時間を短縮できる。 上述の実施例の場合を従来のものと比較してみると、1
99 /109−2/107以下に短縮することができ
ることを意味している。 なお、NSを毎回固定とすると、シフ)〜レジスタ系列
の周期nに関して、 NC6mXN5≦n        ・= (3)なる
整数mが存在するという条件が必要である(実施例参照
)。 また、並べかえの個数Nsを可変とすることも可能であ
り、このとき1番めの並べ換えをNS1とすると、上記
第(3)式は、 ことになる。 一般に、Ncとnが近い数のとき、最後のm番めの並べ
換えにて、第(4)式を満たすように、NSを小さく選
べばよい。例えば、NC=250であって、n=255
のとき、 N sl= N s2= N 53=80であるとする
と、250−80X 3≦N sm= N s4≦25
5−80x 310≦Ns4≦15         
− (5)とすれば、上記第(4)式は満たされること
になる。 また、NSを毎回ランダムに変化させると、R(1)の
ランダム性も人となる。 なお、長さkの符号への符号変換手段132は、ハード
ウェアイメージで、N個の符号並換手段133はソフト
ウェアイメージで説明してきたが、相方ともソフトでも
ハードでも実現できる。例えば、k次ソフトレジスタ系
列の発生は、レジスタの内容をまねるようにプログラム
を組めば発生できる。 本発明の一実施例は、上記したようになっている。 次に、本発明の他の実施例を以下に説明する。 第7図は、長さに=8のシフトレジスタ系列発生器の精
成例を示すブロック図である。 第7図に示す3次のシフトレジスタ系列発生回路811
は、第2図に示す線形帰還シフl−レジスタ回路の変形
例である。 この図では、レジスタ800〜807と、加算器808
〜810とで、8次のシフトレジスタ系列発生回路81
1が構成されている。このシフトレジスタ系列発生回路
811は、第2図の構成とは異なって初期値を入力する
ための入力端子TIと、スイッチSWと、シフトさせる
ためのクロック入力端子CTとを省略している。このシ
フトレジスタ系列発生回路811の信号のうち、Q [
7]、 Q [6]、 Q [5]、 Q[4]、 Q
 [3]、 Q [2]、 Q [11,Q [01を
選ぶことにより、長さkの符号を得られる。 このとき、長さ8の符号への符号変換手段812は有形
無形であるが、一般には第8図に示される論理回路で構
成できる。 第8図において、論理回路812aは、Q[7]、Q[
6]、Q[5]、Q[4]、Q[3]、Q[2]、Q[
1]、Q O、Q’ [4]、Q′[3]、Q′[2]
の入力端子と、L(t) −(b?  、  b6  
、  b5  、  b4  、  b3  、  b
2  、  bl  、  bo  )の出力端子と、
およびセレクl〜信号入力端子とを設けている。 ただし、信号の組合せ方にはある制限がある。 前にも説明したように、シフ)・レジスタ系列発生器の
状態は、シフトレジスタ811の内容で一意に決定され
る。発生された符号L (t)が、周期I〕をもつため
には、L (t)と各レジスタの内容の組合せが一対一
対応とならなければならない。したがって、Q[4]と
、Q′[4]とを同時に選ぶと、レジスタ804の内容
が重複するので、他のレジスタのうちどれかひとつは抜
けることとなる。 −aには、第2図で示す型式のシフトレジスタ発生回路
を用いた場合、右から1番めのレジスタに関しては、a
t+i 、−hi   at+i 、Σ(−h・at+
i)のうち少なくともどれがひとつを符号L (t)の
要点として選ぶことが、L(1)が周期nをもつことの
必要十分条件である。また、当然のことながら、第8図
においてL (t)の発生途中でセレクト信号を変化さ
せ、組合せを変えると周期[lは保証されない。 第7図のシフトレジスタ系列発生回路811を用いた生
成多項式H(×)は、 H(x)=x” +x’ +x3+x2+1の場合の長
さ8の符号L([)の発生例を次に説明することにする
。 第9図(1)〜同図(3)は、初期値を(Q [7]、
 Q[6]、Q[5]、Q[4]、Q[3]、Q[2]
、Q[1]、Q[0] )(10101011)とする
と、時刻(time)に対する、出力Q [7]、 Q
 [6]、 Q [5]、 Q [4]、 Q L3]
、 Q [2]、Q[月、 Q [01の値と、出力Q
′[4]、Q′[3]、Q′[2]の値と、十六進数丁
na、rnb、mCの値を示している。 また、十人進数m a、 m b、 m Cは、長さ8
への変換の例として、 ma = (Q [7]、Q [6]、Q [5]、Q
 [4]、Q [3]、Q [21Q [1コ、Q[O
]) mb = (Q[7]、Q[6]、Q[5]、Q′[4
]、Q′[3]Q’ [2]、Q[1]、Q[O] >
mc = <Q[7]、Q[6]、Q[5]、Q′[4
]、Q’ [3]Q′[2]、Q[1]、Q[0]  
)で求められる。 第10図は長さ8の符号への符号変換手段を、シリアル
/パラレル変換回路を用いて構成しt二側を示すブロッ
ク図である。 長さ8の符号への符号変換手段812bは、レジス9 
RE 80〜RE 87を直列接続し、各レジスタRE
80〜RE87にクロックを入力可能し、レジスタRE
88に出力Q[0]を入力し、かつ各レジスタRE80
〜RE 88の出力がら出力L(をン一(b7 、 b
6 。 b5.b4.b3.b2.bl、bo)を得る。にうし
たものである。 これのクロック信号は、第7図に示すシフトレジスタ系
列発生回路811のシフ1〜クロツクと同一のものであ
る。この場合、L(t)は8クロツク前の第7図のシフ
トレジスタ系列発生回路811の各レジスタの内容と一
致する。 シフトレジスタ系列は、M系列だけとは限らない 第11図に、M系列でない8次のシフトレジスタ系列発
生器の実施例を示す。 M系列でない8次のシフl−レジスタ系列発生器811
bは、第7図のシフトレジスタ系列発生回路とは、加算
器808a、 809a、 810a、 810bで、
出力QE7]、 Q [6]、 Q [4]、 Q [
1] を加算して、レジスタ807に入力し、Q′[7
]、Q′[6]、Q′[4]、Q′[1]を得られるよ
うにした点が異なる。 このシフトレジスタ系列発生器811bによれば、生成
多項式H(×)は、 )−+(x)= (x+ 1 )’  (x5+x” 
+ 1.)=x8→−x7+x6+x’ +x+1とし
て得られる。 これは、初期値をQ[7]〜Q[0]の順に、(1oo
ooooo)のようにセットすると、n = 4 X 
31= 124          ・・・(6)の周
期をもつ系列を発生する。 この系列を、長さ8の符号の符号変換手段により以下の
ように変換する9 第12図(1)、同図(2)は、初期値が(Q[7]〜
Q(O] )= (10000000)のときに、−周
期n=124における時刻(time)に対する、出力
Q[7]〜Q[0]の値と、出力Q′[7]、Q′[6
]、Q′[4]、Q′[1]の値と、三つの七人進数m
amb、mCの値(符号変換手段の値)をそれぞれ示さ
れている。 また、1六進数m a、 m b、 m Cは、長さ8
への変換の例どして、 m a = (Q [7]、 Q [6]、 Q [5
]、 Q [4]、 Q [3]、 Q [2]、 Q
 [1]、 Q [0] ) mb = (Q′[7]、Q′[6]、Q[5]、Q′
[4]、Q[3]、Q[2]、Q’ [1]、Q[O]
 )m c −(Q ’ [7]、 Q [6]、 Q
 [5]、 Q ’ [4]、 Q [3]Q[2]、
Q” [1]、Q[O] )で求められる。 第13図は、初期値が(Q [7]〜Q[O])=(1
1010000)のときに、−周期n=64における時
刻(tinge)に対する、出力Q[7] 〜Q[O]
の値と、出力Q’ [7]、Q’ [6]、Q’ [4
]、Q’ [1]の値と、三つの十人進数ma、mb、
mcの値(符号変換手段の値)をそれぞれ示されている
。 また、十人進数m a、 m b、 m Cは、長さ8
への変換の例として、 m a = (Q [7]、 Q [6]、 Q [5
]、 Q [4]、 Q [3]、 Q [2]、 Q
 [1]、 Q [0] ) mb −(Q′[7]、Q′[6]、Q[51,Q′[
4]、Q[3]、Q[2] Q′[月、Q[O]) m c = (Q ′[7]、 Q [6]、 Q [
5]、 Q ′[4]、 Q [3]Q[2]、Q′[
1]、Q[0] ’)で求められる。 上記は、同じ回路で初期値のみを違えたものである。簡
便には、第15図と16図で取り得ないレジスタの値を
初期値として与えてみると、n124の場合と、n−6
2の場合とで、Sa同士で比較すると、一致する符号が
ないことがわかる。 これは、シフトレジスタ系列発生器の状態がレジスタの
内容に代表されるからで、124種のAグループと、6
2種のBグループとが存在し、それぞれグループ内のど
の初期値を読み込んでも周期n−124か、n=62の
符号L (t)を発生することができる。また、初期値
の操作により、L (t)とじてAグループとBグルー
プに対応する符号が混在するものも得ることができる。 例えば、初期値(10000000)より順次符号L(
t)を発生させ、連中で時間(time) (t = 
50 )において、強制的に(11010000)を読
み込ませるとAグループからBグループに移る。 そして、L (50)からL(50+61)を発生した
とこれで、再び初期値を、第12図(1)の時間(ti
neHt= 50)に対応するところの(100100
11)を読み込ませると、再びAグループにもどる。 このように、n = 124 +62= 186個の重
複しない符号L (t)を得ることができるわけである
。 シフトレジスタ系列の特徴は、こうしたことが第12図
、第13図をあらかじめ持っていなくても遂次的な操作
で可能であることが大きな特徴であり、nが大の場合に
有効である。 次に、NSの符号の符号並換手段の実施例を第14図に
示す。 並べ換えの動作は、第6図に示すフローチャートにより
行うものとし、N5=30の場合の例である。 L([)の符号は並べ換え前て、第9図(1)のmaと
同一である。R(t)は、並べ換え後で最初の90個を
示す。Ns個内での比較は、符号自体で行ったが、過去
に発生したメモリア)・レスとの比較でも可能である。 L (t)のNs個をランダムに並べ換えることは、0
〜(Ns −1)のアドレスをランダムに、しかも重複
しないで発生することに等価である。 したがって、たとえばアドレスを(7,0,11,10
)と過去に発生したならば、次に発生ずるアドレスは(
7,0,11,10)以外であればよい。 このために、第6図のフローチャートにおいて、ステッ
プ610での比較は、アドレスであるもの同士を比較す
ればよい(つまり、C(t)−iかとする)、この場合
、N5=30ならば、Jは0≦j≦29なので、5ビツ
トで表現でき、その比較は5ビツトでよいことになる。 もしも、R(t)として、50ビツト必要ならば、比較
のビット数は、1/10になる。 また、メモリアドレスの発生順序を、Ns個の並べ換え
ごとに変えることは必ずしも必要でなく、テーブルとし
て固定のランダムなアドレスのセットを、持っていても
よい。この場合は、第6図のフローチャートのステップ
601は、「t←0、tc←0」について、「t←0」
とし、同図フローチャートのステップ608の「j←0
」を「j←0、t、 C←0」とすることに相当する。 第15図は、第14図のL(t) 、R(t)のものと
同じ系列であり、NC5mXN5≦n(・・・(3)式
)を満たさないものの例である。 すなわち、上記例は、上記第(3)式を満たさないとき
は、この例のように、R(242) =(29)hex
 = <00101001)=R(10)において重複
することになる。 このような実施例によっても、符号並換手段が実現する
ことができる。 本発明の実施例は、上述したように、必要なランダム符
号R(t)の数NCが大きいとき、符号発生に要する時
間の短縮できる効果がある。また、本実施例ては、R(
[)の符号発生時に要する時間の比率は、並へ換えの個
数NSに対し、((2NS−1> / t i以下てあ
り、t=109、Ns =100とすれば、2/107
以下の時間で発生できることになる。 〔発明の効果〕 以上説明してきたとおり、本発明は、必要なランダム符
号R(t)の数NCが大きいとき、符号発生に要する時
間の短縮できる効果がある。また、本発明は、R(t)
の符号発生時に要する時間の比率は並べ換えの個数に対
して著しく短い時間で発生することができる。
[0] to Q[2]. This embodiment generates a sequence (M sequence) with the same number of stages and the maximum period among the shift register sequences. Generally, the period of the M sequence is n=qk-1. From the next shift register sequence generator having such a period n, a code of length k can be obtained with a period n by appropriately extracting the code.For example, as in the example shown in FIG. 4, CI= In the case of 3, from the third-order shift register sequence generator 131a, n(3'-1) - (27-1) =
26 is obtained, and a shift register sequence with a period of 26 will be generated. Here, 30 in the coefficient unit is (-ho-(-1 mod 3)
=2), or (-hl = (-2mod 3)1)
becomes. Further, mod 3 means an operation modulo 3, and the shift register sequence generator 131a satisfies the generator polynomial H(X)=x'+2x+1. A shift register sequence obtained by such a shift register sequence generator 131a is shown in FIG. FIG. 5(a) is an explanatory diagram of the shift register series obtained from the shift register series generator 131a when the initial values ("O"1°""O") are set in the registers RE30 to RE32. Each register RE 30 as time passes
~RE 32 output Q [2], Q [1], Q
[01 value and decimal (ma) value are shown. Here, the output Q[2 of each register RE30 to RE32
], Q [1], Q [01 values in decimal notation (g+a
), 1a=3” XQ[2] +3XQ[1] +Q[O]
You can use . FIG. 5(b) shows that when the initial values ("2""o"'"O") are set in the registers RE 30 to RE 32,
FIG. 3 is an explanatory diagram of a shift register sequence obtained from a shift register sequence generator 131a. Output Q[2] of each register RE 30 to RE 32 with respect to the passage of time (mouth me) in case of such an initial value
The values of Q[1], Q[0] and the decimal (ma) value are shown. The feature of this code series is that the state of the shift register series is
This point is uniquely determined by the combination of the internal states of each register RE 30 to RE 32. Therefore, in this example, as shown in FIG. 5(a) or FIG. 5(b), (Q[2], Q[1], Q[0]) - (200 ), the next time slot of (Q [2], Q [1
], Q [01) (020). Next, a configuration example of the code conversion means 132 will be explained. The simplest configuration of the code conversion means 132 may be a circuit configuration in which the outputs of each register RE 30 to RE 32 in the circuit shown in FIG. 4 as a specific example of the shift register sequence generator 131 are taken out as they are. . With such code converting means 132, n consecutive code sequences output sequentially do not overlap with each other (no two code sequences are the same). These code sequences satisfy the above condition 0 by setting n≧Nc. In addition, in order to satisfy this condition 0 term, comparison with codes generated in the past, which was conventionally necessary, is no longer necessary in this embodiment. However, this configuration example does not satisfy condition 0 above. This is because these code sequences are generated by linear operations. Therefore, in order to satisfy the above condition 0 term, the code rearrangement means 1
33 may be used to rearrange the codes. First, the code rearranging means 133 converts the code converting means 132
A set of Ns codes L(t) , L(t+1), . . . L(t+
N sl) into memory in sequence. Next, the code rearranging means 133 extracts the data from the memory and randomly rearranges the data by means of generating a memory address having no theoretical system. This output is expressed as R(t
), R(t+1),..., R( are assumed to be 10N sJ. At this time, the range of codes to be rearranged is NS. Therefore, it is necessary to rearrange the codes so that they do not overlap with codes that occurred in the past. The number of codes to be compared is maximum at the (1+N5-1)th code occurrence, and is (NS-1).In other words, even in the 100 millionth code occurrence, the number of codes to be compared is (NS-1). Also, the object of the code to be compared is (Ns
−1) or less. FIG. 6 is a flowchart 1 shown to explain the operation of the above configuration. First, the operation starts in the transmitter 1 (step 6
01). Next, the sending bag W1 is reset, and the random code generator W1B is also reset (to, tc =O) (step 601). Next, the shift register sequence generator 131 of the random code generator 13
A shift register series is generated (step 602). Then, for example, the shift register sequence generator 131 in FIG.
code converting means configured by directly extracting the output of each register of a] 32 performs conversion to a code of length k, and outputs Lm, L(t+1), . . . L(
t+N5-1) is obtained (step 604). Then, the code reordering means 133 converts the code converting means 13
A set of NS codes L(t), L(t+1), . . . , L(t+MS
-1) are sequentially written into the memory (step 605). This is done as follows. L (t) to the address 0 of the memory of the code rearrangement means 133, L (t+ 1) to the address i, L (t+i) to the address i, and the address (Ns - 1) Write L(tlNs −1) into each of them. Next, i=0 (step 606). Then, a random address cH is generated by a means for generating a memory address without a theoretical system (step 6).
07). However, the random address C(t) is 0≦c
It is assumed that the relationship H≦(Ns −1) holds true. Then, constant j is reset to j-0 (step 608). Then, it is determined whether or not it is a constant j-j (step 609), and if it is not a constant j-1, L (tl C
(t)) = R(tl j) Step 610) If L(tlC(t))-R(is not 10j), increment j (j=j+1). From (step 611), the process returns to determining whether the constant j=i (step 609). Also, it is determined whether the constant j=t (step 609),
If constant j=t, R(tlj) is L(tl C(t
)) (step 612). Then, after incrementing j (i=i+1) (step, ・71
613) Determine whether -i is the required number of codes.Step 614) If i #NC, increment tc) (tc = tc±1) (Step 615)
. Note that the process of incrementing tc (step 615) is also executed when it is determined that L (C+C(tl)=R(tl J)) (step 610). When the processing is completed, the process returns to the random address C (tC) generation process (
Step 607). Note that if i = Nc (step 614), t = t
Step 616), then process [t
If ≦NC-1,1, step 617), the process returns to the cyst register series generation process (step 602). Also, if [t>Nc-1), step 617)
, all processing ends (step 618). By operating in this manner, a shift register sequence is generated from the shift register sequence generator 131, the code of this shift register sequence is converted by the code converting means 132, and the code-converted output is randomly generated by the code permuting means 133. By rearranging, random codes will be generated. As described above, the random code generated in this embodiment can be obtained in a shorter time than the conventional code. This will be explained below. In the conventional method, as shown in the flowchart of FIG. 18, there were (tl) comparison targets for the t-th output. If we output Ns codes in random order using a flow similar to this, R(tli), C where 0≦
i≦(Ns-1)], (i-1
> items are subject to comparison. In the flowchart shown in FIG. 6, the steps after step 605 are processed by the code rearranging means 133. Assuming that the probability of occurrence of the memory address C(t) is uniform (1/Ns for each), the number of times the memory is read out necessary to generate R(tlNs -1) is N8 on average. Of these, (Ns - 1) times it matches one of the (Ns - 2) codes R(t), R(tl 1) . . . , R(10N5-2). If the codes read at this time are compared in this order, the probability of each matching is equal, 1/NS. Moreover, the number of comparisons (according to steps 607 to 609 in FIG. 6) until a match is detected is 12, . . . , (Ns-1), respectively.
Therefore, the average number of comparisons in this case is (1/(Ns −1)) X (1+2+ (Ns −
1)) Ns/Ns −1 (1). Since the last Ns times are always compared (Ns −1) times, the average number of comparisons N cmp to generate R(tlNs −1) is Ncmp = (Ns −1) x (Ns / (Ns
-1))+ (Ns -7)-2Ns -1...(
2). R(10i), where O≦i<(NS −1)
Since the objects to be compared when generating are (i-1) codes, the average number of comparisons is smaller than N C1ap in equation (2) above. For example, when N5=100, the average number of comparisons from the above equation (2) is about 199 at most, and conventionally (
For the 1 billion + 1)th code output. Compared to the method that required more than 1 billion comparisons, the generation time can be significantly reduced. Comparing the case of the above embodiment with the conventional one, 1
This means that it can be shortened to 99/109-2/107 or less. Note that if NS is fixed every time, the condition that there exists an integer m such that NC6mXN5≦n·=(3) exists with respect to the period n of the register series (see Examples). Further, it is also possible to make the number of rearrangements Ns variable, and in this case, if the first rearrangement is NS1, the above equation (3) becomes as follows. In general, when Nc and n are close numbers, NS may be chosen small so that formula (4) is satisfied in the final m-th rearrangement. For example, NC=250 and n=255
When N sl= N s2= N 53=80, 250-80X 3≦N sm= N s4≦25
5-80x 310≦Ns4≦15
- (5), the above equation (4) will be satisfied. Furthermore, if NS is randomly changed each time, the randomness of R(1) also becomes human. Note that although the code conversion means 132 to a code of length k has been described as a hardware image, and the N code rearrangement means 133 has been described as a software image, both of them can be realized using software or hardware. For example, a k-order soft register series can be generated by creating a program to imitate the contents of the registers. One embodiment of the invention is as described above. Next, other embodiments of the present invention will be described below. FIG. 7 is a block diagram illustrating an example refinement of a shift register sequence generator of length=8. Third-order shift register series generation circuit 811 shown in FIG.
is a modification of the linear feedback Schiff l-register circuit shown in FIG. In this figure, registers 800 to 807 and adder 808
~810, the 8th order shift register series generation circuit 81
1 is configured. This shift register series generation circuit 811 differs from the configuration shown in FIG. 2 in that it omits an input terminal TI for inputting an initial value, a switch SW, and a clock input terminal CT for shifting. Among the signals of this shift register series generation circuit 811, Q [
7], Q [6], Q [5], Q [4], Q
[3], Q [2], Q [11, Q [01], a code of length k can be obtained. At this time, the code conversion means 812 to a code of length 8 is tangible and intangible, but can generally be constructed from a logic circuit shown in FIG. In FIG. 8, the logic circuit 812a includes Q[7], Q[
6], Q[5], Q[4], Q[3], Q[2], Q[
1], Q O, Q' [4], Q' [3], Q' [2]
and the input terminal of L(t) −(b?, b6
, b5 , b4 , b3 , b
2, bl, bo) output terminals,
and a select l to signal input terminal. However, there are certain restrictions on how the signals can be combined. As previously explained, the state of the shift register sequence generator is uniquely determined by the contents of the shift register 811. In order for the generated code L (t) to have period I], there must be a one-to-one correspondence between L (t) and the contents of each register. Therefore, if Q[4] and Q'[4] are selected at the same time, the contents of register 804 will overlap, so one of the other registers will be omitted. -a, if the shift register generation circuit of the type shown in Fig. 2 is used, the first register from the right will be a.
t+i, -hi at+i, Σ(-h・at+
Selecting at least one of i) as the gist of the code L (t) is a necessary and sufficient condition for L(1) to have period n. Also, as a matter of course, if the selection signal is changed during the generation of L (t) in FIG. 8 and the combination is changed, the period [l is not guaranteed. The generation polynomial H(x) using the shift register sequence generation circuit 811 in FIG. 7 is as follows: An example of the generation of a code L([) of length 8 in the case of H(x)=x''+x' +x3+x2+1 will be explained below. In Figures 9 (1) to (3), the initial values are (Q [7],
Q[6], Q[5], Q[4], Q[3], Q[2]
, Q[1], Q[0] ) (10101011), the output Q [7], Q for time (time)
[6], Q [5], Q [4], Q L3]
, Q [2], Q [month, Q [01 value and output Q
The values of '[4], Q'[3], and Q'[2] and the values of hexadecimal numbers na, rnb, and mC are shown. Also, the decimal numbers m a, m b, m C have length 8
As an example of conversion to ma = (Q [7], Q [6], Q [5], Q
[4], Q [3], Q [21Q [1 piece, Q[O
]) mb = (Q[7], Q[6], Q[5], Q'[4
], Q'[3]Q' [2], Q[1], Q[O] >
mc = <Q[7], Q[6], Q[5], Q'[4
], Q' [3] Q'[2], Q[1], Q[0]
). FIG. 10 is a block diagram showing the t2 side in which code conversion means for converting to a code of length 8 is constructed using a serial/parallel conversion circuit. The code conversion means 812b to a code of length 8 is a register 9.
RE 80 to RE 87 are connected in series, and each register RE
Clock can be input to 80 to RE87, register RE
Input the output Q[0] to 88, and input the output Q[0] to each register RE80.
〜RE 88 output L(on one(b7, b
6. b5. b4. b3. b2. bl, bo) are obtained. It's something new. This clock signal is the same as the shift register series generating circuit 811 shown in FIG. In this case, L(t) matches the contents of each register in the shift register series generation circuit 811 of FIG. 7 eight clocks ago. The shift register series is not limited to the M series. FIG. 11 shows an embodiment of an 8th order shift register series generator that is not the M series. 8th order shift l-register sequence generator 811 that is not an M sequence
The shift register sequence generation circuit shown in FIG. 7 is adders 808a, 809a, 810a, and 810b, and
Output QE7], Q [6], Q [4], Q [
1] is added and input to the register 807, and Q'[7
], Q'[6], Q'[4], and Q'[1]. According to this shift register sequence generator 811b, the generator polynomial H(x) is: )−+(x)=(x+1)′(x5+x”
+1. )=x8→-x7+x6+x' +x+1. This sets the initial values in the order of Q[7] to Q[0] (1oo
ooooo), n = 4
31=124...A sequence with a period of (6) is generated. This sequence is converted as follows by code conversion means for a code of length 8.9 In Figures 12 (1) and (2), the initial value is (Q[7] ~
When Q(O] ) = (10000000), the values of outputs Q[7] to Q[0] and outputs Q'[7] and Q'[6
], Q'[4], Q'[1], and the three septal numbers m
The values of amb and mC (values of code conversion means) are shown, respectively. Also, hexadecimal numbers m a, m b, m C have length 8
For example, m a = (Q [7], Q [6], Q [5
], Q [4], Q [3], Q [2], Q
[1], Q [0] ) mb = (Q'[7], Q'[6], Q[5], Q'
[4], Q[3], Q[2], Q' [1], Q[O]
)m c −(Q' [7], Q [6], Q
[5], Q' [4], Q [3]Q[2],
Q" [1], Q[O]). In Fig. 13, the initial value is (Q[7]~Q[O]) = (1
1010000), the output Q[7] to Q[O] for the time (tinge) at -period n=64
and the output Q' [7], Q' [6], Q' [4
], Q' [1] and the three decimal numbers ma, mb,
The value of mc (value of code conversion means) is shown. Also, the decimal numbers m a, m b, m C have length 8
As an example of conversion to m a = (Q [7], Q [6], Q [5
], Q [4], Q [3], Q [2], Q
[1], Q [0] ) mb - (Q'[7], Q'[6], Q[51, Q'[
4], Q[3], Q[2] Q'[month, Q[O]) m c = (Q'[7], Q[6], Q[
5], Q'[4], Q[3]Q[2], Q'[
1], Q[0]'). The above is the same circuit, only the initial values are different. For convenience, if we give the values of the registers that cannot be taken as the initial values in Figs.
Comparing Sa with case 2, it can be seen that there are no matching codes. This is because the state of the shift register sequence generator is represented by the contents of the register, and there are 124 types of A groups and 6 types.
There are two types of B groups, and no matter which initial value in each group is read, a code L (t) with a period of n-124 or n=62 can be generated. Further, by manipulating the initial values, it is possible to obtain L (t) in which codes corresponding to the A group and the B group coexist. For example, starting from the initial value (10000000), the code L(
t), and they generate time (t =
50), when (11010000) is forcibly read, it moves from group A to group B. Now that L(50+61) has been generated from L(50), the initial value is again changed to the time (ti) in FIG. 12(1).
(100100 corresponding to neHt=50)
11), it returns to group A again. In this way, n = 124 + 62 = 186 non-overlapping codes L (t) can be obtained. A major feature of the shift register series is that it is possible to do this by sequential operations without having the data in FIGS. 12 and 13 in advance, and is effective when n is large. Next, FIG. 14 shows an embodiment of the code rearranging means for NS codes. The rearrangement operation is performed according to the flowchart shown in FIG. 6, and this is an example in which N5=30. The sign of L([) is the same as ma in FIG. 9(1) before rearrangement. R(t) indicates the first 90 after sorting. Comparisons within Ns codes were performed using the codes themselves, but it is also possible to compare them with memoria responses that occurred in the past. Randomly permuting Ns pieces of L (t) is 0
This is equivalent to randomly generating ~(Ns -1) addresses without duplication. So, for example, if the address is (7, 0, 11, 10
) has occurred in the past, the next address to occur is (
7, 0, 11, 10) may be used. For this reason, in the flowchart of FIG. 6, the comparison in step 610 can be performed by comparing addresses (that is, assume that C(t)-i); in this case, if N5=30, then Since J satisfies 0≦j≦29, it can be expressed using 5 bits, and the comparison can be performed using 5 bits. If 50 bits are required for R(t), the number of bits for comparison will be 1/10. Furthermore, it is not necessarily necessary to change the generation order of memory addresses every time Ns rearrangements are made, and a fixed set of random addresses may be provided as a table. In this case, in step 601 of the flowchart of FIG. 6, "t←0, tc←0"
and "j←0" in step 608 of the flowchart in the same figure.
” to “j←0, t, C←0”. FIG. 15 shows the same series as L(t) and R(t) in FIG. 14, and is an example of one that does not satisfy NC5mXN5≦n (...Equation (3)). That is, in the above example, when the above equation (3) is not satisfied, as in this example, R (242) = (29) hex
= <00101001) = overlap in R(10). Such an embodiment also makes it possible to realize the code rearrangement means. As described above, the embodiment of the present invention has the effect of shortening the time required for code generation when the number NC of necessary random codes R(t) is large. Furthermore, in this example, R(
The ratio of the time required to generate the code of [) is less than or equal to ((2NS-1>/t i, and if t = 109 and Ns = 100, then 2/107
This can occur in the following time. [Effects of the Invention] As explained above, the present invention has the effect of shortening the time required for code generation when the number NC of necessary random codes R(t) is large. Further, the present invention provides R(t)
The time required to generate the code can be generated in a significantly shorter time than the number of permutations.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例の全体椙成を示すブロック図
、第2図は同実施例の線形帰還形のシフトレジスタ系列
発生器を示すブロック図、第3図は同実施例の線形形の
シフトレジスタ系列発生器を示すブロック図、第4図は
同実施例の3元M系列のシフトレジスタ系列発生器の具
体例を示すプロ・ツク図、第5図は第4図の発生器で得
られる符号の発生例を示す説明図、第6図は同実施例の
動作を説明するために示すフローチャート、第7図は同
実施例のシフトレジスタ系列発生器および符号変換手段
の具体例を示すブロック図、第8図は同実施例の符号変
換手段の例を示すブロック図、第9図(1)〜(3〉は
同シフトレジスタ系列の発生例と符号変換例を示す説明
図、第10図は同符号変換手段の他の具体例を示すブロ
ック図、第11図は同符号変換手段のさらに他の具体例
を示すブロック図、第12図(1)、(2)は同シフト
レジスタ系列の発生例と符号変換例を示す説明図、第1
3図は他のシフトレジスタ系列の発生例と符号変換例を
示す説明図、第14図はランダム符号発生R(t)の発
生例を示す説明図、第15図はの変換例を示す説明図、
第16図はデータパケットの基本的構成例を説明するた
めの図、第17図は従来例のブロック図、第18図は同
従来例の動作を説明するためのフローチャートである。 1・・・送信装置、2・・・伝送路、 (0)〜3(Nc −1)  受信装置、2・・・暗号
化回路、 3 ランダム符号発生装置、 31・・シフトレジスタ系列発生器、 32・・符号変換手段、133・・・符号並換手段。 Q(1ニア6543210 Qゴl ; 7641 sb  sc  (h@xl 第12図(2)
Fig. 1 is a block diagram showing the overall structure of an embodiment of the present invention, Fig. 2 is a block diagram showing a linear feedback type shift register sequence generator of the embodiment, and Fig. 3 is a block diagram showing the linear feedback type shift register sequence generator of the embodiment. FIG. 4 is a block diagram showing a specific example of the ternary M-sequence shift register sequence generator of the same embodiment, and FIG. 5 is a block diagram showing the generator of FIG. 4. 6 is a flowchart shown to explain the operation of the embodiment, and FIG. 7 is a specific example of the shift register sequence generator and code conversion means of the embodiment. FIG. 8 is a block diagram showing an example of the code conversion means of the same embodiment, and FIGS. FIG. 10 is a block diagram showing another specific example of the same code conversion means, FIG. 11 is a block diagram showing still another specific example of the same code conversion means, and FIGS. 12 (1) and (2) are the same shift registers. Explanatory diagram showing an example of sequence occurrence and code conversion example, 1st
FIG. 3 is an explanatory diagram showing an example of generation of another shift register series and an example of code conversion. FIG. 14 is an explanatory diagram showing an example of random code generation R(t). FIG. 15 is an explanatory diagram showing an example of conversion. ,
FIG. 16 is a diagram for explaining a basic configuration example of a data packet, FIG. 17 is a block diagram of a conventional example, and FIG. 18 is a flowchart for explaining the operation of the conventional example. DESCRIPTION OF SYMBOLS 1... Transmission device, 2... Transmission path, (0)-3(Nc-1) Receiving device, 2... Encryption circuit, 3 Random code generator, 31... Shift register sequence generator, 32... code conversion means, 133... code rearrangement means. Q (1 near 6543210 Q gol; 7641 sb sc (h@xl Figure 12 (2)

Claims (2)

【特許請求の範囲】[Claims] (1)相異なる長さkの符号をNC個発生するランダム
符号発生装置において、 周期nがNCより大なるシフトレジスタ系列を発生する
に次のシフトレジスタ系列発生器と、前記シフトレジス
タ系列発生器からの所要の信号系列を取り出し、長さk
の符号に変換する符号変換手段と、 前記符号変換手段から遂次的に発生する長さkの符号を
NS個ずつメモリーに取込み、理論的体系でなく発生し
たアドレスをもって、NS個分ずつランダムな順序に並
べ換えて出力する符号並換手段と を備えたことを特徴とするランダム符号発生装置。 ただし、NC≦m×NS≦nを満たす整数mが存在する
ように、NSを選ぶ。
(1) In a random code generator that generates NC codes of different lengths k, in order to generate a shift register sequence with a period n greater than NC, a next shift register sequence generator and the shift register sequence generator are used. Take the required signal sequence from and have length k
a code converting means for converting the code into a code; and a code converting means that takes NS codes of length k successively generated from the code converting means into a memory, and randomly converts each NS codes using the generated addresses instead of a theoretical system. 1. A random code generator comprising code rearranging means for rearranging the codes in order and outputting the codes. However, NS is selected so that there is an integer m that satisfies NC≦m×NS≦n.
(2)上記並換手段は、検索数NSを並べ換えるごとに
変化させることを特徴とするランダム符号発生装置。
(2) A random code generator characterized in that the reordering means changes the search number NS each time it is reordered.
JP2231481A 1990-08-31 1990-08-31 Random code generating device Pending JPH04115616A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2231481A JPH04115616A (en) 1990-08-31 1990-08-31 Random code generating device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2231481A JPH04115616A (en) 1990-08-31 1990-08-31 Random code generating device

Publications (1)

Publication Number Publication Date
JPH04115616A true JPH04115616A (en) 1992-04-16

Family

ID=16924173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2231481A Pending JPH04115616A (en) 1990-08-31 1990-08-31 Random code generating device

Country Status (1)

Country Link
JP (1) JPH04115616A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0823784A2 (en) * 1996-08-07 1998-02-11 Matsushita Electric Industrial Co., Ltd. Pseudo-random noise series generator
WO2004032098A1 (en) * 2002-10-07 2004-04-15 Kobayashi, Akira Pseudo-random number generation method and pseudo-random number generator

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0823784A2 (en) * 1996-08-07 1998-02-11 Matsushita Electric Industrial Co., Ltd. Pseudo-random noise series generator
EP0823784A3 (en) * 1996-08-07 1999-11-24 Matsushita Electric Industrial Co., Ltd. Pseudo-random noise series generator
WO2004032098A1 (en) * 2002-10-07 2004-04-15 Kobayashi, Akira Pseudo-random number generation method and pseudo-random number generator

Similar Documents

Publication Publication Date Title
Adams et al. The structured design of cryptographically good S-boxes
JP4871944B2 (en) Crypto system configured to extend the repetition period of a random number sequence
US5623548A (en) Transformation pattern generating device and encryption function device
US6014445A (en) Enciphering/deciphering apparatus and method incorporating random variable and keystream generation
Gong et al. Cryptographic properties of the Welch-Gong transformation sequence generators
JPH09509748A (en) Non-deterministic public key cryptosystem
US10419207B2 (en) Cryptographic apparatuses and methods for encrypting and decrypting data using automata
US7123720B2 (en) Key scheduler for encryption apparatus using data encryption standard algorithm
US20120170738A1 (en) Methods and Apparatus in Alternate Finite Field Based Coders and Decoders
US20140055290A1 (en) Methods and Apparatus in Alternate Finite Field Based Coders and Decoders
EP0949764B1 (en) Method for calculating phase shift coefficients of an M sequence
US20110064214A1 (en) Methods and Apparatus in Alternate Finite Field Based Coders and Decoders
Cardell et al. Discrete linear models for the generalized self-shrunken sequences
WO2021176242A1 (en) Scrambler apparatus and method in particular for cryptographic applications, and descrambler apparatus and method therefor
US20160112069A1 (en) Methods and Apparatus in Alternate Finite Field Based Coders and Decoders
EP1326363A1 (en) Chaos-based block encryption
Ghazi et al. Robust and efficient dynamic stream cipher cryptosystem
Chambers Clock-controlled shift registers in binary sequence generators
KR100309565B1 (en) A method for data encryption using feistel network
US5909494A (en) System and method for constructing a cryptographic pseudo random bit generator
US7587046B2 (en) Method and apparatus for generating keystream
Kadhim et al. Proposal of new keys generator for DES algorithms depending on multi techniques
JPH04115616A (en) Random code generating device
Cardell et al. Recovering the MSS-sequence via CA
Valiveti et al. Second-order masked lookup table compression scheme