KR20220153184A - Method of Forming Deterministic Random Bit using Irrational Number - Google Patents

Method of Forming Deterministic Random Bit using Irrational Number Download PDF

Info

Publication number
KR20220153184A
KR20220153184A KR1020210060400A KR20210060400A KR20220153184A KR 20220153184 A KR20220153184 A KR 20220153184A KR 1020210060400 A KR1020210060400 A KR 1020210060400A KR 20210060400 A KR20210060400 A KR 20210060400A KR 20220153184 A KR20220153184 A KR 20220153184A
Authority
KR
South Korea
Prior art keywords
random number
function
generating
transcendental
generated
Prior art date
Application number
KR1020210060400A
Other languages
Korean (ko)
Other versions
KR102535686B1 (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 KR1020210060400A priority Critical patent/KR102535686B1/en
Publication of KR20220153184A publication Critical patent/KR20220153184A/en
Application granted granted Critical
Publication of KR102535686B1 publication Critical patent/KR102535686B1/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
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • 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/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • 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/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Nonlinear Science (AREA)
  • Complex Calculations (AREA)

Abstract

The present invention relates to a random number generation method that generates a random number used for an encryption key for communication, wherein the random number generation method of the invention comprises: a step of generating a transcendental function having a period of an irrational number; a step of setting an initial term and an amount of change, for which are rational numbers, as a domain of the generated transcendental function; a step of calculating the ranges of the transcendental function in the set domain and selecting a random number material in the calculated range; and a step of generating the random number by combining the determined random number material.

Description

무리수를 이용한 결정론적 난수 생성 방법{Method of Forming Deterministic Random Bit using Irrational Number}Deterministic random number generation method using irrational numbers {Method of Forming Deterministic Random Bit using Irrational Number}

이 발명은 난수 생성 방법에 관한 것으로서, 구체적으로는 통신의 암호화에서 암호키 생성에 필요한 Entropy로 사용하는 난수를 생성하는 방법에 관한 것이다.This invention relates to a method for generating a random number, and more specifically, to a method for generating a random number used as entropy necessary for generating an encryption key in encryption of communication.

통신을 통하여 전달되는 정보의 기밀성, 무결성, 부인 방지 또는 인증을 위해서는 통신으로 전하고자 하는 정보를 암호화하는 기술이 이용된다.For confidentiality, integrity, non-repudiation or authentication of information transmitted through communication, a technology for encrypting information to be transmitted through communication is used.

암호화에 사용하는 공개키나 비밀키와 같은 암호키는 쉽게 추론할 수 없는 난수가 필요하며, 통신을 수행하는 정보 처리 기기에서는 암호화 모듈이나 프로세서에서 난수를 생성하고 생성된 난수를 통하여 암호키를 작성하고, 작성된 암호키로 송수신하는 정보를 암호화한다.Encryption keys such as public and private keys used for encryption require random numbers that cannot be easily deduced. , the information to be transmitted and received is encrypted with the created encryption key.

이와 같은 암호키의 생성에 사용되는 난수를 생성하는 방법의 하나로서, 대한민국 특허공보 제10-1194403호(문헌 1)에는 '암호학적 안전성이 보장된 의사난수 생성 장치 및 그 방법'이라는 명칭의 발명을 개시한다.As one of the methods for generating random numbers used to generate such cryptographic keys, Korean Patent Publication No. 10-1194403 (Document 1) discloses an invention titled 'Pseudorandom number generator with cryptographic safety guaranteed and its method'. Initiate.

문헌 1의 발명에 따른 장치와 방법에서는 암호학적으로 안전성이 보장되지 아니한 난수 생성기에서 출력한 두 난수를 각각 평문 및 키로 하는 대칭키 암호화를 수행하여 그 결과를 난수풀 값으로 저장한 후에 난수 생성기에서 출력한 난수와 난수풀 값의 배타적 논리합 연산의 수행 결과를 의사난수로서 출력한다. 이를 통해, 암호학적 안전성이 보장되도록 한다.In the apparatus and method according to the invention of Document 1, symmetric key encryption is performed in which two random numbers output from a random number generator that are not cryptographically secure are used as a plaintext and a key, respectively, and the result is stored as a random number pool value, and then the random number generator The result of the exclusive OR operation between the output random number and the random number pool value is output as a pseudorandom number. Through this, cryptographic safety is ensured.

문헌 1: 대한민국 특허공보 제10-1194403호Document 1: Korean Patent Publication No. 10-1194403

이 발명은 통신의 암호화에 사용하는 암호키를 생성하기 위한 난수를 생성하는 방법을 제공하려는 것이다.The present invention is intended to provide a method for generating random numbers for generating an encryption key used for encryption of communications.

구체적으로, 이 발명은 유추가 어려운 난수를 생성하면서도 복잡하지 않은 연산을 통하여 난수를 생성할 수 있어서 암호키를 생성하는 모듈에 가하는 부하가 적은 난수 생성 방법을 제공하려는 것이다.Specifically, the present invention is intended to provide a method for generating random numbers that is difficult to analogize and can generate random numbers through uncomplicated operations, thereby reducing the load on a module for generating cryptographic keys.

전술한 이 발명이 해결하고자 하는 과제는 통신용 암호키에 사용하는 난수를 생성하는 난수 생성 방법에 관한 이 발명에 의해 달성된다.The problem to be solved by the present invention described above is achieved by the present invention related to a random number generation method for generating a random number used for an encryption key for communication.

이 발명의 난수 생성 방법은, The random number generation method of this invention,

통신용 암호키에 사용하는 난수를 생성하는 난수 생성 방법으로서, A random number generation method for generating a random number used for an encryption key for communication,

무리수의 주기를 갖는 초월 함수를 생성하는 단계;generating a transcendental function having an irrational number of periods;

생성된 초월 함수의 정의역으로서 유리수인 초기항과 변화량을 설정하는 단계;setting an initial term that is a rational number and a change amount as a domain of the generated transcendental function;

설정된 정의역에서 초월 함수의 치역들을 산출하고 산출된 치역에서 난수 재료를 선택하는 단계; 및 Calculating ranges of the transcendental function in the set domain and selecting a random number material in the calculated range; and

결정된 난수 재료를 결합하여 난수를 생성하는 단계Generating a random number by combining the determined random number materials

를 포함하는 것이다.is to include

이 발명은 무리수와 유리수의 곱은 무리수임을 이용한다. 즉 무리수는 어떠한 유리수로 나누어도 유리수가 되지 않는다. 이 발명에서는 무리수를 주기로 하는 초월 함수에서 유리수로 결정된 정의역에 해당하는 치역을 난수의 재료로 선택한다. 이렇게 선택된 치역의 값은 중복되지 않는다. This invention uses that the product of an irrational number and a rational number is an irrational number. That is, an irrational number is not a rational number when divided by any rational number. In this invention, a range corresponding to a domain determined by a rational number in a transcendental function having a period of an irrational number is selected as a material of a random number. The values of the range selected in this way do not overlap.

따라서 난수의 재료가 되는 치역이 예측이 어려운 임의의 수로서 일대일 함수의 특성에도 불구하고 높은 엔트로피를 갖게 된다.Therefore, the material range of random numbers is an arbitrary number that is difficult to predict, and has high entropy despite the characteristics of a one-to-one function.

이 발명의 부가적 특징으로서, 이 발명의 난수 생성 방법에서, 초월 함수는 삼각함수, 로그 함수, 지수 함수, 쌍곡선 함수, 타원 함수 및 그 역함수들 중의 적어도 어느 하나를 포함하는 합성 함수로 생성할 수 있다. As an additional feature of the present invention, in the random number generation method of the present invention, the transcendental function can be generated as a composite function including at least one of a trigonometric function, a log function, an exponential function, a hyperbolic function, an elliptic function, and inverse functions thereof. have.

또한, 이 발명의 난수 생성 방법에서,In addition, in the random number generation method of this invention,

난수 재료를 선택하는 단계에서는, 산출된 치역에서 미리 설정한 일부 단위의 수를 추출하여 정수화로 변환하고, 변환된 정수를 2진수로 변환하여 난수 재료를 생성하고, 난수 생성 단계에서는, 난수 재료 선택 단계에서 생성된 난수 재료를 결합하여 미리 정해진 비트 수의 난수를 생성할 수 있다.In the step of selecting a random number material, the number of predetermined units is extracted from the calculated range and converted into an integer, the converted integer is converted into a binary number to generate a random number material, and in the step of generating a random number, the random number material is selected. A random number having a predetermined number of bits may be generated by combining the random number materials generated in the step.

도 1은 이 발명의 하나의 실시예에 따른 난수 생성 방법의 플로우차트이다.
도 2는 이 발명의 하나의 실시예에 따른 난수 생성 방법에서 사용하는 초월함수의 그래프이다.
도 3은 이 발명의 하나의 실시예에 따른 난수 생성 방법에서 사용하는 초월함수로 이루어진 합성함수의 그래프이다.
도 4는 IEEE 754의 부동소수점 구성도이다.
1 is a flowchart of a random number generation method according to one embodiment of the present invention.
2 is a graph of a transcendental function used in a random number generation method according to an embodiment of the present invention.
3 is a graph of a composition function composed of transcendental functions used in a random number generation method according to an embodiment of the present invention.
4 is a diagram of the floating point configuration of IEEE 754.

이하, 이 발명을 실시하기 위한 구체적인 내용으로서 이 발명의 실시예에 따른 난수 생성 방법을 도면을 참조하여 설명한다.Hereinafter, a random number generation method according to an embodiment of the present invention will be described with reference to the drawings as specific details for implementing the present invention.

이 실시예의 난수 생성 방법에서는 무리수의 주기를 갖는 함수를 포함하는 초월 함수를 생성하고, 생성된 초월 함수의 정의역에서 초기항과 변화량를 설정하며, 설정된 초월 함수의 치역들을 산출하고 산출된 치역들 중에서 일부를 난수 재료로 결정한다.In the random number generation method of this embodiment, a transcendental function including a function having an irrational period is generated, an initial term and an amount of change are set in the domain of the generated transcendental function, ranges of the set transcendental function are calculated, and some of the calculated ranges is determined as a random number material.

초월함수로서, 수학식 1과 같이 변수를 라디안값으로 하는 사인 함수를 선택하고, 변수로서 정수 1의 간격으로 치역을 산출한다.As the transcendental function, a sine function having a variable as a radian value is selected as shown in Equation 1, and a range is calculated at intervals of an integer 1 as a variable.

[수학식 1][Equation 1]

f(x) = sin(x)f(x) = sin(x)

이와 같은 방법에 의하여 산출되는 치역의 값은 변수 1 ~ 8에 대하여 IEEE 754 부동소수점 방식을 사용하면 표 1과 같이 산출된다.The value of the range calculated by this method is calculated as shown in Table 1 when the IEEE 754 floating point method is used for variables 1 to 8.

변수variable 치역range 실수 값real value 16진수(32bit) 변환값Hexadecimal (32bit) conversion value sin (1)sin(1) 0.84147098480789990.8414709848078999 8F090D0D8F090D0D sin (2)sin(2) 0.90929742682568630.9092974268256863 EAD1B46FEAD1B46F sin (3)sin(3) 0.14112000805986920.1411200080598692 6DB6D5A16DB6D5A1 sin (4)sin(4) -0.7568024953079303-0.7568024953079303 DDDC1EC1DDDC1EC1 sin (5)sin(5) -0.9589242746631440-0.9589242746631440 F5E09965F5E09965 sin (6)sin(6) -0.2794154981989296-0.2794154981989296 8AB0A3048AB0A304 sin (7)sin(7) 0.65698659871878930.6569865987187893 C26D0A0AC26D0A0A sin (8)sin(8) 0.98935824662338770.9893582466233877 A028CFB0A028CFB0

16진수 1자리는 이진수 4자리와 같으며, 32자리 (32bit)의 이진수를 8자리 16진수로 변환할 때, 상위자리의 빈자리는 0으로 채운다. 예를 들어 십진수 256을 이진수로 표현할 때는 00010000(2)과 16진수 한자리와 같은 표현을 맞추기 위하여 4자리의 수로 구성하되 상위 빈자리는 0으로 채우며, 십진수 15를 16진수 8자리로 표현할 때는 0000000F(16)와 같이 상위 빈자리는 0으로 채운다.1 hexadecimal digit equals 4 binary digits, and when converting a 32-bit binary number to an 8-digit hexadecimal number, the upper digit is filled with 0. For example, when the decimal number 256 is expressed in binary, it is composed of 4 digits to match the expression such as 00010000 (2) and one hexadecimal digit, but the upper empty digit is filled with 0. ) , the upper vacancy is filled with 0.

표 1에서와 같은 16진수화 하기 위한 방법으로서, 첫번째로는, IEEE 754에 정의된 부동소수점 방식을 이용할 수 있고, 두번째로는, 소수점 이하 특정 자리수까지를 정수로 변환하는 방법을 사용할 수 있다.As a method for hexadecimalization as in Table 1, first, a floating point method defined in IEEE 754 can be used, and second, a method of converting up to a specific number of decimal places into an integer can be used.

첫번째, IEEE 754에 정의된 부동소수점 방식은 IEEE에서 개발한 컴퓨터에서 부동소수점을 표현하는 가장 널리 사용되는 표준방식으로 32bit, 64bit, 등 다양한 크기의 정밀도를 제공하고 있으나, 이 실시예에서는 32bit 단정밀도 (single - precision) 방식을 사용한다.First, the floating-point method defined in IEEE 754 is the most widely used standard method for expressing floating-point numbers in computers developed by IEEE, and provides various sizes of precision such as 32bit and 64bit. (single-precision) method is used.

예를 들어, -118.625(십진법)을 부동소수점 형식의 이진수로 표현하는 경우, 부호부는 1이되고, 절대값을 이진법으로 나타내면, 1110110.101(2) 이 된다. 소수점을 제일 왼쪽으로 이동시켜, 다음과 같이 1만 남게 만든다. 즉, 1110110.101(2) = 1.110110101(2) x 26으로 만든다. 이것을 부동소수점이라고 한다. For example, when -118.625 (decimal system) is expressed as a binary number in a floating point format, the sign part becomes 1, and when the absolute value is expressed as a binary number, it becomes 1110110.101 (2) . Move the decimal point to the far left, leaving only 1 as follows: That is, make 1110110.101 (2) = 1.110110101 (2) x 2 6 . This is called floating point.

가수부는 소수점의 오른쪽 부분으로, 부족한 비트수 만큼 0으로 채워 23비트로 만든다. 결과는 11011010100000000000000 이 된다. 지수가 6이므로 IEEE 754의 Bias인 127을 더하여 6+127 = 133을 이진수 10000101(2)로 변환한다. 이 두 수를 더한 후 부호 비트를 연결하면 32bit의 이진수가 만들어지며 이를 16진수로 변환하면 다음과 같다.The mantissa is the part to the right of the decimal point, and fills in zeros as much as the number of bits lacking to make 23 bits. The result is 11011010100000000000000. Since the index is 6, add 127, which is the bias of IEEE 754, to convert 6+127 = 133 to binary number 10000101 (2) . After adding these two numbers and connecting the sign bit, a 32-bit binary number is created.

110000101110110100000000000000(2) = C2ED0000(16) 110000101110110100000000000000 (2) = C2ED0000 (16)

두번째로, 소수점 이하 특정 자리수까지를 정수로 변환하는 방법은, 소수점 이하 n 번째 자리까지를 정수로 변환하고, 소수점 이하의 수는 버림하며, 16진수로 변환시 1의 자리부터 최상이 8번째 자리까지만 사용하며, 그 이상의 수도 버림하는 것이다.Second, in the method of converting up to a certain number of decimal places to an integer, up to the nth place after the decimal point is converted to an integer, the number below the decimal point is rounded down, and when converted to hexadecimal, only from the 1st digit to the highest 8th digit use, and throw away more than that.

예를 들어 0.8414709848078999에 1010을 곱한 후 정수부를 구하면, 8414709848 이 되며 16진수로 변환 시 1F58E4858(16)의 9자리 16진수로 변환된다. 여기서 난수로 사용하기 위하여 최하위 자리부터 8자리만 선택하여, F58E4858(16)을 난수의 재료로 사용한다For example, if 0.8414709848078999 is multiplied by 10 10 and the integer part is obtained, it becomes 8414709848 . Here, to use as a random number, only 8 digits from the lowest digit are selected, and F58E4858 (16) is used as the material for the random number.

표 1에서는 IEEE754에 정의된 부동소수점 방식에 따라, 사인 함수에서 얻는 치역의 값을 순차적으로 연결하여 n-bit (n≥128)이상의 난수로 사용할 수 있다. 여기서 16진수 1자리는 4bit 로 표현이 가능하다.In Table 1, according to the floating point method defined in IEEE754, the value of the range obtained from the sine function can be sequentially connected and used as a random number of n-bit (n≥128) or more. Here, 1 hexadecimal number can be expressed with 4 bits.

8F090D0D EAD1B46F 6DB6D5A1 DDDC1EC1 F5E09965 8AB0A304 C26D0A0A A028CFB08F090D0D EAD1B46F 6DB6D5A1 DDDC1EC1 F5E09965 8AB0A304 C26D0A0A A028CFB0

두번째 소수점 이하 10번째 자리 수까지를 정수로 변환하는 방법을 사용하면 표 2와 같이 산출된다.If the method of converting up to the 10th digit after the second decimal point into an integer is used, it is calculated as shown in Table 2.

변수variable 치역range 실수 값real value 정수화purification 16진수(32bit) 변환값Hexadecimal (32bit) conversion value sin (1)sin(1) 0.84147098480789990.8414709848078999 84147098488414709848 F58E4858F58E4858 sin (2)sin(2) 0.90929742682568630.9092974268256863 90929742689092974268 F58E4858F58E4858 sin (3)sin(3) 0.14112000805986920.1411200080598692 14112000801411200080 541D3450541D3450 sin (4)sin(4) -0.7568024953079303-0.7568024953079303 -7568024953-7568024953 3CE91A873CE91A87 sin (5)sin(5) -0.9589242746631440-0.9589242746631440 -9589242746-9589242746 C46FC486C46FC486 sin (6)sin(6) -0.2794154981989296-0.2794154981989296 -2794154981-2794154981 5974941B5974941B sin (7)sin(7) 0.65698659871878930.6569865987187893 65698659876569865987 8798330387983303 sin (8)sin(8) 0.98935824662338770.9893582466233877 98935824669893582466 4DB416824DB41682

이상의 실시예에서는, 무리수를 주기로 하는 초월함수에 대하여 초기항 1, 변화량 1인 정의역에 대응하는 치역을 산출하였다. 여기서 산출된 치역은 주기성을 갖지 않는다. 또한, 다양한 무리수를 주기로서 선택하고 정의역의 초기항과 변화량의 다양한 값들에 의하여 종속되는 치역을 구할 수 있으므로, 예측 가능성이 매우 낮다.In the above embodiment, the range corresponding to the domain of the initial term 1 and the change amount 1 was calculated for the transcendental function whose period is an irrational number. The range calculated here does not have periodicity. In addition, since various irrational numbers can be selected as periods and ranges dependent on the initial term of the domain and various values of the variation can be obtained, the predictability is very low.

이 발명에 따른 초월 함수를 이용하는 알고리듬에서는 엔트로피가 높은 난수를 생성하므로 예측 가능성이 현저히 낮게 된다.Since the algorithm using the transcendental function according to the present invention generates random numbers with high entropy, the predictability is remarkably low.

초월 함수는 생성되는 난수의 엔트로피를 높이기 위하여, 초월 함수를 포함하는 합성함수를 이용할 수 있다. 합성 함수를 이용하여 암호키가 되는 난수를 생성하는 방법에 대해 도 1을 참조하여 설명한다.The transcendental function may use a synthesis function including the transcendental function in order to increase the entropy of the generated random number. A method of generating a random number serving as an encryption key using a synthesis function will be described with reference to FIG. 1 .

합성 함수로서는 복수 개의 초월 함수를 이용하고, 로그 함수, 지수 함수, 쌍곡선 함수, 타원 함수 및 그 역함수들 중의 하나 또는 그 이상을 이용하여 합성 함수를 생성한다(S1).A plurality of transcendental functions are used as the composite function, and the composite function is generated using one or more of a logarithmic function, an exponential function, a hyperbolic function, an elliptic function, and inverse functions thereof (S1).

아래의 수학식 2는 그러한 이 발명의 실시예에 따른 합성 함수의 일례이다.Equation 2 below is an example of such a composite function according to an embodiment of the present invention.

[수학식 2][Equation 2]

f(x) = cos (2 tan x) + sin (4 sin 2x) + πf(x) = cos (2 tan x) + sin (4 sin 2x) + π

이와 같은 합성 함수의 그래프는 첨부의 도 3과 같다.A graph of such a composite function is shown in FIG. 3 of the attachment.

이 합성 함수에 대하여 정의역의 초기항과 변화량을 설정한다.(S2).An initial term and a change amount of the domain are set for this composition function (S2).

예를 들어, 초기항을 1.3 변화량 1.3으로 정의 역을 설정한 후, 이에 해당하는 치역을 구한다(S3).For example, after setting the domain of the initial term to 1.3 and the change amount of 1.3, the corresponding range is obtained (S3).

이렇게 산출된 치역의 값을 32bit 16진수로 변환한다(S4). 이렇게 변환된 실수와 16진수 값을 대하여 IEEE 754 부동소수점 방식을 사용하여 표 3에 표시 하였다.The value of the range thus calculated is converted into a 32-bit hexadecimal number (S4). The converted real number and hexadecimal values are shown in Table 3 using the IEEE 754 floating point method.

정의역Jeongui station 치역range 실수mistake 16진수 (32bit) 변환Hexadecimal (32bit) conversion 1.31.3 2.311013452742.31101345274 9F0113229F011322 2.62.6 3.74345372733.7434537273 DE26BE0FDE26BE0F 3.93.9 3.204241610633.20424161063 6CF11B116CF11B11 5.25.2 4.540104069534.54010406953 0A8C457D0A8C457D 6.56.5 7.77892551217.7789255121 A641F54DA641F54D 7.87.8 7.645135390917.64513539091 5F35CD715F35CD71 9.19.1 7.058120714197.05812071419 FF1AAA34FF1AAA34 10.410.4 -1.4013897416-1.4013897416 A651F344A651F344

16진수로 변환된 값들을 연결하여 아래 난수를 생성한다 (S5)The following random number is generated by connecting the values converted to hexadecimal (S5)

9F011322 DE26BE0F 6CF11B11 0A8C457D A641F54D 5F35CD71 FF1AAA34 A651F3449F011322 DE26BE0F 6CF11B11 0A8C457D A641F54D 5F35CD71 FF1AAA34 A651F344

한편, 산출된 치역의 일부 단위를 선택한 후 이것을 16진수로 변환하여 난수의 재료로 할 수 있다. On the other hand, after selecting some units of the calculated range, they can be converted into hexadecimal numbers and used as materials for random numbers.

다만, 그와 같이 하는 경우에는 정해진 비트수의 난수를 형성하기 위해 사용하는 난수 재료의 개수가 적어지므로, 난수의 예측 불가능성이 낮아지게 된다. 따라서, 산출된 치역의 값을 최대한 추출한 후 16진수화하여 난수 재료로 결정하는 것이 유리하다.However, in this case, since the number of random number materials used to form a random number of a predetermined number of bits is reduced, the unpredictability of the random number is reduced. Therefore, it is advantageous to extract the value of the calculated range as much as possible and then hexadecimalize it to determine it as a random number material.

이와 같이, 이 발명의 실시예에서는 무리수의 주기를 갖는 초월함수를 포함하는 합성함수를 생성하고, 생성된 합성함수에 대하여 유리수의 주기와 구간을 선택하여 치역을 산출하였다.As such, in the embodiment of the present invention, a synthesis function including a transcendental function having a period of an irrational number was generated, and a range was calculated by selecting a period and interval of rational numbers for the generated synthesis function.

산출된 치역에서 16진수화하여 난수 재료를 생성하였다. 생성된 난수 재료를 16진수로 변환 그리고 결합하여 암호키에 필요한 비트수의 난수를 생성하였다.Random number material was generated by hexadecimalization in the calculated range. The generated random number materials were converted into hexadecimal numbers and combined to generate random numbers of the number of bits required for the encryption key.

이상 이 발명의 실시예에 따른 난수 생성 방법에 대해 설명하였는바, 이 발명은 이러한 실시예에 한정되지 않고 청구범위에 기재한 범위에서 다양한 변형이 구성의 부가가 가능하다.The random number generation method according to the embodiment of the present invention has been described above, but the present invention is not limited to this embodiment, and various modifications and additions of configurations are possible within the scope described in the claims.

Claims (3)

통신용 암호키에 사용하는 난수를 생성하는 난수 생성 방법으로서,
무리수의 주기를 갖는 초월 함수를 생성하는 단계;
생성된 초월 함수의 정의역으로서 유리수인 초기항과 변화량을 설정하는 단계;
설정된 정의역에서 초월 함수의 치역들을 산출하고 산출된 치역에서 난수 재료를 선택하는 단계; 및
결정된 난수 재료를 결합하여 난수를 생성하는 단계
를 포함하는 것인 난수 생성 방법.
A random number generation method for generating a random number used for an encryption key for communication,
generating a transcendental function having an irrational number of periods;
setting an initial term that is a rational number and a change amount as a domain of the generated transcendental function;
Calculating ranges of the transcendental function in the set domain and selecting a random number material in the calculated range; and
Generating a random number by combining the determined random number materials
Random number generation method comprising a.
청구항 1에 있어서,
초월 함수를 생성하는 단계에서는, 초월 함수로서 삼각 함수, 로그 함수, 지수 함수, 쌍곡선 함수, 타원 함수 및 그 역함수들 중의 적어도 어느 하나를 포함하는 합성 합수를 생성하는 것인, 난수 생성 방법.
The method of claim 1,
In the generating of the transcendental function, a synthetic function including at least one of a trigonometric function, a logarithmic function, an exponential function, a hyperbolic function, an elliptic function, and an inverse function thereof is generated as the transcendental function.
청구항 2에 있어서,
난수 재료를 선택하는 단계에서는, 산출된 치역에서 미리 설정한 일부 단위의 수를 추출하여 정수화로 변환하고, 변환된 정수를 2진수로 변환하여 난수 재료를 생성하고,
난수 생성 단계에서는, 난수 재료 선택 단계에서 생성된 난수 재료를 결합하여 미리 정해진 비트 수의 난수를 생성하는 것인, 난수 생성 방법.
The method of claim 2,
In the step of selecting a random number material, a number of predetermined units is extracted from the calculated range and converted into an integer number, and the converted integer is converted into a binary number to generate a random number material;
wherein the random number generating step generates a random number having a predetermined number of bits by combining the random number materials generated in the random number material selection step.
KR1020210060400A 2021-05-11 2021-05-11 Method of Forming Deterministic Random Bit using Irrational Number KR102535686B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210060400A KR102535686B1 (en) 2021-05-11 2021-05-11 Method of Forming Deterministic Random Bit using Irrational Number

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210060400A KR102535686B1 (en) 2021-05-11 2021-05-11 Method of Forming Deterministic Random Bit using Irrational Number

Publications (2)

Publication Number Publication Date
KR20220153184A true KR20220153184A (en) 2022-11-18
KR102535686B1 KR102535686B1 (en) 2023-05-26

Family

ID=84234645

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210060400A KR102535686B1 (en) 2021-05-11 2021-05-11 Method of Forming Deterministic Random Bit using Irrational Number

Country Status (1)

Country Link
KR (1) KR102535686B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008304793A (en) * 2007-06-08 2008-12-18 Mitsubishi Electric Engineering Co Ltd Encryption device, decryption device, and encryption/decryption system
KR101194403B1 (en) 2010-12-06 2012-10-25 삼성에스디에스 주식회사 Apparatus of generating cryptographically secure pseudo random number and method thereof
US20140112469A1 (en) * 2012-10-22 2014-04-24 John M. Layne Novel encryption processes based upon irrational numbers and devices to accomplish the same
KR101438312B1 (en) * 2013-03-20 2014-09-12 전북대학교산학협력단 Method of data encryption and encrypted data transmitter-receiver system using thereof
US20210051006A1 (en) * 2017-06-23 2021-02-18 Cipherloc Corporation Blind key generator and exchange

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008304793A (en) * 2007-06-08 2008-12-18 Mitsubishi Electric Engineering Co Ltd Encryption device, decryption device, and encryption/decryption system
KR101194403B1 (en) 2010-12-06 2012-10-25 삼성에스디에스 주식회사 Apparatus of generating cryptographically secure pseudo random number and method thereof
US20140112469A1 (en) * 2012-10-22 2014-04-24 John M. Layne Novel encryption processes based upon irrational numbers and devices to accomplish the same
KR101438312B1 (en) * 2013-03-20 2014-09-12 전북대학교산학협력단 Method of data encryption and encrypted data transmitter-receiver system using thereof
US20210051006A1 (en) * 2017-06-23 2021-02-18 Cipherloc Corporation Blind key generator and exchange

Also Published As

Publication number Publication date
KR102535686B1 (en) 2023-05-26

Similar Documents

Publication Publication Date Title
KR101246490B1 (en) A closed galois field cryptographic system
Van Tilborg An introduction to cryptology
EP0011615B1 (en) Method and device for encryption and decryption of data
CA2535741C (en) Data converter and method thereof
US8345861B2 (en) Sharing a secret using polynomial division over GF(Q)
US7907723B2 (en) Device, system and method for fast secure message encryption without key distribution
US7912213B2 (en) Device, system and method for fast secure message encryption without key distribution
KR102154164B1 (en) Method for generating a pseudorandom sequence, and method for coding or decoding a data stream
JP2000252751A (en) Method for generating spread spectrum signal, spread spectrum signal generator, method for encrypting stream and method for stream encryption communication
CN110505054B (en) Data processing method, device and equipment based on dynamic white box
RU2124814C1 (en) Method for encoding of digital data
Stefanov et al. FastPRP: Fast pseudo-random permutations for small domains
CN1241352C (en) Encryption method for information in binary code
CN1251444A (en) Efficient block encryption method
JPS61114289A (en) Method and apparatus for converting digital data sequence into coded form
CN114124359A (en) Method and device for preserving format encrypted data, electronic equipment and storage medium
KR102535686B1 (en) Method of Forming Deterministic Random Bit using Irrational Number
Sun et al. On dynamic threshold schemes
US20200287705A1 (en) Transposition Encryption Alphabet Method (TEAM)
CN115918028A (en) Device and method for performing statistical operation on homomorphic ciphertext
Mahmood et al. MATLAB Implementation of 128-key length SAFER+ Cipher System
RU2783406C1 (en) Method for gamma generation, used in stream encryption
JPWO2020095382A1 (en) Authentication encryption device, authentication decryption device, authentication encryption method, authentication decryption method, authentication encryption program and authentication decryption program
US20100046740A1 (en) Embedding a secret in a larger polynomial
JP2001308846A (en) Stream cipher

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant