JP2009151429A - Pseudo random number generator, information processing system and program - Google Patents
Pseudo random number generator, information processing system and program Download PDFInfo
- Publication number
- JP2009151429A JP2009151429A JP2007327076A JP2007327076A JP2009151429A JP 2009151429 A JP2009151429 A JP 2009151429A JP 2007327076 A JP2007327076 A JP 2007327076A JP 2007327076 A JP2007327076 A JP 2007327076A JP 2009151429 A JP2009151429 A JP 2009151429A
- Authority
- JP
- Japan
- Prior art keywords
- random number
- pseudo
- number generation
- random
- generated
- 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
Links
Images
Abstract
Description
本発明は、擬似乱数の生成方式に関するものである。 The present invention relates to a pseudo random number generation method.
従来の擬似乱数生成技術として、特開2003−084971号公報に記載の技術が知られている。
この従来技術では、擬似乱数の周期性をチェックして系列を変更することにより非衝突を実現する。
また、特開2006−053715号公報に記載の技術が知られている。
この従来技術では、毎回シード値を変更することで予測不可能で非衝突な擬似乱数生成を実現する。
In this prior art, non-collision is realized by checking the periodicity of pseudorandom numbers and changing the sequence.
Further, a technique described in JP 2006-053715 A is known.
In this prior art, pseudo-random number generation that is unpredictable and non-collision is realized by changing the seed value every time.
しかし、上述した特開2003−084971号公報、特開2006−053715号公報では、同じ擬似乱数生成方式を採用する複数の装置では、ある装置は他の装置が生成する乱数値は分らず、複数の装置間で非衝突となる擬似乱数の生成を保証できないという課題がある。 However, in the above-mentioned Japanese Patent Application Laid-Open Nos. 2003-089711 and 2006-053715, in a plurality of devices adopting the same pseudo-random number generation method, a certain device does not know a random value generated by another device, and a plurality of devices There is a problem that it is not possible to guarantee the generation of pseudo-random numbers that do not collide with each other.
本発明は上記の課題を解決することを主な目的としており、複数の擬似乱数生成装置が共通の乱数シード値及び共通の乱数生成アルゴリズムを用いる場合でも生成される擬似乱数が複数の擬似乱数生成装置間で必ず非衝突となる機構を実現することを主な目的とする。 The main object of the present invention is to solve the above-mentioned problems, and even when a plurality of pseudo-random number generation devices use a common random number seed value and a common random number generation algorithm, the generated pseudo-random numbers generate a plurality of pseudo-random numbers. The main purpose is to realize a mechanism that always ensures non-collision between devices.
本発明に係る擬似乱数生成装置は、
擬似乱数を生成する擬似乱数生成装置であって、
他の擬似乱数生成装置と共通する乱数シード値を記録する乱数シード値記録部と、
他の擬似乱数生成装置と共通する乱数生成アルゴリズムと他の擬似乱数生成装置と共通する乱数データ長が示されるとともに、自装置に割当てられる割当て擬似乱数を特定するための割当て乱数特定値が示される擬似乱数生成情報を記録する擬似乱数生成情報記録部と、
前記乱数シード値を用いて前記乱数生成アルゴリズムにて前記乱数データ長分の擬似乱数を順次生成し、生成した擬似乱数の中から、前記割当て乱数特定値に対応する生成順序の擬似乱数を前記割当て擬似乱数として抽出する擬似乱数生成部とを有することを特徴とする。
The pseudorandom number generator according to the present invention is
A pseudo-random number generator for generating pseudo-random numbers,
A random number seed value recording unit for recording a random number seed value common to other pseudo-random number generation devices;
A random number generation algorithm common to other pseudo random number generation devices, a random data length common to other pseudo random number generation devices, and an assigned random number specifying value for specifying an assigned pseudo random number assigned to the own device are indicated. A pseudo-random number generation information recording unit for recording pseudo-random number generation information;
Using the random number seed value, the random number generation algorithm sequentially generates pseudo random numbers corresponding to the random data length, and the generated pseudo random numbers are assigned with the generation order corresponding to the assigned random number specific value. And a pseudo random number generation unit that extracts the pseudo random number.
このように、本実施の形態によれば、擬似乱数生成装置に割当てられた擬似乱数のみを抽出するため、複数の擬似乱数生成装置が共通の乱数シード値及び共通の乱数生成アルゴリズムを用いる場合でも擬似乱数が複数の擬似乱数生成装置間で必ず非衝突となる。
また、擬似乱数生成装置が複数あっても保護する乱数シード値の数が一つであるため安全確保が容易となる。
また、一系列の擬似乱数生成処理であり、また、各擬似乱数生成装置は他の擬似乱数生成装置と非同期に擬似乱数を生成することができるので、擬似乱数生成装置間の通信が不要であり、このため、擬似乱数生成装置における処理量の増大を抑制しながら擬似乱数を生成することができる。
As described above, according to the present embodiment, only the pseudo-random numbers assigned to the pseudo-random number generator are extracted, so even if a plurality of pseudo-random number generators use a common random number seed value and a common random number generation algorithm. Pseudorandom numbers are always non-collision between a plurality of pseudorandom number generators.
In addition, even if there are a plurality of pseudo-random number generators, the number of random number seed values to be protected is one, so that it is easy to ensure safety.
In addition, this is a series of pseudo-random number generation processing, and each pseudo-random number generation device can generate pseudo-random numbers asynchronously with other pseudo-random number generation devices, so communication between the pseudo-random number generation devices is unnecessary. For this reason, pseudorandom numbers can be generated while suppressing an increase in processing amount in the pseudorandom number generator.
実施の形態1.
本実施の形態では、単一のシード値から生成する一系列の長周期かつ偏りの無い擬似乱数列を用いることを前提に、複数の装置が予め一度に生成する擬似乱数の長さを決めておき、各装置が決められた間隔毎に擬似乱数を使用することにより、一系列の擬似乱数列を複数装置間で分割して使用し、複数装置間で非衝突となる擬似乱数の生成を実現する擬似乱数生成方式を説明する。
以下、図1〜図10を参照して本実施の形態の擬似乱数生成方式を説明する。
In the present embodiment, on the premise that a pseudo-random number sequence having a long period and no bias generated from a single seed value is used, the length of pseudo-random numbers generated by a plurality of devices at once is determined. In addition, by using a pseudo-random number at a predetermined interval for each device, a sequence of pseudo-random numbers can be divided and used between multiple devices to generate pseudo-random numbers that do not collide between multiple devices. A pseudo-random number generation method will be described.
Hereinafter, the pseudo-random number generation method of the present embodiment will be described with reference to FIGS.
図1は、本実施の形態に係る鍵生成システムの全体構成を示すブロック図である。
図1において、100は、擬似乱数生成装置であり、擬似乱数を生成し、鍵生成装置200に送る。図1に示す各擬似乱数生成装置100は、同じ擬似乱数生成グループに属する。擬似乱数生成グループとは、共通の乱数シード値を用いて共通の乱数生成アルゴリズムにて共通の乱数データ長(以下、乱数長ともいう)分の擬似乱数を順次生成するN個(N≧2)(図1の例ではN=3)の擬似乱数生成装置100で構成されるグループである。
130は、擬似乱数生成情報であり、非衝突な擬似乱数を生成するための設定情報である。
200は、鍵生成装置であり、擬似乱数生成装置100から擬似乱数を受け、鍵300を生成する。
300は、鍵であり、鍵生成装置200により生成される。生成される鍵は全て異なる。
400は、データ通信路であり、複数の擬似乱数生成装置100が接続し、データの送受信を行う。
FIG. 1 is a block diagram showing the overall configuration of the key generation system according to the present embodiment.
In FIG. 1,
Reference numeral 200 denotes a key generation device that receives a pseudorandom number from the pseudorandom
Reference numeral 300 denotes a key, which is generated by the key generation apparatus 200. All generated keys are different.
全体の動作を図1の各装置で説明する。
まず擬似乱数生成装置100で擬似乱数を生成し、擬似乱数生成装置100から鍵生成装置200に擬似乱数を出力し、鍵生成装置200は擬似乱数を使用して鍵300を生成し、鍵生成装置200から鍵300を出力する。
複数の擬似乱数生成装置100が存在しても各装置間で衝突しない擬似乱数を生成するため、一系列の擬似乱数列を複数装置間で振り分けて生成し使用するための設定情報として擬似乱数生成情報130を使用する。また、複数の擬似乱数生成装置100が一系列の擬似乱数列を生成するため、各装置は同一の乱数シード値を保持する。
ここで、一系列の擬似乱数とは、共通の乱数シード値を用いて共通の乱数生成アルゴリズムにて生成される擬似乱数列を意味する。
The overall operation will be described with reference to each device in FIG.
First, a pseudo-random number is generated by the pseudo-random
In order to generate pseudo-random numbers that do not collide with each other even if there are a plurality of pseudo-random
Here, a series of pseudo-random numbers means a pseudo-random number sequence generated by a common random number generation algorithm using a common random number seed value.
図2は、擬似乱数生成情報130の内容である。
擬似乱数生成情報130は、擬似乱数生成装置100の装置数、擬似乱数生成装置100個別の識別情報となる装置ID、擬似乱数生成装置100が一度に生成する乱数長、擬似乱数生成装置100個別の生成済乱数長、擬似乱数生成装置100の擬似乱数生成アルゴリズムからなる。
擬似乱数生成情報130において、装置数、乱数長及び擬似乱数生成アルゴリズムの内容は、同じ擬似乱数生成グループに属する複数の擬似乱数生成装置100間で共通している。
他方、装置ID、生成済乱数長は、擬似乱数生成装置100ごとに異なる。
生成済乱数長は、生成済みの擬似乱数のデータ総量を示し、擬似乱数の生成回数(生成頻度)によって擬似乱数生成装置100ごとに異なる。
装置ID(m:1≦m≦N)は、一系列の擬似乱数列のうち自装置に割当てられる割当て擬似乱数を特定するための割当て乱数特定値である。
FIG. 2 shows the contents of the pseudorandom
The pseudo-random
In the pseudorandom
On the other hand, the device ID and the generated random number length are different for each pseudo-random
The generated random number length indicates the total data amount of the generated pseudo random numbers, and is different for each pseudo random
The device ID (m: 1 ≦ m ≦ N) is an assigned random number specifying value for specifying an assigned pseudo random number assigned to the own device in a series of pseudo random number sequences.
図3は、複数擬似乱数生成装置100間における、一系列の擬似乱数の振り分け方法の例を示す。
つまり、複数の擬似乱数生成装置100は、各々、共通の乱数シード値を用いて共通の乱数生成アルゴリズムにて同一の擬似乱数列を生成する。
そして、各擬似乱数生成装置100は全て同一系列の擬似乱数列を生成するとともに、系列から乱数長分の擬似乱数を順番に使用する。
たとえば擬似乱数生成装置100の装置数が3(N=3)で乱数長が128ビットの場合、機器IDが1(m=1)の擬似乱数生成装置100が、擬似乱数系列1000のはじめ128ビットの乱数A1001Aを使用する。
機器IDが2(m=2)の擬似乱数生成装置100は、擬似乱数系列1000のはじめ128ビットは生成するものの使用せずに、次の128ビットの乱数A1002Aを使用する。
また、機器IDが3(m=3)の擬似乱数生成装置100は、擬似乱数系列1000のはじめ256ビットは生成するものの使用せずに、次の128ビットの乱数A1003Aを使用する。
以降、それぞれの擬似乱数生成装置100は、装置数×乱数長の間隔毎に、乱数長分の擬似乱数を使用する。つまり、鍵生成装置200から擬似乱数の生成要求がある度に、乱数長分のN個の擬似乱数を順次生成するとともに、N個の擬似乱数の中からm番目の擬似乱数を割当て対象の擬似乱数として抽出する。
なお、各擬似乱数生成装置100は、鍵生成装置200から擬似乱数の生成要求があった際に、他の擬似乱数生成装置100における擬似乱数の生成から独立して(非同期に)乱数長分の擬似乱数を順次生成するとともに、生成した擬似乱数の中から自装置の装置IDに対応する生成順序の擬似乱数を抽出して使用する。
また、生成した擬似乱数は、衝突確認のため、各装置が、他の装置が使用する擬似乱数を含め全て保管する。
このように同一系列の擬似乱数列から、各擬似乱数生成装置100の装置IDの順位に従って割当てられた擬似乱数を抽出するため、複数の擬似乱数生成装置100が非同期であっても非衝突、かつ偏りの無い擬似乱数を利用することになる。
このため、擬似乱数から生成される鍵の非衝突が実現される。
FIG. 3 shows an example of a method for distributing a series of pseudo-random numbers among a plurality of pseudo-random
That is, each of the plurality of pseudo random
Each pseudo-random
For example, when the number of pseudo random
The pseudo-random
Further, the pseudo-random
Thereafter, each pseudo-random
Note that each pseudo-random
Also, the generated pseudo-random numbers are all stored by each device, including pseudo-random numbers used by other devices, for collision confirmation.
Thus, since the pseudo random numbers assigned according to the rank of the device ID of each pseudo random
For this reason, non-collision of keys generated from pseudorandom numbers is realized.
図4は擬似乱数生成装置100の構成を示すブロック図である。
図4において、擬似乱数生成情報入力部101は、図2に示した擬似乱数生成情報130を入力する。
擬似乱数生成情報処理部102は、擬似乱数生成情報入力部101が入力した擬似乱数生成情報130を擬似乱数生成情報記録部103に格納する。
擬似乱数生成情報記録部103は、擬似乱数生成情報130を記録する。
乱数シード入出力部104は、乱数シード値132(以下、乱数シード132ともいう)を入力する。この乱数シード値132は、前述したように、他の擬似乱数生成装置100と共通するシード値である。
乱数シード処理部105は、乱数シード132を乱数シード記録部106に格納する。
乱数シード記録部106は、乱数シード132を記録する。
擬似乱数出力部107は、擬似乱数生成部108により抽出された擬似乱数133(割り当て擬似乱数)を鍵生成装置200に出力する。
FIG. 4 is a block diagram showing a configuration of the pseudorandom
In FIG. 4, the pseudo random number generation
The pseudo random number generation
The pseudo random number generation
The random number seed input /
The random number
The random number
The pseudo random
擬似乱数生成部108は、乱数シード132を用いて擬似乱数生成情報130に示されている乱数生成アルゴリズムにて乱数データ長分の擬似乱数を順次生成し、生成した擬似乱数の中から、擬似乱数生成情報130に示されている装置ID(割当て乱数特定値)に対応する順序の擬似乱数を割当て擬似乱数として抽出する。
擬似乱数記録部109は、擬似乱数生成部108により生成された擬似乱数の全て(他の擬似乱数生成装置100が使用する擬似乱数も含めて)を記録する。
そして、擬似乱数生成部108は、擬似乱数を生成する度に、生成した擬似乱数が擬似乱数記録部109に記録されている記録擬似乱数のいずれかに一致するか否かを判断し、生成した擬似乱数がいずれかの記録擬似乱数に一致する場合に、記録擬似乱数に一致する擬似乱数を除外して、生成した擬似乱数の中から、自装置の順位(装置ID)に対応する生成順序の擬似乱数を割当て擬似乱数として抽出する。
また、擬似乱数記録部109は、擬似乱数生成部により記録擬似乱数に一致するとして除外された擬似乱数を除外して、擬似乱数生成部108により生成された擬似乱数を記録する。
これは、いずれかの擬似乱数生成装置100が過去に使用した擬似乱数と同じ擬似乱数が再度生成された場合に、この衝突した擬似乱数を使用しないようにするためである。
The
The pseudo random
Then, each time a pseudo-random number is generated, the
The pseudo-random
This is to prevent the collided pseudo-random numbers from being used when the same pseudo-random numbers as the pseudo-random numbers used in the past by any of the
図5、図6は擬似乱数生成装置100の初期処理を示すフローチャートである。
図5は乱数シードを生成する1台目の擬似乱数生成装置100の初期処理を表す。
5 and 6 are flowcharts showing the initial processing of the
FIG. 5 shows an initial process of the first pseudorandom
まず、ST100において、当該1台目の擬似乱数生成装置100の管理者120が、擬似乱数生成情報入力部101より擬似乱数生成情報130を擬似乱数生成装置100に入力し、擬似乱数生成情報処理部102が擬似乱数生成情報130を擬似乱数生成情報記録部103に格納する。
次に、ST101において、管理者120が、乱数シード入出力部104よりパスワード131を擬似乱数生成装置100に入力し、乱数シード処理部105が乱数シード132を生成する。
次に、ST102において、乱数シード処理部105がパスワード131から乱数シード暗号鍵を生成して乱数シード132を暗号化し、乱数シード記録部106に暗号化した乱数シード132を格納する。
最後に、ST103において、乱数シード入出力部104が暗号化した乱数シード132を出力する。
出力された暗号化した乱数シード132は、管理者120が入力したパスワード131とともに他の擬似乱数生成装置100の管理者120に渡される。
First, in ST100, the
Next, in ST101, the
Next, in ST102, the random number
Finally, in ST103, the random number seed input /
The output encrypted
図6は1台目の擬似乱数生成装置100が生成した乱数シード132を入力する2台目以降の擬似乱数生成装置100の初期処理を表す。
2台目以降の擬似乱数生成装置100では、管理者120は1台目の擬似乱数生成装置100が暗号化した乱数シード132の復号用と、再暗号化用の2つのパスワードを入力する。
FIG. 6 shows the initial processing of the second and subsequent
In the second and subsequent
まず、ST150において、管理者120が擬似乱数生成情報入力部101より擬似乱数生成装置100に擬似乱数生成情報130を入力し、擬似乱数生成情報処理部102が擬似乱数生成情報記録部103に擬似乱数生成情報130を格納する。
次に、ST151において、管理者120が乱数シード入出力部104より擬似乱数生成装置100に復号用パスワード、暗号化した乱数シード132、再暗号化パスワードを入力する。
次に、ST152において、乱数シード処理部105がパスワード131から鍵を生成し、鍵を使用して暗号化した乱数シード132を復号する。
次に、ST153において、暗号化した乱数シード132の復号に成功したかどうかを判断し、復号に成功した場合は、ST154において、乱数シード処理部105が再暗号化パスワードから鍵を生成し、鍵を使用して乱数シード132を再暗号化し、乱数シード記録部106に再暗号化した乱数シード132を格納する。
First, in ST150, the
Next, in ST151, the
Next, in ST152, the random number
Next, in ST153, it is determined whether or not the encrypted
図7、図8、図9は擬似乱数生成装置100の乱数生成処理を示すフローチャートである。
7, 8, and 9 are flowcharts showing random number generation processing of the pseudorandom
図7のST200において、管理者120が乱数シード入出力部104からパスワード131を入力する。
次に、ST201において、乱数シード処理部105が乱数シード記録部106から暗号化した乱数シード132を読み出す。
次に、ST202において、乱数シード処理部105がパスワード131から鍵を生成し、鍵を使用して暗号化した乱数シード132を復号する。
暗号化した乱数シード132の復号に成功した場合(ST203でYES)は、ST204において、擬似乱数生成情報処理部102が擬似乱数生成情報記録部103から擬似乱数生成情報130を読み出す。
次に、ST205において、擬似乱数生成部108が擬似乱数生成情報130に示される擬似乱数生成アルゴリズムと乱数シード132から、擬似乱数系列の先頭を生成する。
次に、ST206において、擬似乱数生成部108が擬似乱数生成情報130に示される装置ID、乱数長、生成済乱数長から、擬似乱数系列の次の生成位置を設定する。
In ST200 of FIG. 7, the
Next, in ST201, the random number
Next, in ST202, the random number
If decryption of the encrypted
Next, in ST 205, the pseudo random
Next, in ST206, the pseudo random
次に、ST207において鍵生成装置200から擬似乱数の生成要求があった場合には(ST207でYES)、ST208において、擬似乱数生成部108が擬似乱数生成情報130に示される乱数長分の擬似乱数133を生成する。
次に、ST209において、擬似乱数生成部108が、生成した擬似乱数133が擬似乱数記録部109に保管されているいずれかの擬似乱数(過去に生成された擬似乱数)と同じ値でないかを確認する。
生成した擬似乱数133と同じ値の擬似乱数が擬似乱数記録部109に存在している場合(ST210でYES)は、次の位置の擬似乱数を生成する。
生成した擬似乱数133と同じ値の擬似乱数が擬似乱数記録部109に存在していない場合(ST210でNO)は、ST211において、擬似乱数生成部108は、衝突確認のため、他の擬似乱数生成装置100が使用する擬似乱数133を含め生成した擬似乱数133を全て擬似乱数記録部109に保管する。
次に、ST212において、擬似乱数生成部108は、ST211にて擬似乱数記録部109に格納された擬似乱数133が自装置に割当てられる擬似乱数133であるかどうかを判断し、自装置用の擬似乱数133でない場合(ST212でNO)は、次の位置の擬似乱数を生成する。
他方、自装置用の擬似乱数133である場合(ST212でYES)は、ST213において、擬似乱数出力部107が自装置に割当てられている擬似乱数133を鍵生成装置200に出力する。
次に、ST214において、擬似乱数生成部108が擬似乱数生成情報130の生成済乱数長を、乱数長分加算する。
次に、ST215において、擬似乱数生成部108が終了要求フラグを確認する。終了要求は、後述する図10の処理が行われた場合に終了要求フラグに設定される。終了要求がある場合(ST216でYES)は、ST217において、擬似乱数生成情報処理部102が擬似乱数生成情報130を擬似乱数生成情報記録部103に格納する。
他方、終了要求がない場合(ST216でNO)は、処理をST207に戻す。
Next, when there is a pseudo random number generation request from the key generation apparatus 200 in ST207 (YES in ST207), in ST208, the pseudo random
Next, in ST209, the pseudorandom
If a pseudo-random number having the same value as the generated
If the pseudo-random number having the same value as the generated
Next, in ST212, the pseudorandom
On the other hand, if it is the
Next, in ST214, the pseudorandom
Next, in ST215, the pseudo random
On the other hand, if there is no termination request (NO in ST216), the process returns to ST207.
図10は擬似乱数生成装置100に対する終了要求処理を示すフローチャートである。
FIG. 10 is a flowchart showing an end request process for the
ST300において、管理者120が乱数シード入出力部104からパスワード131を入力する。
次に、ST301において、乱数シード入出力部104がパスワード131から鍵を生成し、鍵を使用して暗号化した乱数シード132を復号する。
暗号化した乱数シード132の復号に成功した場合(ST302でYES)は、正当な管理者120からの終了要求であるため、ST303において、乱数シード処理部105が終了要求フラグを立てる。
ST303で行った終了要求は乱数生成処理中のST216(図9)で処理し、擬似乱数生成装置100は乱数生成処理を終了する。
In ST300,
Next, in ST301, the random number seed input /
If decryption of the encrypted
The termination request made in ST303 is processed in ST216 (FIG. 9) during the random number generation process, and the pseudorandom
このように、本実施の形態によれば、複数の擬似乱数生成装置が共通の乱数シード値及び共通の乱数生成アルゴリズムを用いる場合でも生成される擬似乱数が複数の擬似乱数生成装置間で必ず非衝突となる。
また、擬似乱数生成では、乱数シード値により擬似乱数の系列が決まるため、擬似乱数の不正生成を防ぐために乱数シード値の漏洩対策が必要であり、乱数シード値を暗号化などにより保護しなければならないが、本実施の形態に係る擬似乱数生成方式は、擬似乱数生成装置が複数あっても保護する乱数シードの数が一つであるため安全確保が容易となる効果がある。
また、一系列の擬似乱数生成処理であり、また、各擬似乱数生成装置は他の擬似乱数生成装置と非同期に擬似乱数を生成することができるので、擬似乱数生成装置間の通信が不要であり、このため、擬似乱数生成装置における処理量の増大を抑制しながら擬似乱数を生成することができるという効果が得られる。
As described above, according to the present embodiment, even when a plurality of pseudo-random number generation devices use a common random number seed value and a common random number generation algorithm, the generated pseudo-random numbers are not necessarily generated between the plurality of pseudo-random number generation devices. It becomes a collision.
In addition, in pseudo-random number generation, the sequence of pseudo-random numbers is determined by the random number seed value, so it is necessary to take measures against leakage of the random number seed value in order to prevent unauthorized generation of pseudo-random numbers. However, the pseudo-random number generation method according to the present embodiment has an effect of ensuring safety because the number of random number seeds to be protected is one even if there are a plurality of pseudo-random number generators.
In addition, this is a series of pseudo-random number generation processing, and each pseudo-random number generation device can generate pseudo-random numbers asynchronously with other pseudo-random number generation devices, so communication between the pseudo-random number generation devices is unnecessary. For this reason, it is possible to generate a pseudo-random number while suppressing an increase in processing amount in the pseudo-random number generator.
以上、本実施の形態では、単一のシード値から生成する一系列の長周期かつ偏りの無い擬似乱数列を用いることを前提に、擬似乱数生成時に複数装置間で連携しない、以下の特徴を持つ複数装置間非衝突擬似乱数生成方式について説明した。
(1)擬似乱数を生成する擬似乱数生成装置は、一系列の擬似乱数列を複数の擬似乱数生成装置間で振り分けて生成するための設定情報である擬似乱数生成情報を保持する擬似乱数生成情報処理手段を持つ。
(2)上記擬似乱数生成情報を使用して擬似乱数を生成する擬似乱数生成手段を持つ。
As described above, in the present embodiment, on the premise that a long-period and non-biased pseudo-random number sequence generated from a single seed value is used, the following features are not linked between a plurality of devices at the time of pseudo-random number generation. The non-collision pseudorandom number generation method between multiple devices has been described.
(1) A pseudo-random number generation device that generates pseudo-random numbers includes pseudo-random number generation information that holds pseudo-random number generation information that is setting information for distributing and generating a series of pseudo-random number sequences among a plurality of pseudo-random number generation devices. Has processing means.
(2) It has a pseudo random number generation means for generating a pseudo random number using the pseudo random number generation information.
実施の形態2.
本実施の形態では、各擬似乱数生成装置の擬似乱数生成情報を同期させる(更新させる)場合について説明する。
In the present embodiment, a case will be described in which pseudorandom number generation information of each pseudorandom number generator is synchronized (updated).
図16は、本実施の形態に係る擬似乱数生成装置100の構成例を示す。
図4と比較して、図16に示す擬似乱数生成装置100では擬似乱数生成情報同期部110と通信部111が追加された構成となっている。
なお、擬似乱数生成情報同期部110と通信部111以外の要素は、図4に示したものと同様である。
FIG. 16 shows a configuration example of the pseudorandom
Compared to FIG. 4, the pseudorandom
The elements other than the pseudo-random number generation
擬似乱数生成情報130の同期元の擬似乱数生成装置100の場合は、通信部111は、同期先の擬似乱数生成装置100から送信された擬似乱数生成情報130をデータ通信路400から受信し、更新用の擬似乱数生成情報130を同期元の擬似乱数生成装置100にデータ通信路400を通じて送信する。他方、擬似乱数生成情報130の同期先の擬似乱数生成装置100の場合は、通信部111は保有している擬似乱数生成情報130を同期元の擬似乱数生成装置100に送信し、更新用の擬似乱数生成情報130を同期元の擬似乱数生成装置100から受信する。
また、擬似乱数生成情報130の同期元の擬似乱数生成装置100の場合は、擬似乱数生成情報同期部110は、通信部111により受信された同期先の擬似乱数生成装置100の擬似乱数生成情報130の内容を更新する。他方、擬似乱数生成情報130の同期先の擬似乱数生成装置100の場合は、同期元の擬似乱数生成装置100から受信した更新用擬似乱数生成情報130を擬似乱数生成情報記録部103に格納する。
In the case of the pseudo-random
In the case of the pseudorandom
図11〜図15は擬似乱数生成装置100の擬似乱数生成情報同期処理を示すフローチャートである。
図11、図12、図13は擬似乱数生成情報130の同期元となる擬似乱数生成装置100の擬似乱数生成情報同期処理を表す。
図14、図15は、擬似乱数生成情報130の同期先となる擬似乱数生成装置100の擬似乱数生成情報同期処理を表す。
11 to 15 are flowcharts showing the pseudo random number generation information synchronization process of the pseudo random
11, 12, and 13 represent the pseudo-random number generation information synchronization process of the pseudo-random
14 and 15 show the pseudo-random number generation information synchronization process of the pseudo-random
擬似乱数生成情報130の同期処理は擬似乱数生成処理時常に行う必要はなく、任意の擬似乱数生成装置100が要求する時点に行う。
同期時期は、擬似乱数生成装置100の装置数の変更や、擬似乱数生成装置100が一度に生成する乱数長の変更、擬似乱数生成装置100の擬似乱数生成アルゴリズムの変更がある場合となる。
The synchronization processing of the pseudo-random
The synchronization time is when there is a change in the number of pseudo random
先ず、図11、図12、図13を参照して同期元となる擬似乱数生成装置100の処理を説明する。
First, processing of the pseudorandom
図11のST200において、同期元の管理者120が乱数シード入出力部104からパスワード131を入力する。
次に、ST201において、乱数シード処理部105が乱数シード記録部106から暗号化した乱数シード132を読み出す。
次に、ST202において、乱数シード処理部105がパスワード131から鍵を生成し、鍵を使用して暗号化した乱数シード132を復号する。
暗号化した乱数シード132の復号に成功した場合(ST402でYES)は、ST403において、擬似乱数生成情報処理部102が擬似乱数生成情報記録部103から擬似乱数生成情報130を読み出す。
次に、ST404において、管理者120が擬似乱数生成情報入力部101から更新用の擬似乱数生成情報130の装置数、乱数長、擬似乱数生成アルゴリズムのいずれかを入力する。管理者120は、擬似乱数生成情報130の要素のうち変更のある要素のみを入力する。
次に、ST405において、擬似乱数生成情報同期部110が、通信部111を通じて同期先となる他の擬似乱数生成装置100に同期要求を送信し、同期先となる他の擬似乱数生成装置100から通信部111を通じて現在の擬似乱数生成情報130を受信する。
In ST200 of FIG. 11, the
Next, in ST201, the random number
Next, in ST202, the random number
If decryption of the encrypted
Next, in ST404, the
Next, in ST405, the pseudo-random number generation
次に、ST406において、擬似乱数生成情報同期部110が、他の擬似乱数生成装置100から受信した擬似乱数生成情報130と、擬似乱数生成情報記録部103から読み出した擬似乱数生成情報130、擬似乱数生成情報入力部101から入力された更新用の装置数、乱数長等を比較する。
次に、装置数の変更がある場合は、ST407において、擬似乱数生成情報同期部110が、他の擬似乱数生成装置100から受信した擬似乱数生成情報130及び自装置の擬似乱数生成情報記録部103から読み出した擬似乱数生成情報130の装置数を擬似乱数生成情報入力部101から入力された更新用の装置数に更新する。
次に、各擬似乱数生成装置100の装置IDの変更がある場合は、ST408において、擬似乱数生成情報同期部110が、他の擬似乱数生成装置100から受信した擬似乱数生成情報130及び自装置の擬似乱数生成情報記録部103から読み出した擬似乱数生成情報130の装置IDを擬似乱数生成情報入力部101から入力された更新用の装置数に合わせて更新する。
次に、乱数長の変更がある場合は、ST409において、擬似乱数生成情報同期部110が、他の擬似乱数生成装置100から受信した擬似乱数生成情報130及び自装置の擬似乱数生成情報記録部103から読み出した擬似乱数生成情報130の乱数長を擬似乱数生成情報入力部101から入力された更新用の乱数長に更新する。
次に、ST410において、擬似乱数生成情報同期部110が、他の擬似乱数生成装置100から受信した擬似乱数生成情報130及び自装置の擬似乱数生成情報記録部103から読み出した擬似乱数生成情報130に示される生成済乱数長の中で最長の生成済乱数長を選択し、選択した最長の生成済乱数長を他の擬似乱数生成装置100から受信した擬似乱数生成情報130及び自装置の擬似乱数生成情報記録部103から読み出した擬似乱数生成情報130に書き込み、生成済乱数長を更新する。
次に、擬似乱数生成アルゴリズムの変更がある場合は、ST411において、擬似乱数生成情報同期部110が、他の擬似乱数生成装置100から受信した擬似乱数生成情報130及び自装置の擬似乱数生成情報記録部103から読み出した擬似乱数生成情報130の擬似乱数生成アルゴリズムを擬似乱数生成情報入力部101から入力された更新用の擬似乱数生成アルゴリズムに更新する。
次に、ST412において、擬似乱数生成情報同期部110が通信部111を通じて、同期先となる擬似乱数生成装置100へ更新用の擬似乱数生成情報130を送信する。
Next, in ST406, the pseudo random number generation
Next, when there is a change in the number of devices, in ST407, the pseudo random number generation
Next, when there is a change in the device ID of each pseudo-random
Next, when there is a change in the random number length, in ST409, the pseudo random number generation
Next, in ST410, the pseudo random number generation
Next, when there is a change in the pseudo-random number generation algorithm, in ST411, the pseudo-random number generation
Next, in ST412, the pseudorandom number generation
次に、ST413において、擬似乱数生成情報同期部110が、自装置の更新前の生成済乱数長が最長であったかを判断し、最長であった場合には、ST418において、擬似乱数生成情報同期部110は擬似乱数生成情報記録部103に更新用の擬似乱数生成情報130を格納する。
他方、ST413において更新前の生成済乱数長が最長でなかった場合は、ST414において、擬似乱数生成部108が、最長の生成済乱数長と自装置の更新前の生成済乱数長の差分の擬似乱数133を順に生成する。
次に、ST415において、擬似乱数生成部108が、生成した擬似乱数133が擬似乱数記録部109に保管されているいずれかの擬似乱数(過去に生成された擬似乱数)と同じ値でないかを確認する。
生成した擬似乱数133と同じ値の擬似乱数が擬似乱数記録部109に存在している場合(ST416でYES)は、次の位置の擬似乱数を生成する。
生成した擬似乱数133と同じ値の擬似乱数が擬似乱数記録部109に存在していない場合(ST416でNO)は、ST417において、擬似乱数生成部108は、衝突確認のため、生成した擬似乱数133を全て擬似乱数記録部109に保管する。
そして、生成済乱数長の差分の擬似乱数133を全て擬似乱数記録部109に格納した後、ST418において、擬似乱数生成情報同期部110は擬似乱数生成情報記録部103に更新用の擬似乱数生成情報130を格納する。
Next, in ST413, the pseudo-random number generation
On the other hand, if the generated random number length before update is not the longest in ST413, in ST414, the pseudo random
Next, in ST415, the pseudo random
If a pseudo random number having the same value as the generated pseudo
When the pseudo random number having the same value as the generated pseudo
After all the pseudo
次に、図14及び図15を参照して、擬似乱数生成情報130の同期先となる擬似乱数生成装置100の擬似乱数生成情報同期処理を説明する。
Next, with reference to FIG. 14 and FIG. 15, the pseudo random number generation information synchronization processing of the pseudo random
図14のST200において、同期先の管理者120が乱数シード入出力部104からパスワード131を入力する。
次に、ST201において、乱数シード処理部105が乱数シード記録部106から暗号化した乱数シード132を読み出す。
次に、ST202において、乱数シード処理部105がパスワード131から鍵を生成し、鍵を使用して暗号化した乱数シード132を復号する。
暗号化した乱数シード132の復号に成功した場合(ST452でYES)は、ST453において、擬似乱数生成情報処理部102が擬似乱数生成情報記録部103から擬似乱数生成情報130を読み出す。
次に、ST454において、擬似乱数生成情報同期部110が、同期元の擬似乱数生成情報同期部110からの同期要求を通信部111を通じて受信したかを判断し、同期要求を受信した場合(ST454でYES)は、ST455において、擬似乱数生成情報同期部110が通信部111を通じて同期元となる他の擬似乱数生成装置100に対して現在の擬似乱数生成情報130を送信する。
次に、ST456において、擬似乱数生成情報同期部110が通信部111を通じて、同期元となる他の擬似乱数生成装置100から更新用の擬似乱数生成情報130を受信する。
In ST200 of FIG. 14, the synchronization-
Next, in ST201, the random number
Next, in ST202, the random number
If decryption of the encrypted
Next, in ST454, pseudo-random number generation
Next, in ST456, the pseudorandom number generation
次に、ST457において、擬似乱数生成情報同期部110は、更新用の擬似乱数生成情報130に示されている生成済乱数長と自装置の更新前の生成済乱数長とを比較し、更新用の擬似乱数生成情報130に示されている生成済乱数長と自装置の更新前の生成済乱数長が同じである場合、すなわち、自装置の更新前の生成済乱数長が最長であった場合(ST457でNO)には、ST462において、擬似乱数生成情報同期部110は擬似乱数生成情報記録部103に更新用の擬似乱数生成情報130を格納する。
他方、ST457において自装置の更新前の生成済乱数長が最長でなかった場合(ST457でYES)は、ST458において、擬似乱数生成部108が、更新用の擬似乱数生成情報130に示される生成済乱数長と自装置の更新前の生成済乱数長の差分の擬似乱数133を順に生成する。
次に、ST459において、擬似乱数生成部108が、生成した擬似乱数133が擬似乱数記録部109に保管されているいずれかの擬似乱数(過去に生成された擬似乱数)と同じ値でないかを確認する。
生成した擬似乱数133と同じ値の擬似乱数が擬似乱数記録部109に存在している場合(ST460でYES)は、次の位置の擬似乱数を生成する。
生成した擬似乱数133と同じ値の擬似乱数が擬似乱数記録部109に存在していない場合(ST460でNO)は、ST461において、擬似乱数生成部108は、衝突確認のため、生成した擬似乱数133を全て擬似乱数記録部109に保管する。
そして、生成済乱数長の差分の擬似乱数133を全て擬似乱数記録部109に格納した後、ST462において、擬似乱数生成情報同期部110は擬似乱数生成情報記録部103に更新用の擬似乱数生成情報130を格納する。
Next, in ST457, the pseudo-random number generation
On the other hand, if the generated random number length before the update of the own device is not the longest in ST457 (YES in ST457), the pseudorandom
Next, in ST459, the pseudo random
When a pseudo random number having the same value as the generated pseudo
When the pseudo random number having the same value as the generated pseudo
After all the pseudo
このように、本実施の形態では、任意の時期に擬似乱数生成に必要となる設定情報を同期できるため、擬似乱数生成装置の装置数の変更や一度に生成する乱数長の変更、擬似乱数生成アルゴリズムの変更を容易に実現できるという効果が得られる。 As described above, in the present embodiment, setting information necessary for generating pseudo-random numbers can be synchronized at any time, so the number of pseudo-random number generators can be changed, the length of random numbers generated at one time, or pseudo-random number generation It is possible to easily change the algorithm.
以上、本実施の形態では、擬似乱数を生成する擬似乱数生成装置は、任意の時期に擬似乱数生成情報を複数の擬似乱数生成装置間で同期する擬似乱数生成情報同期処理手段を持つことを説明した。 As described above, in the present embodiment, the pseudo-random number generation device that generates pseudo-random numbers has a pseudo-random number generation information synchronization processing unit that synchronizes pseudo-random number generation information among a plurality of pseudo-random number generation devices at an arbitrary time. did.
最後に、実施の形態1、2に示した擬似乱数生成装置100のハードウェア構成例について説明する。
図17は、実施の形態1、2に示す擬似乱数生成装置100のハードウェア資源の一例を示す図である。
なお、図17の構成は、あくまでも擬似乱数生成装置100のハードウェア構成の一例を示すものであり、擬似乱数生成装置100のハードウェア構成は図17に記載の構成に限らず、他の構成であってもよい。
Finally, a hardware configuration example of the pseudorandom
FIG. 17 is a diagram illustrating an example of hardware resources of the pseudorandom
Note that the configuration in FIG. 17 is merely an example of the hardware configuration of the pseudorandom
図17において、擬似乱数生成装置100は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
In FIG. 17, the pseudorandom
The
Further, the
The
A
The
通信ボード915は、図1に示すように、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)などに接続されていても構わない。
As shown in FIG. 1, the
磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The
The programs in the
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The
The
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
擬似乱数生成装置100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The
When the pseudo random
上記プログラム群923には、実施の形態1、2の説明において「〜部」、「〜手段」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
The
ファイル群924には、実施の形態1、2の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の暗号化」、「〜の復号」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1、2で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the description of the first and second embodiments, the
The “˜file” and “˜database” are stored in a recording medium such as a disk or a memory. Information, data, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the
Information, data, signal values, variable values, and parameters are stored in the main memory, registers, cache memory, and buffers during the CPU operations of extraction, search, reference, comparison, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
The arrows in the flowcharts described in the first and second embodiments mainly indicate input / output of data and signals. The data and signal values are the memory of the
また、実施の形態1、2の説明において「〜部」、「〜手段」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」、「〜手段」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1、2の「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、実施の形態1、2の「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。
In addition, in the description of the first and second embodiments, what is described as “to part” and “to means” may be “to circuit”, “to device”, and “to device”. It may be “˜step”, “˜procedure”, “˜processing”. That is, what is described as “˜unit” and “˜means” may be realized by firmware stored in the
このように、実施の形態1、2に示す擬似乱数生成装置100は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」、「〜手段」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
As described above, the pseudo random
100 擬似乱数生成装置、101 擬似乱数生成情報入力部、102 擬似乱数生成情報処理部、103 擬似乱数生成情報記録部、104 乱数シード入出力部、105 乱数シード処理部、106 乱数シード記録部、107 擬似乱数出力部、108 擬似乱数生成部、109 擬似乱数記録部、110 擬似乱数生成情報同期部、111 通信部、120 管理者、131 パスワード、132 乱数シード、133 擬似乱数、200 鍵生成装置、300 鍵、400 データ通信路。
DESCRIPTION OF
Claims (15)
他の擬似乱数生成装置と共通する乱数シード値を記録する乱数シード値記録部と、
他の擬似乱数生成装置と共通する乱数生成アルゴリズムと他の擬似乱数生成装置と共通する乱数データ長が示されるとともに、自装置に割当てられる割当て擬似乱数を特定するための割当て乱数特定値が示される擬似乱数生成情報を記録する擬似乱数生成情報記録部と、
前記乱数シード値を用いて前記乱数生成アルゴリズムにて前記乱数データ長分の擬似乱数を順次生成し、生成した擬似乱数の中から、前記割当て乱数特定値に対応する生成順序の擬似乱数を前記割当て擬似乱数として抽出する擬似乱数生成部とを有することを特徴とする擬似乱数生成装置。 A pseudo-random number generator for generating pseudo-random numbers,
A random number seed value recording unit for recording a random number seed value common to other pseudo-random number generation devices;
A random number generation algorithm common to other pseudo random number generation devices, a random data length common to other pseudo random number generation devices, and an assigned random number specifying value for specifying an assigned pseudo random number assigned to the own device are indicated. A pseudo-random number generation information recording unit for recording pseudo-random number generation information;
Using the random number seed value, the random number generation algorithm sequentially generates pseudo random numbers corresponding to the random data length, and the generated pseudo random numbers are assigned with the generation order corresponding to the assigned random number specific value. A pseudo-random number generation device comprising a pseudo-random number generation unit that extracts a pseudo-random number.
他の擬似乱数生成装置における擬似乱数の生成から独立して、前記乱数データ長分の擬似乱数を順次生成し、生成した擬似乱数の中から、前記割当て乱数特定値に対応する生成順序の擬似乱数を前記割当て擬似乱数として抽出することを特徴とする請求項1に記載の擬似乱数生成装置。 The pseudo-random number generator is
Independently from the generation of pseudo-random numbers in other pseudo-random number generation devices, pseudo-random numbers corresponding to the random data length are sequentially generated, and the generated pseudo-random numbers have a generation order corresponding to the assigned random number specific value. The pseudo random number generation device according to claim 1, wherein the pseudo random number is extracted as the assigned pseudo random number.
前記擬似乱数生成部により生成された擬似乱数を記録する擬似乱数記録部を有し、
前記擬似乱数生成部は、
擬似乱数を生成する度に、生成した擬似乱数が前記擬似乱数記録部に記録されている記録擬似乱数のいずれかに一致するか否かを判断し、生成した擬似乱数がいずれかの記録擬似乱数に一致する場合に、記録擬似乱数に一致する擬似乱数を除外して、生成した擬似乱数の中から、前記割当て乱数特定値に対応する生成順序の擬似乱数を前記割当て擬似乱数として抽出することを特徴とする請求項1又は2のいずれかに記載の擬似乱数生成装置。 The pseudorandom number generator further includes:
A pseudo random number recording unit that records the pseudo random number generated by the pseudo random number generation unit;
The pseudo-random number generator is
Each time a pseudo-random number is generated, it is determined whether the generated pseudo-random number matches one of the recorded pseudo-random numbers recorded in the pseudo-random number recording unit, and the generated pseudo-random number is one of the recorded pseudo-random numbers. The pseudorandom numbers that match the recorded pseudorandom numbers are excluded, and the generated pseudorandom numbers corresponding to the assigned random number specific value are extracted from the generated pseudorandom numbers as the allocated pseudorandom numbers. The pseudo-random number generation device according to claim 1, wherein the pseudo-random number generation device is provided.
前記擬似乱数生成部により記録擬似乱数に一致するとして除外された擬似乱数を除外して、前記擬似乱数生成部により生成された擬似乱数を記録することを特徴とする請求項3に記載の擬似乱数生成装置。 The pseudo random number recording unit
The pseudo-random number generated by the pseudo-random number generator is recorded by excluding the pseudo-random number that is excluded as being coincident with the recorded pseudo-random number by the pseudo-random number generator. Generator.
共通の乱数シード値を用いて共通の乱数生成アルゴリズムにて共通の乱数データ長分の擬似乱数を順次生成するN個(N≧2)の擬似乱数生成装置で構成される擬似乱数生成グループに属し、
前記擬似乱数生成情報記録部は、
前記割当て乱数特定値として、前記擬似乱数生成グループに属する擬似乱数生成装置の装置数Nが示される擬似乱数生成情報を記録し、
前記擬似乱数生成部は、
前記乱数データ長分のN個の擬似乱数を順次生成し、N個の擬似乱数のうちN番目に生成された擬似乱数を前記割当て擬似乱数として抽出することを特徴とする請求項1〜4のいずれかに記載の擬似乱数生成装置。 The pseudo-random number generator is
It belongs to a pseudo-random number generation group composed of N (N ≧ 2) pseudo-random number generators that sequentially generate pseudo-random numbers for a common random number data length using a common random number generation algorithm using a common random number seed value. ,
The pseudo-random number generation information recording unit
As the assigned random number specific value, record pseudo random number generation information indicating the number N of pseudo random number generation devices belonging to the pseudo random number generation group,
The pseudo-random number generator is
5. The pseudorandom numbers generated in order for the random number data length are sequentially generated, and the Nth generated pseudorandom number among the N pseudorandom numbers is extracted as the assigned pseudorandom number. The pseudorandom number generation device according to any one of the above.
共通の乱数シード値を用いて共通の乱数生成アルゴリズムにて共通の乱数データ長分の擬似乱数を順次生成するN個(N≧2)の擬似乱数生成装置で構成される擬似乱数生成グループに属し、
前記擬似乱数生成情報記録部は、
前記擬似乱数生成グループに属する擬似乱数生成装置の装置数Nが示されるとともに、前記割当て乱数特定値として、N個の擬似乱数生成装置における自装置の順位m(1≦m≦N)が示される擬似乱数生成情報を記録し、
前記擬似乱数生成部は、
前記乱数データ長分のN個の擬似乱数を順次生成し、N個の擬似乱数のうちm番目に生成された擬似乱数を前記割当て擬似乱数として抽出することを特徴とする請求項1〜4のいずれかに記載の擬似乱数生成装置。 The pseudo-random number generator is
It belongs to a pseudo-random number generation group composed of N (N ≧ 2) pseudo-random number generators that sequentially generate pseudo-random numbers for a common random number data length using a common random number generation algorithm using a common random number seed value. ,
The pseudo-random number generation information recording unit
The number N of pseudo random number generation devices belonging to the pseudo random number generation group is indicated, and the rank m (1 ≦ m ≦ N) of the own device in N pseudo random number generation devices is indicated as the assigned random number specific value. Record pseudo-random number generation information,
The pseudo-random number generator is
5. The pseudo random numbers generated in order for the random number data length are sequentially generated, and the m-th pseudo random number generated among the N pseudo random numbers is extracted as the assigned pseudo random number. The pseudorandom number generation device according to any one of the above.
他の擬似乱数生成装置から、他の擬似乱数生成装置にて記憶されている他の擬似乱数生成情報を受信し、受信した他の擬似乱数生成情報に示されている乱数データ長及び割当て乱数特定値の少なくともいずれかを更新し、前記乱数生成情報記録部に記録されている自装置の擬似乱数生成情報に示されている乱数データ長及び割当て乱数特定値の少なくともいずれかを更新し、更新後の他の擬似乱数生成情報を他の擬似乱数生成装置に送信する擬似乱数生成情報同期部を有することを特徴とする請求項1〜6のいずれかに記載の擬似乱数生成装置。 The pseudorandom number generator further includes:
Other pseudo random number generation information stored in other pseudo random number generation devices is received from other pseudo random number generation devices, and the random number data length and assigned random number specified in the received other pseudo random number generation information are specified. Update at least one of the values, update at least one of the random number data length and the assigned random number specific value indicated in the pseudo random number generation information of the own device recorded in the random number generation information recording unit, and after the update The pseudorandom number generation device according to claim 1, further comprising a pseudorandom number generation information synchronization unit that transmits other pseudorandom number generation information to another pseudorandom number generation device.
前記擬似乱数生成部により生成された擬似乱数の生成済みデータ総量が示される擬似乱数生成情報を記録し、
前記擬似乱数生成情報同期部は、
他の擬似乱数生成装置から、他の擬似乱数生成装置にて記憶されている他の擬似乱数生成情報を受信し、受信した他の擬似乱数生成情報に示されている擬似乱数の生成済みデータ総量及び前記乱数生成情報記録部に記録されている自装置の擬似乱数生成情報に示されている擬似乱数の生成済みデータ総量のうちで最大の生成済みデータ総量に一致させるように他の擬似乱数生成情報及び自装置の擬似乱数生成情報の擬似乱数の生成済みデータ総量を更新し、更新後の他の擬似乱数生成情報を他の擬似乱数生成装置に送信することを特徴とする請求項7に記載の擬似乱数生成装置。 The pseudo-random number generation information recording unit
Record pseudo-random number generation information indicating the total amount of generated pseudo-random numbers generated by the pseudo-random number generator,
The pseudo-random number generation information synchronization unit
The other pseudo random number generation information stored in the other pseudo random number generation device is received from another pseudo random number generation device, and the total amount of generated pseudo random numbers shown in the received other pseudo random number generation information And another pseudo-random number generation so as to match the maximum generated data total amount among the pseudo-random number generated data total amount shown in the pseudo-random number generation information of the own device recorded in the random number generation information recording unit The pseudo-random number generated data total amount of the information and the pseudo-random number generation information of the own device is updated, and other updated pseudo-random number generation information is transmitted to another pseudo-random number generation device. Pseudo random number generator.
前記擬似乱数生成情報同期部により擬似乱数生成情報の更新に用いられた最大の生成済みデータ総量が自装置の擬似乱数生成情報に示されている生成済みデータ総量でない場合に、自装置の擬似乱数生成情報に示されている生成済みデータ総量と最大の生成済みデータ総量の差分の擬似乱数を生成し、
前記擬似乱数生成装置は、更に、
前記擬似乱数生成部により生成された擬似乱数を記録する擬似乱数記録部を有することを特徴とする請求項8に記載の擬似乱数生成装置。 The pseudo-random number generator is
When the maximum generated data total amount used for updating the pseudo random number generation information by the pseudo random number generation information synchronization unit is not the generated data total amount indicated in the pseudo random number generation information of the own device, the pseudo random number of the own device Generate a pseudo-random number of the difference between the generated data total amount shown in the generation information and the maximum generated data total amount,
The pseudorandom number generator further includes:
The pseudorandom number generation device according to claim 8, further comprising a pseudorandom number recording unit that records the pseudorandom number generated by the pseudorandom number generation unit.
擬似乱数を生成する度に、生成した擬似乱数が前記擬似乱数記録部に記録されている記録擬似乱数のいずれかに一致するか否かを判断し、生成した擬似乱数がいずれかの記録擬似乱数に一致する場合に、記録擬似乱数に一致する擬似乱数を前記擬似乱数記録部の記録対象から除外し、
前記擬似乱数生成部により記録対象から除外された擬似乱数を除外して、前記擬似乱数生成部により生成された擬似乱数を記録することを特徴とする請求項9に記載の擬似乱数生成装置。 The pseudo-random number generator is
Each time a pseudo-random number is generated, it is determined whether the generated pseudo-random number matches one of the recorded pseudo-random numbers recorded in the pseudo-random number recording unit, and the generated pseudo-random number is one of the recorded pseudo-random numbers. , The pseudorandom number that matches the recorded pseudorandom number is excluded from the recording target of the pseudorandom number recording unit,
The pseudo-random number generation device according to claim 9, wherein the pseudo-random number generated by the pseudo-random number generation unit is recorded by excluding the pseudo-random number excluded from the recording target by the pseudo-random number generation unit.
前記擬似乱数生成部により生成された擬似乱数の生成済みデータ総量が示される擬似乱数生成情報を記録し、
前記擬似乱数生成装置は、更に、
他の擬似乱数生成装置からの要求に応じて、前記乱数生成情報記録部に記録されている擬似乱数生成情報を他の擬似乱数生成装置に送信し、他の擬似乱数生成装置にて更新された更新後の擬似乱数生成情報を受信する擬似乱数生成情報同期部を有し、
前記擬似乱数生成部は、
前記擬似乱数生成情報同期部により受信された更新後の擬似乱数生成情報に示される更新後の生成済みデータ総量が更新前の擬似乱数生成情報に示されている更新前の生成済みデータ総量を上回っている場合に、更新前の生成済みデータ総量と更新後の生成済みデータ総量との差分の擬似乱数を生成し、
前記擬似乱数生成装置は、更に、
前記擬似乱数生成部により生成された擬似乱数を記録する擬似乱数記録部を有することを特徴とする請求項1〜6に記載の擬似乱数生成装置。 The pseudo-random number generation information recording unit
Record pseudo-random number generation information indicating the total amount of generated pseudo-random numbers generated by the pseudo-random number generator,
The pseudorandom number generator further includes:
In response to a request from another pseudo-random number generation device, the pseudo-random number generation information recorded in the random number generation information recording unit is transmitted to the other pseudo-random number generation device and updated by the other pseudo-random number generation device. Having a pseudo-random number generation information synchronization unit for receiving the updated pseudo-random number generation information,
The pseudo-random number generator is
The updated generated data total amount indicated in the updated pseudo random number generation information received by the pseudo random number generation information synchronization unit exceeds the generated data total amount before update indicated in the pre-update pseudo random number generation information. Generate a pseudo-random number of the difference between the total amount of generated data before update and the total amount of generated data after update,
The pseudorandom number generator further includes:
The pseudo-random number generation device according to claim 1, further comprising a pseudo-random number recording unit that records the pseudo-random number generated by the pseudo-random number generation unit.
擬似乱数を生成する度に、生成した擬似乱数が前記擬似乱数記録部に記録されている記録擬似乱数のいずれかに一致するか否かを判断し、生成した擬似乱数がいずれかの記録擬似乱数に一致する場合に、記録擬似乱数に一致する擬似乱数を前記擬似乱数記録部の記録対象から除外し、
前記擬似乱数生成部により記録対象から除外された擬似乱数を除外して、前記擬似乱数生成部により生成された擬似乱数を記録することを特徴とする請求項11に記載の擬似乱数生成装置。 The pseudo-random number generator is
Each time a pseudo-random number is generated, it is determined whether the generated pseudo-random number matches one of the recorded pseudo-random numbers recorded in the pseudo-random number recording unit, and the generated pseudo-random number is one of the recorded pseudo-random numbers. , The pseudorandom number that matches the recorded pseudorandom number is excluded from the recording target of the pseudorandom number recording unit,
12. The pseudo-random number generation device according to claim 11, wherein the pseudo-random number generated by the pseudo-random number generation unit is recorded by excluding the pseudo-random number excluded from the recording target by the pseudo-random number generation unit.
各擬似乱数生成装置は、
他の擬似乱数生成装置と共通する乱数シード値を記録する乱数シード値記録部と、
他の擬似乱数生成装置と共通する乱数生成アルゴリズムと他の擬似乱数生成装置と共通する乱数データ長が示されるとともに、自装置に割当てられる割当て擬似乱数を特定するための割当て乱数特定値が示される擬似乱数生成情報を記録する擬似乱数生成情報記録部と、
前記乱数シード値を用いて前記乱数生成アルゴリズムにて前記乱数データ長分の擬似乱数を順次生成し、生成した擬似乱数の中から、前記割当て乱数特定値に対応する生成順序の擬似乱数を前記割当て擬似乱数として抽出する擬似乱数生成部とを有することを特徴とする情報処理システム。 An information processing system including a plurality of pseudo-random number generators that generate pseudo-random numbers,
Each pseudo-random number generator is
A random number seed value recording unit for recording a random number seed value common to other pseudo-random number generation devices;
A random number generation algorithm common to other pseudo random number generation devices, a random data length common to other pseudo random number generation devices, and an assigned random number specifying value for specifying an assigned pseudo random number assigned to the own device are indicated. A pseudo-random number generation information recording unit for recording pseudo-random number generation information;
Using the random number seed value, the random number generation algorithm sequentially generates pseudo random numbers corresponding to the random data length, and the generated pseudo random numbers are assigned with the generation order corresponding to the assigned random number specific value. What is claimed is: 1. An information processing system comprising: a pseudo random number generation unit that extracts a pseudo random number.
前記擬似乱数生成部は、
他の擬似乱数生成装置における擬似乱数の生成から独立して、前記乱数データ長分の擬似乱数を順次生成し、生成した擬似乱数の中から、前記割当て乱数特定値に対応する生成順序の擬似乱数を前記割当て擬似乱数として抽出することを特徴とする請求項13に記載の情報処理システム。 In each pseudorandom number generator,
The pseudo-random number generator is
Independently from the generation of pseudo-random numbers in other pseudo-random number generation devices, pseudo-random numbers corresponding to the random data length are sequentially generated, and the generated pseudo-random numbers have a generation order corresponding to the assigned random number specific value. The information processing system according to claim 13, wherein the information is extracted as the assigned pseudorandom number.
他の擬似乱数生成装置と共通する乱数シード値を記録する乱数シード値記録部から、前記乱数シード値を取得する乱数シード値取得処理と、
他の擬似乱数生成装置と共通する乱数生成アルゴリズムと他の擬似乱数生成装置と共通する乱数データ長が示されるとともに、自装置に割当てられる割当て擬似乱数を特定するための割当て乱数特定値が示される擬似乱数生成情報を参照する擬似乱数生成情報参照処理と、
前記乱数シード値を用いて前記乱数生成アルゴリズムにて前記乱数データ長分の擬似乱数を順次生成し、生成した擬似乱数の中から、前記割当て乱数特定値に対応する生成順序の擬似乱数を前記割当て擬似乱数として抽出する擬似乱数生成処理とを実行させることを特徴とするプログラム。 In a pseudo random number generator that is a computer that generates pseudo random numbers,
A random number seed value acquisition process for acquiring the random number seed value from a random number seed value recording unit that records a random number seed value common to other pseudo-random number generation devices;
A random number generation algorithm common to other pseudo random number generation devices, a random data length common to other pseudo random number generation devices, and an assigned random number specifying value for specifying an assigned pseudo random number assigned to the own device are indicated. Pseudo-random number generation information reference processing for referring to pseudo-random number generation information;
Using the random number seed value, the random number generation algorithm sequentially generates pseudo random numbers corresponding to the random data length, and the generated pseudo random numbers are assigned with the generation order corresponding to the assigned random number specific value. A program for executing a pseudo-random number generation process for extracting as a pseudo-random number.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007327076A JP2009151429A (en) | 2007-12-19 | 2007-12-19 | Pseudo random number generator, information processing system and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007327076A JP2009151429A (en) | 2007-12-19 | 2007-12-19 | Pseudo random number generator, information processing system and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009151429A true JP2009151429A (en) | 2009-07-09 |
Family
ID=40920544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007327076A Pending JP2009151429A (en) | 2007-12-19 | 2007-12-19 | Pseudo random number generator, information processing system and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009151429A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013046185A2 (en) | 2011-09-30 | 2013-04-04 | Nokia Siemens Networks Oy | Fault management traffic reduction in heterogeneous networks |
JP2020024520A (en) * | 2018-08-06 | 2020-02-13 | 日本放送協会 | Subjective evaluation device and program |
-
2007
- 2007-12-19 JP JP2007327076A patent/JP2009151429A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013046185A2 (en) | 2011-09-30 | 2013-04-04 | Nokia Siemens Networks Oy | Fault management traffic reduction in heterogeneous networks |
US20130083669A1 (en) * | 2011-09-30 | 2013-04-04 | Nokia Siemens Networks Corporation Oy | Fault management traffic reduction in heterogeneous networks |
EP2761457A4 (en) * | 2011-09-30 | 2015-08-05 | Nokia Solutions & Networks Oy | Fault management traffic reduction in heterogeneous networks |
US9538402B2 (en) * | 2011-09-30 | 2017-01-03 | Nokia Solutions And Networks Oy | Fault management traffic reduction in heterogeneous networks |
JP2020024520A (en) * | 2018-08-06 | 2020-02-13 | 日本放送協会 | Subjective evaluation device and program |
JP7084817B2 (en) | 2018-08-06 | 2022-06-15 | 日本放送協会 | Subjective evaluation device and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1592877B (en) | Method and device for encryption/decryption of data on mass storage device | |
JP3810425B2 (en) | Falsification detection data generation method, and falsification detection method and apparatus | |
KR101324825B1 (en) | Message authentication code pre-computation with applications to secure memory | |
JP4801059B2 (en) | Method, system and security means for data archiving with automatic encryption and decryption by key fragmentation | |
US7929692B2 (en) | Firmware encrypting and decrypting method and an apparatus using the same | |
US8555059B2 (en) | Secure local update of content management software | |
JP5648209B2 (en) | Storage system having encryption key selection device and encryption key selection method | |
CN102750233B (en) | Encryption and storage confidential data | |
EP2482221A1 (en) | Secure software updates | |
US11030119B2 (en) | Storage data encryption and decryption apparatus and method | |
US20030084308A1 (en) | Memory encryption | |
US20080285747A1 (en) | Encryption-based security protection method for processor and apparatus thereof | |
JP4606421B2 (en) | Key information generation method and apparatus, key information update method, falsification detection method and apparatus, and data structure of key information | |
EP1374063A2 (en) | Method and apparatus for automatic database encryption | |
AU2002213436A1 (en) | Method and apparatus for automatic database encryption | |
US20100070778A1 (en) | Secure file encryption | |
JP2010028485A (en) | Information processing apparatus, authentication method, and storage medium | |
EP3326296B1 (en) | Wireless access tag duplication system and method | |
KR102244290B1 (en) | Encryption communication apparatus that supports secure communication between a data transmitting apparatus and a data receiving apparatus, and the operating method thereof | |
US20100061550A1 (en) | Data processing apparatus | |
JP5388727B2 (en) | Information processing system, information processing apparatus, server apparatus, information processing method, and program | |
JP2009080772A (en) | Software starting system, software starting method and software starting program | |
JP2009151429A (en) | Pseudo random number generator, information processing system and program | |
JPH104403A (en) | Encryption device, decode device and method therefor | |
US20060230463A1 (en) | Method, apparatus, and computer program product for controlling copying and playback of digital data |