KR100841078B1 - Random number generator and method for generating random number - Google Patents
Random number generator and method for generating random number Download PDFInfo
- Publication number
- KR100841078B1 KR100841078B1 KR1020060064803A KR20060064803A KR100841078B1 KR 100841078 B1 KR100841078 B1 KR 100841078B1 KR 1020060064803 A KR1020060064803 A KR 1020060064803A KR 20060064803 A KR20060064803 A KR 20060064803A KR 100841078 B1 KR100841078 B1 KR 100841078B1
- Authority
- KR
- South Korea
- Prior art keywords
- generating
- initial value
- random number
- voltage
- clock signal
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C15/00—Generating random numbers; Lottery apparatus
- G07C15/006—Generating random numbers; Lottery apparatus electronically
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/70—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using stochastic pulse trains, i.e. randomly occurring pulses the average pulse rates of which represent numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Abstract
본 발명에 따른 랜덤 번호 회로에는, 중심 주파수로부터의 주파수 오프셋을 가지고 있으며 클록 시퀀스를 포함하는 클록 신호를 상기 중심 주파수에서 발생할 수 있는 발진기, 제1 상태에서부터 제2 상태까지의 전환을 표시하는 리셋 신호를 발생할 수 있는 리셋 회로, 초기값을 발생할 수 있는 초기값 발생기, 및 상기 발진기, 상기 리셋 회로 및 상기 초기값 발생기 중 적어도 하나와 결합되어 있고 상기 클록 신호, 상기 리셋 신호 및 상기 초기값 중 적어도 하나를 수신할 수 있으며, 상기 주파수 오프셋, 상기 전환의 타이밍 및 상기 초기값의 적어도 하나에 따르는 랜덤 번호를 발생할 수 있는 계수기가 포함되어 있다.In the random number circuit according to the present invention, an oscillator which has a frequency offset from a center frequency and which includes a clock sequence, can generate a clock signal at the center frequency, and a reset signal indicating a transition from a first state to a second state. A reset circuit capable of generating an initial value; an initial value generator capable of generating an initial value; and at least one of the clock signal, the reset signal, and the initial value, coupled to at least one of the oscillator, the reset circuit, and the initial value generator. And a counter capable of generating a random number according to at least one of the frequency offset, the timing of the transition, and the initial value.
랜덤 번호 발생기 Random number generator
Description
도 1a는 본 발명의 한 실시예에 따른 랜덤 번호 발생기의 블럭 다이어그램,1A is a block diagram of a random number generator in accordance with one embodiment of the present invention;
도 1b는 랜덤 비트 값을 만드는 도 1a에 설명된 초기값 발생기 유닛의 회로 다이어그램,FIG. 1B is a circuit diagram of the initial value generator unit described in FIG. 1A for producing a random bit value; FIG.
도 1c는 도 1a에 설명된 랜덤 번호 발생기를 위한 개략적 타이밍 다이어그램,1C is a schematic timing diagram for the random number generator described in FIG. 1A;
도 2는 본 발명의 한 실시예에 따른 랜덤 번호를 만드는 방법의 흐름도,2 is a flowchart of a method of generating a random number according to an embodiment of the present invention;
도 3a는 본 발명의 한 실시예에 따른 무선주파수식별(RFID) 장치의 개략적 블럭 다이어그램이고,3A is a schematic block diagram of a radio frequency identification (RFID) device according to an embodiment of the present invention,
도 3b는 도 3a에 설명된 RFID 장치의 시드 번호 발생기의 블럭 다이어그램이다.3B is a block diagram of the seed number generator of the RFID device described in FIG. 3A.
본 발명은 랜덤(random) 번호 발생기 회로에 관한 것이며, 보다 특정하게는 시드 번호(seed number) 발생기 및 그 시드 번호 발생 방법에 관한 것이다.The present invention relates to a random number generator circuit, and more particularly to a seed number generator and a method of generating the seed number.
랜덤 번호 발생기는 쉽게 식별하기 어려운 패턴을 가지는 일련의 번호를 생성하는 계산기를 언급하는데, 그러한 일련의 번호를 랜덤하게 처리될 수 있다. 랜덤 번호 발생기는 일반적으로 의사(pseudo)-랜덤 번호 발생기와 하드웨어 랜덤 번호 발생기로 구분된다. 의사-랜덤 번호 발생기에는 랜덤 번호를 만드는 하드웨어 장치 대신에 알고리즘을 수행하는 소프트웨어 루틴(routine)이 포함되곤 하는데, 이것은 진정한 랜덤 출력은 아니다. 의사-랜덤 번호 발생기의 원래 상태(시드 상태)가 주어지고, 그 발생기에 의해 수행되는 알고리즘이 구현되어 의사-랜덤 번호 발생기에 의해 만들어진 랜덤 출력은 예상할 수 있다. 즉, 랜덤하지 않다. 다시 말해서, 만일 동일한 알고리즘하에서 동작하는 두 개의 랜덤 번호 발생기가 동일한 시드값을 가지고 시작된다면, 두 개의 발생기 모두 동일한 일련의 번호를 만들게 되기도 한다. 한편, 하드웨어 랜덤 번호 발생기에는, 이론적으로는 예측 불가능한 물리적인 처리로부터 랜덤 번호를 만들어 내는 장치가 포함되어 있다. 이러한 하드웨어 랜덤 번호 발생기에서는, 만들어질 일련의 번호를 결정하는 시드값이 일반적으로 랜덤하지 않다.The random number generator refers to a calculator that generates a series of numbers with a pattern that is difficult to easily identify, which can be randomly processed. Random number generators are generally divided into pseudo-random number generators and hardware random number generators. Pseudo-random number generators often include software routines that perform algorithms instead of hardware devices that generate random numbers, which are not truly random outputs. Given the original state (seed state) of the pseudo-random number generator, the algorithm performed by the generator is implemented so that random output produced by the pseudo-random number generator can be expected. That is not random. In other words, if two random number generators operating under the same algorithm start with the same seed, then both generators will produce the same series of numbers. On the other hand, the hardware random number generator includes an apparatus for generating a random number from physical processing that is theoretically unpredictable. In such hardware random number generators, the seed values that determine the sequence of numbers to be made are generally not random.
본 발명의 예에서는 일련의 랜덤 번호를 만들기 위한 기초로서 사용되는 시드값을 교대로 만들어내는 회로 및 방법을 제공한다.The example of the present invention provides a circuit and method for alternately generating seed values used as a basis for generating a series of random numbers.
본 발명의 예에서는, 중심 주파수로부터의 주파수 오프셋을 가지며 클록킹 펄스의 시퀀스를 포함하는 클록 신호를 상기 중심 주파수에서 발생할 수 있는 발진기; 제1 상태로부터 제2 상태까지의 전환을 표시하는 리셋 신호를 발생할 수 있는 리셋 회로; 초기값을 발생할 수 있는 초기값 발생기; 및 상기 발진기, 상기 리셋 회로 및 상기 초기값 발생기 중 적어도 하나와 결합되며, 상기 클록 신호, 상기 리셋 신호 및 상기 초기값 중 적어도 하나를 수신할 수 있고, 상기 주파수 오프셋, 상기 전환 타이밍 및 상기 초기값 중 적어도 하나에 의해 달라지는 랜덤 번호를 발생할 수 있는 계수기를 구비하는 것을 특징으로 하는 랜덤 번호 회로를 제공한다.In an example of the invention, an oscillator having a frequency offset from a center frequency and capable of generating a clock signal at the center frequency comprising a sequence of clocking pulses; A reset circuit capable of generating a reset signal indicative of a transition from the first state to the second state; An initial value generator capable of generating an initial value; And at least one of the oscillator, the reset circuit, and the initial value generator, the at least one of the clock signal, the reset signal, and the initial value, the frequency offset, the switching timing and the initial value. Provided is a random number circuit comprising a counter capable of generating a random number that varies by at least one of the following.
본 발명의 실시예에서는, 제1 전압을 제공할 수 있는 장치, 중심 주파수에서 펄스를 계측하는 시퀀스를 포함하고 상기 중심 주파수로부터의 주파수 오프셋을 가지는 클록 신호를 발생할 수 있는 발진기; 상기 제1 전압의 정수배인 제2 전압을 발생할 수 있는 전하 펌프, 상기 제2 전압이 소정의 전압 레벨에 도달하면 제1 상태로부터 제2 상태로 전환하는 리셋 신호를 발생할 수 있는 리셋 회로, 초기값을 발생할 수 있는 초기값 발생기, 및 상기 클록 신호에 응답하여 상기 초기값에서 시작하는 클록킹 펄스의 수를 세고, 상기 리셋 신호의 전환에 응답하여 랜덤 신호를 발생할 수 있는 계수기를 구비하는 것을 특징으로 하는 랜덤 번호 회로도 제공한다.An embodiment of the present invention provides an apparatus capable of providing a first voltage, an oscillator comprising a sequence for measuring a pulse at a center frequency and capable of generating a clock signal having a frequency offset from the center frequency; A charge pump capable of generating a second voltage that is an integer multiple of the first voltage, a reset circuit capable of generating a reset signal for switching from a first state to a second state when the second voltage reaches a predetermined voltage level, an initial value And a counter for counting the number of clocking pulses starting from the initial value in response to the clock signal and generating a random signal in response to the switching of the reset signal. A random number circuit is also provided.
본 발명의 일부 실시예에서는, 제1 랜덤 번호를 발생할 수 있는 제1 랜덤 번호 발생기; 및 제2 랜덤 번호를 발생할 수 있는, 상기 제1 랜덤 번호를 수신하는 제2 랜덤 번호 발생기를 구비하고, 상기 제1 랜덤 번호 발생기는, 클록킹 펄스의 시퀀스가 포함된 클록 신호를 발생할 수 있는 발진기, 제1 상태로부터 제2 상태로의 전환을 표시하는 리셋 신호를 발생할 수 있는 리셋 회로, 초기값을 발생할 수 있는 초기값 발생기, 및 상기 클록 신호, 상기 리셋 신호 및 상기 초기값에 대응하 여 상기 제1 랜덤 번호를 발생할 수 있는 계수기를 포함하는 것을 특징으로 하는 랜덤 번호 회로를 제공하기도 한다.In some embodiments of the present invention, a first random number generator capable of generating a first random number; And a second random number generator for receiving the first random number, the second random number generator being capable of generating a second random number, wherein the first random number generator is an oscillator capable of generating a clock signal comprising a sequence of clocking pulses. A reset circuit capable of generating a reset signal indicative of transition from the first state to the second state, an initial value generator capable of generating an initial value, and corresponding to the clock signal, the reset signal, and the initial value; Also provided is a random number circuit comprising a counter capable of generating a first random number.
본 발명의 실시예에서는, 제1 전압을 제공하는 단계; 클록킹 펄스의 시퀀스를 포함하는 클록 신호를 발생하는 단계; 상기 제1 전압의 정수배인 제2 전압을 발생하는 단계; 제1 상태 및 제2 상태를 포함하는 리셋 신호를 발생하는 단계; 제2 전압이 미리 결정된 전압 레벨에 도달하면 상기 제1 및 제2 상태 중 어느 한 상태에서부터 상기 제1 및 제2 상태 중 다른 상태로 리셋 신호를 전환 시키는 단계; 초기값을 발생하는 단계; 상기 클록 신호에 응답하여 상기 초기값에서 시작되는 클록킹 펄스의 수를 세는 단계; 및 상기 리셋 신호의 상기 전환에 응답하여 상기 랜덤 번호를 발생하는 단계를 포함하는 것을 특징으로 하는 랜덤 번호 발생 방법ㄷ도 제공한다.In an embodiment of the invention, providing a first voltage; Generating a clock signal comprising a sequence of clocking pulses; Generating a second voltage that is an integer multiple of the first voltage; Generating a reset signal comprising a first state and a second state; Switching a reset signal from one of the first and second states to another of the first and second states when a second voltage reaches a predetermined voltage level; Generating an initial value; Counting the number of clocking pulses starting at the initial value in response to the clock signal; And generating the random number in response to the switching of the reset signal.
본 발명의 실시예에서는, 클록킹 펄스의 시퀀스를 포함하는 클록 신호를 발생시키는 단계; 제1 상태에서 제2 상태로의 전환을 나타내는 리셋 신호를 발생시키는 단계; 초기값을 발생시키는 단계; 상기 클록 신호, 상기 리셋 신호 및 상기 초기값에 응답하여 제1 랜덤 번호를 발생시키는 단계; 및 상기 제1 랜덤 번호를 시드 번호로 사용하여 제2 랜덤 번호를 발생시키는 단계를 구비하는 것을 특징으로 하는 랜덤 신호 발생 방법을 제공한다.In an embodiment of the invention, there is provided a method comprising generating a clock signal comprising a sequence of clocking pulses; Generating a reset signal indicative of a transition from the first state to the second state; Generating an initial value; Generating a first random number in response to the clock signal, the reset signal and the initial value; And generating a second random number using the first random number as a seed number.
상기 요약 및 후술하는 상세한 설명 모두는 청구된 바와 같은 본 발명을 제한하는 것은 아니며 단지 예시적인 것임을 이해할 수 있을 것이다.It is to be understood that both the foregoing summary and the following detailed description are exemplary and not restrictive of the invention as claimed.
후술할 발명의 상세한 설명뿐만 아니라 앞서의 요약은 첨부한 도면을 참고하여 읽으면 더욱 이해가 잘 될 수 있을 것이다. 발명의 설명을 위해서, 발명을 구성하는 예시적인 도면을 도시하였다. 그러나, 본 발명이 도시된 도면 그대로로 제한되는 것은 아님을 이해해야 할 것이다.The foregoing summary as well as the following detailed description of the invention may be better understood by reading with reference to the accompanying drawings. For the purpose of illustrating the invention, exemplary drawings constituting the invention are shown. However, it should be understood that the present invention is not limited to the drawings as shown.
이제 본 발명의 상세한 설명을 첨부한 도면을 참고하여 예로써 설명하도록 한다. 가능하다면, 도면 전체를 통하여 동일한 또는 유사한 부분을 언급하는데에 동일한 참고번호를 사용하도록 하겠다.The detailed description of the invention will now be described by way of example with reference to the accompanying drawings. Wherever possible, the same reference numbers will be used to refer to the same or similar parts throughout the drawings.
도 1a는 본 발명의 한 실시예에 따른 랜덤 번호 발생기(10)의 블럭 다이어그램이다. 도 1a를 참고하면, 랜덤 번호 발생기(10)에는 전원공급기(11), 발진기(12), 전하펌프(13), 단속기(14), 리셋 회로(15), 초기값 발생기(16) 및 계수기(17)가 포함되어 있다. 전원공급기(11)는 배터리 등으로서, 발진기(12)의 발진이 일어날 수 있기에 충분한 전압을 공급한다. 발진이 일어나면, 발진기(12)는 전하펌프(13)와 계수기(17)에게 클록 신호(clock signal)를 만들어낸다. 한 예에서, 발진기(12)는 링 발진기가 포함되며, 이 링 발진기는 중심 주파수가 약 10 MHz 인 클록 신호를 만들어낸다. 다른 발진기와 비교할 때, 링 발진기는 정밀도가 덜하여 블럭 주파수의 약 10% 까지 상대적으로 높은 허용오차를 가지기도 하는데, 이는 중심 주파수로부터 0.1 MHz 오프셋(offset)을 가져오는 범위다. 그러나, 이러한 높은 허용오차는 발생된 랜덤 번호의 무작위성을 증가시키는데 도움이 된다.1A is a block diagram of a
전하펌프(13)에는, 이것으로 제한되는 것은 아니지만, 다수의 캐패시터(도시 하지 않음)와 스위치로 구성되며 역전된 위상의 클록하에서 제어되는 종래의 스위치 캐패시터 다단계 구조를 포함하고 있다. 특히, 전하펌프(13)는 발진기(12)로부터의 클록 신호에 응답하여 전원공급기(11)로부터의 공급 전원에 의해 충전된 캐패시터에 전압을 더한다. 전하펌프(13)는 공급 전압의 정수배의 출력 전압을 공급한다. 단속기(14)는 미리 결정된 전압 레벨로서 전하펌프로부터의 출력 전압을 단속한다. 한 예에서, 단속된 전하펌프가 전하펌프(13) 및 단속기(14)를 대체하는데 사용된다. 단속된 전하펌프에는, 예를 들어 전원공급기(11)로부터 제공된 공급 전압을 끌어올리는 전압 배율 모듈 및 상기 미리 결정된 전압 레벨로 상기 전압 배율 모듈로부터 전달받은 출력 전압을 유지하는 단속기 모듈이 포함되어 있다.The
리셋회로(15)는 계수기(17)로의 리셋 신호를 제공한다. 한 예에서, 리셋 신호는 만약 단속기로부터의 상기 단속된 전압이 소정의 전압 레벨에 도달하지 않았다면 논리적인 로우 상태(low state)로 유지되고, 그 단속된 전압이 상기 소정의 전압 레벨에 도달하면 논리적으로 하이 상태(high state)로 바뀐다. 리셋 신호의 전환은 계수기(17)를 "래치(latch)" 시킨다. 즉, 로우에서 하이로의 상기 리셋신호의 전환에 응답하여, 계수기(17)는 클록 신호가 계수기(17)에 제공된 때부터 세어 왔던 카운트(count)를 제공한다. 일부 실시예에서, 계수기(17)는 리셋 신호가 논리적 하이 상태에서부터 로우 상태까지 전환될 때까지 카운트를 제공하지 않는다. 단속된 전압이 상기 소정의 전압 레벨에 도달하는 시간이 분명하지 않기 때문에, 계수기(17)가 래치되는 시간 및 카운트가 제공되는 시간 모두 분명하지 않다. 이 카운트가 랜덤 번호 발생기(10)의 랜덤 번호(RN)로서의 역할을 하는데, 이것은 의사-랜덤 번호 발생기를 위한 초기값, 즉, 시드 번호로서 사용되기도 한다. 한 예에서, 랜덤번호(RN)는 16-비트의 대역폭을 가지고 있어서 16-비트 랜덤 번호 발생기(10)가 된다.The
초기값 발생기(16)는 랜덤 번호(RN)를 세는 계수기(17)에 초기값을 제공한다. 상기 초기값은 클록 신호가 계수기(17)에 제공되는 충분히 그 시간에서 제공된다. 한 예에서, 상기 초기값은 16-비트 대역폭을 가지고 있어서 16-비트 랜덤 번호 발생기(10)가 된다. 그 결과, 계수기(17)에 의해 제공되는 상기 계수 또는 랜덤 번호(RN)는, 발진기(12)로 인한 주파수 오프셋(FOFFSET), 리셋 회로(15)의 전환 시간(TRESET), 및 초기값 발생기(16)의 초기값(INIV) 중의 적어도 하나에 따라 달라지며, 이는 아래 수학식으로부터 유도될 수 있다.The
또한, 상기 랜덤 번호(RN)는 전하 펌프(13)의 충전 효율, 선택된 미리 결정된 전압 레벨 및 상기 초기값 발생기(16)의 제조와 관련된 처리 파라메타 또는 상태에 직접적인 영향을 받지 않는다. 따라서, 랜덤 번호(RN)는 예상 가능하지 않다.In addition, the random number RN is not directly affected by the charging efficiency of the
도 1b는 랜덤 비트값을 만드는 도 1a에서 설명된 초기값 발생기(16)의 유닛(16-1)의 회로 다이어그램이다. 도 1b를 참고하면, 상기 유닛(16-1)에는 캐패시터 (C), p-타입 금속-산화-반도체(PMOS) 트랜지스터(P) 및 n-타입 금속-산화-반도체(NMOS) 트랜지스터(N)가 포함되어 있다. 캐패시터(C)의 한 단부(참고 번호 없음)는 기준 전압과 연결되어 있고, 타 단부(참조 번호 없음)는 상기 PMOS 및 NMOS 트랜지스터의 게이트와 연결되어 있다. PMOS 트랜지스터(P)의 소스는 전원 공급부(DC)와 연결되어 있고, 드레인에는 유닛(16-1)의 출력 전압(Vout)이 제공된다. NMOS 트랜지스터(N)의 드레인은 PMOS 트랜지스터(P)의 드레인과 연결되어 있고, 소스는 상기 기준 전압과 연결되어 있다. 게이트의 전압 레벨(Vc)은 캐패시터(C)의 온도, 유닛(16-1)처리 제조시 사용되는 처리 파라메터, 또는 캐패시터(C)의 잔류 전하에 따라 달라진다. 그러므로, Vc 의 값은 예측가능하지 않다. 만일 Vc 가 PMOS 트랜지스터(P)를 턴 온(turn on) 시키기에 충분히 네가티브(negative)라면, 출력 전압(Vout)이 전원 공급기(DC)의 전압 레벨까지 충분히 끌려가서 유닛(16-1)이 논리적 하이 레벨, 즉 "1"을 제공하도록 한다. 만일, Vc 가 NMOS 트랜지스터(N)를 턴 온 시키기에 충분히 포지티브(positive)라면, 출력 전압(Vout)이 기준 전압까지 끌려가서 유닛(16-1)이 논리적 로우 레벨, 즉 "0"를 제공하도록 한다. 16-비트 초기값 발생기(16)의 예가 주어진 경우라면, 상기 유닛(16-1)으로는 총 16개의 유닛이 필요하다. 상기 16개의 유닛 각각이 그 결과 초기값 비트값의 원인이 된다. 캐패시터 상태가 유닛마다 다르므로, 초기값 발생기(16)에 의해 제공된 초기값은 예상 가능하지 않다. 즉, 랜덤하다.FIG. 1B is a circuit diagram of unit 16-1 of
도 1c는 도 1a에서 설명된 랜덤 번호 발생기(10)용 개략적 랜덤 타이밍 다이 어그램이다. 도 1c를 참고하면, 발진기(12)는 t0 시간까지는 발진하지 않으며, t0시간에서 클록킹 펄스의 시퀀스를 포함하는 클록 신호를 제공한다. 초기값 발생기(16)는 상기 클록킹 펄스의 수가 초기값(K)으로부터 세어지는 경우로부터 충분히 동일한 시간(t0)에서 랜덤한 초기값(K)을 제공한다. 시간(tN+1)에서 리셋 신호의 전환이 일어날 때까지 세는 것은 계속 된다. 계수기(17)는 시간(tN+1)에서 계수(K+N)하는데, 여기서 "N" 은 지금까지 센 클록킹 펄스의 갯수이다. 상기 값(K+N)이 랜덤 번호 역할을 하며 따라서 랜덤 번호 발생기(10)에 의해 제공된다.FIG. 1C is a schematic random timing diagram for the
일부 예에서는, 발진기(12)에는 크리스탈 발진기가 포함되며, 이 발진기는 상대적으로 낮은 허용오차를 허용하여 주파수 오프셋에 의한 결과 랜덤 번호(RN)상의 효과가 상쇄될 수 없도록 해준다. 예를 들어, 발진기(12)는 10 MHz 의 정밀한 주파수에서 클록 신호를 제공하기도 한다. 본 실시예에서의 랜덤 번호(RN)는 아래와 같은 수식으로 표현된다.In some examples,
여기서, 는 발진기로 인한 주파수 오프셋(FOFFSET)이 상기의 예에서와 같이 상수인 것을 의미한다.
here, Means that the frequency offset F OFFSET due to the oscillator is constant as in the above example.
일부 예에서는, 계수기(17)를 리셋하기 위한 시간 간격은 단속기(14)로부터의 출력 전압이 미리 결정된 전압 레벨과 같은지에 상관없이 일정하기도 한다. 예를 들어, 계수기(17)는 매 초에 한번 씩 리셋 된다. 본 예에서의 랜덤 번호(RN)는 아래 식으로 표현된다.In some examples, the time interval for resetting the
여기서, 은 리셋 회로의 전환 시간(TRESET)이 상기의 예에서와 같이 상수인 것을 의미한다.
here, Means that the switching time T RESET of the reset circuit is a constant as in the above example.
한 예에서, 초기값은 예를 들면, 완전한 제로(0) 또는 완전한 일(1)인 소정값이 될 수 있어서 각각의 비트의 무작위성으로 인한 결과적인 랜덤 번호(RN)상의효과가 부정된다. 본 실시예의 랜덤 번호(RN)는 아래 식으로 표현된다.In one example, the initial value may be, for example, a predetermined value that is either fully zero or one full so that the effect on the resulting random number (RN) due to the randomness of each bit is negated. The random number RN of this embodiment is expressed by the following formula.
여기서, 는 초기값 발생기의 초기값(INIV)이 상기의 예에서와 같이 상수인 것을 의미한다.
here, Means that the initial value (INIV) of the initial value generator is a constant as in the above example.
도 2는 본 발명의 한 실시예에 따른 랜덤 번호를 발생하는 방법의 흐름도이다. 도 2를 참고하면, 단계 21에서, 공급 전압이 제공된다. 이 공급 전압은 배터리 또는 입력 교류(AC) 전압을 정류하는 전압 정류기로부터의 정류된 DC 전압 등과 같은 전원 공급기로부터의 DC 전압이 포함되기도 한다. 단계 22에서, 상기 공급 전압에 응답하여 발진하는 발진기 등에 의해 클록킹 신호의 시퀀스를 포함하는 클록 신호를 발생한다. 다음으로, 단계 23에서 초기값이 제공된다. 클록킹 펄스의 수는 단계 24에서 초기값으로부터 세어진다. 상기 공급 전압의 정수배인 출력 전압이 전하 펌프 회로 등에 의해 단계 25에서 발생된다. 이 출력 전압은 단계 26에서 미리 결정된 전압 레벨과 비교되어 출력 전압이 상기 미리 결정된 전압 레벨에 도달했는지를 결정한다. 만일, 확인이 된다면, 단계 27에서 카운트가 제공된다. 이 카운트는 클록 신호의 중심 주파수로부터의 주파수 오프셋, 출력 전압이 상기 미리 결정된 전압 레벨과 일치되는 시간 및 상기 초기값 중 적어도 하나에 따라 달라진다.2 is a flowchart of a method for generating a random number according to an embodiment of the present invention. Referring to FIG. 2, in
도 3a는 본 발명의 한 실시예에 따른 무선 주파수 식별(RFID) 장치(30)의 개략적 블럭 다이어그램이다. 도 3a를 참고하면, RFID 태그 또는 트랜스폰더(transponder)라고 부르는, RFID 장치(30)에는 아날로그 모듈(31), 디지털 모듈(32) 및 메모리(33)가 포함되어 있다. 아날로그 모듈(31)은 코일 안테나와 같은 안테나(34)를 통하여 판독기(40)로부터 전송된 캐리어 신호를 수신하고, 이 캐리어 신호를 변조하여 상기 캐리어 신호에 포함된 명령어를 얻는다. 이 명령어는 일반적으로 RFID 장치(30)에 식별(ID) 정보에 응답하도록 요청을 하는데, 이 식별 정보는 전자제품코드(EPC) 표준에 따르는 정보이다. 이 ID 정보는 메모리(33)에 저장되어 있으며 제품 아이템과 관련된 제품 이름 및 가격이 포함되기도 한다. 이 명령어는 메모리(33)로 보내지기 전에 디지털 모듈(32)에 의해 복호화된다. 복호화된 명령어에 응답하여 메모리(33)에 의해 제공된 ID 정보는 디지털 모듈(32)에서 부호화되고 아날로그 모듈(31)에서 변조된 다음 안테나(34)를 통해 판독기(40)로 전송된다.3A is a schematic block diagram of a radio frequency identification (RFID)
RFID 산업에서, RFID 장치와 판독기 사이의 트래픽은 "태그 충돌" 이라 불리우는 현상으로 인해 어려움을 겪는데, 이 태그 충돌은 다수의 RFID 태그가 거의 동일한 시간에 한 개의 판독기와 통신을 하는 경우 발생한다. 이 문제를 해결하기 위한 해결책은 랜덤 번호 발생을 위해 RFID 장치 내에 랜덤 번호를 제공하는 것이 다. 다수의 RFID 장치에 의해 제공된 랜덤 번호들을 구별하는 것에 의해, 판독기는 특정한 시간 슬롯에서 특정한 랜덤 번호와 특정 ID 정보를 매치시킬 수 있다. 그러나, 앞서 언급한 바와 같이, 의사-랜덤 번호 발생기와 같은 종래의 랜덤 번호 발생기는 종종 예상 가능하며 완전히 랜덤하지 않은 번호를 제공하곤 했다. 따라서, 태그 충돌은 완화되지 못하였다.In the RFID industry, traffic between RFID devices and readers suffers from a phenomenon called "tag collisions", which occur when multiple RFID tags communicate with one reader at about the same time. The solution to this problem is to provide a random number in the RFID device for random number generation. By distinguishing random numbers provided by multiple RFID devices, the reader can match specific random numbers and specific ID information in specific time slots. However, as mentioned above, conventional random number generators, such as pseudo-random number generators, often provide predictable and not completely random numbers. Thus, tag collisions were not mitigated.
도 3a를 참고하면, 한 예로서, RFID 장치(30)에는 아날로그 모듈(31) 내에 시드 번호 발생기(50)가 있고 디지털 모듈(32) 내에는 랜덤 번호 발생기(32-1)가 있다. 시드 번호 발생기(50)는 예상할 수 없는 랜덤 번호인 시드 번호(SN)를 발생하는데, 이는 랜덤 번호 발생기(32-1)를 위한 초기 시드값 역할을 한다. 랜던 번호 발생기(32-1)는 의사-랜덤 번호 발생기를 포함하기도 하며, 상기 시드 번호에 기초하여 랜덤 번호를 발생한다. 시드 번호가 예상 불가능하기 때문에, 랜덤 번호 발생기(32-1)에 의해 만들어지는 랜덤 번호 역시 예상 불가능하다.Referring to FIG. 3A, as an example, the
도 3b는 도 3a에서 설명된 RFID 장치(30)의 시드 번호 발생기(50)의 블럭 다이어그램이다. 도 3b를 참고하면, 시드 번호 발생기(50)는 정류기(51)가 전원 공급기(11)를 대체하고 있다는 점을 제외하고는 도 1a에서 설명한 랜덤 번호 발생기(10)와 유사한 구조를 가진다. 정류기(51)는 판독기(40)에서 전송된 캐리어 신호를 수신하고 이 캐리어 신호를 정류하여 DC 전압을 얻는다. 이 DC 전압은 발진기(52)와 전하 펌프(53)로 제공된다. 일단 발진이 되면, 발진기는 클록킹 펄스의 시퀀스가 포함된 클록 신호를 전하 펌프(53)와 계수기(57)에게 제공한다. 클록 신호는 발진기(52)의 중심 주파수로부터의 주파수 오프셋을 가지고 있다. 클록 신호에 응답하여, 전하 펌프(53)는 DC 전압에 정수배인 출력 전압을 제공한다. 출력 전압은 미리 결정된 전압 레벨에 대하여 단속기(54)에 의해 단속된다. 리셋 회로(55)는 상기 출력 전압이 상기 미리 결정된 전압 레벨에 도달하는 즉시 계수기(57)를 래치(latch) 시킨다. 초기값 발생기(56)는 클록 신호가 계수기(57)에 제공되는 그 시간과 충분히 동일한 시간에서 계수기(57)에게 초기값을 제공한다. 계수기(57)에 의해 발생된 시드 번호(SN)는 주파수 오프셋, 래치 시간 및 초기값 중에서 적어도 하나에 따라 달라진다.FIG. 3B is a block diagram of the
RFID 장치(30)에는 명령어(CMD) 제공을 위해 정류기(51) 및 단속기(54)와 전기적으로 접속된 복조회로(58)가 더 포함되어 있다. 시드 번호(SN) 및 명령어(CMD)는 도 3a에 도시된 디지털 모듈(32)로 전송된다. The
당업자라면 광의의 발명의 개념에서 벗어나지 않고 상기 설명한 실시예에 변경을 할 수 있다는 것을 이해할 것이다. 따라서, 본 발명은 설명된 특정 실시예로제한되는 것은 아니며 첨부된 특허청구범위에 의해 정의된 본 발명의 범위 내에서의 변화를 포함하는 것으로 이해되어야 한다.Those skilled in the art will appreciate that modifications may be made to the above described embodiments without departing from the broader inventive concept. Accordingly, it is to be understood that the invention is not limited to the specific embodiments described, but includes changes within the scope of the invention as defined by the appended claims.
또한, 본 발명의 일부 예시적 실시예에서의 설명은, 본 명세서가 특정한 단계 순서대로 본 발명의 방법 및/또는 절차가 표현되었다. 그러나, 그러한 방법 또는 절차는 본 명세서에 설명된 특정한 단계의 순서에 의존하는 것은 아니며, 상기 방법 또는 절차는 설명된 특정한 단계 순서로 제한되어선 않된다. 당업자라면 다른 단계 순서도 가능하다는 것을 이해할 수 있을 것이다. 그러므로, 본 명세서에 서술된 특정 단계 순서는 청구항에서의 제한으로 해석되어서는 않된다. 그리고, 본 발명의 상기 방법 및/또는 절차에 관한 청구항들은 기재된 순서의 단계로 제한되어선 않되며, 당업자는 그 순서는 변화될 수 있으며 본 발명의 정신 및 범위 내에서 여전히 유지되어 있는 것임을 쉽게 이해할 수 있을 것이다.In addition, in some exemplary embodiments of the present invention, the methods and / or procedures of the present invention are expressed in the order of the steps specific to this specification. However, such a method or procedure does not depend on the order of the specific steps described herein, and the method or procedure should not be limited to the specific step order described. Those skilled in the art will appreciate that other sequence of steps is possible. Therefore, the specific order of steps described herein should not be interpreted as a limitation in the claims. In addition, the claims relating to the methods and / or procedures of the present invention should not be limited to the steps of the described order, and those skilled in the art can readily understand that the order can be changed and still remain within the spirit and scope of the present invention. There will be.
본 발명에 따르면, 예상 가능하지 않은 랜덤 번호를 발생시킬 수 있다.According to the present invention, it is possible to generate an unexpected random number.
Claims (30)
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW094146632 | 2005-12-27 | ||
TW094146632A TWI307038B (en) | 2005-12-27 | 2005-12-27 | Random number generator for radio frequency identifciation tag and seed number generator for generating a seed number for operation of the random number generator |
US11/426,793 | 2006-06-27 | ||
US11/426,793 US20070133790A1 (en) | 2005-12-12 | 2006-06-27 | Random number generator and method for generating random number |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070068990A KR20070068990A (en) | 2007-07-02 |
KR100841078B1 true KR100841078B1 (en) | 2008-06-24 |
Family
ID=38108964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060064803A KR100841078B1 (en) | 2005-12-27 | 2006-07-11 | Random number generator and method for generating random number |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP2007179524A (en) |
KR (1) | KR100841078B1 (en) |
DE (1) | DE102006031537B4 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009022233A1 (en) | 2009-05-20 | 2010-11-25 | Feustel, Dietmar | Use of a character string in systems of cryptography, statistics, simulation, randomization, slot machines and the like. |
KR102170279B1 (en) * | 2016-11-09 | 2020-10-26 | 포항공과대학교 산학협력단 | True Random Number Generator |
KR102118204B1 (en) * | 2019-05-30 | 2020-06-09 | 포항공과대학교 산학협력단 | True Random Number Generator |
KR102286432B1 (en) * | 2020-07-17 | 2021-08-04 | 인천대학교 산학협력단 | True random number generator capable of improving errors associated with offset voltage and operating method thereof |
CN112543421A (en) * | 2020-11-18 | 2021-03-23 | 东莞理工学院 | Positioning method, device, equipment and storage medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020071759A (en) * | 2001-03-07 | 2002-09-13 | 가부시끼가이샤 도시바 | Random number's seed generating circuit, driver including the same, and sd memory card system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4521708B2 (en) * | 2001-03-12 | 2010-08-11 | ルネサスエレクトロニクス株式会社 | Random number generator |
JP4467216B2 (en) * | 2001-09-07 | 2010-05-26 | Necエレクトロニクス株式会社 | Random number generation method and apparatus |
US20030145216A1 (en) * | 2002-01-25 | 2003-07-31 | Matsushita Elec. Ind. Co., Ltd. | Semiconductor integrated circuit and data carrier with said integrated circuit |
-
2006
- 2006-07-07 DE DE102006031537A patent/DE102006031537B4/en not_active Expired - Fee Related
- 2006-07-11 KR KR1020060064803A patent/KR100841078B1/en active IP Right Grant
- 2006-07-20 JP JP2006198430A patent/JP2007179524A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020071759A (en) * | 2001-03-07 | 2002-09-13 | 가부시끼가이샤 도시바 | Random number's seed generating circuit, driver including the same, and sd memory card system |
Also Published As
Publication number | Publication date |
---|---|
DE102006031537B4 (en) | 2007-10-31 |
DE102006031537A1 (en) | 2007-06-28 |
KR20070068990A (en) | 2007-07-02 |
JP2007179524A (en) | 2007-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20070133790A1 (en) | Random number generator and method for generating random number | |
KR100841078B1 (en) | Random number generator and method for generating random number | |
US8527567B2 (en) | Random number generators having metastable seed signal generators therein | |
US20070180009A1 (en) | RFID tag with random number generator having a noise-based input | |
US8738675B2 (en) | Random numbers generation using continuous-time chaos | |
US7843709B2 (en) | Rectifier circuit and radio communication device using the same | |
US20080315995A1 (en) | Semiconductor integrated circuit, card comprising the same, and operating method of semiconductor integrated circuit | |
US7471143B2 (en) | Apparatus and method for adaptive demodulation of PWM signal | |
US20060224647A1 (en) | RFID tag using updatable seed values for generating a random number | |
CN101015135A (en) | Radio frequency identification and communication device | |
US6011488A (en) | Radio frequency interface device for a transponder | |
CN104218947B (en) | Utilize the fast and stable charge pump of frequency hopping | |
JP2008141817A (en) | Noncontact transmission device | |
Ergün et al. | IC truly random number generators based on regular & chaotic sampling of chaotic waveforms | |
KR101646506B1 (en) | Random number generator | |
KR100866602B1 (en) | Ask rf signal decoding device and method thereof | |
TWI463813B (en) | Semiconductor device | |
US7671670B2 (en) | Device for demodulating a signal containing information being conveyed by phase shift keying | |
CN105930130A (en) | True random number generation apparatus suitable for RFID reader | |
JP3803364B2 (en) | Non-contact RFID system communication method, non-contact RFID system, transmitter and receiver | |
CN108694435A (en) | Semiconductor device, contactless electronic device and periodicity detection methods | |
CN107067063B (en) | Intelligent electronic device | |
US20070063879A1 (en) | Method for generating variable numbers | |
Yokojima et al. | High-speed start-up and low-power encoding circuit for sensor networks | |
JP2005151033A (en) | Vpm modulation system in rfid communication |
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: 20130610 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140610 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150605 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20160608 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20170612 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20190611 Year of fee payment: 12 |