KR101981623B1 - Light-weight random number health test apparatus - Google Patents

Light-weight random number health test apparatus Download PDF

Info

Publication number
KR101981623B1
KR101981623B1 KR1020170144946A KR20170144946A KR101981623B1 KR 101981623 B1 KR101981623 B1 KR 101981623B1 KR 1020170144946 A KR1020170144946 A KR 1020170144946A KR 20170144946 A KR20170144946 A KR 20170144946A KR 101981623 B1 KR101981623 B1 KR 101981623B1
Authority
KR
South Korea
Prior art keywords
entropy
random number
test
sequence
random
Prior art date
Application number
KR1020170144946A
Other languages
Korean (ko)
Other versions
KR20190049283A (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 KR1020170144946A priority Critical patent/KR101981623B1/en
Publication of KR20190049283A publication Critical patent/KR20190049283A/en
Application granted granted Critical
Publication of KR101981623B1 publication Critical patent/KR101981623B1/en

Links

Images

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

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)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

경량 난수 헬쓰 테스트 장치는 엔트로피 소스로부터 엔트로피를 입력받는 엔트로피 입력부 및 상기 입력받은 엔트로피에 관하여 비모수적 순열 검정을 통한 경량 IID(Independent and Identically Distributed) 테스트를 수행하여 상기 엔트로피 소스를 검정하는 엔트로피 소스 검정부를 포함한다.The lightweight random number fitness test apparatus includes an entropy input unit for receiving entropy from an entropy source and an entropy source test unit for performing a lightweight IID (Independent and Identically Distributed) test by non-parametric permutation test on the input entropy to test the entropy source .

Description

경량 난수 헬쓰 테스트 장치{LIGHT-WEIGHT RANDOM NUMBER HEALTH TEST APPARATUS}[0001] LIGHT-WEIGHT RANDOM NUMBER HEALTH TEST APPARATUS [0002]

본 발명은 경량 난수 헬쓰 테스트 기술에 관한 것으로, 보다 상세하게는, 경량 환경에서 랜덤 수열의 통계적 특성인 독립성과 동질성(IID)을 검정할 수 있는 경량 난수 헬쓰 테스트 장치에 관한 것이다.The present invention relates to lightweight randomized health testing techniques and, more particularly, to a lightweight randomized health testing device capable of testing independence and homogeneity (IID), a statistical characteristic of random sequences in a lightweight environment.

무선 통신 환경 또는 사물 인터넷 환경에서는 정보의 보안 유지를 위하여 정보의 암호화 및 복호화를 중요시한다. 난수(Random Number)는 보안 시스템의 비밀 키와 같이 보안이 중요시되는 시스템에서 사용되며, 예측 불가능한 값을 가지도록 생성되어야 한다. 종래의 기술은 난수의 안전성을 향상시키기 위하여 높은 엔트로피 소스들을 이용하지만, 이는 많은 소스 데이터가 필요하고 메모리 사용량을 많이 요구하기 때문에 사용 환경에 제한을 받는 문제점을 가지고 있다.In wireless communication environment or object internet environment, it is important to encrypt and decrypt information in order to maintain information security. A random number is used in a system where security is important, such as a secret key of a security system, and must be generated to have an unpredictable value. The prior art uses high entropy sources to improve the security of random numbers, but it has a problem in that it is limited in the use environment because it requires a lot of source data and requires a large amount of memory usage.

한국등록특허 제10-0637704호는 제한된 컴퓨팅 자원을 갖는 시스템에서의 난수성 테스트방법에 관한 것으로, 난수성 테스트에 필요한 표본 출력 수열의 크기를 최소화하고 미리 계산된 통계값 임계치와 비교하여 최소의 표본 출력 수열로 제한된 컴퓨팅 자원을 갖는 시스템에서의 난수성 테스트가 가능하며 난수성 테스트의 오류 판정을 극소화 할 수 있는 기술을 개시한다.Korean Patent No. 10-0637704 is directed to a method for testing a randomized test in a system with limited computing resources, which minimizes the size of the sample output sequence required for the random test and compares it with a pre- Discloses a technique capable of minimizing the error determination of an irregular test capable of performing a random test in a system having an output sequence limited computing resource.

한국공개특허 제10-2014-0111844호는 난수 발생기 및 난수 품질 테스트 방법에 관한 것으로, 적어도 2개의 워드들에 대한 최소 엔트로피(Hmin)들을 계산하고, 계산된 최소 엔트로피(Hmin)들을 이용하여 난수의 품질을 간단하게 테스트할 수 있는 기술을 개시한다.Korean Patent Laid-Open No. 10-2014-0111844 relates to a random number generator and a random-number quality test method. The minimum entropy (Hmin) for at least two words is calculated, and the random entropy A technique for simply testing quality is disclosed.

한국등록특허 제10-1583471호는 임의성을 검증하는 통계적 기법을 이용하여 난수를 공급하는 장치 및 방법에 관한 것으로, 난수 생성기를 사용하는 응용 프로그램 또는 전산 시스템에서 임의성을 검증함으로써 품질이 보장된 난수를 사용자 내지 시스템이 요구하는 만큼 공급할 수 있는 기술을 개시한다.Korean Patent No. 10-1583471 relates to an apparatus and method for supplying random numbers using a statistical technique for verifying randomness. In an application program or a computer system using a random number generator, Discloses a technique that can be supplied by a user or a system as required.

한국등록특허 제10-0637704호 (2006.10.17)Korean Patent No. 10-0637704 (October 17, 2006) 한국공개특허 제10-2014-0111844호 (2014.09.22)Korean Patent Publication No. 10-2014-0111844 (2014.09.22) 한국등록특허 제10-1583471호 (2016.01.04)Korean Patent No. 10-1583471 (2014.01.04)

본 발명의 일 실시예는 경량 환경에서 랜덤 수열의 통계적 특성인 독립성과 동질성(IID)을 검정할 수 있는 경량 난수 헬쓰 테스트 장치를 제공하고자 한다.One embodiment of the present invention is to provide a lightweight randomized fitness test apparatus capable of testing independence and homogeneity (IID), which is a statistical characteristic of a random sequence in a lightweight environment.

본 발명의 일 실시예는 기존 테스트 방법 보다 적은 데이터로 랜덤 수열의 IID 가설을 효과적으로 검정할 수 있는 경량 난수 헬쓰 테스트 장치를 제공하고자 한다.One embodiment of the present invention is to provide a lightweight random number health test apparatus capable of effectively testing a random sequence IID hypothesis with less data than existing test methods.

본 발명의 일 실시예는 랜덤 수열의 IID 가설을 검정하기 위해 랜덤 수열의 카이-제곱 통계량을 계산할 수 있는 경량 난수 헬쓰 테스트 장치를 제공하고자 한다.One embodiment of the present invention seeks to provide a lightweight random number health test apparatus capable of calculating a chi-squared statistic of a random sequence to test an IID hypothesis of a random sequence.

실시예들 중에서, 경량 난수 헬쓰 테스트 장치는 엔트로피 소스로부터 엔트로피를 입력받는 엔트로피 입력부 및 상기 입력받은 엔트로피에 관하여 비모수적 순열 검정을 통한 경량 IID(Independent and Identically Distributed) 테스트를 수행하여 상기 엔트로피 소스를 검정하는 엔트로피 소스 검정부를 포함한다.Among the embodiments, the lightweight random number helith test apparatus includes an entropy input unit for receiving entropy from an entropy source and a lightweight IID (Independent and Identically Distributed) test for non-parametric permutation about the input entropy, Lt; / RTI >

일 실시예에서, 상기 엔트로피 소스 검정부는 상기 비모수적 순열 검정의 과정에서 상기 입력받은 엔트로피를 기초로 랜덤 수열을 생성할 수 있다.In one embodiment, the entropy source checker may generate a random sequence based on the input entropy in the course of the non-parametric permutation test.

일 실시예에서, 상기 엔트로피 소스 검정부는 상기 랜덤 수열의 생성 전에 상기 입력받은 엔트로피를 기초로 표본 수열을 생성하고 상기 생성된 표본 수열을 셔플링하여 상기 랜덤 수열을 생성할 수 있다.In one embodiment, the entropy source generator may generate a sample sequence based on the input entropy before generation of the random sequence, and generate the random sequence by shuffling the generated sample sequence.

일 실시예에서, 상기 엔트로피 소스 검정부는 셔플 알고리즘을 통해 상기 셔플링을 수행할 수 있다.In one embodiment, the entropy source checker may perform the shuffling through a shuffle algorithm.

일 실시예에서, 상기 엔트로피 소스 검정부는 상기 랜덤 수열의 IID 가설을 검정하기 위해 상기 랜덤 수열의 카이제곱 통계량을 계산할 수 있다.In one embodiment, the entropy source estimator may calculate a chi-square statistic of the random sequence to test the IID hypothesis of the random sequence.

일 실시예에서, 상기 엔트로피 소스 검정부는 상기 계산된 카이제곱 통계량을 특정 기준과 대소 비교하여 상대적으로 큰 그룹, 동일 그룹 및 상대적으로 작은 그룹으로 구성된 3 개의 그룹들로 분류할 수 있다.In one embodiment, the entropy source checker may classify the computed chi-square statistics into three groups of relatively large groups, the same group, and a relatively small group by comparing large and small with a specific criterion.

일 실시예에서, 상기 엔트로피 소스 검정부는 상기 계산된 카이제곱 통계량이 상기 3개의 그룹들로 오차 범위 내에서 균등하게 분배되지 않은 경우에는 상기 랜덤 수열의 IID 가설을 검정 실패로 판정할 수 있다.In one embodiment, the entropy source checker may determine the IID hypothesis of the random sequence to be a test failure if the computed chi-square statistics are not evenly distributed within the error ranges to the three groups.

일 실시예에서, 상기 경량 난수 헬쓰 테스트 장치는 난수 출력 전에 온-더-플라이(on-the-fly) 방식으로 상기 엔트로피 소스를 검정할 수 있다.In one embodiment, the lightweight random number health test apparatus may test the entropy source on-the-fly before the random number output.

실시예들 중에서, 경량 난수 헬쓰 테스트 방법은 경량 난수 헬쓰 테스트 장치에서 수행된다. 상기 방법은 (a) 엔트로피 소스로부터 엔트로피를 입력받는 단계 및 (b) 상기 입력받은 엔트로피에 관하여 비모수적 순열 검정을 통한 경량 IID(Independent and Identically Distributed) 테스트를 수행하여 상기 엔트로피 소스를 검정하는 단계를 포함한다.Among the embodiments, the lightweight random number health test method is performed in a lightweight random number health test apparatus. The method comprises the steps of: (a) receiving entropy from an entropy source; and (b) performing a lightweight IID (Independent and Identically Distributed) test through a non-parametric permutation test on the input entropy to test the entropy source .

일 실시예에서, 상기 (b) 단계는 상기 비모수적 순열 검정의 과정에서 상기 입력받은 엔트로피를 기초로 랜덤 수열을 생성하는 단계를 포함할 수 있다.In one embodiment, step (b) may include generating a random sequence based on the input entropy in the course of the non-parametric permutation test.

일 실시예에서, 상기 (b) 단계는 상기 랜덤 수열의 생성 전에 상기 입력받은 엔트로피를 기초로 표본 수열을 생성하고 상기 생성된 표본 수열을 셔플링하여 상기 랜덤 수열을 생성하는 단계를 포함할 수 있다.In one embodiment, the step (b) may include generating a sample sequence based on the input entropy before generating the random sequence, and generating the random sequence by shuffling the generated sample sequence .

일 실시예에서, 상기 (b) 단계는 상기 랜덤 수열의 IID 가설을 검정하기 위해 상기 랜덤 수열의 카이제곱 통계량을 계산하는 단계를 포함할 수 있다.In one embodiment, step (b) may comprise computing a chi-square statistic of the random sequence to test an IID hypothesis of the random sequence.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다 거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technique may have the following effects. It should be understood, however, that the scope of the disclosed technology is not to be construed as limited thereby, as it does not imply that a particular embodiment should include all of the following effects or merely include the following effects.

본 발명의 일 실시예에 따른 경량 난수 헬쓰 테스트 장치는 경량 환경에서 랜덤 수열의 통계적 특성인 독립성과 동질성(IID)을 검정할 수 있다.The lightweight random number fitness test apparatus according to an embodiment of the present invention can test independence and homogeneity (IID), which are statistical characteristics of a random sequence in a light environment.

본 발명의 일 실시예에 따른 경량 난수 헬쓰 테스트 장치는 기존 테스트 방법 보다 적은 데이터로 랜덤 수열의 IID 가설을 효과적으로 검정할 수 있다.The lightweight random number health test apparatus according to an embodiment of the present invention can effectively test the random number sequence IID hypothesis with less data than existing test methods.

본 발명의 일 실시예에 따른 경량 난수 헬쓰 테스트 장치는 랜덤 수열의 IID 가설을 검정하기 위해 랜덤 수열의 카이-제곱 통계량을 계산할 수 있다.The lightweight random number fitness test apparatus according to an exemplary embodiment of the present invention may calculate a chi-square statistic of a random sequence to test an IID hypothesis of a random sequence.

도 1은 본 발명의 일 실시예에 따른 경량 난수 헬쓰 테스트 시스템을 설명하는 도면이다.
도 2는 도 1에 있는 경량 난수 헬쓰 테스트 장치를 설명하는 도면이다.
도 3은 경량 IID를 검정할 수 있는 경량 IID 검정 알고리즘을 나타내는 도면이다.
도 4는 카이-제곱 분포량을 이용한 IID 가설 검정을 설명하는 도면이다.
1 is a diagram illustrating a lightweight random number health test system according to an embodiment of the present invention.
Fig. 2 is a diagram for explaining the light-weight random number fitness test apparatus shown in Fig. 1. Fig.
3 is a diagram illustrating a lightweight IID verification algorithm capable of verifying a lightweight IID.
4 is a diagram for explaining an IID hypothesis test using a chi-square distribution amount.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다 거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The description of the present invention is merely an example for structural or functional explanation, and the scope of the present invention should not be construed as being limited by the embodiments described in the text. That is, the embodiments are to be construed as being variously embodied and having various forms, so that the scope of the present invention should be understood to include equivalents capable of realizing technical ideas. Also, the purpose or effect of the present invention should not be construed as limiting the scope of the present invention, since it does not mean that a specific embodiment should include all or only such effects.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of the terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms " first ", " second ", and the like are intended to distinguish one element from another, and the scope of the right should not be limited by these terms. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에" 와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" to another element, it may be directly connected to the other element, but there may be other elements in between. On the other hand, when an element is referred to as being "directly connected" to another element, it should be understood that there are no other elements in between. On the other hand, other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It is to be understood that the singular " include " or " have " are to be construed as including the stated feature, number, step, operation, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, Unless otherwise stated, it may occur differently from the stated order. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer-readable code on a computer-readable recording medium, and the computer-readable recording medium includes all kinds of recording devices for storing data that can be read by a computer system . Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like. In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used predefined terms should be interpreted to be consistent with the meanings in the context of the related art and can not be interpreted as having ideal or overly formal meaning unless explicitly defined in the present application.

도 1은 본 발명의 일 실시예에 따른 경량 난수 헬쓰 테스트 시스템을 설명하는 도면이다.1 is a diagram illustrating a lightweight random number health test system according to an embodiment of the present invention.

도 1을 참조하면, 경량 난수 헬쓰 테스트 시스템(10)은 엔트로피 소스(110) 및 경량 난수 헬쓰 테스트 장치(120)를 포함한다.Referring to FIG. 1, a lightweight random number health test system 10 includes an entropy source 110 and a lightweight random number health test apparatus 120.

엔트로피 소스(110)는 컴퓨터에서 물리적으로 얻을 수 있는 랜덤 정보를 포함할 수 있다. 예를 들어, 엔트로피 소스(110)는 잡음원으로서 키 입력 타이밍 패턴, 디스크 전기 작용, 무작위 데이터, 마우스 움직임, 시스템 클럭의 순간 값 등을 포함할 수 있다.The entropy source 110 may include random information physically obtainable in the computer. For example, the entropy source 110 may include a key input timing pattern, disk electrical activity, random data, mouse movement, instantaneous value of the system clock, etc. as a noise source.

경량 난수 헬쓰 테스트 장치(120)는 사물인터넷(Internet of Things, IoT), 센서 네트워크, 스마트 홈, 임베디드 운영체제(Embedded OS) 등과 같은 경량 환경에서 엔트로피 소스의 통계적 특성인 독립성과 동질성(Independent and Identically Distributed, IID)(이하, 경량 IID 또는 IID)를 테스트할 수 있다. 보다 구체적으로, 경량 난수 헬쓰 테스트 장치(120)는 카이-제곱(Chi-Square) 통계량 비교를 수행하여 경량 환경에서 분포를 알지 못하는 랜덤 수열의 경량 IID를 검정할 수 있다.The lightweight random number health test apparatus 120 is an independent and identically distributed statistical feature of entropy sources in lightweight environments such as Internet of Things (IOT), sensor networks, smart homes, and embedded operating systems , IID) (hereinafter, lightweight IID or IID). More specifically, the lightweight random number health test apparatus 120 may perform a Chi-Square statistic comparison to test a lightweight IID of a random sequence that does not know the distribution in a light environment.

종래의 엔트로피 소스(110)의 통계적 특성을 확인하는 방법인 NIST SP 800-90B(NIST에서 발표한 난수 발생기에 대한 문서)에서는 테스트 입력 데이터로 연속으로 수집된 최소 100만 샘플 이상을 필요로 한다. 하지만, 많은 엔트로피 소스 수집이 어려운 경량 환경에서 NIST의 권장량(연속 수집된 최소 100만 샘플 이상)만큼 수집하기 어려우므로 종래 방법(NIST SP 800-90B)을 그대로 적용하기 어려운 문제점이 있다.NIST SP 800-90B (a document on a random number generator published by NIST), a method of ascertaining the statistical properties of a conventional entropy source 110, requires at least one million samples collected continuously as test input data. However, since it is difficult to collect NIST recommended amount (at least 1 million samples continuously collected) in a lightweight environment where many entropy sources are difficult to collect, there is a problem that it is difficult to apply the conventional method (NIST SP 800-90B) as it is.

경량 난수 헬쓰 테스트 장치(120)는 종래의 방법 보다 적은 데이터(예를 들어, 2만 데이터 샘플 또는 10만 데이터 샘플)로도 엔트로피 소스의 독립성과 동질성(IID)을 테스트할 수 있다. 이하, 경량 난수 헬쓰 테스트 장치(120)와 관련한 보다 상세한 설명은 도 2를 참조하여 설명한다.The lightweight random number health test apparatus 120 can test the independence and homogeneity (IID) of entropy sources with less data (e.g., 20,000 data samples or 100,000 data samples) than conventional methods. Hereinafter, a more detailed description related to the lightweight random number health test apparatus 120 will be described with reference to FIG.

도 2는 도 1에 있는 경량 난수 헬쓰 테스트 장치를 설명하는 도면이다.Fig. 2 is a diagram for explaining the light-weight random number fitness test apparatus shown in Fig. 1. Fig.

도 2를 참조하면, 경량 난수 헬쓰 테스트 장치(120)는 엔트로피 입력부(210), 엔트로피 소스 검정부(220) 및 제어부(230)를 포함한다.Referring to FIG. 2, the lightweight random number test apparatus 120 includes an entropy input unit 210, an entropy source verification unit 220, and a control unit 230.

엔트로피 입력부(210)는 엔트로피 소스(110)로부터 엔트로피를 입력 받을 수 있다. 보다 구체적으로, 엔트로피 입력부(210)는 컴퓨터에서 물리적으로 얻을 수 있는 엔트로피 소스(110)로부터 엔트로피를 입력 받을 수 있다.The entropy input unit 210 can receive an entropy from the entropy source 110. More specifically, the entropy input unit 210 can receive entropy from an entropy source 110 physically obtainable in the computer.

엔트로피 소스 검정부(220)는 엔트로피 소스로부터 입력받은 엔트로피를 기초로 생성된 랜덤 수열의 검정을 수행할 수 있다. 보다 구체적으로, 엔트로피 소스 검정부(220)는 엔트로피 입력부(210)를 통해 입력받은 엔트로피에 관하여 비모수적 순열 검정(Non-parametric Permutation Test)을 통한 경량 IID (Independent and Identically Distributed) 테스트를 수행하여 엔트로피 소스(110)를 검정할 수 있다. 엔트로피 소스 검정부(220)는 기존 테스트(NIST SP 800-90B) 보다 적은 데이터로 엔트로피 소스(110)의 독립성과 동질성을 검정할 수 있다. 여기에서, 엔트로피 소스 검정부(220)는 실제 엔트로피 소스(110)의 분포를 모르기 때문에 비모수적 순열 검정(Non-parametric Permutation Test)을 적용할 수 있다.The entropy source checking unit 220 may perform a random sequence check based on the entropy input from the entropy source. More specifically, the entropy source checking unit 220 performs a lightweight IID (Independent and Identically Distributed) test using a non-parametric permutation test with respect to the entropy input through the entropy input unit 210, The source 110 may be verified. The entropy source verification unit 220 can verify the independence and homogeneity of the entropy source 110 with less data than the existing test (NIST SP 800-90B). Here, the entropy source verification unit 220 can apply the non-parametric permutation test because it does not know the distribution of the actual entropy source 110. [

엔트로피 소스 검정부(220)는 랜덤 수열을 생성하기 전에 엔트로피 입력부(210)를 통해 입력 받은 엔트로피를 기초로 표본 수열을 생성할 수 있다. 여기에서, 표본 수열은 경량 IID 검정 알고리즘(도 3의 알고리즘)에 최초 입력된 수열(엔트로피)을 포함할 수 있다. 엔트로피 소스 검정부(220)는 표본 수열을 생성한 후에 입력 받은 엔트로피를 기초로 비모수적 순열 검정의 과정에서 랜덤 수열을 생성할 수 있다. 여기에서, 랜덤 수열은 엔트로피를 기초로 생성된 표본 수열의 순서를 무작위로 섞은 수열을 포함할 수 있다.The entropy source checking unit 220 may generate a sample sequence based on the entropy input through the entropy input unit 210 before generating the random sequence. Here, the sample sequence may include a sequence (entropy) initially input to the lightweight IID verification algorithm (the algorithm of FIG. 3). The entropy source checking unit 220 may generate a random sequence in the course of the non-parametric permutation test based on the input entropy after generating the sample sequence. Here, the random sequence may include a random sequence of sequences of sample sequences generated based on entropy.

엔트로피 소스 검정부(220)는 생성된 표본 수열을 셔플링(Shuffling)하여 랜덤 수열을 생성할 수 있다. 일 실시예에서, 엔트로피 소스 검정부(220)는 셔플 알고리즘을 통해 표본 수열에 대한 셔플링(Shuffling)을 수행할 수 있다.The entropy source checking unit 220 may generate a random sequence by shuffling the generated sample sequence. In one embodiment, entropy source validator 220 may perform shuffling on a sample sequence through a shuffle algorithm.

경량 난수 헬쓰 테스트 장치(120)는 가설 검정(Statistical Hypothesis Test)의 원리를 통해 엔트로피 소스(110)를 검정한다. 여기에서, 가설 검정은 귀무 가설(H0) 및 대립 가설(H1)을 포함할 수 있고, 귀무 가설(H0)은 랜덤 수열이 IID이며 대립 가설(H1)은 랜덤 수열이 IID가 아니다.The lightweight random number health test apparatus 120 tests the entropy source 110 through the principle of a statistical hypothesis test. Here, the hypothesis testing may include a null hypothesis (H 0 ) and an alternative hypothesis (H 1 ), the null hypothesis H 0 is a random sequence IID, and the hypothesis H 1 is a random sequence is not an IID .

엔트로피 소스 검정부(220)는 생성된 랜덤 수열의 IID 가설(귀무 가설)을 검정하기 위해 카이-제곱 검정(Chi-Square Test)을 적용할 수 있다. 보다 구체적으로, 엔트로피 소스 검정부(220)는 카이-제곱 검정(Chi-Square Test)을 적용하여 랜덤 수열의 카이-제곱 통계량(V)을 계산할 수 있다.The entropy source checker 220 may apply a Chi-square test to test the IID hypothesis (null hypothesis) of the generated random sequence. More specifically, the entropy source checking unit 220 may calculate a chi-square statistic (V) of a random sequence by applying a Chi-square test.

엔트로피 소스 검정부(220)는 카이-제곱 분포(도 4를 참조)를 사용할 수 있고, 랜덤 수열의 카이-제곱 통계량을 계산하기 위하여 3개의 그룹들{B1, B2, B3}을 사용할 수 있다. 보다 구체적으로, 엔트로피 소스 검정부(220)는 계산된 랜덤 수열의 카이-제곱 통계량을 특정 기준(예를 들어, 기댓값)과 대소 비교하여 상대적으로 큰 그룹(B1), 동일 그룹(B2) 및 상대적으로 작은 그룹(B3)으로 구성된 3개의 그룹들로 분류할 수 있다. 이때, 엔트로피 소스 검정부(220)는 비모수적 순열 검정을 적용하면 카이-제곱 분포의 자유도를 계산할 때 추정 확률의 개수를 빼서 계산할 수 있다.Entropy source validator 220 may use a chi-squared distribution (see FIG. 4) and use three groups {B 1 , B 2 , B 3 } to compute a chi-square statistic of the random sequence . More specifically, the entropy source verification unit 220 compares the calculated chi-square statistic of the random sequence with a specific criterion (e.g., expected value) to compare the larger group B 1 , the same group B 2 , And a relatively small group (B 3 ). At this time, the entropy source checking unit 220 can calculate the degree of freedom of the chi-square distribution by subtracting the number of estimation probabilities by applying the non-parametric permutation test.

예를 들어, 엔트로피 소스 검정부(220)는 독립성과 동질성(IID)인 랜덤 수열의 경우, 3개의 그룹들{B1, B2, B3}에 고르게 분산된다고 가정하여 설명한다. 여기에서, 그룹{B1}은 카이-제곱 통계량이 기댓값 보다 큰 경우에 해당하고, 그룹{B2}은 카이-제곱 통계량이 기댓값과 동일한 경우에 해당하며 그룹{B3}은 카이-제곱 통계량이 기댓값 보다 작은 경우에 해당할 수 있다. 일 실시예에서, 엔트로피 소스 검정부(220)는 3개의 그룹들{B1, B2, B3}을 사용할 수 있고, 실제 엔트로피 소스(110)의 분포를 모르기 때문에 비모수적 순열 검정(Non-parametric Permutation Test)을 적용하여 카이-제곱 분포의 자유도(Degree of freedom)를 계산할 수 있다. 이때, 엔트로피 소스 검정부(220)는 3개의 그룹들 각각에 통계적 특성으로 최소 5개의 카이-제곱 통계량(V)이 있는 경우 유의미한 결과를 갖는다고 판단할 수 있다.For example, the entropy source checking unit 220 is assumed to be evenly distributed to three groups {B 1 , B 2 , B 3 } in the case of a random sequence of independence and homogeneity (IID). Here, the group {B 1 } corresponds to a case where the chi-square statistic is greater than the expected value, the group {B 2 } corresponds to a case where the chi-square statistic equals the expected value, and the group {B 3 } Is less than the expected value. In one embodiment, the entropy source validator 220 may use three groups {B 1 , B 2 , B 3 }, and because of the unknown distribution of the actual entropy source 110, the non-parametric permutation- parametric Permutation Test) can be applied to calculate the degree of freedom of the chi-square distribution. At this time, the entropy source checking unit 220 can determine that each of the three groups has a statistically significant result when there are at least five chi-square statistics (V).

일 실시예에서, 엔트로피 소스 검정부(220)는 랜덤 수열이 IID(즉, 귀무 가설)인 경우, 카이-제곱 통계량과 동일한 경우의 기댓값을 E[B2]라 가정하면, 3개의 그룹들 각각의 기댓값은 E[B1] = E[B3] =

Figure 112017108641350-pat00001
이다. 여기에서, N은 실제 B1, B3 발생 수(즉, 카이-제곱 통계량이 기댓값 보다 큰 경우 또는 작은 경우)를 의미한다. 이때, 엔트로피 소스 검정부(220)는 아래의 수학식을 통해 카이-제곱 통계량을 계산할 수 있다. 여기에서, O[Bi]는 실제 측정 값에 해당한다.In one embodiment, if the random sequence is an IID (i.e., a null hypothesis) and the expectation is the same as the chi-square statistic is E [B 2 ], then the entropy source checker 220 may determine The expected value of E [B 1 ] = E [B 3 ] =
Figure 112017108641350-pat00001
to be. Here, N means the actual number of occurrences of B 1 and B 3 (i.e., the case where the chi-square statistic is larger or smaller than the expected value). At this time, the entropy source checking unit 220 may calculate a Chi-square statistic through the following equation. Here, O [B i ] corresponds to the actual measurement value.

[수학식][Mathematical Expression]

Figure 112017108641350-pat00002
Figure 112017108641350-pat00002

예를 들어, 엔트로피 소스 검정부(220)는 기댓값 E[B2]이 고정되는 경우, 다른 2개의 기댓값 {E[B1], E[B3]}이 결정되기 때문에 카이-제곱 검정의 자유도는 1이 된다.For example, when the expected value E [B 2 ] is fixed, the entropy source checking unit 220 determines the degree of freedom of the chi-square test because the other two expectation values E [B 1 ], E [B 3 ] Is 1.

일 실시예에서, 엔트로피 소스 검정부(220)는 계산된 랜덤 수열의 카이-제곱 통계량이 임계값(Critical Value) 보다 작은 경우, 랜덤 수열이 독립으로 판정되어 랜덤 수열에 대한 IID 가설을 검정 성공(IID로 판정)으로 판정할 수 있다(도 4에서 410). 여기에서, 임계값은 설계자에 의해 설정될 수 있는 값을 포함할 수 있다. 다른 일 실시예에서, 엔트로피 소스 검정부(220)는 계산된 랜덤 수열의 카이-제곱 통계량이 임계값 보다 큰 경우, 랜덤 수열이 종속으로 판정되어 랜덤 수열에 대한 IID 가설을 검정 실패(Non-IID로 판정)로 판정할 수 있다(도 4에서 420). 이때, α는 유의수준(Significance Level)을 의미한다.In one embodiment, if the chi-square statistic of the computed random sequence is less than a critical value, the entropy source determiner 220 may determine that the random sequence is independent and the IID hypothesis for random sequences IID)) (410 in FIG. 4). Here, the threshold value may include a value that can be set by the designer. In another embodiment, if the chi-square statistic of the computed random sequence is greater than the threshold value, the entropy source determiner 220 determines that the random sequence is dependent and the IID hypothesis for the random sequence is a non-IID ) (420 in Fig. 4). In this case, α means Significance Level.

엔트로피 소스 검정부(220)는 계산된 카이-제곱 통계량이 3개의 그룹들로 오차 범위 내에서 균등하게 분배되지 않은 경우에는 랜덤 수열의 IID 가설을 검정 실패로 판정할 수 있다.The entropy source checking unit 220 can determine that the IID hypothesis of the random sequence is failed to be tested if the calculated chi-square statistic is not evenly distributed within the error range within the three groups.

경량 난수 헬쓰 테스트 장치(120)는 난수 출력 전에 온-더-플라이(On-the-Fly) 방식으로 엔트로피 소스(110)를 검정할 수 있다. 여기에서, 온-더-플라이 방식은 난수 발생기가 동작하는 과정에서 실시간으로 테스트를 수행하는 것을 포함한다. 또한, 경량 난수 헬쓰 테스트 장치(120)는 난수 발생기의 내부에서 헬쓰 테스트(Health Test) 방식으로 난수 발생기의 이상유무를 확인할 수 있다.The lightweight random number health test apparatus 120 may test the entropy source 110 on an on-the-fly basis prior to random number output. Here, the on-the-fly method includes performing a real-time test in the course of operation of the random number generator. In addition, the lightweight random number fitness test apparatus 120 can check the presence or absence of a random number generator in the random number generator by a health test method.

경량 난수 헬쓰 테스트 장치(120)는 카이-제곱 통계량을 활용하여 분포를 알지 못하는 랜덤 수열의 독립성과 동질성을 검정할 수 있다. 보다 구체적으로, 종래 엔트로피 소스의 통계적 특성을 확인하는 방법인 NIST SP 800-90B의 테스트는 100만 샘플 이상을 요구하고 엔트로피 소스의 분포를 확인하기 위하여 입력 데이터를 10,000번 셔플링하는 과정을 수행하지만, 본 발명의 경량 난수 헬쓰 테스트 장치(120)는 종래 방법인 NIST SP 800-90B의 테스트 보다 적은 표본 수열(예를 들어, 2만 데이터 샘플 또는 10만 데이터 샘플)와 적은 셔플링 횟수로 랜덤 수열의 독립성과 동질성(IID)을 판정할 수 있다.The lightweight random number health test apparatus 120 can test the independence and homogeneity of a random sequence that does not know the distribution using a chi-square statistic. More specifically, the test of the NIST SP 800-90B, which is a method of confirming the statistical characteristics of the conventional entropy source, requires more than one million samples and performs a process of shuffling the input data 10,000 times in order to check the distribution of the entropy source , The lightweight random number health test apparatus 120 of the present invention is capable of generating a random number sequence (for example, 20,000 data samples or 100,000 data samples) and a random number sequence (IID) < / RTI >

제어부(230)는 경량 난수 헬쓰 테스트 장치(120)의 전체적인 동작을 제어할 수 있고, 엔트로피 입력부(210) 및 엔트로피 소스 검정부(220) 간의 제어 흐름 또는 데이터 흐름을 제어할 수 있다.The control unit 230 can control the overall operation of the lightweight random number health testing apparatus 120 and can control the control flow or the data flow between the entropy input unit 210 and the entropy source verification unit 220.

도 3은 경량 IID를 검정할 수 있는 경량 IID 검정 알고리즘을 나타내는 도면이다.3 is a diagram illustrating a lightweight IID verification algorithm capable of verifying a lightweight IID.

도 3을 참조하면, 경량 난수 헬쓰 테스트 장치(120)는 가설 검정 원리를 이용한다. 경량 난수 헬쓰 테스트 장치(120)는 '랜덤 수열은 IID' 라는 랜덤 수열의 IID 가설을 검정하기 위하여 랜덤 수열의 카이-제곱 통계량을 이용한다. 여기에서, '랜덤 수열은 IID'라는 IID 가설은 귀무 가설(H0)에 해당한다.Referring to FIG. 3, the lightweight random number health test apparatus 120 uses a hypothesis testing principle. The lightweight random number health test apparatus 120 uses a chi-square statistic of random sequence to test the IID hypothesis of a random sequence called " random sequence is IID ". Here, the IID hypothesis that the random sequence is IID corresponds to the null hypothesis (H 0 ).

경량 난수 헬쓰 테스트 장치(120)는 도 3에 나타난 알고리즘을 이용하여 랜덤 수열의 독립성과 동질성(IID)을 검정할 수 있다. 보다 구체적으로, 경량 난수 헬쓰 테스트 장치(120)는 카이-제곱 통계량을 계산하여 분포를 알지 못하는 랜덤 수열의 독립성과 동질성을 검정할 수 있다.The lightweight random number health test apparatus 120 can test the independence and homogeneity (IID) of random sequences using the algorithm shown in FIG. More specifically, the lightweight random number health testing apparatus 120 may calculate a chi-square statistic to test the independence and homogeneity of the random sequences that do not know the distribution.

이하, 도 3의 경량 IID 알고리즘으로 랜덤 수열의 IID를 검정하는 과정을 설명한다.Hereinafter, a procedure for testing the IID of the random sequence with the lightweight IID algorithm of FIG. 3 will be described.

엔트로피 소스 검정부(220)는 엔트로피 입력부(210)를 통해 입력 받은 엔트로피를 기초로 표본 수열(S)을 생성할 수 있다(단계 S310). 보다 구체적으로, 엔트로피 소스 검정부(220)는 엔트로피 입력부(210)는 {s1, ..., sL}을 포함하는 표본 수열(S)를 생성할 수 있다.The entropy source checking unit 220 may generate the sample sequence S based on the entropy input through the entropy input unit 210 (step S310). More specifically, the entropy source checking unit 220 can generate the sample sequence S including the entropy input unit 210 {s 1 , ..., s L }.

엔트로피 소스 검정부(220)는 3개의 그룹들을 0의 값으로 초기화한다. 엔트로피 소스 검정부(220)는 표본 수열(S)에 대한 i번째 카이-제곱 통계량을 계산할 수 있고, 계산된 표본 수열(S)에 대한 i번째 카이-제곱 통계량을 ti (0)에 저장할 수 있다(단계 S320).The entropy source checking unit 220 initializes the three groups to a value of zero. The entropy source checker 220 can calculate the i th chi-square statistic for the sample sequence S and store the i th chi-square statistic for the calculated sample sequence S in t i (0) (Step S320).

엔트로피 소스 검정부(220)는 셔플 알고리즘으로 표본 수열(S)를 치환할 수 있다(단계 S330). 이때, 경량 IID 검정 알고리즘에서 j는 셔플 알고리즘을 실행한 횟수를 의미하고, j번 치환된 표본 수열(S)을 S(j)라고 정의할 수 있다.The entropy source checking unit 220 may replace the sample sequence S with the shuffle algorithm (step S330). In this case, in the lightweight IID verification algorithm, j means the number of times the shuffle algorithm is executed, and the sample sequence (S) substituted by j times can be defined as S (j) .

엔트로피 소스 검정부(220)는 j번 치환된 표본 수열 S(j)에서 i번째 카이-제곱 통계량을 계산할 수 있고, 계산된 j번 치환된 표본 수열 S(j)에서 i번째 카이-제곱 통계량을 ti (j)에 저장할 수 있다(단계 S340). 다음으로 엔트로피 소스 검정부(220)는 i번째 카이-제곱 통계량에 대해 j번 치환된 표본 수열 S(j)의 카이-제곱 통계량 (ti (j)), j-1번 치환된 표본 수열 S(j-1)의 카이-제곱 통계량 ti (j-1)의 대소 비교를 통해 3개의 그룹들의 값을 1씩 증가시킬 수 있다.Entropy source black portion 220 is the i-th chi in the sample sequence S (j) substituted j times - can calculate the square statistic, the i-th chi in the time calculated j substituted sample sequence S (j) - the square statistic t i (j) (step S340). Next, the entropy source check unit 220 calculates a chi-square statistic t i (j) of the sample sequence S (j) substituted j times for the i-th chi-square statistic, a sample sequence S Kai of (j-1) - through the case of the comparative square statistic t i (j-1) can increase the value of the three groups by one.

엔트로피 소스 검정부(220)는 랜덤 수열이 이상적인 경우에는 Ni,Left와 Ni,right는 같으므로, 각 경우가 발생할 기댓값 Ei는 경량 IID 검정 알고리즘의 수학식으로 계산할 수 있다(단계 S350). 또한, 엔트로피 소스 검정부(220)는 N이 큰 경우 극한 정리에 의해 카이-제곱 통계량(Vi)을 계산할 수 있다.The entropy source checking unit 220 can calculate the expectation value E i to be generated by the lightweight IID verification algorithm (Step S350) because N i, Left and N i, right are the same when the random sequence is ideal (Step S350) . In addition, the entropy source checking unit 220 can calculate the chi-square statistic V i by the theorem when N is large.

이때, 엔트로피 소스 검정부(220)는 카이-제곱 통계량(Vi)이 Vi >

Figure 112017108641350-pat00003
이면 귀무 가설(H0)를 기각(검정 실패)할 수 있다(단계 S360). 즉, 엔트로피 소스 검정부(220)는 해당 랜덤 수열이 IID(독립성과 동질성)이 아니라고 판정할 수 있다.At this time, the entropy source black unit 220 chi-squared statistic (Vi) is V i>
Figure 112017108641350-pat00003
, The null hypothesis H 0 may be rejected (test failure) (step S360). That is, the entropy source checking unit 220 can determine that the random sequence is not IID (independence and homogeneity).

경량 난수 헬쓰 테스트 장치(120)는 기존의 IID 테스트(100만 샘플) 보다 적은 샘플 데이터(예를 들어, 2만 샘플 또는 10만 샘플)를 이용하여 엔트로피 소스의 독립성과 동질성을 판단할 수 있다. 특히, 본 발명의 경량 난수 헬쓰 테스트 장치(120)는 테스트에 필요한 테스트 입력 데이터를 낮추어 엔트로피 소스의 수집에 제약이 있는 경량 환경에서 난수열의 안전성 평가에 기여할 수 있다.The lightweight random number health testing device 120 can determine the independence and homogeneity of the entropy source using less sample data (e.g., 20,000 samples or 100,000 samples) than the conventional IID test (1 million samples). In particular, the lightweight random number health test apparatus 120 of the present invention can contribute to the safety evaluation of a random number sequence in a lightweight environment where collection of entropy sources is restricted by lowering the test input data required for the test.

또한, 경량 난수 헬쓰 테스트 장치(120)는 랜덤 수열을 생성하기 위하여 표본 수열을 셔플링을 수행하는데, 셔플링 횟수를 기존 10,000번에서 N번으로 바꾸어도 유사한 출력 결과를 획득할 수 있기 때문에 진난수발생기(True Random Number Generator, TRNG)에서 생성된 난수의 품질을 실시간으로 확인할 수 있는 온-더-플라이 테스트(On-the-Fly Test)로도 활용할 수 있다.In addition, the lightweight random number fitness test apparatus 120 performs shuffling of the sample sequence to generate a random sequence. Since a similar output result can be obtained even if the number of shuffling is changed from 10,000 to N, On-the-fly test that can check the quality of the random number generated in the True Random Number Generator (TRNG) in real time.

상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 통상의 기술자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 출원을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as set forth in the following claims And changes may be made without departing from the spirit and scope of the invention.

10: 경량 난수 헬쓰 테스트 시스템
110: 엔트로피 소스 120: 경량 난수 헬쓰 테스트 장치
210: 엔트로피 입력부 220: 엔트로피 소스 검정부
230: 제어부
10: Lightweight random number health test system
110: Entropy source 120: Lightweight random number
210: Entropy input unit 220: Entropy source verification unit
230:

Claims (12)

난수 출력 전에 온-더-플라이(on-the-fly) 방식으로 검정할 엔트로피 소스로부터 엔트로피를 입력받는 엔트로피 입력부; 및
상기 입력받은 엔트로피에 관하여 비모수적 순열 검정을 통한 경량 IID(Independent and Identically Distributed) 테스트를 수행하여 상기 엔트로피 소스를 검정하는 엔트로피 소스 검정부를 포함하는 경량 난수 헬쓰 테스트 장치.
An entropy input section for receiving entropy from an entropy source to be verified on-the-fly before the random number output; And
And an entropy source test unit for testing the entropy source by performing a lightweight IID (Independent and Identically Distributed) test through a non-parametric permutation test on the input entropy.
제1항에 있어서, 상기 엔트로피 소스 검정부는
상기 비모수적 순열 검정의 과정에서 상기 입력받은 엔트로피를 기초로 랜덤 수열을 생성하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 장치.
The apparatus of claim 1, wherein the entropy source checking unit
Wherein the random number sequence is generated based on the input entropy during the non-parametric permutation test.
제2항에 있어서, 상기 엔트로피 소스 검정부는
상기 랜덤 수열의 생성 전에 상기 입력받은 엔트로피를 기초로 표본 수열을 생성하고 상기 생성된 표본 수열을 셔플링하여 상기 랜덤 수열을 생성하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 장치.
3. The apparatus of claim 2, wherein the entropy source checking unit
Wherein the random number generating unit generates the random number sequence by generating a random number sequence based on the input entropy before generating the random number sequence, and generating the random number sequence by shuffling the random number sequence.
제3항에 있어서, 상기 엔트로피 소스 검정부는
셔플 알고리즘을 통해 상기 셔플링을 수행하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 장치.
4. The apparatus of claim 3, wherein the entropy source checking unit
And performs the shuffling through a shuffle algorithm.
제2항에 있어서, 상기 엔트로피 소스 검정부는
상기 랜덤 수열의 IID 가설을 검정하기 위해 상기 랜덤 수열의 카이제곱 통계량을 계산하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 장치.
3. The apparatus of claim 2, wherein the entropy source checking unit
And calculates a chi-square statistic of the random sequence to test the IID hypothesis of the random sequence.
제5항에 있어서, 상기 엔트로피 소스 검정부는
상기 계산된 카이제곱 통계량을 특정 기준과 대소 비교하여 상대적으로 큰 그룹, 동일 그룹 및 상대적으로 작은 그룹으로 구성된 3 개의 그룹들로 분류하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 장치.
6. The apparatus of claim 5, wherein the entropy source checking unit
Comparing the calculated chi-square statistic with a specific criterion to classify the chi-square statistic into three groups of a relatively large group, a same group, and a relatively small group.
제6항에 있어서, 상기 엔트로피 소스 검정부는
상기 계산된 카이제곱 통계량이 상기 3개의 그룹들로 오차 범위 내에서 균등하게 분배되지 않은 경우에는 상기 랜덤 수열의 IID 가설을 검정 실패로 판정하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 장치.
7. The apparatus of claim 6, wherein the entropy source checking unit
And if the calculated chi-square statistic is not evenly distributed within the error range to the three groups, it is determined that the IID hypothesis of the random sequence is negative.
삭제delete 경량 난수 헬쓰 테스트 장치에서 수행되는 경량 난수 헬쓰 테스트 방법에 있어서,
(a) 난수 출력 전에 온-더-플라이(on-the-fly) 방식으로 검정할 엔트로피 소스로부터 엔트로피를 입력받는 단계; 및
(b) 상기 입력받은 엔트로피에 관하여 비모수적 순열 검정을 통한 경량 IID(Independent and Identically Distributed) 테스트를 수행하여 상기 엔트로피 소스를 검정하는 단계를 포함하는 경량 난수 헬쓰 테스트 방법.
A light randomized random number test method in a lightweight random number,
(a) receiving entropy from an entropy source to be verified on-the-fly before a random number output; And
(b) performing a lightweight IID (Independent and Identically Distributed) test through a non-parametric permutation test on the input entropy to test the entropy source.
제9항에 있어서, 상기 (b) 단계는
상기 비모수적 순열 검정의 과정에서 상기 입력받은 엔트로피를 기초로 랜덤 수열을 생성하는 단계를 포함하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 방법.
10. The method of claim 9, wherein step (b)
And generating a random sequence based on the input entropy in the course of the non-parametric permutation test.
제10항에 있어서, 상기 (b) 단계는
상기 랜덤 수열의 생성 전에 상기 입력받은 엔트로피를 기초로 표본 수열을 생성하고 상기 생성된 표본 수열을 셔플링하여 상기 랜덤 수열을 생성하는 단계를 포함하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 방법.
11. The method of claim 10, wherein step (b)
Generating a random number sequence by generating a random number sequence based on the input entropy before generating the random number sequence, and generating the random number sequence by shuffling the random number sequence.
제10항에 있어서, 상기 (b) 단계는
상기 랜덤 수열의 IID 가설을 검정하기 위해 상기 랜덤 수열의 카이제곱 통계량을 계산하는 단계를 포함하는 것을 특징으로 하는 경량 난수 헬쓰 테스트 방법.
11. The method of claim 10, wherein step (b)
And calculating a chi-square statistic of the random sequence to test an IID hypothesis of the random sequence.
KR1020170144946A 2017-11-01 2017-11-01 Light-weight random number health test apparatus KR101981623B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170144946A KR101981623B1 (en) 2017-11-01 2017-11-01 Light-weight random number health test apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170144946A KR101981623B1 (en) 2017-11-01 2017-11-01 Light-weight random number health test apparatus

Publications (2)

Publication Number Publication Date
KR20190049283A KR20190049283A (en) 2019-05-09
KR101981623B1 true KR101981623B1 (en) 2019-05-23

Family

ID=66545762

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170144946A KR101981623B1 (en) 2017-11-01 2017-11-01 Light-weight random number health test apparatus

Country Status (1)

Country Link
KR (1) KR101981623B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005310028A (en) * 2004-04-26 2005-11-04 Toppan Printing Co Ltd Device, method, program for issuing password, and recording medium with program recorded
JP2006318091A (en) 2005-05-11 2006-11-24 Canon Inc Random number generation device
KR101646689B1 (en) * 2015-01-29 2016-08-08 국민대학교산학협력단 Apparatus and method for estimating cumulative entropy using relative independency
JP6176076B2 (en) 2013-11-22 2017-08-09 富士通株式会社 Physical random number generation device, physical random number generation method, and physical random number generation system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100637704B1 (en) 2004-12-21 2006-10-26 삼성에스디에스 주식회사 Method for testing randomness in the system having limited computing resources
KR20140111844A (en) 2013-03-12 2014-09-22 삼성전자주식회사 Random number generator and random number health test method thereof
KR101583471B1 (en) 2014-12-31 2016-01-08 고려대학교 산학협력단 Apparatus and method for providing random numbers using statistical test of randomness

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005310028A (en) * 2004-04-26 2005-11-04 Toppan Printing Co Ltd Device, method, program for issuing password, and recording medium with program recorded
JP2006318091A (en) 2005-05-11 2006-11-24 Canon Inc Random number generation device
JP6176076B2 (en) 2013-11-22 2017-08-09 富士通株式会社 Physical random number generation device, physical random number generation method, and physical random number generation system
KR101646689B1 (en) * 2015-01-29 2016-08-08 국민대학교산학협력단 Apparatus and method for estimating cumulative entropy using relative independency

Also Published As

Publication number Publication date
KR20190049283A (en) 2019-05-09

Similar Documents

Publication Publication Date Title
Frauchiger et al. True randomness from realistic quantum devices
Ballard et al. The Practical Subtleties of Biometric Key Generation.
KR102198499B1 (en) Apparatus and method for processing digital value
US20150318999A1 (en) Derivation of a Device-Specific Value
WO2020226715A2 (en) Generation of certified random numbers using an untrusted quantum computer
US20160012228A1 (en) Identification of backdoors and backdoor triggers
Hurley-Smith et al. Quantum leap and crash: Searching and finding bias in quantum random number generators
Agaskar et al. Randomized Kaczmarz algorithms: Exact MSE analysis and optimal sampling probabilities
Cortez et al. Intelligent voltage ramp-up time adaptation for temperature noise reduction on memory-based PUF systems
JP4220398B2 (en) Hadamard transform online irregularity test
Immler et al. Take a moment and have some t: Hypothesis testing on raw PUF data
CN115686437A (en) Random number generation method and device, computer equipment and storage medium
Liu et al. Methods for estimating the convergence of inter-chip min-entropy of SRAM PUFs
Ngo et al. Side-channel analysis of the random number generator in STM32 MCUs
US10372528B1 (en) Random values from data errors
US20160110165A1 (en) Quality detecting method, random number generator, and electronic device
CN106708470B (en) Quantum random number generator and quantum random number generation method
KR101981623B1 (en) Light-weight random number health test apparatus
US11921623B2 (en) Device and method for testing a sequence generated by a random number generator
Ballard et al. On the requirements of biometric key generators
Sýs et al. Constructing empirical tests of randomness
Wang et al. Single-Trace Side-Channel Attacks on CRYSTALS-Dilithium: Myth or Reality?
Gava et al. Assessment of Radiation-Induced Soft Errors on Lightweight Cryptography Algorithms Running on a Resource-Constrained Device
Legay et al. Estimating rewards & rare events in nondeterministic systems
WO2022041866A1 (en) Method, apparatus and device for determining causal relationship, and readable storage medium

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