KR100512477B1 - Method And Apparatus of Generating Random Number Using Electronic Circuit Noise - Google Patents

Method And Apparatus of Generating Random Number Using Electronic Circuit Noise Download PDF

Info

Publication number
KR100512477B1
KR100512477B1 KR10-2003-0020357A KR20030020357A KR100512477B1 KR 100512477 B1 KR100512477 B1 KR 100512477B1 KR 20030020357 A KR20030020357 A KR 20030020357A KR 100512477 B1 KR100512477 B1 KR 100512477B1
Authority
KR
South Korea
Prior art keywords
random number
noise
buffer size
random
value
Prior art date
Application number
KR10-2003-0020357A
Other languages
Korean (ko)
Other versions
KR20040085608A (en
Inventor
홍진근
박선춘
윤장홍
Original Assignee
한국전자통신연구원
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 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR10-2003-0020357A priority Critical patent/KR100512477B1/en
Publication of KR20040085608A publication Critical patent/KR20040085608A/en
Application granted granted Critical
Publication of KR100512477B1 publication Critical patent/KR100512477B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

본 발명은 잡음다이오드를 이용하여 AC잡음신호를 검출하는 단계와, 검출된 상기 AC잡음신호를 증폭하는 단계와, 증폭된 신호를 비교기를 이용하여 "0" 또는 "1" 로 식별하는 단계와, 식별된 일련의 비트열을 일정한 샘플링 주파수를 통해 샘플링 처리하여 난수열로 수집하는 단계와, 수집된 난수열 저장 공간인 버퍼 크기와 상기 버퍼 크기에 포함된 "1" 비트의 개수를 이용하여 상기 버퍼 크기에 수집된 난수열을 검증하는 단계를 포함하는 전자회로 잡음원을 이용한 난수발생방법 및 장치를 제공한다. 이를 통해, 불안전한 주변회로 잡음이나 기판의 온도 상태의 영향 하에서 항시 완전한 난수를 발생시킬 수 있다. The present invention includes detecting an AC noise signal using a noise diode, amplifying the detected AC noise signal, identifying the amplified signal as "0" or "1" using a comparator, Sampling the identified sequence of bits through a predetermined sampling frequency and collecting the random sequence into random numbers; and using the buffer size that is the collected random number storage space and the number of "1" bits included in the buffer size. It provides a random number generation method and apparatus using an electronic circuit noise source comprising the step of verifying the random number collected in size. This allows full random numbers to be generated at all times under the influence of unsafe peripheral circuit noise or substrate temperature conditions.

Description

전자회로 잡음을 이용한 난수발생 방법 및 장치{Method And Apparatus of Generating Random Number Using Electronic Circuit Noise} Method and Apparatus for Random Number Generation Using Electronic Circuit Noise {Method And Apparatus of Generating Random Number Using Electronic Circuit Noise}

본 발명은 전자회로 잡음을 이용한 난수발생 방법 및 장치에 관한 것으로서, 보다 상세하게는 전자회로 잡음에서 난수를 추출하고 추출된 난수가 완전하기 위해서 필터링 방안을 고안하여 이를 적용함으로써 완전한 난수를 발생시키는 장치 및 방법을 제공하는 것이다.The present invention relates to a random number generation method and apparatus using electronic circuit noise, and more particularly, to generate a random number from the electronic circuit noise and to generate a perfect random number by devising a filtering method to apply the extracted random number is perfect And a method.

실난수(Real Random Number)발생장치는 데이터 암호, 영상처리, 음악 작곡이나 회로 테스트 등의 응용분야에서 많이 사용되고 있다. 보다 효과적인 실난수 발생장치는 비예측적이고 모조할 수 없는 그리고 통계적으로 랜덤한 비트열을 제공한다. 따라서, 데이터 암호, 통계적인 시뮬레이션, 추첨식 복권 등과 같은 분야에서 실난수를 이용하는 사례가 증가함에 따라, 실난수 발생장치와 같은 하드웨어 부품으로 이루어진 난수 발생장치가 상용화되고 있다.Real random number generators are widely used in applications such as data encryption, image processing, music composition or circuit testing. More effective real number generators provide unpredictable, imitation and statistically random strings of bits. Therefore, as more cases of using real numbers in fields such as data encryption, statistical simulation, lottery, etc., random number generators made of hardware components such as real number generators have been commercialized.

일반적으로 실난수 발생장치는 실난수 특성을 제공하기 위해 전자회로의 증폭 기법과 샘플링 기법을 사용하고, 이러한 방법은 자연계 현상으로부터 열잡음, 산탄잡음, 1/f잡음 등과 같은 신호들로부터 추출하는 것이 적합한 방법으로 알려져 있다. 실난수 발생장치는 백색잡음 신호를 고려한 전자회로 증폭기의 설계, 추출된 AC신호에 대해 샘플링 과정을 적용한다. In general, a real number generator uses an amplification technique and a sampling technique of an electronic circuit to provide a real number characteristic, and such a method is suitable to extract from signals such as thermal noise, shot noise, and 1 / f noise from natural phenomena. Known as the method. The real random number generator applies a sampling process to the extracted AC signal by designing an electronic circuit amplifier considering a white noise signal.

그러나, 각종 전자회로를 이용하는 난수 발생장치는 그 특성상 유한한 대역폭, 주파수 대역에 따른 잡음의 영향, 다른 비랜덤성 영향 등으로 인해, 실제 난수 발생 장치에서 안정되고, 만족할 만한 랜덤성을 보장 받기가 매우 어렵다. 즉, 하드웨어 부품으로 만 구성된 실난수 발생장치는 출력 난수열이 완전한 난수열을 지속적으로 제공하는데 한계가 있다.However, due to its characteristics, random number generators using various electronic circuits are stable and satisfying randomness in real random number generators due to finite bandwidth, noise effects due to frequency bands, and other non-random effects. Very difficult. That is, the real random number generator composed only of hardware components has a limitation in that the output random number sequence continuously provides a complete random number sequence.

한편, 난수 발생장치를 설계할 때 입력 잡음부에서 비주기적인 잡음원을 효과적으로 추출하는 기술, 추출된 잡음원을 최적으로 샘플링하는 기술, 전자회로 잡음원이 아닌 의사난수 발생장치를 이용하는 기술이 있다.On the other hand, when designing a random number generator, there is a technique of effectively extracting an aperiodic noise source from an input noise unit, a technique of optimally sampling an extracted noise source, and a technique using a pseudo random number generator rather than an electronic circuit noise source.

그러나, 종래의 실난수를 이용하는 기술은 주변의 회로 영향, 기판, 온도 등으로 인해 지속적으로 완전한 난수를 발생시키기 매우 어렵다. 또한, 소프트웨어로 구현된 의사난수 발생장치의 경우 주기적인 특성을 가지고 추측이 불가능한 시드 값 관리라는 문제점을 안고 있다. However, the technique using the conventional real random number is very difficult to continuously generate a complete random number due to the surrounding circuit influence, substrate, temperature and the like. In addition, the pseudo random number generator implemented by software has a problem of seed value management that cannot be inferred with periodic characteristics.

따라서, 본 발명은 상술한 종래 기술의 문제점을 해결하기 위해 안출된 것으로서, 본 발명의 목적은 전자회로를 포함하는 하드웨어로 구성된 난수 발생장치에 적합한 통계적 랜덤성을 제공하도록 하는 것이다. Accordingly, the present invention has been made to solve the above-described problems of the prior art, and an object of the present invention is to provide a statistical randomness suitable for a random number generator composed of hardware including an electronic circuit.

또한, 본 발명의 다른 목적은 실난수 발생장치가 주변 온도나 기판 등의 영향을 받지 않고 지속적으로 완전한 난수를 발생시키는 것이다. In addition, another object of the present invention is to provide a real random number generator continuously complete random number without being affected by the ambient temperature or the substrate.

상술한 목적을 달성하기 위한 기술적 수단으로서, 본 발명의 일측면은 전자회로 잡음원을 이용한 난수발생방법에 있어서, (a) 잡음다이오드를 이용하여 AC잡음신호를 검출하는 단계와, (b) 검출된 상기 AC잡음신호를 증폭하는 단계와, (c) 증폭된 상기 신호를 비교기를 이용하여 "0" 또는 "1" 로 식별하는 단계와, (d) 식별된 상기 일련의 비트열을 일정한 샘플링 주파수를 통해 샘플링 처리하여 난수열로 수집하는 단계와, (e) 수집된 난수열 저장 공간인 버퍼 크기와 상기 버퍼 크기에 포함된 "1" 비트의 개수를 이용하여 상기 버퍼 크기에 수집된 난수열을 검증하는 단계를 포함하는 전자회로 잡음원을 이용한 난수발생방법을 제공한다.As a technical means for achieving the above object, one aspect of the present invention is a random number generation method using an electronic circuit noise source, (a) detecting an AC noise signal using a noise diode, (b) detected Amplifying the AC noise signal, (c) identifying the amplified signal as " 0 " or " 1 " by using a comparator; and (d) identifying the sequence of bit streams identified by a constant sampling frequency. Sampling through the random number sequence and (e) verifying the random number sequence collected in the buffer size using the buffer size which is the collected random number storage space and the number of " 1 " bits included in the buffer size. It provides a random number generation method using an electronic circuit noise source comprising the step of.

바람직하게는, (e)단계는, 버퍼 크기의 절반 값과 "1"비트 개수의 합을 각각 Total_Length와 Toatal_Sum 변수에 저장하는 단계와, Toatal_Sum/Total_Length 값을 구하여 이를 변수 P에 저장하는 단계와, P와 기설정된 유의수준 값을 비교하되, 유의수준 내에 있으면 통과하고, 유의수준 내가 아니면 폐기한다.Preferably, step (e) comprises: storing the sum of the half value of the buffer size and the "1" bit number in the Total_Length and Toatal_Sum variables, respectively, obtaining the Toatal_Sum / Total_Length value and storing it in the variable P; Compare P with a preset significance level, pass if it is within the significance level, and discard if not within the significance level.

한편, 상술한 버퍼 크기는 64비트이고, 유의수준은 0.9995 ~ 1.0005 일 수 있다. 유의수준 범위는 이론적으로도 안정된 난수 값을 얻기 위한 값으로 결정될 수 있고 실험 값으로 확인된 값이다. Meanwhile, the above buffer size is 64 bits, and the significance level may be 0.9995 to 1.0005. The significance level range may theoretically be determined to obtain a stable random number value and is a value confirmed as an experimental value.

상술한 목적을 달성하기 위한 기술적 수단으로서, 본 발명의 다른 측면은 AC잡음신호를 추출하는 잡음신호 추출부와, 잡음신호 추출부에서 추출된 상기 AC잡음신호를 입력받아 증폭하는 AC소신호증폭부와, 증폭된 신호를 입력받아 "0" 또는 "1" 로 식별하는 패턴식별부와, 식별된 비트열을 일정한 샘플링 주파수를 통해 샘플링 처리하여 난수열로 수집하는 비트 샘플링부와, 수집된 난수열 저장 공간인 버퍼 크기와 상기 버퍼 크기에 포함된 "1" 비트의 개수를 이용하여 상기 버퍼 크기에 수집된 난수열을 검증하여 필터링하는 필터링부를 포함하는 전자회로 잡음원을 이용한 난수발생장치를 제공한다.As a technical means for achieving the above object, another aspect of the present invention is a noise signal extraction unit for extracting the AC noise signal, and AC small signal amplifier for receiving and amplifying the AC noise signal extracted from the noise signal extraction unit And a pattern identification unit that receives the amplified signal and identifies it as "0" or "1", a bit sampling unit for sampling the identified bit streams through a predetermined sampling frequency, and collecting them as random numbers; The present invention provides a random number generator using an electronic circuit noise source including a filtering unit configured to verify and filter a random number sequence collected in the buffer size by using a buffer size that is a storage space and the number of "1" bits included in the buffer size.

잡음신호 추출부는 아발란치 포토 다이오드 또는 제너 다이오드일 수 있고, AC잡음신호는 0.1Hz~10MHz 대역에서 백색 잡음의 가우스 분포특성을 갖는 백색잡음일 수 있다.The noise signal extractor may be an avalanche photodiode or a zener diode, and the AC noise signal may be white noise having a Gaussian distribution characteristic of white noise in the 0.1 Hz to 10 MHz band.

바람직하게는, 필터링부는 상기 버퍼 크기의 절반 값(Total_Length)과 "1"비트 개수의 합(Toatal_Sum)을 각각 구하여 이로부터 Toatal_Sum/Total_Length 값(P 값)을 구한 뒤, 상기 P 값이 기설정된 유의수준 내에 있으면 통과하고, 상기 유의수준 내가 아니면 폐기한다.Preferably, the filtering unit obtains the sum value (Total_Sum) of the half value (Total_Length) of the buffer size and the total number of "1" bits, and obtains the Toatal_Sum / Total_Length value (P value) therefrom, and then sets the P value to be preset. Pass if within level, discard if not within the significance level.

이하, 첨부된 도면을 참조하여 본 발명을 설명하면 다음과 같다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 본 발명의 가장 바람직한 실시예를 첨부 도면을 참조하여 설명하기로 한다. Hereinafter, the present invention will be described with reference to the accompanying drawings. BEST MODE FOR CARRYING OUT THE INVENTION In order to explain in detail that a person skilled in the art may easily implement the technical idea of the present invention, the most preferred embodiment of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 바람직한 실시예에 따른 전자회로 잡음을 이용한 난수발생장치의 구성도이다. 잡음원 추출부(10)는 미약한 AC잡음신호를 검출하고, AC소신호 증폭부(20)는 이 신호를 추출 가능한 크기로 사용하기 위해 증폭시킨다. 이때, AC증폭부(20)는 연산증폭기로 AC전압증폭기를 사용할 수 있다. 패턴식별부 (30)는 제로 교차점을 이용하는 비교기를 사용하여 AC 잡음신호를 "0" 또는 "1" 로 식별한다. 이와 같이 얻어진 이진 비트열은 비트 샘플링부(40)에서 일정한 샘플링 주파수를 통해 샘플링 처리되어 난수열로 수집된다. 다음으로, 비트 필터부(50)에서는 수집된 난수열을 필터링 알고리즘을 이용하여 non bias한 출력열로 필터링한다. 1 is a block diagram of a random number generator using electronic circuit noise according to a preferred embodiment of the present invention. The noise source extractor 10 detects a weak AC noise signal, and the AC small signal amplification unit 20 amplifies the signal for use in an extractable size. In this case, the AC amplifier 20 may use an AC voltage amplifier as an operational amplifier. The pattern identifying unit 30 identifies the AC noise signal as "0" or "1" using a comparator using a zero crossing point. The binary bit string thus obtained is sampled through a constant sampling frequency in the bit sampling unit 40 and collected in a random number string. Next, the bit filter unit 50 filters the collected random number sequence into a non-biased output sequence using a filtering algorithm.

본 발명에서는 비트 필터부(50)에 의해 추출 난수가 적합한 난수이면 그 난수를 선택하고 적합한 난수가 아니면 폐기시켜 난수의 랜덤성을 향상시킬 수 있다. In the present invention, the random number of random numbers can be improved by selecting the random number if the random number extracted by the bit filter unit 50 is a suitable random number and discarding the random number if the extracted random number is not a suitable random number.

난수 발생장치에 적용되는 잡음추출부(10)로는 0.1Hz~10MHz 대역에서 백색 잡음의 가우스 분포특성의 출력을 갖는 잡음 다이오드가 가능하다. 잡음다이오드로는 아발란치(avalanche) 포토 다이오드 또는 제너(Zener) 다이오드를 이용할 수 있다. 백색 잡음은 예컨대 수십 μVrms정도의 진폭을 갖는 미소한 신호이다. 백색 잡음을 이용하면 물리적으로는 완전하게 랜덤인 신호를 발생하기 위해 순도가 높은 난수를 얻을 수 있다. 단, 백색 잡음의 전압 진폭은 작기 때문에, 실제로 이용 가능한 정도의 진폭을 갖는 난수를 발생하기 위해서는 증폭 회로를 이용해 백색 잡음을 증폭할 필요가 있다. As the noise extractor 10 applied to the random number generator, a noise diode having a Gaussian distribution of white noise in the 0.1 Hz to 10 MHz band is possible. As the noise diode, an avalanche photo diode or a zener diode may be used. White noise is a small signal, for example, with an amplitude on the order of tens of μVrms. With white noise, high-purity random numbers can be obtained to generate physically completely random signals. However, since the voltage amplitude of the white noise is small, it is necessary to amplify the white noise using an amplification circuit in order to generate a random number having an amplitude that is actually available.

도 2는 본 실시예에 적용되는 AC소신호 증폭부(20)를 도시한 도면이다. AC소신호 증폭부(20)에 의해 증폭된 잡음 전압의 적합한 진폭은 바이어스 영향을 감소하기 위해 수 V 레벨의 크기가 바람직하다. 잡음원의 반전 증폭기 전압 증폭도(Av)는 식 1과 같으며, 본 실시예의 경우는 예를 들어 약 10배가 되도록 하였고, 예를 들어, R1값은 1K, R2값은 10K, VCC는 5V 및 VEE는 -5V가 적용 가능하다.2 is a diagram showing an AC small signal amplifier 20 applied to the present embodiment. The appropriate amplitude of the noise voltage amplified by the AC small signal amplifying section 20 is preferably several V levels in order to reduce the bias effect. The inverting amplifier voltage amplification degree (Av) of the noise source is shown in Equation 1, and in this embodiment, for example, about 10 times, for example, R 1 value is 1K, R 2 value is 10K, V CC is 5V and V EE are applicable at -5V.

Av= V0/Vi = - R2/R1 (1)Av = V 0 / V i =-R 2 / R 1 (1)

도 3는 시간에 따른 영교차 레벨과 비트 패턴식별부(30)(비교기)의 출력을 설명하기 위한 개념도이다. 비트 패턴식별부(30)인 비교기의 출력은 다시 소프트웨어로 구현된 비트 샘플링부(샘플러)(40)를 통해 처리된다. 비교기의 출력은 상승 에지에서 "0" 또는 "1" 로 식별되어 얻어지고, 이때 적용된 비교기의 특성은 차동 아날로그 입력을 가지고, 능동적인 내부 풀업을 갖는 TTL 로직 출력을 제공한다. 예를 들어, 비교기에서 적용된 전압은 ±5Vdc이고, 전파 지연 시간은 8nsec을 제공한다. 비교기는 영교차 레벨을 기준으로 결정된다. 즉, 비교기 출력단은 입력 AC소신호의 레벨 변동이 비교기의 교차점을 기준으로 "0", "1" 레벨 천이가 일어나고, 이때 얻어진 비교기의 출력은 샘플링 과정의 입력값으로 결정된다. 3 is a conceptual diagram illustrating a zero crossing level over time and an output of the bit pattern identification unit 30 (comparator). The output of the comparator, which is the bit pattern identification unit 30, is again processed by the bit sampling unit (sampler) 40 implemented in software. The output of the comparator is obtained by identifying "0" or "1" at the rising edge, with the applied comparator characteristic having a differential analog input and providing a TTL logic output with active internal pullup. For example, the voltage applied at the comparator is ± 5Vdc and the propagation delay time is 8nsec. The comparator is determined based on the zero crossing level. That is, the comparator output stage has a level shift of "0" and "1" level change of the input AC small signal based on the intersection of the comparator, and the output of the comparator obtained at this time is determined as an input value of the sampling process.

AC 소신호 증폭부(20)의 출력단에서 얻어진 증폭된 AC 소신호는 비교기의 영교차점을 기준으로 "0", "1" 신호파형으로 분리되고 이때 비교기는 10nsec의 비교 능력을 제공가능하다.  The amplified AC small signal obtained at the output terminal of the AC small signal amplifier 20 is divided into "0" and "1" signal waveforms based on the zero crossing point of the comparator, and the comparator can provide a comparison capability of 10 nsec.

도 4는 본 실시예에 적용되는 비트 샘플링부(40)의 출력을 설명하기 위한 개념도이다. 도 3의 비교기 출력 난수열의 샘플링은 "0", "1" 랜덤 비트의 통계적인 특성이 비교기의 클럭율과 샘플러의 샘플링율에 의존한다. 즉, 샘플링율을 결정할 때, 만일 샘플러가 비교기의 클럭율 보다 충분히 낮은 샘플링율로 비교기 출력 비트열을 샘플링하면, 제한된 대역폭에서의 상관성 영향은 무시할 수 있다. 본 실시예에 따른 시스템의 경우, 잡음원은 10MHz 대역까지 백색 가우스 분포특성을 갖는다. 4 is a conceptual diagram for describing the output of the bit sampling unit 40 applied to the present embodiment. In the sampling of the comparator output random sequence of FIG. 3, the statistical characteristics of the random bits "0" and "1" depend on the clock rate of the comparator and the sampling rate of the sampler. That is, when determining the sampling rate, if the sampler samples the comparator output bitstream at a sampling rate sufficiently lower than the clock rate of the comparator, the effect of correlation on the limited bandwidth can be neglected. In the system according to the present embodiment, the noise source has a white Gaussian distribution characteristic up to the 10 MHz band.

도 5는 본 실시예에 적용되는 비트 필터링부(50)의 출력을 설명하기 위한 개념도이다. 비트 샘플러(40)의 출력으로부터 검증하고자 하는 임의의 버퍼 크기 단위의 난수열(도 5의 점선 부분의 데이터)을 가져오고, 그 버퍼 크기의 절반값와 그 버퍼 크기에 있는 "1"비트 개수의 합을 각각 구한 후, Total_Length와 Toatal_Sum 변수에 각각 저장한다. 그 후, Toatal_Sum /Total_Length인 변수 P값이 유의수준(바람직한 범위는 0.9995에서 1.0005) 사이의 값에 해당하는지를 판단한다. 이와 같은 판단에 의해 유의수준 내의 값이면 버퍼 크기 단위의 난수열을 통과시키고, 완전한 난수로 인정하여 출력열이 '추가'된다(도 6의 점선부분의 데이터가 직선형으로 변화됨). 다음으로, 샘플러의 출력으로부터 검증하고자 하는 다음 버퍼 크기 단위의 난수열(도 5의 점선 부분의 데이터)을 가져오고 상술한 바와 같은 동일한 검증과정을 거치게 된다. 이 결과에서 P가 유의수준 내에 존재하지 않게 되면, 출력열이 폐기되고, 다음 버퍼 크기 단위의 난수열(도 6의 점선 부분의 데이터)을 가져와 검증단계를 진행하게 된다. 도 5에서는 상술한 버퍼 크기를 64비트로 하는 경우를 예를 들어 도시하였다.5 is a conceptual diagram for describing an output of the bit filtering unit 50 applied to the present embodiment. From the output of the bit sampler 40, a random number sequence (data of the dotted line part in FIG. 5) to be verified is obtained, and the sum of half the buffer size and the number of "1" bits in the buffer size. Get each of them and store them in Total_Length and Toatal_Sum variables, respectively. Then, it is determined whether the variable P value of Toatal_Sum / Total_Length corresponds to a value between the significance level (preferable range is 0.9995 to 1.0005). As a result of this determination, if the value is within the significance level, the random string of units of the buffer size is passed, and the output string is 'added' as recognized as a perfect random number (data of the dotted line in FIG. 6 is changed to a straight line). Next, a random number sequence (data of a dotted line part of FIG. 5) of the next buffer size unit to be verified is obtained from the output of the sampler and subjected to the same verification process as described above. In this result, if P does not exist within the significance level, the output string is discarded, and a verification step is performed by taking a random number sequence (data of a dotted line part of FIG. 6) in the next buffer size unit. In FIG. 5, the case where the aforementioned buffer size is 64 bits is illustrated as an example.

이하, 도 6을 참조하면, 본 발명의 바람직한 실시예에 따른 전자회로 잡음을 이용한 난수발생방법의 흐름도이다. 6, a flowchart of a random number generation method using electronic circuit noise according to a preferred embodiment of the present invention.

먼저, 비트 필터부(50)에 난수 데이터가 입력된다(S101). 샘플러 출력 난수열을 고정된 버퍼 64비트 단위로 가져온다. 그 후, 완전한 난수로 판정되어 통과된 난수 출력열을 저장하기 위해 사용되는 고정된 버퍼 크기의 절반 값과 "1"비트 개수의 합을 각각 Total_Length와 Toatal_Sum 변수에 저장한다(S103). 예를 들어, 난수 출력열을 저장하기 위해 사용되는 고정된 버퍼 크기가 64비트라고 가정하면, 변수 Total_Length에는 32가 저장되고, 변수 Toatal_Sum에는 64비트의 버퍼에서 "1"비트의 총 개수의 계산하여 그 값을 저장한다. First, random number data is input to the bit filter unit 50 (S101). Get a sampler output random sequence in fixed-buffer 64-bit units. Thereafter, the sum of half of the fixed buffer size and the number of " 1 " bits used to store the random number output string passed as determined as a perfect random number is stored in the Total_Length and Toatal_Sum variables, respectively (S103). For example, assuming that the fixed buffer size used to store the random number output string is 64 bits, 32 is stored in the variable Total_Length, and the total number of "1" bits is calculated in the 64-bit buffer in the variable Toatal_Sum. Save the value.

다음으로, (Toatal_Sum/Total_Length) 값을 구하여 이를 변수 P에 저장한다(S105). 한편, 난수로 인정할 것인지에 대한 판단 기준인 유의수준 값은 1 값에서 소정치 적은 값에서 소정치 큰 값까지 책정가능하고, 예를 들어 0.9995~1.0005 범위로 정할 수 있다. Next, a value of (Toatal_Sum / Total_Length) is obtained and stored in the variable P (S105). Meanwhile, the significance level value, which is a criterion for determining whether to recognize as a random number, may be set from 1 value to a predetermined value to a predetermined value, and may be set in the range of 0.9995 to 1.0005.

다음으로, P가 유의수준 보다 적은지의 여부를 판단한다(S107). 만약 얻어진 값이 검증 유의수준 범위 내에 있으면, 고정된 버퍼에 저장된 난수열은 통과되고, 유의수준 범위 밖에 있으면 통과되지 못하게 된다. 즉, P가 1에 근접하게 되면, 통과 확률이 높게 나타나게 되는데, 이는 "1"과 "0"의 비율 분포가 거의 비슷하게 나타나는 것을 의미한다.Next, it is determined whether P is less than the significance level (S107). If the value obtained is within the range of the verification significance level, the random sequence stored in the fixed buffer is passed. If it is outside the significance level, it is not passed. That is, when P approaches 1, the probability of passage is high, which means that the ratio distribution of "1" and "0" is almost similar.

이와 같은 방식으로, 검증 통과하면 통과된 난수열은 난수열 저장을 위한 메모리에 추가되고, 만일 검증 통과하지 못하면 검증을 위해 사용된 해당 비트열은 제거되고(S111), 다음 64비트 난수열을 다시 받아 들여 상기 과정을 진행한다.In this way, if the verification passes, the passed random number sequence is added to the memory for storing the random sequence, and if the verification does not pass, the corresponding bit string used for verification is removed (S111), and the next 64-bit random sequence is re-created. Accept and proceed with the above process.

요약하면, 현재 받아들인 일정 버퍼 크기의 비트 난수열에 대하여 랜덤성을 검증하고 이 검증을 통과한 난수열들에 대해서는 이전에 저장된 값에 추가로 받아들이고, 통과하지 못한 난수열에 대해서는 삭제하고 다시 일정 버퍼 크기의 난수열을 받아들여 검증을 실시한다. 이 과정은 수집하고자 하는 난수열을 얻을 때까지 반복 수행된다.In summary, we randomly verify a random bit sequence of a certain buffer size that is currently accepted, add randomly to the previously stored value for random strings that pass this verification, and delete and reschedule random random strings that did not pass. Validate by accepting a random number of buffer sizes. This process is repeated until you get the random sequence you want to collect.

이상에서 본 발명에 대한 기술 사상을 첨부 도면과 함께 서술하였지만 이는 본 발명의 가장 양호한 일 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술 분야의 통상의 지식을 가진 자이면 누구나 본 발명의 기술 사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.The technical spirit of the present invention has been described above with reference to the accompanying drawings, but this is by way of example only and not by way of limitation to the present invention. In addition, it is obvious that any person skilled in the art may make various modifications and imitations without departing from the scope of the technical idea of the present invention.

이상에서 설명한 본 발명에 의한 전자회로 잡음원을 이용한 난수 발생장치에서 완전한 난수로 판정하기 위한 필터링 방법에 따르면, 불안전한 주변회로 잡음이나 기판의 온도 상태의 영향 하에서 항시 완전한 난수를 발생시킬 수 있다. According to the filtering method for determining the perfect random number in the random number generator using the electronic circuit noise source according to the present invention described above, it is possible to generate a complete random number at all times under the influence of unsafe peripheral circuit noise or the temperature state of the substrate.

실난수 발생장치는 백색잡음 신호를 고려한 전자회로 증폭기의 설계, 추출된 AC신호에 대해 샘플링 과정을 적용한다. 적용된 전자회로를 이용하는 난수 발생장치는 그 특성상 유한한 대역폭, 주파수 대역에 따른 잡음의 영향, 다른 비 랜덤성 영향 등으로 인해, 실제 난수 발생 장치에서는 안정되고, 만족할 만한 랜덤성을 보장 받기가 매우 어렵다. The real random number generator applies a sampling process to the extracted AC signal by designing an electronic circuit amplifier considering a white noise signal. The random number generator using the applied electronic circuit is stable in the real random number generator, and it is very difficult to guarantee satisfactory randomness due to its finite bandwidth, the influence of noise due to the frequency band, and other non-random effects. .

즉 하드웨어 부품으로만 구성된 실난수 발생장치는 출력 난수열이 완전한 난수열을 지속적으로 제공하는데 한계가 있는데 이 문제를 해결한 방안으로 항시 완전한 실난수만을 추출하여 사용하므로 완전한 실난수 발생장치라 할 수 있다. In other words, the real random number generator composed of only hardware components has a limitation in that the output random number sequence continuously provides the perfect random number sequence. As a solution to this problem, the real random number generator is always used to extract only the real number. have.

도 1은 본 발명의 바람직한 실시예에 따른 전자회로 잡음을 이용한 난수발생장치의 구성도이다. 1 is a block diagram of a random number generator using electronic circuit noise according to a preferred embodiment of the present invention.

도 2는 본 실시예에 적용되는 AC소신호 증폭부의 상세 구성도이다. 2 is a detailed block diagram of the AC small signal amplification unit applied to the present embodiment.

도 3는 시간에 따른 영교차 레벨과 비트 패턴식별부(비교기)의 출력을 설명하기 위한 개념도이다.3 is a conceptual diagram illustrating a zero crossing level and output of a bit pattern identifier (comparator) over time.

도 4는 본 실시예에 적용되는 비트 샘플링부의 출력을 설명하기 위한 개념도이다. 4 is a conceptual diagram illustrating an output of a bit sampling unit applied to the present embodiment.

도 5는 본 실시예에 적용되는 비트 필터링부의 출력을 설명하기 위한 개념도이다. 5 is a conceptual diagram illustrating an output of the bit filtering unit applied to the present embodiment.

도 6은 본 발명의 바람직한 실시예에 따른 전자회로 잡음을 이용한 난수발생방법의 흐름도이다.6 is a flowchart illustrating a random number generation method using electronic circuit noise according to a preferred embodiment of the present invention.

Claims (7)

삭제delete 전자회로 잡음원을 이용한 난수발생방법에 있어서,In the random number generation method using an electronic circuit noise source, (a) 잡음다이오드를 이용하여 AC잡음신호를 검출하는 단계;(a) detecting an AC noise signal using a noise diode; (b) 검출된 상기 AC잡음신호를 증폭하는 단계;(b) amplifying the detected AC noise signal; (c) 증폭된 상기 신호를 비교기를 이용하여 "0" 또는 "1" 로 식별하는 단계;(c) identifying the amplified signal as "0" or "1" using a comparator; (d) 식별된 상기 일련의 비트열을 일정한 샘플링 주파수를 통해 샘플링 처리하여 난수열로 수집하는 단계; 및(d) sampling the identified series of bit streams through a constant sampling frequency and collecting them into random sequence; And (e) 상기 수집된 난수열 저장 공간인 버퍼 크기와 상기 버퍼 크기에 포함된 "1" 비트의 개수를 이용하여 상기 버퍼 크기에 수집된 난수열을 검증하는 단계를 포함하되,(e) verifying a random number sequence collected in the buffer size by using a buffer size that is the collected random number storage space and the number of "1" bits included in the buffer size, 상기 (e)단계는, 상기 버퍼 크기의 절반 값과 "1"비트 개수의 합을 각각 Total_Length와 Toatal_Sum 변수에 저장하는 단계와, Toatal_Sum/Total_Length 값을 구하여 이를 변수 P에 저장하는 단계와, 상기 P와 기설정된 유의수준 값을 비교하되, 상기 유의수준 내에 있으면 통과하고, 상기 유의수준 내가 아니면 폐기하는 단계로 이루어진 것을 특징으로 하는 전자회로 잡음원을 이용한 난수발생방법.In the step (e), storing the sum of the half value of the buffer size and the number of "1" bits in Total_Length and Toatal_Sum variables, respectively, obtaining a Toatal_Sum / Total_Length value and storing it in a variable P, and P And comparing a predetermined significance level value with a predetermined value, passing through if it is within the significance level, and discarding it if not within the significance level. 제 2 항에 있어서,The method of claim 2, 상기 버퍼 크기는 64비트이고, 상기 유의수준은 0.9995 ~ 1.0005 인 것을 특징으로 하는 전자회로 잡음원을 이용한 난수발생방법.The buffer size is 64-bit, the significance level is 0.9995 ~ 1.0005 Random number generation method using an electronic circuit noise source, characterized in that. 삭제delete 삭제delete AC잡음신호를 추출하는 잡음신호 추출부;A noise signal extraction unit for extracting an AC noise signal; 상기 잡음신호 추출부에서 추출된 상기 AC잡음신호를 입력받아 증폭하는 AC소신호증폭부;An AC small signal amplifier configured to receive and amplify the AC noise signal extracted by the noise signal extractor; 증폭된 신호를 입력받아 "0" 또는 "1" 로 식별하는 패턴식별부;A pattern identifying unit which receives an amplified signal and identifies it as "0" or "1"; 식별된 상기 비트열을 일정한 샘플링 주파수를 통해 샘플링 처리하여 난수열로 수집하는 비트 샘플링부; 및A bit sampling unit configured to sample the identified bit strings through a constant sampling frequency and collect the random bit strings as random strings; And 상기 수집된 난수열 저장 공간인 버퍼 크기와 상기 버퍼 크기에 포함된 "1" 비트의 개수를 이용하여 상기 버퍼 크기에 수집된 난수열을 검증하여 필터링하는 필터링부를 포함하되,And a filtering unit configured to verify and filter the random number sequence collected in the buffer size by using the collected random number sequence storage space and the number of “1” bits included in the buffer size. 상기 필터링부는 상기 버퍼 크기의 절반값(Total_Length)과 "1"비트 개수의 합(Toatal_Sum)을 각각 구하여 이로부터 Toatal_Sum/Total_Length 값(P 값)을 구한 뒤, 상기 P 값이 기설정된 유의수준 내에 있으면 통과하고, 상기 유의수준 내가 아니면 폐기하는 것을 특징으로 하는 전자회로 잡음원을 이용한 난수발생장치.The filtering unit obtains a half value of the buffer size (Total_Length) and a sum of total number of "1" bits (Toatal_Sum), obtains a Toatal_Sum / Total_Length value (P value) from the filter, and if the P value is within a predetermined significance level. A random number generator using an electronic circuit noise source, characterized in that passing through and discarding if not within the significance level. 제 6 항에 있어서,The method of claim 6, 상기 잡음신호 추출부는 아발란치 포토 다이오드 또는 제너 다이오드이고, 상기 AC잡음신호는 0.1Hz~10MHz 대역에서 백색 잡음의 가우스 분포특성을 갖는 백색잡음인 것을 특징으로 하는 전자회로 잡음원을 이용한 난수발생장치.The noise signal extraction unit is an avalanche photodiode or zener diode, and the AC noise signal is a random noise generator using an electronic circuit noise source, characterized in that the white noise having a Gaussian distribution characteristic of white noise in the 0.1Hz ~ 10MHz band.
KR10-2003-0020357A 2003-04-01 2003-04-01 Method And Apparatus of Generating Random Number Using Electronic Circuit Noise KR100512477B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0020357A KR100512477B1 (en) 2003-04-01 2003-04-01 Method And Apparatus of Generating Random Number Using Electronic Circuit Noise

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0020357A KR100512477B1 (en) 2003-04-01 2003-04-01 Method And Apparatus of Generating Random Number Using Electronic Circuit Noise

Publications (2)

Publication Number Publication Date
KR20040085608A KR20040085608A (en) 2004-10-08
KR100512477B1 true KR100512477B1 (en) 2005-09-06

Family

ID=37368572

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0020357A KR100512477B1 (en) 2003-04-01 2003-04-01 Method And Apparatus of Generating Random Number Using Electronic Circuit Noise

Country Status (1)

Country Link
KR (1) KR100512477B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101931777B1 (en) 2017-08-10 2019-03-13 한국전자통신연구원 Apparatus for generating true random value based on uart and method for the same

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100725978B1 (en) 2005-07-06 2007-06-08 삼성전자주식회사 Low power random bit generator using thermal noise
US20140197865A1 (en) * 2013-01-11 2014-07-17 International Business Machines Corporation On-chip randomness generation
KR101557761B1 (en) 2014-02-12 2015-10-06 한국전자통신연구원 Apparatus and method for stabilizing output stream of real random number generator

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101931777B1 (en) 2017-08-10 2019-03-13 한국전자통신연구원 Apparatus for generating true random value based on uart and method for the same

Also Published As

Publication number Publication date
KR20040085608A (en) 2004-10-08

Similar Documents

Publication Publication Date Title
Karakoyunlu et al. Differential template attacks on PUF enabled cryptographic devices
JP2000066592A (en) Random number generating apparatus
Mıhçak et al. A perceptual audio hashing algorithm: a tool for robust audio identification and information hiding
Hayes Computing science: Randomness as a resource
Stanzione et al. CMOS silicon physical unclonable functions based on intrinsic process variability
Truong et al. Machine learning cryptanalysis of a quantum random number generator
CN107104783A (en) Make circuit from the method for side Multiple Channel Analysis
US8768992B2 (en) Apparatus and method for generating random numbers
KR20020008849A (en) Robust random number generator
Bucci et al. A high-speed IC random-number source for smartcard microcontrollers
US20160117149A1 (en) Method and System for Generating Random Numbers
KR100512477B1 (en) Method And Apparatus of Generating Random Number Using Electronic Circuit Noise
CY1113006T1 (en) INFORMATION BODY, WHICH INCLUDES ACCESS INFORMATION
Sauer et al. Sensitized path PUF: A lightweight embedded physical unclonable function
JPWO2004017191A1 (en) Random number generation apparatus and random number generation method
EP1320026A1 (en) Method for generating a random number sequence and a relative random bit generator
Kawa et al. Improved deepfake detection using whisper features
JP4970287B2 (en) Method, system and apparatus for generating pseudo-random data sequences
JP2003131867A (en) Random number generation device
FR2823398A1 (en) EXTRACTION OF PRIVATE DATA FOR AUTHENTICATION OF AN INTEGRATED CIRCUIT
WO2002052731A3 (en) System and method for compressing and decompressing data in real time
Antonelli et al. Measuring the jitter of ring oscillators by means of information theory quantifiers
EP1449067A2 (en) Method and system for making secure a pseudo-random generator
FR2949010A1 (en) COUNTERMEASURE PROCESS FOR PROTECTING STORED DATA
US11188306B1 (en) Distributed random-number generator

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130710

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140703

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150703

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160919

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170621

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20180906

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20190611

Year of fee payment: 15