System for generating random numbers based on blood samples and method using the same
The system generates random numbers using a blood sample to overcome traditional RNG limitations, achieving rapid, cost-effective, and secure random number generation with enhanced unpredictability through speckle pattern processing and a 2P-TO-VN method.
Patent Information
- Application Number
- JP2024106532
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-15
- Filing Date
- 2024-07-02
- Publication Date
- 2025-09-17
- Estimated Expiration
- 2044-07-02
AI Technical Summary
Existing random number generators (RNGs) face challenges in achieving high-speed, cost-effective, and unpredictable random number generation, with traditional methods being bandwidth-limited or costly, and there is a need for improved systems that leverage biological complexity for enhanced security.
A system utilizing a blood sample to generate random numbers through speckle patterns by irradiating blood with light, capturing images, and processing them with a von Neumann extraction method, specifically employing a 2P-TO-VN scheme to enhance randomness and unpredictability.
The system achieves rapid speckle pattern capture with minimal blood usage, reducing costs and acquisition time, while increasing the number of generated bits and ensuring strong security through the 2P-TO-VN scheme, providing high unpredictability and balanced bit distribution.
Smart Images

Figure 2025134601000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a system for generating random numbers based on a blood sample and a method using the same, and more particularly to a technology related to a random number generation system that uses the 2P-TO-VN (Two-Pass Tuple-Output von Neumann) method. [Background technology]
[0002] The material described in this section merely provides background information regarding the present invention and does not constitute prior art.
[0003] With the rapid expansion of the use of wired and wireless communications, including the Internet, the issue of communication network security is becoming increasingly important in terms of protecting important national, corporate, and financial secrets, as well as protecting personal privacy. Cryptographic systems based on mathematical computational complexity, such as PSA, are expected to be fundamentally decryptable once quantum computers are developed, and countermeasures against this are therefore required.
[0004] Compared to cryptosystems based on computational complexity, the encryption method using One Time Pad (OTP) is known to be the most secure encryption method. If a stream cipher is generated using the One Time Pad, fast and secure encrypted communication can be performed. A Random Number Generator (RNG) is used to generate such a One Time Pad.
[0005] The evolution and continued development of random number generator systems is a critical foundation for the future of cryptography. These RNG systems are at the heart of all cryptographic systems due to their role in generating keys that are not only difficult to predict but also nearly impossible to crack.
[0006] This unpredictability can ensure a high level of security, a necessary feature in today's digital world. There are two main types of random number generators: algorithmic and physical. Algorithmic generators, also known as PseudoRandom Number Generators (PRNGs), use complex mathematical formulas to generate a sequence of numbers.
[0007] While PRNGs are convenient and efficient, they have the disadvantage that the random numbers they generate can be reverse engineered and predicted, even if they pass randomness tests. In contrast, physical (or real) random number generators can derive randomness from probabilistic physical processes. While such processes are theoretically predictable with perfect information, they are practically unpredictable due to time and computational resource limitations.
[0008] Due to these characteristics, RNGs play a key role in various cybersecurity tasks, including key generation, digital signature generation, initialization vector generation for encryption, and salt value generation for security preservation, and can address the cybersecurity requirements of interconnected systems beyond the IoT domain.
[0009] One emerging area of interest is the use of optical and physical copy protection for enhanced security. Work by Di Falco et al. shows that disordered systems facilitated by silicon chips can be exploited to achieve cryptographic systems with perfect secrecy.
[0010] However, it is important to note that physics-based RNGs have inherent challenges. For example, capturing arbitrary patterns from lava lamps is an innovative approach, but is bandwidth-limited. Other methods, using light-emitting diodes and cell phone cameras, capture randomness from quantum fluctuations of light, but are very complex to set up. Therefore, the landscape for RNG systems has undergone change in recent years, revealing that traditional artificially generated RNGs contain inherent security vulnerabilities.
[0011] These vulnerabilities have inspired a shift towards more unpredictable and inherently random biomimetic RNG systems, a shift that acknowledges the fact that biological systems often contain a level of complexity and randomness that is difficult, if not impossible, to replicate artificially.
[0012] Therefore, recent RNG technology attempts to focus on RNG generation using speckle patterns. The main goal of such technology is to achieve a balance between economy and portability, both of which are considered essential factors for the widespread adoption and application of such systems.
[0013] In the area of speckle pattern generation, developments in RNGs and physical deduplication of photons often rely on the inherent randomness of materials, such as the natural texture of paper, to generate speckle patterns under consistent light. For example, optical waveguides have demonstrated the ability to generate random numbers at Mbit / s speeds with verified randomness.
[0014] Also, all-optical physical deduplication based on speckle patterns in aerogel (Fratalocchi et al.) has been developed to achieve secure key generation. However, such techniques involve passing a laser beam through a volumetric scattering medium to capture static speckle patterns. While this approach is innovative, it may pose new challenges for cost-effective and fast random number generation. Additionally, despite the improved security features such RNGs offer, their application in industrial settings is limited. The main obstacle is the high cost of sample fabrication and acquisition speed. Increasing these costs generally translates into increased purchasing speed.
[0015] Conversely, lower costs often come at the expense of slower speeds and more complex optimization, creating a conflict. This creates a need for RNG systems that offer superior performance while significantly reducing manufacturing costs.
[0016] As a prior art in the field of RNG, Patent Document 1 (Method and apparatus for ensuring continuity of random number output signal during von Neumann post-processing) is disclosed. This prior art discloses a solution to the discontinuity of the random number output signal, but it has the effect of improving the speed of the system and reducing costs by storing random numbers in a memory buffer and outputting spare random numbers using another configuration when the stored random numbers are all consumed.
[0017] However, the prior art only discloses a random number output technique using von Neumann post-processing, and does not disclose at all the application and binding possibility of blood flow or blood samples. [Prior art documents] [Patent documents]
[0018] [Patent Document 1] Korean Patent Registration No. 10-1925787 Summary of the Invention [Problem to be solved by the invention]
[0019] The present invention has been devised to solve the above-mentioned problems, and its purpose is to provide a system that is capable of generating random numbers at high speed while maximizing cost efficiency and improving the randomness of the generated random numbers, thereby ensuring the reliability of the generated random numbers.
[0020] However, the technical problems that the present invention aims to solve are not limited to those described above, and other problems not mentioned will be clearly understood by those skilled in the art from the description of the invention provided below. [Means for solving the problem]
[0021] A system according to one aspect of the present invention is a system for generating random numbers based on a blood sample, and includes: a sample loading module that supplies a predetermined blood sample; a light irradiation module that irradiates light onto the blood sample provided by the sample loading module, and in this case, irradiates light onto the blood sample that has moved to a predetermined region of interest (ROI); an image generation module that uses the light irradiation module to capture an image of the blood sample located in the ROI in a predetermined manner, thereby obtaining an original speckle image; and a random number generation module that processes the original speckle image generated by the image generation module in a predetermined manner, to generate a random number.
[0022] Preferably, the random number generation module may include a binary image generation unit that performs a binarization process to classify pixel values constituting the original speckle image into bits of 0 or 1 to generate a binary image.
[0023] Preferably, the random number generation module may further include a von Neumann extraction unit that generates a first processed image by applying a von Neumann post-processing method to the binary image obtained by the binary image generation unit.
[0024] Preferably, the von Neumann extraction unit can generate a second processed image by further applying a 2P-TO-VN method to the first processed image.
[0025] Preferably, the von Neumann extraction unit applies a One-Pass Tuple-Output von Neumann (1P-TO-VN) method to process two bits as one set in a preset manner, and the preset manner may be a method of removing a set if the set is a duplication of the same bits.
[0026] Preferably, the von Neumann extractor may be configured to retain only the first or second bit of the first and second bits constituting the set when one set is a duplication of the same bits and, after the set is removed, sets are formed of different bits based on the remaining bits.
[0027] Preferably, the von Neumann extraction unit further groups the removed sets into quads using the 1P-TO-VN method, and the quads are composed of a first set and a second set. Whether to remove and maintain the first and second sets may be determined based on whether the first and second sets are identical.
[0028] Preferably, the von Neumann extraction unit may further reconstruct the first and second sets if the first and second sets are different from each other.
[0029] Preferably, the random number generation module further includes an image scrambling unit that performs image scrambling on the binary image generated by the binary image generation unit to generate a preprocessed image, and the von Neumann extraction unit can generate first and second processed images from the preprocessed image generated by the image scrambling unit.
[0030] The present invention also provides a method for generating a random number based on a blood sample, the method including: (a1) supplying a predetermined blood sample by a sample loading module; (a2) irradiating the blood sample provided by the sample loading module with light by a light irradiation module, in which case the light is irradiated onto the blood sample moved to a predetermined region of interest; (a3) capturing an image of the blood sample located in the region of interest using the light irradiation module in a predetermined manner to obtain an original speckle image; and (a4) processing the original speckle image generated in step (a3) in a predetermined manner to generate a random number.
[0031] Preferably, step (a4) may include the steps of: (a41) performing a binarization process to classify pixel values constituting the original speckle image into bits of 0 or 1 to generate a binarized image; (a42) applying a von Neumann post-processing method to the binarized image obtained in step (a41) to generate a first processed image; and (a43) further applying a 2P-TO-VN method to the first processed image generated in step (a42) to generate a second processed image.
[0032] Preferably, the method may further include, before step (a42), a step (a42-0) of performing image scrambling on the binarized image generated in step (a41) to generate a pre-processed image. [Effects of the Invention]
[0033] According to one embodiment of the present invention, an innovative system is presented that utilizes blood flow to generate speckle patterns.
[0034] In particular, the inherent characteristics of blood, which is rich in diverse cellular components, can increase the complexity and entropy of the generated speckles, thereby increasing the randomness of the generated random numbers.
[0035] Because the present invention can capture speckle patterns at the rapid speed of the system and requires only a very small amount of blood, this can minimize both the cost and acquisition time associated with random number generation, improving system accessibility.
[0036] In addition, a system according to an embodiment of the present invention can increase the number of generated bits while providing overall unpredictability and strong security for the system by applying a 2P-TO-VN scheme designed to prevent bias in the generated random bits.
[0037] In addition, various different additional effects can be achieved by various embodiments of the present invention. Such various effects of the present invention will be described in detail in each embodiment, or the description of effects that can be easily understood by a person skilled in the art will be omitted. [Brief explanation of the drawings]
[0038] The following drawings attached to the present invention illustrate preferred embodiments of the present invention and, together with the detailed description of the invention to be described later, serve to further understand the technical concept of the present invention, so the present invention should not be interpreted as being limited to the matters shown in such drawings. [Figure 1] 1 is a block diagram showing the overall configuration of a system according to an embodiment of the present invention; [Figure 2] 1 is a schematic diagram illustrating a blood sample testing device of a system according to one embodiment of the present invention. [Figure 3] 3 is a schematic diagram illustrating an example of a sample loading module in the blood sample testing device of FIG. 2. FIG. [Figure 4] 1 is a schematic diagram illustrating a process of generating random numbers using a system according to an embodiment of the present invention. [Figure 5] 1 is a block diagram illustrating a processing procedure in a von Neumann extraction unit of a system according to an embodiment of the present invention. [Figure 6] 6 is an example for explaining the process of FIG. 5. [Figure 7] 1 is a flow chart of a method according to an embodiment of the present invention. [Figure 8] FIG. 8 is a detailed flowchart of step S40 of FIG. 7. [Figure 9] 10 is a graph comparing the speckle de-correlation times of the original speckle image (OSI), the first processed image (CVN method), and the second processed image (2P-TO-VN method). [Figure 10] 10 is a graph comparing the random number matrix characteristics of the original speckle image (OSI), the first processed image (CVN method), and the second processed image (2P-TO-VN method). [Figure 11]10 shows the results showing the speckle bit generation rates of the first processed image (CVN method) and the second processed image (2P-TO-VN method) and the respective images. [Figure 12a] 1 is an exemplary image showing an original speckle image (OSI), a first processed image (CVN method), and a second processed image (2P-TO-VN method). [Figure 12b] 1 is an example image with image scrambling applied. [Figure 13] 1 is a table showing the results of NIST statistical randomness tests on random numbers generated using a system according to one embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0039] Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Before that, the terms and words used in the specification and claims should not be interpreted only in their ordinary or dictionary sense, but should be interpreted in the sense and concept consistent with the technical idea of the present invention, based on the principle that the inventor can appropriately define the concept of the term to best describe his / her invention.
[0040] Since the present invention can be modified in various ways and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the description for carrying out the invention. However, it is not intended to limit the present invention to the specific embodiments, but it should be understood that the present invention includes all modifications, equivalents, and alternatives that fall within the spirit and technical scope of the present invention. Throughout the drawings, similar reference numerals are used to refer to similar components.
[0041] Terms such as "first," "second," "A," and "B" are used to describe various components, but the components should not be limited by the terms. Terms are used only to distinguish one structural element from another. For example, a first element may be designated as a second element, and similarly, a second element may be designated as a first element, without departing from the scope of the present invention. The term "and / or" includes a combination of multiple related listed items or any of multiple related listed items.
[0042] When a component is said to be "coupled" or "connected" to another component, it should be understood that it may be directly coupled or connected to the other component, but that there may be other components in between. Conversely, when a component is said to be "directly coupled" or "directly connected" to another component, it should be understood that there are no other components in between.
[0043] The terms used in this application are merely used to describe specific embodiments and are not intended to limit the present invention. The singular "a" or "an" includes the plural unless the context clearly dictates otherwise. In this application, the terms "comprise" or "have" and the like specify the presence of features, numbers, steps, operations, components, parts, or combinations thereof described above in the specification, and should be understood as not precluding the presence or possibility of addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0044] Unless otherwise defined, all terms, including technical or scientific terms, used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. Terms defined in commonly used dictionaries should be interpreted to have a meaning consistent with the meaning they have in the context of the relevant art, and should not be interpreted in an idealized or overly formal sense unless expressly defined in this application.
[0045] 1 is a block diagram showing the overall configuration of a system according to an embodiment of the present invention, and a system according to an embodiment of the present invention will be described with reference to FIG.
[0046] The system 10 includes a sample loading module 400, a light illumination module 100, an image generation module 200, and a random number generation module 300, where the random number generation module 300 may be executed as a program stored in a processor included in the system.
[0047] FIG. 2 is a schematic diagram showing a blood sample testing device in a system according to an embodiment of the present invention, and FIG. 3 is a schematic diagram showing an example of a sample loading module in the blood sample testing device of FIG.
[0048] The description will be made with reference to both FIG. 2 and FIG.
[0049] The light irradiation module 100 may be configured to irradiate light onto a blood sample S. For example, the blood in the blood sample S may include red blood cells R, platelets P, etc., as shown in FIG. 3. The light may be, but is not limited to, a laser having a wavelength within a certain range (e.g., 532 nm).
[0050] The blood sample S may be extracted from a mouse and contained in, but not limited to, distilled deionized water. Applicant expressly states that protocol GIST-2019-015 is strictly adhered to and all officially approved methods comply with the ARRIVE guidelines for reporting experiments.
[0051] Specifically, the applicant collected blood samples from 12-13 week old male Sprague Dawley mice weighing between 250-280 g by tail vein dissection. To do so, 1 ml of blood was administered via a 23G needle while the animals were anesthetized with isoflurane. This blood collection was performed on a group of 11 mice, and the samples were immediately stored in citrate tubes (Cat. #363083, 9NC 0.109M Buffered Trisodium Citrate, BD Vacutainer, USA) for subsequent experiments.
[0052] The image generation module 200 may be configured to acquire a speckle image of the light-irradiated blood sample S. In detail, the image generation module 200 may include an imaging unit 210, a first lens 220, an aperture 230, a second lens 240, a polarizing plate 250, a reflecting mirror 260, a collimator 270, and a coupler 280.
[0053] The image capturing unit 210 may be configured to capture and acquire speckle images of the illuminated blood sample S. By way of example, but not limited to, the image capturing unit 210 may be a CMOS camera (Neo 5.5 sCMOS, Andor Technology Ltd., Belfast, UK). The CMOS camera operates at a high frame rate of 1250 frames per second with an exposure time of 0.8 milliseconds, smoothly capturing speckle images with a resolution of 128x512 pixels for generating subsequent data.
[0054] The speckle image of the blood sample S may include a speckle pattern that is irregularly generated by interference that occurs when light is reflected from or transmitted through the blood sample S. As an example, a total of seven experimental data sets were constructed with 1,000 frames, and to preprocess the experimental data, these were divided into eight partitions each consisting of 32 × 256 pixels, resulting in a total of 56 sets.
[0055] The first lens 200 is an objective lens and may be disposed between the imaging unit 210 and a sample loading module 400 in which the blood sample S is disposed. The aperture 230 is an iris and may be disposed between the imaging unit 210 and the first lens 220. The second lens 240 is a tube lens and may be disposed between the imaging unit 210 and the aperture 230.
[0056] The polarizer 250 may be disposed between the second lens 240 and the opening 230 .
[0057] In this case, the aperture 230, the second lens 240, and the polarizing plate 250 may be provided to improve the contrast in the speckle image of the blood sample S acquired by the image capturing unit 210.
[0058] The reflecting mirror 260 may be configured to reflect the light emitted from the light irradiation module 100 and make it incident on the blood sample S. In this case, at least one reflecting mirror 260 may be provided.
[0059] A collimator 270 may be disposed between the sample loading module 400 on which the blood sample S is disposed and the reflector 260 .
[0060] The coupler 280 is an optical coupler and can be disposed between the collimator 270 and the reflector 260 .
[0061] The sample loading module 400 may be configured to transfer a blood sample S. As an example, the sample loading module 400 may include a PDMS (Polydimethylsiloxane) material. The sample loading module 400 may include a main body 410, an inlet portion 420, a transfer channel 230, and an outlet portion 440.
[0062] The main body 410 may form the overall shape of the sample loading module 400. The inlet portion 420 may be a portion where the blood sample S is introduced into the main body 410.
[0063] The transfer channel 430 may be provided in the main body 410 and configured to transfer the blood sample S introduced through the inlet 420. Here, the transfer channel 430 may be referred to as a "microchannel." After the light (e.g., laser light with λ=532 nm) irradiated by the light irradiation module 100 passes through the transfer channel 430, the ROI region may be captured by the first lens 220. This allows an "original speckle image" to be acquired, and the original speckle image is configured to generate random bits by the random number generation module 300, which will be described later.
[0064] To construct the transfer channel 430 as a microchannel, the channel can be designed using soft photolithography with precise dimensions of 45 mm in length, 45 μm in height, and 1 mm in width. As an example, the applicant fabricated a PDMS slab using various standard processes, and this slab, made of PDMS Sylgard 184 A / B (Dow Corning Korea Ltd.), was bonded to a cover glass by oxygen plasma treatment.
[0065] Transfer channel 430 consists of a pump, solenoid valve, three-way valve, and vacuum generator integrated with a 50 ml syringe to account for dead volume. The pump uses a solenoid valve to regulate flow and can control sample collection at a constant volume of 200 μL in variable recovery mode.
[0066] The discharge section 440 may be a section that discharges the blood sample S flowing in the transfer channel 430 to the outside of the main body 410. The pumping module 500 may include a pump 510, a transfer tube 520, a first valve 530, a second valve 540, and a dead volume chamber 550.
[0067] The pumping module 500 may be connected to the sample loading module 400 and configured to move the blood sample S toward the sample loading module 400 by vacuum pressure.
[0068] The pump 510 may be a vacuum pump that generates a vacuum pressure to move the blood sample S toward the main body 410 of the sample loading module 400. As an example, the pump 510 may be a syringe pump. The transfer tube 520 may be a tube through which the blood sample S is moved toward the main body 410 by the vacuum pressure generated by the pump 510.
[0069] The first valve 530 may be provided in the transfer tube 520 and configured to adjust the vacuum pressure applied to the main body 410. For example, the first valve 530 may be a solenoid valve. The second valve 540 and the dead volume chamber 550 may be provided in the transfer tube 520 and buffer the movement of the blood sample S. In this case, the dead volume chamber 550 may be connected to the transfer tube 520 via the second valve 540. For example, the second valve 540 may be a three-way valve, and the dead volume chamber 550 may be a container formed of an empty space.
[0070] The random number generation module 300 is configured to generate random numbers by processing the original speckle image generated by the image generation module 200. For example, the random number generation module 300 may be implemented in the form of a CPU, GPU, AP, or a combination thereof having a processing function, and may be provided with various types of memory such as DRAM, flash memory, SSD, etc. as needed.
[0071] The random number generation module 300 may include a binary image generation unit 310, a von Neumann extraction unit 320, and an image scrambling unit 330.
[0072] FIG. 4 is a schematic diagram illustrating a process of generating random numbers using a system according to an embodiment of the present invention, and FIG. 5 is a block diagram illustrating a processing process in a von Neumann extraction unit of the system according to an embodiment of the present invention.
[0073] The binary image generating unit 310 is configured to perform a binary process of classifying pixel values constituting the original speckle image into bits of 0 or 1 to generate a binary image, i.e., convert the original speckle image into a binary image.
[0074] The image scrambling unit 330 is configured to scramble the binary-coded image. SCI (Scrambling Code Injection) means injecting a scrambling code into an image. Scrambling the image before passing through the von Neumann extraction unit 320 can improve the bit generation speed.
[0075] The first and second processed images described below may be images generated by the image scrambling unit 330 after being scrambled.
[0076] The von Neumann extraction unit 320 generates a first processed image by applying the von Neumann post-processing method to the binarized image obtained by the binarized image generation unit 310. Then, the von Neumann extraction unit 320 may generate a second processed image by further applying the 2P-TO-VN method to the first processed image.
[0077] Here, the von Neumann post-processing method can be understood as the 1P-TO-VN method, in contrast to the 2P-TO-VN method. In other words, the 2P-TO-VN method includes an additional pass in the 1P-TO-VN method.
[0078] FIG. 6 is an example for explaining the process in FIG. 5, and the method of the present invention is not limited to the method shown in FIG.
[0079] The von Neumann extraction unit 320 can first process the 1P-TO-VN method, and then process the 2P-TO-VN method by performing an additional pass.
[0080] Referring to Figure 6, two bits are grouped into a set. If a set contains duplicate bits, the set can be removed. For example, the set "00" or "11" can be removed.
[0081] Next, if one set is a duplication of the same bit, and if the set is removed and a set is formed with different bits based on the remaining bits, it can be set to maintain only the first or second bit of the first and second bits forming the set, thus completing the 1P-TO-VN method. For example, if the value is '01' or '10', only the first bit, such as the '0' of '01' or the '1' of '10', can be maintained.
[0082] Next, the von Neumann extractor 320 may be configured to perform additional passes, thereby reducing the bias of the bits.
[0083] The 2P-TO-VN method further groups the sets removed by the 1P-TO-VN method into quads, where a quad is composed of a first set and a second set, and can be understood to further undergo a process of determining whether to retain the first and second sets based on whether the first and second sets are identical. Here, if the first and second sets are different from each other, the first and second sets can be further restored. For example, discarded sets with different prefixes, such as "0011" and "1100," can be set to be further preserved.
[0084] While the 1P-TO-VN method, also known as the von Neumann (CVN) bias removal method, significantly reduces the number of bits due to severe compression, the 2P-TO-VN method can provide a good balance between bit preservation and bias removal. By re-evaluating bits that were initially discarded, the 2P-TO-VN method can generate data volumes that are more suited to actual applications, as shown in Figure 6, making it an excellent alternative to the CVN method for generating strong and usable encryption keys (random numbers).
[0085] FIG. 7 is a flowchart of a method according to an embodiment of the present invention, and FIG. 8 is a flowchart showing step S40 of FIG. 7 in detail.
[0086] The method will be described with reference to FIGS. 7 and 8, but the description overlapping with the above content will be omitted.
[0087] The method according to an embodiment of the present invention includes steps S10 to S40.
[0088] Step S10 is a step in which the sample loading module 400 supplies a preset blood sample.
[0089] Step S20 is a step in which the light irradiation module 100 irradiates the blood sample provided by the sample loading module 400 with light, in this case irradiating the blood sample that has been moved to a pre-specified region of interest with light.
[0090] Step S30 is a step of obtaining an original speckle image by using the light irradiation module 100 to capture an image of the blood sample located in the region of interest in a preset manner.
[0091] Step S40 is a step of processing the original speckle image generated in step S30 in a preset manner to generate a random number.
[0092] Here, step S40 may further include steps S41 to S43.
[0093] Step S41 is a step of performing a binarization process to classify pixel values constituting the original speckle image into bits of 0 or 1, thereby generating a binarized image.
[0094] Step S411 is a step of performing image scrambling on the binarized image generated in step S41 to generate a preprocessed image.
[0095] Step S42 is a step of generating a first processed image by applying the von Neumann post-processing method to the binarized image acquired in step S41.
[0096] Step S43 is a step of generating a second processed image by further applying the 2P-TO-VN method to the first processed image generated in step S42.
[0097] Fig. 9 is a graph comparing the speckle de-correlation times of the original speckle image (OSI), the first processed image (CVN method), and the second processed image (2P-TO-VN method). The present invention verifies the results of a method that generates random numbers based on blood flow.
[0098] Referring to Figure 9, the decorrelation time is a key measure of estimated randomness. The autocorrelation curves for 56 original speckle images are shown, compared to the actual and scrambled random bits. When comparing the original speckle images with the derived random bits, the decorrelation time shows a significant difference. The average decorrelation time for the original speckle images is 3.05 seconds with a standard deviation of ±0.43. The post-processed series of random bits for the Classic von Neumann (CVN) image, the CVN with scrambling, the 2P-TO-VN method, and the 2P-TO-VN method with scrambling show remarkably consistent means and standard deviations of 1.542 ± 0.019, 1.538 ± 0.018, 1.551 ± 0.017, and 1.529 ± 0.013, respectively. Such tightly clustered values indicate low or nonexistent correlation among the 56 diverse images, signifying high randomness.
[0099] FIG. 10 is a graph comparing the random number matrix characteristics of the original speckle image (OSI), the first processed image (CVN method), and the second processed image (2P-TO-VN method).
[0100] A comparison of bit uniformity and correlation difference is described with reference to Figure 10. To address potential bias in the data, the bit uniformity of the original speckle images was examined, reflecting distortion, with an average of 0.626. After applying the 2P-TO-VN method, an exemplary bit uniformity of 0.500 was confirmed for both the case processed with the 2P-TO-VN method alone and the two data sets combined with the insertion of a scrambling code. 0.500 can be understood to represent an ideal balance of "1" and "0" bits.
[0101] Further investigation using correlation analysis on the 56 original and processed speckle images, as shown in (b) through (d), showed that the processed data set achieved a much lower correlation value than the original images, approximately 2,270 times lower.
[0102] Furthermore, when comparing the two processed data sets, the 2P-TO-VN method including SCI processing showed a correlation value that decreased by 18.34% compared to the images to which only the 2P-TO-VN method was applied, which suggests that SCI processing further worsens the correlation.
[0103] In (c) and (d), correlation values outside the diagonal region approaching zero indicate a decrease in correlation.
[0104] The specific correlation metrics for the original speckle images were confirmed to have a mean of 0.01896 with a standard deviation of 0.016264, and the processed data showed significant improvements, with the 2P-TO-VN images having correlation values of 0.000453 and 0.000343, while the 2P-TO-VN images with SCI produced much lower correlations of 0.000383 and 0.000296. These results strongly emphasize the efficiency of the 2P-TO-VN method in achieving bit uniformity and minimizing correlation, and verify the statistical reliability of blood flow speckle-based random number generation.
[0105] FIG. 11 shows the speckle bit generation rates of the first processed image (CVN method) and the second processed image (2P-TO-VN method) and the results showing each image.
[0106] Referring to Figure 11, (a) is a graph of the bit generation rate generated from the original speckle bits. The speckle bits consist of 8.1 million bits. The mean and standard deviation of each image are calculated to be 16.65±2.27, 23.37±0.49, 52.35±3.34, and 67.70±2.44, respectively.
[0107] They have been tested for unpredictability using the NIST randomness test, which Applicant has performed using a series of statistical tests using the National Institute of Standards and Technology (NIST) Statistical Test Suite to determine the quality of the randomness of the random bits.
[0108] Incidentally, the NIST tests are designed to quantitatively assess the randomness of binary sequences, and the NIST test suite consists of 15 individual tests, each designed to quantitatively measure various aspects of the randomness of a binary sequence.
[0109] Tests include evaluation of frequency, block frequency, execution, LRO (longest run), continuity, approximate entropy, and cumulative sums (Cusums). The applicant's evaluation included aggregating binary sequences from 56 distinct random bits to ensure adequate stream length for seven statistical tests.
[0110] where P(s) is the distribution of the sample path lengths, s is the path length, τ is the delay time, l* is the transmission mean free path, and τo is the characteristic decay time of the medium.
[0111] The autocorrelation has a value between 0 and 1, and as the time delay increases, the value should fall closer to 0, meaning there is no further correlation compared to the first image. To confirm the generation of truly random bits influenced by biomimetics, the correlation between two consecutive images in a time series of speckle pattern images was measured at the 50% point as blood passed through the moving channel 430.
[0112]
number
[0113]
number
[0114] In addition, correlation matrices are used to examine the correlation between images. To ensure objectivity in the comparison, the random bits obtained by the method of the present invention are quantified and matched to create a uniform bit matrix for examination (e.g., original speckle image: 7.8 Mbits, CVN image: 1.02 Mbits, CVN with SCI: 1.8 Mbits, 2P-TO-VN image: 3.3 Mbits, 2P-TO-VN with SCI: 4.8 Mbits).
[0115]
number
[0116] FIG. 13 is a table showing the results of NIST statistical randomness tests on random numbers generated using a system according to an embodiment of the present invention, and the applicant can confirm that all of these tests passed.
[0117] FIG. 12a is an example image showing the original speckle image (OSI), the first processed image (CVN method), and the second processed image (2P-TO-VN method), and FIG. 12b is an example image to which image scrambling has been applied.
[0118] Referring to Figure 12, the speckle pattern generates unpredictable random bits consisting of 0 and 1 bits, and additional randomness is integrated using image scrambling and 2P-TO-VN method for higher power and improved performance.
[0119] Referring to (b), the total pixels of the images containing SCI are 49980 (60X833) pixels (see (a)) and 56520 (60X942) pixels (see (b)), respectively, so it can be seen that they are affected by scrambling.
[0120] As described above, the present invention has been described using limited examples, but the present invention is not limited thereto, and it goes without saying that various modifications and variations can be made by a person having ordinary skill in the art to which the present invention pertains within the technical spirit of the present invention and the equivalent scope of the claims set forth below. [Explanation of symbols]
[0121] 10: System 100: Light irradiation module 200: Image generation module 300: Random number generation module 400: Sample Loading Module
Claims
1. A system for generating random numbers based on a blood sample, comprising: a sample loading module for supplying a pre-determined blood sample; a light irradiation module that irradiates light onto the blood sample provided by the sample loading module, the light irradiation module irradiating light onto the blood sample moved to a pre-specified region of interest (ROI); an image generating module that uses the light irradiating module to capture an image of the blood sample located in the region of interest in a predetermined manner to obtain an original speckle image; a random number generation module that processes the original speckle image generated by the image generation module in a predetermined manner to generate a random number; A system including:
2. The random number generation module a binary image generating unit that performs a binarization process for classifying pixel values constituting the original speckle image into bits of 0 or 1 to generate a binary image; The system of claim 1 .
3. The random number generation module and a von Neumann extraction unit that applies a von Neumann post-processing method to the binarized image obtained by the binarized image generation unit to generate a first processed image. The system of claim 2 .
4. The von Neumann extraction unit A second processed image is generated by further applying a 2P-TO-VN (Two-Pass Tuple-Output von Neumann) method to the first processed image. The system of claim 3 .
5. The von Neumann extraction unit Applying the 1P-TO-VN (One-Pass Tuple-Output von Neumann) method, Two bits are grouped into one set and processed in a predetermined manner, and the predetermined manner is to remove the set if the set is a duplicate of the same bit. The system of claim 4.
6. The von Neumann extraction unit If one set is a duplication of the same bit and the set is composed of different bits based on the remaining bits after the set is removed, only the first or second bit of the first and second bits constituting the set is maintained; The system of claim 5.
7. The von Neumann extraction unit The removed sets are further grouped into quads according to the 1P-TO-VN method, and the quads are composed of a first set and a second set. Whether to remove or maintain the first and second sets is determined based on whether the first and second sets are the same or different. The system of claim 6.
8. The von Neumann extraction unit If the first and second sets are different from each other, further recovering the first and second sets. The system of claim 7.
9. The random number generation module further comprising an image scrambling unit that performs image scrambling on the binary image generated by the binary image generating unit to generate a preprocessed image; The von Neumann extraction unit a first processed image and a second processed image are generated based on the pre-processed image generated by the image scrambling unit; The system of claim 4.
10. 1. A method for generating a random number based on a blood sample, comprising: (a1) supplying a preset blood sample by a sample loading module; (a2) a step of irradiating light onto the blood sample provided by the sample loading module by a light irradiation module, wherein the blood sample moved to a pre-designated region of interest is irradiated with light; (a3) using the light illumination module to capture an image of the blood sample located in the region of interest in a predetermined manner to obtain an original speckle image; (a4) processing the original speckle image generated in step (a3) in a preset manner to generate a random number; A method comprising:
11. The step (a4) (a41) performing a binarization process for classifying pixel values constituting the original speckle image into bits of 0 or 1 to generate a binarized image; (a42) applying a von Neumann post-processing method to the binarized image obtained in step (a41) to generate a first processed image; (a43) generating a second processed image by further applying the 2P-TO-VN method to the first processed image generated in the step (a42), The method of claim 10.
12. Before step (a42), (a42-0) further comprising a step of performing image scrambling on the binary image generated in step (a41) to generate a preprocessed image; The method of claim 11.
Citation Information
Patent Citations
Methods, systems, and programs for embedding identification information in documents
JP2009516445A
Physical random number generator
JP2010271888A
Nondestructive inspection device of hatching egg and nondestructive inspection method of hatching egg
JP2024013335A
Method and Apparatus for Securing the Continuity of Random Numbers after Von Neumann Post-processing
KR101925787B1