WO2004017191A1 - 乱数生成装置及び乱数生成方法 - Google Patents

乱数生成装置及び乱数生成方法 Download PDF

Info

Publication number
WO2004017191A1
WO2004017191A1 PCT/JP2003/001100 JP0301100W WO2004017191A1 WO 2004017191 A1 WO2004017191 A1 WO 2004017191A1 JP 0301100 W JP0301100 W JP 0301100W WO 2004017191 A1 WO2004017191 A1 WO 2004017191A1
Authority
WO
WIPO (PCT)
Prior art keywords
random
random number
pulse
noise
generating
Prior art date
Application number
PCT/JP2003/001100
Other languages
English (en)
French (fr)
Inventor
Takeshi Saito
Original Assignee
Institute For Advanced Studies Co., Ltd.
Leisure Electronics Technology Co.,Ltd.
Mitsui & Co.,Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute For Advanced Studies Co., Ltd., Leisure Electronics Technology Co.,Ltd., Mitsui & Co.,Ltd. filed Critical Institute For Advanced Studies Co., Ltd.
Priority to AU2003285742A priority Critical patent/AU2003285742A1/en
Priority to JP2004528826A priority patent/JP4195007B2/ja
Priority to EP03788003A priority patent/EP1544726B1/en
Publication of WO2004017191A1 publication Critical patent/WO2004017191A1/ja
Priority to US11/058,725 priority patent/US8234322B2/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Definitions

  • the present invention provides a physical noise based on a thermal noise generated randomly by a thermal noise generating element made of a resistor, a semiconductor, or a conductor, or a light noise generated randomly by a light emitting element such as an LED or a PIN diode.
  • the present invention relates to a random number generation device and a random number generation method for generating random numbers.
  • a method using a semiconductor such as a resistor or a diode or a conductor as a thermal noise generating element is known. Since the thermal noise generated in the thermal noise generating element is both random in frequency and amplitude, a physical random number can be extracted based on the thermal noise.
  • Various random number generators using such a thermal noise generating element are disclosed in many documents. The most common method of generating a physical random number using a thermal noise generating element is to amplify and sample the thermal noise output from the thermal noise generating element at a certain instant, compare the value with a certain threshold, and calculate the random number. It is a method of taking out.
  • the thermal noise output and amplified from the thermal noise generating element is sampled at regular intervals, and a rule is set to “1” if the sampled value exceeds a certain threshold, and “0” otherwise.
  • a rule is set to “1” if the sampled value exceeds a certain threshold, and “0” otherwise.
  • physical random numbers can be extracted digitally.
  • Another method of generating a physical random number using a thermal noise generating element is to measure the time interval from when a randomly generated thermal noise exceeds a certain threshold to when it exceeds the next threshold, and calculate the time measurement value. Is known as it is as a random value.
  • An example of a random number generation device according to this method is disclosed in Japanese Patent Laid-Open No. 2001-133. This is described in Japanese Patent Publication No. 44222/1992.
  • a circuit is formed that amplifies the thermal noise output from the thermal noise generating element and generates a square pulse that rises at the moment when the peak of the thermal noise exceeds a certain threshold.
  • a circuit that generates a high-frequency clock and a counter that counts the clock are provided. The clock generated between the generation of one pulse and the generation of the next pulse is counted by the counter, and this count value is calculated. Take it out as a random number. However, (shall be the n-bit) counter number of bits for the finite, when the count 2 n times the counter is reset, so start counting from 1 again, the type of random number values that are actually retrieved is the 2 n .
  • the frequency of successive pulses based on thermal noise will increase in time.
  • these pulses may not be able to be distinguished in a circuit due to frequency characteristics of the amplifier circuit. For this reason, the frequency of appearance of small values before the counter operation of the counter reaches one cycle is slightly reduced, and this is one of the causes of the non-uniform frequency of appearance.
  • the present invention has been made under such a technical background, and it is possible to generate random numbers more quickly and make the appearance frequency of each value uniform while having a simple circuit configuration.
  • An object of the present invention is to provide a random number generation device and a random number generation method. (Disclosure of the Invention)
  • a random number generation device includes: a noise generation element; amplification means for amplifying a waveform based on noise generated in the noise generation element; and a signal output from the amplification means.
  • a random pulse generating means for generating a random pulse at a time point when the value exceeds the threshold value from a state lower than a predetermined threshold value or at a time point when the value falls below the threshold value from a state higher than the threshold value;
  • a reference pulse generating means for generating the reference pulse; and a time measuring means for measuring a time interval between the reference pulse and the random pulse, and outputs a value measured by the time measuring means as a random value.
  • the time counting means includes: a clock signal generating means for generating a clock signal having a frequency higher than the reference pulse; and a counting means for counting the number of clocks of the clock signal. A count value obtained by counting the number of clocks between the random pulse and the random pulse is used as a measured value.
  • a random number generation device which has been made to solve the above-mentioned problems includes a noise generation element, an amplification means for amplifying a waveform based on a sound generated in the noise generation element, and an output from the amplification means.
  • a first random pulse generating means for generating a first random pulse, and a signal output from the amplifying means is a predetermined threshold.
  • a second random pulse generation means for generating a second random pulse when the value falls below the threshold from a higher state; a reference pulse generation means for generating a reference pulse having a fixed period; A clock signal generating means for generating a high-frequency clock signal; and first and second means for counting the number of clocks of the clock signal in opposite directions.
  • the arithmetic means performs an exclusive OR operation on the values of the first town and the corresponding digit of the second counting means, and performs the arithmetic operation. Output the result as a random number.
  • the noise generating element may be a thermal noise generating element or a light emitting element.
  • the thermal noise generating element may generate a random number based on thermal noise
  • the light emitting element may generate a random number based on light noise. it can.
  • FIG. 1 is a block diagram of a random number generation circuit according to an embodiment of the present invention.
  • FIG. 2 is a diagram schematically showing the waveform of minute potential fluctuations due to thermal noise generated at both ends of the thermal noise generating element 10 (A), and the waveform of the thermal noise amplified by the amplifier 12 is schematically shown.
  • FIG. 7B is a diagram (B), and
  • FIG. 7C is a diagram schematically showing the waveform of a random pulse output from the random pulse generator 14a.
  • FIG. 3 is a diagram for explaining the waveform of each unit in the A-type random number generation unit 8a in the upper part of FIG.
  • Figure 4 shows a continuous experiment of counting the number of generated random numbers over 10 seconds using a random number generator with an average number of pulses generated from thermal noise of about 100,000 per second. It is the figure which showed the experiment result repeated 1000 times.
  • Figure 5 shows the results of an experiment in which the time from one reference pulse to a random pulse was measured as the number of clock pulses using a random number generator with an average number of pulses generated from thermal noise of about 10,000 per second. It is the graph which showed the result.
  • FIG. 6 is a diagram showing a result of taking a distribution of random numbers obtained by performing an experiment of actually generating random numbers using the random number generation circuit of FIG.
  • FIG. 7 shows a number of random number generators shown in Fig. 1.
  • FIG. 9 is a diagram illustrating a random number generation circuit that outputs random number values obtained from a batch as one random number value.
  • FIG. 1 shows a block diagram of a random number generation circuit according to the present embodiment.
  • the random number generator in Fig. 1 consists of two random number generators, 8a and 8b (the former is an A-type random number generator and the latter is a B-type random number generator), which are single thermal noise generators. Generate random numbers based on 10 respectively.
  • the suffixes a and b are omitted, and the random number generation unit 8 and the like are simply described.
  • a thermal noise generating element 10 may be separately provided for each random number generation unit.
  • a thermal noise generating element 10 is an element that outputs a pulse-like potential change based on thermal noise, and usually a resistor is often used as a thermal noise generating element. It is generally accepted that the generation of thermal noise is a random phenomenon. In the circuit of Fig. 1, no voltage is applied to both ends of the thermal noise generating element 10, but this is because the voltage applied from the outside affects the potential variation between both ends of the thermal noise generating element, and the physical random number This is to eliminate impairment of the authenticity.
  • Reference numerals 12a and 12b denote amplifiers that amplify the thermal noise generated in the thermal noise generating element 10, and reference numerals 14a and 14b denote random pulse generators that generate random pulses based on the thermal noise.
  • 20a and 20b are clock pulse generators that generate clock pulses
  • 16a and 16b are counters that count clock pulses
  • 18a and 18b are counters, respectively.
  • the reference pulse generators that trigger the 16a and 16b counting operations are shown.
  • the single pulse generators 20a and 20b may not be provided separately as shown in FIG. 1, but may be a single pulse generator.
  • Figure 2 (A) shows a small potential change due to thermal noise generated at both ends of the thermal noise generating element 10.
  • the motion waveform is schematically shown.
  • each thermal noise has a random duration and a random frequency.
  • this potential fluctuation is extremely small, the waveform before amplification cannot be observed in such a form.
  • the amplifier 12 amplifies the thermal noise generated at both ends of the thermal medical sound generating element 10.
  • thermal noise is a very small fluctuation in potential, so in order to obtain the required amplification degree, amplifiers 12 must be installed in multiple stages as necessary, for example, a preamplifier circuit and a main amplifier circuit. Can also be configured.
  • FIG. 2 (B) schematically shows the waveform of the thermal noise amplified by the amplifier 12. Since the actual amplification circuit has restrictions on the frequency characteristics and amplification degree, it is not possible to faithfully amplify the waveform based on thermal noise. In the output of the amplifier circuit, potential fluctuations and extremely minute fluctuations that are more rapid as the frequency band beyond the amplifiable frequency band are canceled out. Also, the width of the pulse based on the thermal noise output from the amplifier circuit is affected by the time constant inherent in the width circuit. Therefore, the waveform shown in FIG. 2 (B) was obtained under the influence of the circuit characteristics of such an amplifier circuit. The average duration of the pulse of FIG. 2 (B) thus obtained is about 200 nanoseconds as shown in FIG.
  • the random pulse generator 14 sets a threshold in advance from the randomly generated thermal noise, and when the output of the amplifier 12 exceeds this threshold, the random pulse generator 14 This circuit extracts pulses (called “random pulses”).
  • the higher the threshold value the smaller the number of random pulses obtained, the lower the speed of random numbers that can be generated, and the greater the effect of eliminating the effects of noise other than thermal noise.
  • this threshold value is low, the obtained randomness is small.
  • the pulse generators 14a and 14b generate a random signal that rises when a waveform based on thermal noise exceeds a predetermined threshold value.
  • 14b generates a random pulse that rises when the waveform based on the thermal noise falls below a predetermined threshold from a state higher than the predetermined threshold.
  • the thresholds of the random pulse generators 14a and 14b may be the same or different.
  • FIG. 2 (C) schematically shows the waveform of the random pulse output from the random pulse generator 14a.
  • the random pulse generators 14a and 14b are configured so that each of the generated random pulses has a pulse width of 10 nanoseconds.
  • these random pulses are based on thermal noise, the fact that they are obtained by applying circuit processing to a signal based on thermal noise means that the frequency of this random pulse is truly random. there is a need force s to separately verify how.
  • the reference pulses generated from the reference pulse generators 18a and 18b are trigger pulses for the counters 16a and 16b to start counting, respectively.
  • each of the counters 16a and 16b will be described as a 4-bit counter.
  • the mouthpiece generators 20a and 20b always generate clock pulses of a frequency sufficiently higher than the reference pulses generated by the reference pulse generators 18a and 18b (for example, about 300 times). Has been generated.
  • the counter 16a is a forward counter, and is incremented by one each time one clock pulse is received.
  • the counter 16b is a backward counter, and is decremented by one each time a clock pulse is received. Then, each counter is reset every time it counts 4 bits (that is, up to 16), and counts from the beginning of playback.
  • the point that the pair of reference panelless generators 18a and 18b, the forward counter 16'a and the reverse counter 16b are provided is one of the random number generation circuits of the present embodiment.
  • the reference pulse generators 18a and 18b generate reference pulses at a frequency whose cycle is substantially equal to this 100 microseconds.
  • the counter 1 6 a, 1 6 b here is described as 4-bit counter, which is one example, for example, 8-bit force Unta, it may also be a 1 6-bit ⁇ counter or the like Rere.
  • Fig. 3 shows the waveform of each part in the A-type random number generator 8a in the upper part of Fig. 1, that is, the reference pulse (A) generated from the reference pulse generator 18a and the random pulse generator 14a.
  • the reference pulse (A) generated from the reference pulse generator 18a the reference pulse (B) generated from the reference pulse generator 18a
  • the random pulse generator 14a the random pulse generator 14a.
  • the waveform of the random number generator 8b is omitted here.
  • the count values of the 4-bit counter 16a shown in FIG. 3 (D), "3", “5", “6”, “8", are random numbers as they are. You.
  • the count value of the 4-bit counter 16b which is the reverse counter of the random number generation unit 8b in the lower stage, becomes the tongue number as it is.
  • the random numbers obtained as the count values of both counters are independent of each other, and do not depend on each other. Therefore, two random numbers are obtained during one cycle of the thermal noise waveform from a single thermal noise generating element.
  • Figure 5 shows the measurement of the time from one reference pulse to a random pulse as the number of clock pulses using a random number generator with an average number of pulses of about 10,000 per second based on thermal noise. 4 is a graph showing the results of the experiment. The frequency of one dot force time interval shown in FIG. Also in FIG. 5 , the scale on the vertical axis indicating the frequency is logarithmic.
  • the exponential distribution as shown in FIG. 5 can be represented as a distribution proportional to e X p ( ⁇ t / T 0 ).
  • T is the time interval
  • This average time interval ⁇ Is shown by an arrow in FIG.
  • the fact that the time interval between thermal noises shows an exponential function distribution as shown in Fig. 5 means that when the measured value of this time is used as a random number, the appearance of each random number The frequency is not completely uniform, and the higher the value, the more difficult it is. In an actual random number generation device, only the extremely short time interval from the time interval of zero to a few microseconds is used for random number generation on the horizontal axis of FIG. The uniformity is extremely small.
  • the reference pulse is introduced, the time from the reference pulse to the random pulse is measured, and the measured value is directly extracted as a random number.
  • the introduction of the reference pulse in this manner has the following advantages.
  • the width of the pulse based on the thermal noise output from the amplifier circuit 12 is about 200 nanoseconds.
  • This pulse width depends at least in part on the high frequency characteristics of the amplifier circuit 12.
  • the time from a random pulse to the next random pulse is measured without introducing a reference pulse, and this is output as a random value. If they occur consecutively in a short time of the order of nanoseconds, the two cannot be distinguished. As a result, small values such as “0”, “1”, “2”, etc., before the counter is reset once, cannot be retrieved. Of course, when the counter is reset, it starts counting again from the beginning, so these values do not appear at all. However, the frequency of their appearance cannot be avoided compared to other values. In other words, the frequency of occurrence of random numbers will be non-uniform.
  • Time interval is 200 nano Even if it is considerably shorter than a second, the time interval can be measured. For this reason, even a small value such as “0”, “1”, “2”, etc. before the power counter is reset in one cycle can be taken out. This means that, in other words, the high-frequency characteristics of the amplifier circuit 12 have been equivalently improved. As a result, the random number values, especially small values, and the non-uniformity of the appearance frequency of the values are improved.
  • This exclusive OR circuit 22 takes the exclusive OR of the corresponding digits of the judge direction counter 16a and the reverse direction counter 16b, and obtains the obtained 4-bit value as a random value. put out. For example, considering the first digit, if the first digit value of counter 16a is “0” and the first digit value of counter 16b is “0”, the result of exclusive OR Is “1”. If the first digit value of the counter 16a is “1” and the first digit value of the counter 16b is “1”, the result of the exclusive OR is “1”. It becomes. On the other hand, if one of the first fi of the counter 16a and the first digit of the counter 16b is “0” and the other is “1”, the result of the exclusive OR is “0 J”. The same applies to other digits.
  • FIG. 6 shows the results of taking the distribution of random numbers obtained by conducting an experiment for actually generating random numbers using the random number generation circuit of Fig. 1.
  • a random number generator with a clock frequency F of 100 MHz and a random pulse generation number N of about 100,000 per second is used.
  • FIG. 6 (b) shows the distribution of the appearance frequency of each count value of the backward counter 16b. As can be seen from the figure, the distribution is slightly but clearly rising. In other words, the appearance frequency of the 4-bit count value increases as the value increases. This slope is theoretically N / F-0.001. Actually, when the slope shown in Fig. 6 (b) is obtained, it is 0.001 094, which shows that it is in good agreement with the theory.
  • Figure 6 (c) shows the distribution of values obtained by performing an exclusive OR operation on the corresponding digits of the count values of the forward counter 16a and the reverse counter 16b. ing. As you can see, the distribution is almost horizontal. In other words, the 4-bit random value obtained as a result of the exclusive OR operation can be considered as an almost perfect random number with a uniform appearance frequency.
  • FIG. 7 shows a random number generation circuit that connects a large number of random number generation circuits shown in FIG. 1 and outputs the random number values obtained from each of the random number generation circuits collectively as one random number value.
  • 22 2 , ⁇ ' ⁇ 22 2 ⁇ are exclusive OR circuits.
  • Reference numeral 24 denotes a random number control circuit that controls how to extract a random number value.
  • the random number generation speed can be increased accordingly.
  • the appearance frequency of the random number value of one random number generation circuit is made uniform, but when these are connected in multiple stages, the obtained high-speed random numbers become more uniform. Have sex. Therefore, when the random number generation circuit shown in FIG. 1 is connected in many stages to increase the random number generation speed, there is a further advantage that the integrity of the physical random numbers can be maintained.
  • the reference pulse is used as a trigger pulse for starting the counting operation of the counters 16a and 16b, and the power counting operation is terminated when a random pulse arrives.
  • the same effect can be obtained if the random pulse is used as a trigger pulse for starting the counting operation and the counting operation is terminated when the reference pulse arrives.
  • the value obtained by taking the exclusive OR of the corresponding digits of the counters 16a and 16b is output as the final random number value. It is also possible to output the count value as it is as the final random value.
  • the present invention is also applicable to a case where a time interval between noise pulses is measured based on the noise of light emitted from the light source and a physical random number is generated based on the measured time interval.
  • a physical random number is extracted based on thermal noise generated randomly by the thermal noise generating element and light noise randomly generated by the light emitting element, so that a physical random number can be generated with a simple circuit configuration.
  • the random number generation speed can be increased and the random number appearance frequency can be made uniform. It can be suitably applied to various simulations using random numbers, for example, financial derivative products (derivatives), building strength simulations, weather forecasts, and advanced gaming machines using simulations.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Manipulation Of Pulses (AREA)

Description

明細書 乱数生成装置及ぴ乱数生成方法
(技術分野)
本発明は、 抵抗体、 半導体、 もしくは導体等からなる熱雑音発生素子がランダ ムに発生する熱雑音、 あるいは L E Dや P I Nダイオード等の発光素子がランダ ムに発生する光の雑音などに基づいて物理乱数を生成する乱数生成装置及ぴ乱数 生成方法に関する。
(背景技術)
自然現象に基づいて物理乱数を取り出す方法の一つに、 抵抗、 ダイオード等の 半導体、 あるいは導体を熱雑音発生素子として用いる方法が知られている。 熱杂集 音発生素子において発生する熱雑音は、 発生頻度、 振幅ともにランダムなので、 この熱雑音に基づいて物理乱数を取り出すことができる。 このような熱雑音発生 素子を利用した各種の乱数生成装置は、 多数の文献において開示されている。 熱雑音発生素子を用いて物理乱数を生成するもっとも一般的な方法は、 ある瞬 間に熱雑音発生素子が出力する熱雑音を増幅してサンプリングし、 その値をある 閾値と比較して乱数を取り出す方法である。 すなわち、 熱雑音発生素子から出力 され、 増幅された熱雑音を一定周期でサンプリングし、 そのサンプリングされた 値がある閾値を超えていれば 「1」、 超えていなければ 「0」 というルールを設 定しておくことによって、 物理乱数をディジタル的に取り出すことができる。 熱雑音発生素子を用いて物理乱数を生成する他の方法として、 ランダムに発生 する熱雑音が、 ある閾値を超えてから次にその閾値を超えるまでの時間間隔を測 定し、 その時間計測値をそのまま乱数値として取り出す方法が知られている。 こ の方法による乱数生成装置の一例が、 日本の特許公報である特開 2 0 0 1— 1 3 4 4 2 2号公報において説明されている。
この乱数生成装置では、 熱雑音発生素子から出力される熱雑音を増幅し、 この その波高がある閾値を超える瞬間に立ち上がる方形パルスを生成する回路を構成 し、 これとは別にこのパルスよりも十分に周波数が高いクロックを生成する回路 及びクロックをカウントするカウンタを設け、 一つのパルスが発生してから次の パルスが発生するまでの間に生成されるクロックをカウンタでカウントし、 この カウント値を乱数として取り出す。 ただし、 カウンタのビット数 (nビットとす る) は有限のため、 2 n回カウントするとカウンタはリセットされ、 再び 1から カウントを始めるので、 実際に取り出される乱数値の種類は 2 n個である。 この 方法は、 熱雑音のパルス一発当たりに nビットの乱数が生成されるので、 熱雑音 を瞬間的にサンプリングする方法に比べ、 高速に乱数を生成することができる。 しかしながら、 時間間隔を計測する方法では、 計測時間が指数関数分布を示す ことから、 計測時間に基づいて得られる乱数値には、 わずかながら出現頻度に不 均一を生じる。 この程度の不均一はこれまでは無視されてきたが、 より良好な乱 数を取り出すためには、 力かる不均一を解消することが望ましい。
また、 単位時間当たりに取り出す乱数の数を多くしょうとすると、 すなわち乱 数を高速に発生させようとすると、 熱雑音に基づく連続するパルスが時間的に近 づいて発生する頻度が高くなる。 この場合、 増幅回路の周波数特性などに起因し てこれらのパルスを回路的に識別することができないことがある。 このため、 力 ゥンタのカウント動作が一巡する前の小さい値の出現頻度がやや小さくなり、 こ のことも出現頻度を不均一にする原因の一つとなっている。
本発明は、 このような技術的背景のもとになされたものであり、 簡易な回路構 成でありながら、 より高速に乱数を生成するとともに、 各値の出現頻度を均一化 することができる乱数生成装置及び乱数生成方法を提供することを目的とする。 (発明の開示)
上記の課題を解決すベくなされた本発明に係る乱数生成装置は、 雑音発生素子 と、 雑音発生素子において発生した雑音に基づく波形を増幅する増幅手段と、 前 記増幅手段より出力される信号が所定の閾値より低い状態から当該閾値を上回つ た時点又は当該閾値より高い状態から当該閾値を下回った時点においてランダム パルスを生成するランダムパルス生成手段と、 —定周期を有する基準パルスを生 成する基準パルス発生手段と、 前記基準パルスと前記ランダムパルスとの間の時 間間隔を計測する計時手段とを含んで構成され、 前記計時手段による計測値を乱 数値として出力する。
ここで、 前記計時手段は、 前記基準パルスよりも高い周波数のクロック信号を 発生するクロック信号発生手段と、 前記クロック信号のクロック数を力ゥントす るカウント手段とを含んで構成され、 前記基準パルスと前記ランダムパルスとの 間のクロック数をカウントしたカウント値を計測値とする。
さらに、 上記の課題を解決すべくなされた本発明に係る乱数生成装置は、 雑音 発生素子と、 雑音発生素子において発生した杂音に基づく波形を増幅する増幅手 段と、 前記増幅手段より出力される信号が所定の閾値より低い状態から当該閾値 を上回った時点にお!/、て第一のランダムパルスを生成する第一のランダムパルス 生成手段と、 前記増幅手段より出力される信号が所定の閾値より高い状態から当 該閾値を下回つた時点において第二のランダムパルスを生成する第二のランダム パノレス生成手段と、 一定周期を有する基準パルスを生成する基準パルス発生手段 と、 前記基準パルスよりも高レ、周波数のクロック信号を発生するクロック信号発 生手段と、 前記ク口ック信号のクロック数を互いに逆の方向にカウントする第一 及ぴ第二の力ゥント手段と、 排他的論理和演算を行う演算手段とを含んで構成さ れ、 前記第一の力ゥント手段は前記基準パルスと前記第—のランダムパルスとの 間のク口ック数をカウントし、 前記第二の力ゥント手段は前記基準パルスと前記 第二のランダムパルスとの間のクロック数をカウントし、 前記演算手段は、 第一 のタウンと手段と第二のカウント手段の対応する桁の値について排他的論理和演 算を行い、 その演算結果を乱数として出力する。
上述の乱数生成装置を複数設け、 それぞれから生成される乱数を一括して一つ の乱数とすることができ、 これにより乱数生成速度を高速化することができる。 前記雑音発生素子は熱雑音発生素子又は発光素子とすることができ、 熱雑音発 生素子の場合は熱雑音に基づいて、 発光素子の場合は光の雑音に基づいて、 乱数 を生成することができる。
(図面の簡単な説明)
図 1は、 本発明の実施形態に係る乱数生成回路のプロック図である。
図 2は、 熱雑音発生素子 1 0の両端に生じる熱雑音による微小な電位変動の波 形を模式的に示した図 (A)、 増幅器 1 2によって増幅された熱雑音の波形を模 式的に示した図 (B)、 そして、 ランダムパルス生成器 1 4 aから出力されるラ ンダムパルスの波形を模式的に示した図 (C) である。
図 3は、 図 1の上段の A型乱数生成部 8 aにおける各部の波形を説明するため の図である。
図 4は、 熱杂音に基づくパルスの平均発生数が毎秒約 1 0万個である乱数生成 装置を用いて、 その乱数の発生数を 1 0秒間にわたってカウントする実験を連続 して 1 3万 5千回繰り返した実験結果を示した図である。
図 5は、 熱雑音に基づくパルスの平均発生数が毎秒約 1万個である乱数生成装 置を用いて、 一つの基準パルスからランダムパルスまでの時間をクロックパルス のカウント数として測定した実験の結果を示したグラフである。
図 6は、 図 1の乱数生成回路を用いて実際に乱数を生成する実験を行って得ら れた乱数の分布をとつた結果を示した図である。
図 7は、 図 1に示した乱数生成回路を多数段連結し、 それぞれの乱数生成装置 から得られる乱数値を一括して一つの乱数値として出力する乱数生成回路を示し た図である。
(発明を実施するための最良の形態)
以下に、 図面を参照しながら本発明の実施の一形態について説明する。 図 1は、 本実施形態の乱数生成回路のプロック図を示している。 図 1の乱数生成回路は、 8 a、 8 bという二つの乱数生成部からなり (前者を A型乱数生成部、 後者を B 型乱数生成部とする)、 これらが単一の熱雑音発生素子 1 0に基づいて、 それぞ れ乱数を生成する。 以下では、 各乱数生成部を構成する回路要素を含めて、 A型 と B型を区別する必要がないときは添字 a、 bを省略し、 単に乱数生成部 8等と 記す。 なお、 各乱数生成部ごとに個別に熱雑音発生素子 1 0を設けてもよい。 図 1のプロック図において、 熱雑音発生素子 1 0は、 熱雑音に基づいてパルス 状の電位変動を出力する素子であり、 通常は抵抗が熱雑音発生素子として用いら れることが多い。 熱雑音の発生はランダムな現象であることが、 一般に認められ ている。 図 1の回路では、 熱雑音発生素子 1 0の両端に電圧を印加していないが、 これは外部から印加される電圧が熱雑音発生素子の両端間の電位変動に影響を与 えて物理乱数の真性を損なうことを排除するためである。
符号 1 2 a、 1 2 bは熱雑音発生素子 1 0において発生する熱雑音を増幅する 増幅器を、 符号 1 4 a、 1 4 bは熱雑音に基づいてランダムパルスを生成するラ ンダムパルス生成器を、 符号 2 0 a、 2 0 bはクロックパルスを生成するクロッ クパルス生成器を、 符号 1 6 a、 1 6 bはクロックパルスをカウントするカウン タを、 符号 1 8 a、 1 8 bはそれぞれカウンタ 1 6 a、 1 6 bのカウント動作を トリガーする基準パルス生成器をそれぞれ示している。 なお、 ク口ックパルス生 成器 2 0 aと 2 0 bは、 図 1のように別々のものを設けるのではなく、 単一のク 口ックパルス生成器としてもよい。
図 2 (A) は、 熱雑音発生素子 1 0の両端に生じる熱雑音による微小な電位変 動の波形を模式的に示している。 同図に示すように、 各熱雑音は、 その時間幅も 発生頻度もランダムである。 実際には、 この電位変動は極めて微小であるため、 増幅する前の波形をこのような形で観測することはできない。
図 1のプロック図において、 増幅器 1 2は、 熱杂医音発生素子 1 0の両端に生じ る熱雑音を増幅する。 前述のように熱雑音は微小な電位変動であるため、 必要な 増幅度を得るために、 例えば前置増幅回路と主増幅回路というように、 増幅器 1 2を必要に応じて複数段の増幅回路から構成することもできる。
図 2 ( B ) は、 増幅器 1 2によって増幅された熱雑音の波形を模式的に示して いる。 実際の増幅回路には周波数特性や増幅度の制約があるため、 熱雑音に基づ く波形を忠実に増幅することはできない。 増幅回路の出力では、 増幅可能な周波 数帯域を超えるほど素速い電位変動や極めて微小な変動などはキャンセルされる。 また、 増幅回路から出力される熱雑音に基づくパルスの幅は、 增幅回路に固有の 時定数によって影響を受ける。 したがって、 図 2 (B ) に示した波形は、 このよ うな増幅回路の回路特性の影響を受けて得られたものである。 こうして得られた 図 2 (B ) のパルスの平均的な持続時間は、 同図に示すように、 2 0 0ナノ秒程 度である。
図 1のプロック図において、 ランダムパルス生成器 1 4は、 ランダムに発生す る熱雑音から、 予め閾値を設定しておき、 増幅器 1 2の出力がこの閾値を超えた ときに、 一定時間幅のパルス (「ランダムパルス」 という) を取り出す回路であ る。 一般に、 この閾値が高いと、 得られるランダムパルスの数は少なくなり、 生 成できる乱数の速度は低下する、 熱雑音以外のノィズなどの影響を排除する効果 は高くなる。 一方、 この閾値が低いと、 得られるランダムノ、。ルスの数は多くなり、 乱数の生成速度は高速になるが、 乱数の真性に影響を与えるノィズを拾レヽやすく なる。 このため、 閾値をどこに設定するかは、 実際のアプリケーションを考慮し て決められる。 、パルス生成器 1 4のうち、 1 4 aは、 熱雑音に基づく波形が所定の閾 値を超えた時点で立ち上がるランダムノ、レスを生成する。 一方、 1 4 bは、 熱雑 音に基づく波形が所定の閾値よりも高い状態からこの閾値を下回った時点で立ち 上がるランダムパルスを生成する。 ランダムパルス生成器 1 4 aと 1 4 bの閾値 は、 同じであってもよいし異なっていてもよい。
図 2 ( C ) は、 ランダムパルス生成器 1 4 aから出力されるランダムパルスの 波形を模式的に示している。 同図に示すように、 生成されるランダムパルスは、 いずれもそのパルス幅が 1 0ナノ秒となるようランダムパルス生成器 1 4 a、 1 4 bを構成してある。 これらのランダムパルスは熱雑音に基づくものであるが、 熱雑音に基づく信号に回路的な処理を加えて得られるものであること力 ら、 この ランダムパ /レスの発生頻度が本当にランダムであるかどうかを別途検証する必要 力 sある。
図 1のブロック図において、 基準パルス発生器 1 8 a、 1 8 b力 ら生成される 基準パルスは、 それぞれ、 カウンタ 1 6 a、 1 6 bがカウント動作を開始するた めのトリガーパルスとなる。 ここでは、 カウンタ 1 6 a、 1 6 bをいずれも 4ビ ット 'カウンタとして説明する。 ク口ックパノレス生成器 2 0 a、 2 0 bは、 基準 パルス生成器 1 8 a、 1 8 bが生成する基準パルスよりも十分に高い周波数 (例 えば 3 0 0倍程度) のクロックパルスを常時生成している。 カウンタ 1 6 aは順 方向カウンタであり、 一つのクロックパルスが入来するごとに 1ずつィンクリメ ントされる。 一方、 カウンタ 1 6 bは逆方向カウンタであり、 クロックパルスが 入来するごとに 1ずつデクリメントされる。 そして、 いずれのカウンタも、 4ビ ット分 (すなわち 1 6まで) カウントとするごとにリセットされ、 再ぴ最初から カウントする。
このように、 一対の基準パノレス発生器 1 8 a、 1 8 bと、 順方向カウンタ 1 6 ' a及び逆方向カウンタ 1 6 bを設けた点が、 本実施形態の乱数生成回路の一つの T JP2003/001100 特徴である。
ここで、 ランダムパルスの平均発生数を毎秒約 1万とすると、 ランダムパルス とランダムパルスの平均的な時間間隔は約 1 0 0マイク口秒である。 この場合、 基準パルス生成器 1 8 a 、 1 8 bは、 周期がこの 1 0 0マイクロ秒と同程度とな る周波数で基準パルスを生成する。 また、 カウンタ 1 6 a 、 1 6 bは、 ここでは 4ビット ·カウンタとして説明するが、 これは一例であり、 例えば 8ビット ·力 ゥンタ、 1 6ビット ■カウンタ等であってもよレヽ。
図 3は、 図 1の上段の A型乱数生成部 8 aにおける各部の波形、 すなわち、 基 準パルス発生器 1 8 aから生成される基準パルス (A)、 ランダムパルス生成器 1 4 aから生成されるランダムパルス (B )、 クロックパルス生成器 2 0 aから 生成されるクロックパルス ( C )、 そしてカウンタ 1 6 aによってカウントされ るクロックパルスのカウント値 (D) の間の関係を説明するための図である。 な お、 下段の乱数生成部 8 bについても同様に考えることができるので、 ここでは 乱数生成部 8 bについては波形の図示を省略した。
図 3 (A) において、 基準パ /レス発生器 1 8 aから基準パルス 3 が生成さ れると、 カウンタ 1 6 aはクロックパルスのカウント動作を開始する。 続いて、 ランダムパルス生成器 1 4 aにおいて熱雑音に起因するランダムパルス 3 2 生成され、 これがカウンタ 1 6 aに入来すると、 カウンタ 1 6 aはカウント動作 を停止する。 この間に発生したクロックノヽレスのノヽ。ルス数が 「1 9」 だったとす ると、 4ビット ·カウンタ 1 6のカウント値は、 「1 9 J を 「1 6 (= 2 4 ) J で 割った余りである 「3」 となる。
また、 基準パルス 3 0 2が生成されるとカウンタ 1 6 aはクロックパルスの力 ゥント動作を開始する。 しかし、 次の基準パルス 3 0 3が生成されるまでにラン ダムパ/レスが入来しない場合は、 カウンタ 1 6 aはカウント動作を継続し、 その 後にランダムパルス 3 2 2が入来した時点でカウント動作を停止する。 この間に 発生したクロックパルスのパルス数が 「8 5 3」 だったとすると、 4ビッ ト -力 ゥンタ 1 6 aのカウント値は、 「8 53」 を 「1 6 (= 24)j で割った余りであ る 「5」 となる。
さらに、 基準パルス 304が生成されてからランダムパルス 3 23が生成され るまでのクロックパルス数が 「6」 だったとすると、 4ビット ·カウンタ 1 6 a のカウント値は、 「6」 を 「1 6 (=24)」 で割った余りである 「6」 となる。 同様に、 基準パルス 3 05が生成されてからランダムパルス 3 24が生成される までのクロックパルス数が 「1 20」 だったとすると、 4ビット 'カウンタ 1 6 aのカウント値は、 「1 20」 を 「1 6 (= 24)」 で割った余りである 「8」 と なる。
ここで、 図 3 (D) に示した 4ビット ·カウンタ 1 6 aのカウント値である 「3」、 「5」、 「6」、 「8」 、 そのまま乱数値となっている点が注目される。 同 様に、 下段の乱数生成部 8 bの逆方向カウンタである 4ビット 'カウンタ 1 6 b のカウント ί直も、 それがそのまま舌し数 となる。 し力も、 両カウンタのカウント 値として得られる乱数値はそれぞれ独立しており、 互いに依存関係はない。 した がつて、 単一の熱雑音発生素子からの熱雑音波形の 1周期の間に 2個の乱数値が 得られる。
このようにして得られた乱数がどの程度真の乱数であるかを検証する方法につ いて説明する。 得られた乱数が真の乱数であること確かめるには、 一定時間にわ たつて集積した各値の分布がポアッソン分布に従うことを示せばよいことが数学 的に知られている。 あるいは、 個体数が多いときにはポアツソン分布はガウス分 布で近似でき、 本実施形態のように個体数が非常に多い場合には、 得られた値の 分布がガウス分布に従うことを示せばよい。
図 4は、 熱雑音に基づくパルスの平均発生数が毎秒約 1 0万個である乱数生成 装置を用いて、 その乱数の発生数を 1 0秒間にわたってカウントする実験 (すな わち平均計測数は約 1 0 0万個となる) を連続して 1 3万5千回操り返した実験 結果を示している。 図の一つひとつの黒のドットが実験値をプロットしたもので ある。 一方、 図 4に実線で示した曲線は、 偏差 σ = 1, 0 2 5を持つガウス分布 を示している。 なお、 図 4の縦軸の頻度の目盛りは対数である点に注意する。 図 4を見ると分かるように、 黒のドットは、 ガウス分布を示す曲線上によく乗 つており、 したがって偏差 σは、
σ = N 1 / 2 = 1, 0 2 5
となっている。 このことから、 ランダムな現象である熱雑音に基づいて、 それに 回路的な処理を施しても、 ここで得られる乱数が非常によい乱数であることが示 されたことになる。
また、 本実施形態のように、 基準パルスとランダムパルスとの間の時間を計測 し、 その計測結果を取り出したものが真の乱数になっているとすれば、 その時間 間隔の分布は指数関数分布となることが数学的に知られている。 図5は、 熱雑音 に基づくパルスの平均発生数が毎秒約 1万個である乱数生成装置を用いて、 一つ の基準パルスからランダムパルスまでの時間を、 クロックパルスのカウント数と して測定した実験結果を示したグラフである。 同図に示した一^ 3ひとつのドット 力 時間間隔の頻度を示している。 図5の場合も、 頻度を示す縦軸の目盛りは対 数である。
図 5の実験結果から、 時間間隔の頻度を示すドットは明らかに直線となってい おり、 図 5の縦軸が対数であることから、 乱数の発生頻度の分布は指数関数的に 減少している。 このことから、 熱雑音に基づ!/ヽて本実施形態の乱数生成装置によ つて生成した乱数は、 真の乱数であることが分かる。
なお、 図 5に示すような指数分布は、 e X p (- t /T 0) に比例する分布と して表すことができる。 ここで、 横軸の tは時間間隔であり、 T。は熱雑音と熱 雑音の時間間隔の平均値である。 熱雑音の平均発生数が約 1万であるから、 T。 〜 ( 1 / 1 0 , 0 0 0 ) = 1 0 0 μ秒である。 この平均時間間隔 Τ。を図 5に矢 印で示す。
ところで、 熱雑音と熱雑音の間の時間間隔が、 図 5に示すように指数関数分布 を示すということは、 この時間を計測した値を乱数として用いた場合に、 それぞ れの乱数の出現頻度が完全には均一でなく、 わずかではあるが、 大きい値ほど出 現しにくいことになる。 実際の乱数生成装置では、 図 5の横軸のうち、 時間間隔 ゼロから僅かに数マイク口秒程度の極めて短い時間間隔の範囲のみを乱数生成に 用いているので、 乱数値の出現頻度の不均一さは極めて小さレ、。
上記のように、 本発明では基準パルスを導入し、 この基準パルスからランダム パルスまでの時間を計測し、 その計測値をそのまま乱数として取り出している。 このように基準パルスを導入すると、 以下のような利点がある。
前述のように増幅回路 1 2から出力される熱雑音に基づくパルスの幅は 2 0 0 ナノ秒程度である。 このパルス幅は、 少なくとも部分的には増幅回路 1 2の高周 波特性に依存する。 この場合 (図 2 ( Β ) 参照)、 基準パルスを導入せずにラン ダムパルスから次のランダムパルスまでの時間を計測してこれを乱数値として出 力すると、 熱雑音に基づくパルスが 2 0 0ナノ秒程度の短時間の間に連続して起 こったような場合には、 両者を区別することができない。 その結果、 カウンタが 一巡してリセットされる前の例えば 「0」、 「1」、 「2」 等の小さい値は、 取り出 すことができない。 もちろん、 カウンタがリセットされれば最初からカウントし 直すのでこれらの値が全く出現しないわけではないが、 その出現頻度が他の値に 比べて小さくなることは避けられなレ、。 すなわち、 乱数の値の出現頻度に不均一 が生じることになる。
これに対して、 本発明のように一定の周期で発生する基準パルスを導入し、 こ れをカウンタがカウント動作を開始するトリガーパルスとして用いることにより、 ある基準パルスとその後に発生するランダムパルスとの時間間隔が、 2 0 0ナノ 秒よりも相当程度短くても、 その時間間隔を計測することができる。 このため力 ゥンタが一巡してリセットされる前の 「0」、 「1」、 「2」 等の小さい値であって も取り出すことができるようになる。 これは、 言い換えると、 等価的に増幅回路 1 2の高周波特性が改善されたことを意味する。 これにより、 乱数の値、 特に小 さレ、値の出現頻度の不均一さが改善される。
さらに、 図 1に示した乱数生成回路には、 他的論理和回路 2 2を設けてある。 この排他的論理和回路 2 2は、 j稷方向カウンタ 1 6 aと逆方向カウンタ 1 6 bの 対応する桁同士の排他的論理和をとり、 得られた 4ビットの値を乱数値として取 り出す。 例えば一桁目を考えると、 カウンタ 1 6 aの一桁目の値が 「0」 でカウ ンタ 1 6 bの一桁目の値も 「0」 であれば、 排他的論理和をとつた結果は 「1」 となり、 カウンタ 1 6 aの一桁目の値が 「1」 でカウンタ 1 6 bの一桁目の値も 「1」 であれば、 排他的論理和をとつた結果は 「1」 となる。 一方、 カウンタ 1 6 aの一fi目とカウンタ 1 6 bの一桁目の一方が 「0」 で他方が 「1」 であれば、 排他的論理和をとつた結果は 「0 J となる。 他の桁についても同様である。
このように、 順方向カウンタ 1 6 aと逆方向カウンタ 1 6 bの対応する桁同士 の排他的論理和をとつたものを最終的な乱数値とすることによって、 以下のよう な効果が得られる。
図 6は、 図 1の乱数生成回路を用いて実際に乱数を生成する実験を行って得ら れた乱数の分布をとつた結果を示している。 図 6の実験では、 クロック周波数 F が 1 0 O MH z、 ランダムパルスの生成数 Nが毎秒約 1 0 0, 0 0 0個の乱数生 成装置を用いている。 図 6 ( a ) は、 順方向カウンタ 1 6 aの各カウント値の出 現頻度の分布を示している。 これを見ると分かるように、 僅かではあるが明らか に右肩下がりの分布を示し、 値が大きくなるほど出現頻度が低下している。 この 傾きは、 理論上は一 N/F =—0 . 0 0 1である。 図 6の縦軸が常用対数である ことに注意し、 縦軸の値の常用対数をとつて実際に図 6 ( a ) の傾き求めると、 P2003/001100 一 0. 00 1 0 30となり、 理論とよく合っていることが分かる。
図 6 (b) は、 逆方向カウンタ 1 6 bの各カウント値の出現頻度の分布を示し ている。 こ; を見ると分かるように、 僅かではあるが明らかに右肩上がりの分布 を示している。 すなわち 4ビットのカウント値は、 値が大きくなるほど出現頻度 が上昇している。 この傾きは、 理論上は N/F-0. 00 1であり、 実際に図 6 (b) の傾き求めると 0. 00 1 0 94となり、 理論とよく合っていることが分 かる。
図 6 (c) は、 順方向カウンタ 1 6 aと逆方向カウンタ 1 6 bそれぞれのカウ ント値の対応する桁同士にっレ、て排他的論理和演算を行って得られる値の分布を 示している。 これを見ると分かるように、 分布はほぼ水平である。 すなわち、 こ の排他的論理和演算の結果得られる 4ビットの乱数値は、 出現頻度が均一化され たほぼ完全な乱数と考えることができる。
図 7は、 図 1に示した乱数生成回路を多数段連結し、 それぞれの乱数生成回路 から得られる乱数値を一括して一つの乱数値として出力する乱数生成回路を示し ている。 図 7において、 8 aい 8 a 2、 ··ヽ 8 a nは A型乱数生成部、 8 bい 8 b 2、 ·'·8 b nは B型乱数生成部である。 また、 22い 222、 ·'·22は排 他的論理和回路である。 符号 24は、 乱数値を取り出し方を制御する乱数制御回 路である。
図 7のように、 単一の乱数生成回路を多数段連結すれば、 それだけ乱数生成速 度を高速化することができる。 この場合、 図 6 (c) に示すように、 一つの乱数 生成回路の乱数値の出現頻度が均一化されているが、 これらを多数段連結した場 合には、 得られる高速乱数はより均一性を持つ。 したがって、 図 1に示す乱数生 成回路は、 これを多数段連結して乱数生成速度を高速化する場合に、 物理乱数の 完全性を維持することができるとレヽぅ利点がある。
なお、 本発明は上記の実施形態には限定されず、 請求の範囲に記載した発明の PC蘭 00應 100 要旨の範囲内において種々の変更が可能であり、 これらも本発明の技術的範囲に 含まれる。
例えば、 上記の実施形態では、 基準パルスをカウンタ 1 6 a、 1 6 bのカウン ト動作を開始するトリガーパルスとし、 ランダムパルスが入来した時点で力ゥン ト動作を終了するように構成したが、 逆にランダムパルスをカウント動作開始の トリガーパルスとし、 基準パルスが入来した時点でカウント動作を終了するよう に構成しても同様の効果が得られる。 また、 上記の実施形態では、 カウンタ 1 6 aと 1 6 bの対応する桁同士の排他的論理和をとつた値を最終的な乱数値として 出力したが、 カウンタ 1 6 a、 1 6 bのカウント値をそのまま最終的な乱数値と して出力することも可能である。
さらに、 上記の実施形態では、 熱雑音発生素子からの熱雑音に基づいて物理乱 数を生成する場合について説明したが、 本発明はこれ以外にも、 例えば L E Dや P I Nダイオード等の発光素子からランダムに発せられる光の雑音に基づいて、 その雑音パルス間の時間間隔を測定し、 これに基づ 、て物理乱数を生成する場合 にも適用可能である。
(産業上の利用可能性)
本発明は、 熱雑音発生素子がランダムに発生する熱雑音や、 発光素子がランダ ムに発する光の雑音に基づいて物理乱数を取り出すので、 簡単な回路構成で物理 乱数を生成することができる。 また、 本発明によって乱数生成速度の高速化及び 乱数値の出現頻度の均一化が達成される。 乱数を利用した各種のシミュレーショ ン、 例えば金融派生商品 (デリバティブ)、 建造物の強度シミュレーション、 天 気予報、 シミュレーシヨンを利用した高度な遊技機等に好適に適用できる。

Claims

請求の範囲
1 . 雑音発生素子と、
雑音発生素子にぉレ、て発生した雑音に基づく波形を増幅する増幅手段と、 前記増幅手段より出力される信号が所定の閾値より低い状態から当該閾値を上 回った時点又は当該閾値より高い状態から当該閾値を下回った時点においてラン ダムパルスを生成するランダムパルス生成手段と、
一定周期を有する基準パルスを生成する基準パルス発生手段と、
前記基準パルスと前記ランダムパルスとの間の時間間隔を計測する計時手段と を含み、
前記計時手段による計測値を乱数値として出力することを特徴とする乱数生成
2 . 前記計時手段は、 前記基準パルスよりも高レ、周波数のクロック信号を発生す るクロック信号発生手段と、 前記クロック信号のクロック数をカウントするカウ ント手段とを含み、 前記基準パルスと前記ランダムパルスとの間のクロック数を カウントしたカウント値を計測値とするものである請求項 1に記載の乱数生成装
3 . 雑音発生素子と、
雑音発生素子にぉレ、て発生した雑音に基づく波形を増幅する増幅手段と、 前記増幅手段より出力される信号が所定の閾値より低い状態から当該閾値を上 回った時点において第一のランダムパルスを生成する第—のランダムパルス生成 手段と、
前記増幅手段より出力される信号が所定の閾値より高い状態から当該閾値を下 回った時点において第二のランダムパルスを生成する第二のランダムパルス生成 手段と、
一定周期を有する基準パルスを生成する基準パルス発生手段と、 前記基準パルスよりも高い周波数のク口ック信号を発生するク口ック信号発生 手段と、
前記クロック信号のクロック数を互いに逆の方向にカウントする第一及び第二 のカウント手段と、
排他的論理和演算を行う演算手段とを含み、
前記第一の力ゥント手段は前記基準パルスと前記第一のランダムパルスとの間 のク口ック数をカウントし、 前記第二のカウント手段は前記基準パルスと前記第 二のランダムパルスとの間のクロック数をカウントし、 前記演算手段は、 第一の タウンと手段と第二のカウント手段の対応する桁の値について排他的論理和演算 を行い、 その演算結果を乱数として出力することを特徴とする乱数生成装置。
4 . 請求項 1乃至 3に記載の乱数生成装置を複数設け、 それぞれから生成される 乱数を一括して一つの乱数とすることにより、 乱数生成速度を高速化したことを とする乱数生成装置。
5 . 前記雑音発生素子は熱杂音発生素子であり、 前記雑音は熱雑音である、 請求 項 1乃至 4のうちいずれか一項に記載の乱数生成装置。
6 . 前記雑音発生素子は発光素子であり、 前記雑音は光に基づく雑音である、 請 求項 1乃至 4のうちいずれか一項に記載の乱数生成装置。
7. 雑音発生素子における雑音の発生に基づいてランダムパルスを生成する工程 と、
一定周期を有する基準パルスを生成する工程と、
前記基準パルスと前記ランダムパルスとの間の時間間隔を計測し、 その計測値 を乱数値として出力する工程とを含むことを特徴とする乱数生成方法。
8 . 前記雑音発生素子は熱雑音発生素子であり、 前記雑音は熱雑音である、 請求 項 7に記載の乱数生成方法。
9 . 前記雑音発生素子は発光素子であり、 前記雑音は光に基づく雑音である、 請 求項 7に記載の乱数生成方法。
7
PCT/JP2003/001100 2002-08-14 2003-02-04 乱数生成装置及び乱数生成方法 WO2004017191A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AU2003285742A AU2003285742A1 (en) 2002-08-14 2003-02-04 Random number generator and random number generation method
JP2004528826A JP4195007B2 (ja) 2002-08-14 2003-02-04 乱数生成装置及び乱数生成方法
EP03788003A EP1544726B1 (en) 2002-08-14 2003-02-04 Random number generator and random number generation method
US11/058,725 US8234322B2 (en) 2002-08-14 2005-02-14 Apparatus and method for generating random numbers

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002236689 2002-08-14
JP2002-236689 2002-08-14

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/058,725 Continuation US8234322B2 (en) 2002-08-14 2005-02-14 Apparatus and method for generating random numbers

Publications (1)

Publication Number Publication Date
WO2004017191A1 true WO2004017191A1 (ja) 2004-02-26

Family

ID=31884421

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2003/001100 WO2004017191A1 (ja) 2002-08-14 2003-02-04 乱数生成装置及び乱数生成方法

Country Status (5)

Country Link
US (1) US8234322B2 (ja)
EP (1) EP1544726B1 (ja)
JP (1) JP4195007B2 (ja)
AU (1) AU2003285742A1 (ja)
WO (1) WO2004017191A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1755033A1 (en) * 2004-05-24 2007-02-21 Leisure Electronics Technology Co., Ltd. Random number extraction method and random number generation device using the same
JP2007323135A (ja) * 2006-05-30 2007-12-13 Fdk Corp 物理乱数生成装置
WO2009028717A1 (ja) * 2007-08-29 2009-03-05 Osamu Kameda 乱数の生成システム及び方法
JP2009302979A (ja) * 2008-06-13 2009-12-24 Toshiba Corp 乱数生成装置
CN114123977A (zh) * 2021-11-26 2022-03-01 南京鼓楼医院 一种基于可控断裂结的白噪声发生方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI408903B (zh) * 2004-06-30 2013-09-11 Noriyoshi Tsuyuzaki 隨機脈衝產生源及半導體裝置、使用該源產生隨機數及/或機率之方法與程式
ATE404914T1 (de) 2006-02-15 2008-08-15 Jaycrypto Ltd Verfahren und vorrichtung zum erzeugen von initialwerten für einen zufallszahlengenerator
GB0603523D0 (en) 2006-02-22 2006-04-05 Qinetiq Ltd Apparatus and method for generating random numbers
US8583712B2 (en) 2007-09-18 2013-11-12 Seagate Technology Llc Multi-bit sampling of oscillator jitter for random number generation
CA2781608C (en) * 2009-11-25 2018-11-06 Aclara RF Systems Inc. Random number generator
US8762439B2 (en) * 2011-04-14 2014-06-24 Apple Inc. System and method for random number generation using asynchronous boundaries and phase locked loops
US9477443B1 (en) 2013-06-06 2016-10-25 Tectrolabs L.L.C. Method and apparatus of entropy source with multiple hardware random noise sources and continuous self-diagnostic logic
WO2014200326A1 (en) * 2013-06-11 2014-12-18 Mimos Berhad Device and method for outputting random data
US10367645B2 (en) * 2016-10-26 2019-07-30 International Business Machines Corporation Proof-of-work for smart contracts on a blockchain
KR102372740B1 (ko) * 2019-04-09 2022-03-14 한국전자통신연구원 난수 생성 장치 및 이의 동작 방법
KR20200144192A (ko) * 2019-06-17 2020-12-29 한국전자통신연구원 난수 생성 장치 및 이의 동작 방법
US10901695B1 (en) * 2020-03-03 2021-01-26 Randaemon Sp. Z O.O. Apparatus, systems, and methods for beta decay based true random number generator
US20210325508A1 (en) * 2021-06-24 2021-10-21 Intel Corporation Signal-to-Noise Ratio Range Consistency Check for Radar Ghost Target Detection
CN117149136B (zh) * 2023-10-30 2024-03-29 华中师范大学 一种产生随机电报噪声的方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5178159A (ja) * 1974-12-28 1976-07-07 Fuji Heavy Ind Ltd
JPS51128239A (en) * 1975-04-30 1976-11-09 Nec Corp Random-digital-pattern generating system
JPS5745645A (en) * 1980-08-29 1982-03-15 Matsushita Electric Ind Co Ltd Random number generator
JPH11296348A (ja) * 1998-04-07 1999-10-29 Takeshi Saito 自然乱数およびハイブリッド乱数生成装置
JP2000276329A (ja) * 1999-03-26 2000-10-06 Takeshi Saito 超高速物理乱数生成装置
JP2000305753A (ja) * 1999-04-16 2000-11-02 Takeshi Saito 物理乱数生成装置
JP2001134422A (ja) 1999-11-02 2001-05-18 Takeshi Saito 熱雑音ランダムパルス発生装置及び乱数生成装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB841287A (en) * 1957-03-15 1960-07-13 Her Majesty S Postmaster Cener Improvements in or relating to random number indicating equipment
US3124753A (en) * 1961-08-21 1964-03-10 Methpuira
US3612845A (en) * 1968-07-05 1971-10-12 Reed C Lawlor Computer utilizing random pulse trains
WO2000038037A1 (en) * 1998-12-18 2000-06-29 The Regents Of The University Of California A RANDOM NUMBER GENERATOR BASED ON THE SPONTANEOUS α-DECAY
US6763363B1 (en) * 1999-12-02 2004-07-13 Honeywell International Inc. Computer efficient linear feedback shift register
JP4521708B2 (ja) * 2001-03-12 2010-08-11 ルネサスエレクトロニクス株式会社 乱数生成装置
JP4467216B2 (ja) * 2001-09-07 2010-05-26 Necエレクトロニクス株式会社 乱数発生方法及び装置
US6963888B2 (en) * 2001-11-29 2005-11-08 Koninklijke Philips Electronics N.V. Method and apparatus for preventing noise from influencing a random number generator based on flip-flop meta-stability
US20040019500A1 (en) * 2002-07-16 2004-01-29 Michael Ruth System and method for providing corporate governance-related services
US20040107124A1 (en) * 2003-09-24 2004-06-03 James Sharpe Software Method for Regulatory Compliance

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5178159A (ja) * 1974-12-28 1976-07-07 Fuji Heavy Ind Ltd
JPS51128239A (en) * 1975-04-30 1976-11-09 Nec Corp Random-digital-pattern generating system
JPS5745645A (en) * 1980-08-29 1982-03-15 Matsushita Electric Ind Co Ltd Random number generator
JPH11296348A (ja) * 1998-04-07 1999-10-29 Takeshi Saito 自然乱数およびハイブリッド乱数生成装置
JP2000276329A (ja) * 1999-03-26 2000-10-06 Takeshi Saito 超高速物理乱数生成装置
JP2000305753A (ja) * 1999-04-16 2000-11-02 Takeshi Saito 物理乱数生成装置
JP2001134422A (ja) 1999-11-02 2001-05-18 Takeshi Saito 熱雑音ランダムパルス発生装置及び乱数生成装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1544726A4

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1755033A1 (en) * 2004-05-24 2007-02-21 Leisure Electronics Technology Co., Ltd. Random number extraction method and random number generation device using the same
EP1755033A4 (en) * 2004-05-24 2007-10-10 Leisure Electronics Technology RANDOM NUMBER EXTRACTING METHOD AND RANDOM NUMBER GENERATING DEVICE USING THE SAME
US8037117B2 (en) 2004-05-24 2011-10-11 Leisure Electronics Technology Co., Ltd. Random number derivation method and random number generator using same
JP2007323135A (ja) * 2006-05-30 2007-12-13 Fdk Corp 物理乱数生成装置
JP4678335B2 (ja) * 2006-05-30 2011-04-27 Fdk株式会社 物理乱数生成装置
WO2009028717A1 (ja) * 2007-08-29 2009-03-05 Osamu Kameda 乱数の生成システム及び方法
JP2009302979A (ja) * 2008-06-13 2009-12-24 Toshiba Corp 乱数生成装置
CN114123977A (zh) * 2021-11-26 2022-03-01 南京鼓楼医院 一种基于可控断裂结的白噪声发生方法
CN114123977B (zh) * 2021-11-26 2022-11-29 南京鼓楼医院 一种基于可控断裂结的白噪声发生方法

Also Published As

Publication number Publication date
US8234322B2 (en) 2012-07-31
EP1544726A1 (en) 2005-06-22
JPWO2004017191A1 (ja) 2005-12-08
JP4195007B2 (ja) 2008-12-10
AU2003285742A1 (en) 2004-03-03
EP1544726A4 (en) 2007-10-03
EP1544726B1 (en) 2012-08-22
US20050198091A1 (en) 2005-09-08
AU2003285742A8 (en) 2004-03-03

Similar Documents

Publication Publication Date Title
WO2004017191A1 (ja) 乱数生成装置及び乱数生成方法
JP4467216B2 (ja) 乱数発生方法及び装置
JP4486961B2 (ja) 乱数取出し方法及びこれを用いた乱数生成装置
US8471750B2 (en) System and method for compressive sensing
JP3480822B2 (ja) 熱雑音ランダムパルス発生装置及び乱数生成装置
JP5123313B2 (ja) 遅延線の較正
WO2006004075A3 (en) Random pulse generation source, and semiconductor device, method and program for generating random number and/or probability using the source
US9430192B2 (en) Method and system for generating random numbers
JP2010510720A (ja) 遅延線の較正
JP2003173254A (ja) 乱数生成回路
US20100332575A1 (en) High-Speed Random Number Generator
CN106443184B (zh) 一种相位检测装置及相位检测方法
JPH11160432A (ja) 光パルスレーダ装置及び光パルス受光装置
JP3502065B2 (ja) 乱数発生装置
CN114123977B (zh) 一种基于可控断裂结的白噪声发生方法
JP4837549B2 (ja) 物理乱数発生器および物理乱数発生装置
CN107608657B (zh) 一种基于时幅转换的可调真随机数发生系统
CN214335060U (zh) 频率检测电路
CN112782474A (zh) 频率检测电路及频率检测方法
KR100512477B1 (ko) 전자회로 잡음을 이용한 난수발생 방법 및 장치
JP3379905B2 (ja) 電気光学サンプリングオシロスコープ
Kanter et al. Towards the generation of random bits at terahertz rates based on a chaotic semiconductor laser
CN117931129A (zh) 一种基于多重熵源的真随机数发生器及其应用
JP3479719B2 (ja) 光線路測定装置
JPS59178033A (ja) 中継器の立ち上がり特性の検出方式

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

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

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

Ref document number: 2004528826

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2003788003

Country of ref document: EP

Ref document number: 11058725

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2003788003

Country of ref document: EP