KR101837589B1 - Computer-executable random-number generation method and random-number generation apparatus performing the same - Google Patents
Computer-executable random-number generation method and random-number generation apparatus performing the same Download PDFInfo
- Publication number
- KR101837589B1 KR101837589B1 KR1020160015273A KR20160015273A KR101837589B1 KR 101837589 B1 KR101837589 B1 KR 101837589B1 KR 1020160015273 A KR1020160015273 A KR 1020160015273A KR 20160015273 A KR20160015273 A KR 20160015273A KR 101837589 B1 KR101837589 B1 KR 101837589B1
- Authority
- KR
- South Korea
- Prior art keywords
- random number
- entropy
- block
- random
- number generation
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
Abstract
A computer-executable random number generation method includes: a random number generation preprocessing step of generating a random number-entropy block by providing a noise source extracted from a random matrix to an entropy pool; A random number generation step of feeding back a random number generation preprocessing step and a random number generation step of generating a random number based on another part of the random number-entropy block (hereinafter, a random number block). Accordingly, the random number generation method can generate a random number based on a part of the output data, feed back another part of the output data, minimize the data size, and generate a cryptographically secure random number.
Description
The present invention relates to a random number generation technique, and more particularly, to a random number generation method for generating a random number based on a part of output data and feeding a different part of output data to minimize a data size and generating a cryptographically secure 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 security-critical system, 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 use environment because it requires a lot of source data and requires a large amount of memory usage.
Korean Patent Laid-Open No. 10-2009-0048014 relates to a method for reducing the correlation between entropy sources and a random number generator using the method, and a reset sequence of a plurality of entropy sources is set in consideration of a correlation between a plurality of entropy sources , Sequentially resets a plurality of entropy sources based on the reset order, and generates random number data using a signal generated by the plurality of entropy sources.
Korean Patent No. 10-0893235 relates to a method and apparatus for a random number generator, which generates random numbers for use in a wireless communication device, collects the random number samples, and generates random numbers such as mean, standard deviation, and / or entropy Calculating at least one metric, adjusting the metric based on a result of the comparison such that the generated random numbers achieve a desired distribution, and comparing the metrics with a corresponding reference value to generate random numbers and feedback values A description will be given of a technique for generating the data.
One embodiment of the present invention provides a random number generation method that generates a random number based on a part of output data and feeds back a different part of output data to minimize a data size and generate a cryptographically secure random number.
An embodiment of the present invention is to provide a random number generation method that improves the security of an entropy pool by mixing a part of output data into an entropy pool in an environment where computation capability is limited.
One embodiment of the present invention provides a random number generation method for sequentially extracting a part of an entropy feedback block and a noise source, performing at least one logical operation stepwise, and inserting it into an entropy pool through a linear feedback shift register having a maximum cycle period I want to.
An embodiment of the present invention is to provide a random number generation method for updating a random matrix based on a random matrix feedback block to extract a noise source having full-entropy based on a minimum data source.
Among the embodiments, a computer-executable random number generation method includes: a random number generation preprocessing step of providing a random number-entropy block by providing a noise source extracted from a random matrix to an entropy pool; Feedback block) to the random number generation preprocessing step and a random number generation step of generating a random number based on another part of the random number-entropy block (hereinafter, a random number block).
The random number generation feedback step updates the random matrix based on a part of the feedback block (hereinafter referred to as a random matrix feedback block), updates the entropy pool based on another part of the feedback block (hereinafter, entropy feedback block) The method comprising the steps of: The generating of the random number may include generating the random number based on the random number block that is complementary to the random matrix feedback block.
The random number generation preprocessing step may include extracting any noise source having a full-entropy from the random matrix. In one embodiment, the random number generation pre-processing step may insert the noise source into the entropy pool through a linear feedback shift register having a maximum cycle period.
The random number generation preprocessing step may update the random matrix by feeding back the random matrix feedback block and extract a noise source from the updated random matrix. In one embodiment, the random matrix is implemented via the Hankel matrix, and the size of the Henkel matrix may vary depending on the size of the random matrix feedback block.
In one embodiment, the random number generation preprocessing step may feed back the entropy feedback block, and update the entropy pool based on the feedback entropy feedback block and the noise source extracted from the updated random matrix. In one embodiment, the random number generation preprocessing step may sequentially perform at least one logical operation by sequentially extracting a part of the feedback entropy feedback block and the noise source. In one embodiment, the random number generation preprocessing step may expand the entropy pool data through the operating mode of the block cipher to generate the random number-entropy block.
Among the embodiments, the random number generation apparatus includes a random number generation preprocessing section for generating a random number-entropy block by providing a noise source extracted from a random matrix to an entropy pool, a random number generation preprocessing section for generating a random number- A random number generation feedback unit for updating the random matrix by feeding back the random matrix and for updating the entropy pool by feeding back another part of the random number-entropy block (or an entropy feedback block) and another part of the random number- Number generating unit for generating a random number based on the random number block.
The disclosed technique may have the following effects. It is to be understood, however, that the scope of the disclosed technology is not to be construed as limited thereby, as it is not meant to imply that a particular embodiment should include all of the following effects or only the following effects.
A computer-executable random number generation method according to an exemplary embodiment of the present invention generates a random number based on a part of output data and feeds back a different part of output data to minimize a data size and generate a cryptographically secure random number .
A computer-executable random number generation method according to an exemplary embodiment of the present invention can improve the security of an entropy pool by mixing a part of output data into an entropy pool in an environment where computation capability is limited.
A computer-executable random number generation method according to an exemplary embodiment of the present invention includes a step of sequentially extracting a portion of an entropy feedback block and a noise source, performing at least one logical operation step by step, and outputting an entropy pool through a linear feedback shift register having a maximum cycle period As shown in FIG.
The computer-executable random number generation method according to an exemplary embodiment of the present invention updates a random matrix based on a random matrix feedback block to extract a full-entropy noise source based on a minimum data source.
1 is a view for explaining a random number generating method performed in the random number generating apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram showing the random number generating apparatus shown in FIG. 1. FIG.
FIG. 3 is a diagram for explaining a process of updating an entropy pool performed in the random number generator of FIG. 1. FIG.
4 is a diagram for explaining a process of updating a random matrix performed in the random number generator of FIG.
FIG. 5 is a flowchart illustrating a random number generation process performed in the random number generation apparatus shown in FIG.
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 effect.
Meanwhile, the meaning of the terms described in the present application should be understood as follows.
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.
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.
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 a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and also implemented in the form of a carrier wave (for example, transmission over the Internet) . 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.
FIG. 1 is a diagram for explaining a random number generating method performed in the random number generating apparatus according to an embodiment of the present invention, and FIG. 2 is a block diagram illustrating a random number generating apparatus in FIG.
1 and 2, the random
The random number generation preprocessing
The random number generation preprocessing
The random number
In one embodiment, the cryptographic key and the initial counter, which are input in the CTR mode, can be obtained by making the
The random number
The random number
In one embodiment, when the
The random number
The random
The
FIG. 3 is a diagram for explaining a process of updating an entropy pool performed in the random number generator of FIG. 1. FIG.
Referring to FIG. 3, the random number
In one embodiment, the random number
In one embodiment, the random number
In one embodiment, the
4 is a diagram for explaining a process of updating a random matrix performed in the random number generator of FIG.
Referring to FIG. 4, the random number
For example, when the Henkel matrix is implemented as a 4 * 4 matrix, the random number
The random number
FIG. 5 is a flowchart illustrating a random number generation process performed in the random number generation apparatus shown in FIG.
5, the random number
The random number
The random number
In one embodiment, the random number
The random number
In one embodiment, the
Therefore, the random
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 defined by the following claims And changes may be made without departing from the spirit and scope of the invention.
100: random number generator
210: a random number generation preprocessing unit 220: a random number generation feedback unit
230: random number generator 240:
10: noise source 20: extractor or random matrix
30: Output of the extracted noise source or random matrix
40: entropy pool 50: block cipher
60: random number - entropy block 70: random number
Claims (11)
A random number generation feedback step of feeding back a part of the random number-entropy block (hereinafter referred to as feedback block) to the random number generation pre-processing step; And
And a random number generating step of generating a random number based on another part of the random number-entropy block (hereinafter, a random number block)
The random number generation feedback step
Updating the random matrix based on a part of the feedback block (hereinafter referred to as a random matrix feedback block), and updating the entropy pool based on another part of the feedback block (hereinafter referred to as an entropy feedback block) Lt; RTI ID = 0.0 > 1, < / RTI >
And generating the random number based on the random number block formed complementary to the random matrix feedback block.
And extracting any random noise source having a full-entropy from the random matrix.
And inserting the noise source into the entropy pool through a linear feedback shift register having a maximum cyclic period.
Updating the random matrix by feeding back the random matrix feedback block, and extracting a noise source from the updated random matrix.
Wherein the Henkel matrix is implemented via a Hankel matrix and the size of the Henkel matrix varies according to the size of the random matrix feedback block.
Feedbacking the entropy feedback block and updating the entropy pool based on the feedback entropy feedback block and the noise source extracted from the updated random matrix.
And sequentially extracting a portion of the feedbacked entropy feedback block and the noise source to perform at least one logical operation step by step.
And expanding the data of the entropy pool through an operating mode of a block cipher to generate the random number-entropy block.
A random number generation feedback unit for updating the random matrix by feeding back a part of the random number-entropy block (or a random matrix feedback block) and updating the entropy pool by feeding back another part of the random number-entropy block (or an entropy feedback block) part; And
And a random number generator for generating a random number based on another part (or random number block) of the random number-entropy block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160015273A KR101837589B1 (en) | 2016-02-05 | 2016-02-05 | Computer-executable random-number generation method and random-number generation apparatus performing the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160015273A KR101837589B1 (en) | 2016-02-05 | 2016-02-05 | Computer-executable random-number generation method and random-number generation apparatus performing the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170093626A KR20170093626A (en) | 2017-08-16 |
KR101837589B1 true KR101837589B1 (en) | 2018-03-12 |
Family
ID=59752529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160015273A KR101837589B1 (en) | 2016-02-05 | 2016-02-05 | Computer-executable random-number generation method and random-number generation apparatus performing the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101837589B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102191305B1 (en) * | 2019-07-09 | 2020-12-15 | 국민대학교산학협력단 | Lightweight entropy management apparatus and method |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110249299A (en) * | 2017-12-13 | 2019-09-17 | 深圳市汇顶科技股份有限公司 | Generate method, chip and the electronic equipment of random number |
CN109002382A (en) * | 2018-07-13 | 2018-12-14 | 广东水利电力职业技术学院(广东省水利电力技工学校) | A kind of server master board monitoring system and monitoring method, the information processing terminal |
KR102155007B1 (en) * | 2019-02-14 | 2020-09-11 | 국민대학교산학협력단 | Entropy management apparatus and method using independence measurement, and number generation apparatus using the same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012094040A (en) * | 2010-10-28 | 2012-05-17 | Mizuho Dl Financial Technology Co Ltd | Parallelization of random number generation processing using gpu |
-
2016
- 2016-02-05 KR KR1020160015273A patent/KR101837589B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012094040A (en) * | 2010-10-28 | 2012-05-17 | Mizuho Dl Financial Technology Co Ltd | Parallelization of random number generation processing using gpu |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102191305B1 (en) * | 2019-07-09 | 2020-12-15 | 국민대학교산학협력단 | Lightweight entropy management apparatus and method |
Also Published As
Publication number | Publication date |
---|---|
KR20170093626A (en) | 2017-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Souyah et al. | An image encryption scheme combining chaos-memory cellular automata and weighted histogram | |
Chen et al. | A modified chaos-based joint compression and encryption scheme | |
CN108964872B (en) | Encryption method and device based on AES | |
US10359996B2 (en) | Random number generator and stream cipher | |
KR101837589B1 (en) | Computer-executable random-number generation method and random-number generation apparatus performing the same | |
KR101393806B1 (en) | Multistage physical unclonable function system | |
US20130156180A1 (en) | Method And Device For Securing Block Ciphers Against Template Attacks | |
Rathod et al. | Design and implementation of image encryption algorithm by using block based symmetric transformation algorithm (hyper image encryption algorithm) | |
WO2019114122A1 (en) | Encryption method for login information, device, electronic device, and medium | |
WO2001076130B1 (en) | Authentication method and schemes for data integrity protection | |
EP3143720A1 (en) | Differential power analysis countermeasures | |
US10742400B2 (en) | Datastream block encryption | |
EP2876626B1 (en) | Universal hash function computing device, method, and program | |
US20170365191A1 (en) | Iterative encryption and random generation and serialization of cryptographic functions | |
EP2056275A1 (en) | Pseudo random number generator, stream encrypting device, and program | |
CN109639423B (en) | Constituent device of decryption algorithm | |
US11075889B2 (en) | Method and system for encrypting/decrypting data with ultra-low latency for secure data storage and/or communication | |
CN107078900B (en) | Cryptographic system based on reproducible random sequences | |
Forgáč et al. | Contribution to symmetric cryptography by convolutional neural networks | |
KR101076681B1 (en) | Encryption method for data and decryption method therefor | |
CN114124359A (en) | Method and device for preserving format encrypted data, electronic equipment and storage medium | |
CN110071927B (en) | Information encryption method, system and related components | |
Albahrani et al. | A Text Encryption Algorithm Based on Self-Synchronizing Stream Cipher and Chaotic Maps | |
KR20060014420A (en) | Method and apparatus for a low memory hardware implementation of the key expansion function | |
Charru et al. | Improved Cryptography Algorithm to Enhanced Data Security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
GRNT | Written decision to grant |