WO2023195755A1 - 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법 - Google Patents

양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법 Download PDF

Info

Publication number
WO2023195755A1
WO2023195755A1 PCT/KR2023/004560 KR2023004560W WO2023195755A1 WO 2023195755 A1 WO2023195755 A1 WO 2023195755A1 KR 2023004560 W KR2023004560 W KR 2023004560W WO 2023195755 A1 WO2023195755 A1 WO 2023195755A1
Authority
WO
WIPO (PCT)
Prior art keywords
quantum
time
qtp
entropy
password
Prior art date
Application number
PCT/KR2023/004560
Other languages
English (en)
French (fr)
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 국민대학교산학협력단
Publication of WO2023195755A1 publication Critical patent/WO2023195755A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords

Definitions

  • the present invention relates to a technology for generating a one-time quantum password (Quantum one Time Password; hereinafter referred to as 'QTP'). More specifically, it is possible to generate a QTP as a secure one-time password by providing sufficient randomness using quantum radiation as a noise source. It relates to a device and method for generating a one-time quantum password based on quantum entropy.
  • Quantum random numbers are a technology that uses irregularities occurring in quantum phenomena to generate random, unpredictable, high-quality random numbers and have been mainly applied to the field of quantum cryptography communications. Quantum random numbers are being used in the IoT (Internet of Things) data communication field and in building cryptographic communication networks such as 5G and 6G, where large-capacity data communication takes place. Quantum random number generation methods are divided into those that use the randomness of light (photons) and those that use radioactive isotopes.
  • OTP One Time Password
  • a one-time password is an authentication tool used for user authentication. Unlike existing passwords that use a fixed value for authentication, a new value is used as the authentication value each time.
  • This OTP value uses as input a secret key given differently to each user to distinguish the user and a value (generally a time value) to change the OTP value at each authentication, and these input values are used to generate the OTP value.
  • OTP values are generated through various functions, including the HMAC-SHA-1 function.
  • An embodiment of the present invention seeks to provide a quantum entropy-based one-time quantum password generation device and method that can generate QTP as a secure one-time password by providing sufficient randomness using quantum radiation as a noise source.
  • An embodiment of the present invention seeks to provide a quantum entropy-based one-time quantum password generation device and method applicable to blockchain by performing a cryptographic process based on an analog noise source generated from quantum entropy.
  • An embodiment of the present invention seeks to provide a quantum entropy-based one-time quantum password generation device and method that drives a quantum password generator by securing a safe, low-cost, and ultra-small quantum entropy source in an environment where the use of a one-time password for authentication is essential. .
  • the quantum entropy-based one-time quantum password generation device includes a quantum entropy generator that generates an analog noise source of quantum radiation to provide analog noise, an encryption seed extractor that extracts an encryption seed through digitization of the analog noise, and a QTP generator that generates a one-time quantum password (QTP) based on the encryption seed and stores issuance details of the one-time quantum password (QTP) in a node on the blockchain.
  • a quantum entropy generator that generates an analog noise source of quantum radiation to provide analog noise
  • an encryption seed extractor that extracts an encryption seed through digitization of the analog noise
  • QTP generator that generates a one-time quantum password (QTP) based on the encryption seed and stores issuance details of the one-time quantum password (QTP) in a node on the blockchain.
  • the quantum entropy generator may provide a waveform of radiation particles emitted from one of alpha ( ⁇ ), beta ( ⁇ ), or gamma ( ⁇ ) emitting radiation isotopes as the analog noise.
  • the encryption seed extractor generates an instantaneous pulse with the same amplitude at any time when a particle of quantum radiation is detected, detects the pulse as the digital noise, and samples the time interval between pulses of the digital noise to encrypt the encryption. It can be decided by seed.
  • the encryption seed extractor may count the number of pulses of the digital noise at regular intervals and determine the counted number of pulses as the encryption seed.
  • the encryption seed extractor periodically generates a reference noise having an amplitude less than the same amplitude, then compares the digital noise with the reference noise at each cycle, detects the occurrence point of the digital noise through the comparison, and detects the reference noise.
  • the arbitrary point in time can be determined based on the noise occurrence count and the random point in time can be extracted as the encryption seed.
  • the QTP generator may generate a quantum random number by providing the encryption seed to a random number generator, convert the quantum random number into a number of a specific digit, or in the form of a barcode or QR code, and provide it as QTP, the one-time password.
  • the QTP generator may include firmware that ensures cryptographic safety for the encryption seed and communicates the QTP with an external device.
  • the firmware receives the analog noise source of quantum radiation generated by the quantum entropy chip (QEC), performs a cryptographic algorithm processing process, generates random numbers, issues the generated random numbers as QTP, a one-time password, and sends the issued QTP through the UART interface. It can be communicated through communication with an external device.
  • QEC quantum entropy chip
  • the quantum entropy-based one-time quantum password generation method includes a quantum entropy generation step of generating an analog noise source of quantum radiation to provide analog noise, an encryption seed extraction step of extracting an encryption seed through digitization of the analog noise, And a one-time quantum password generation step of generating a one-time quantum password (QTP) based on the encryption seed and storing the issuance details of the one-time quantum password in a node on the blockchain.
  • QTP one-time quantum password
  • the disclosed technology can have the following effects. However, since it does not mean that a specific embodiment must include all of the following effects or only the following effects, the scope of rights of the disclosed technology should not be understood as being limited thereby.
  • the quantum entropy-based one-time quantum password generation device and method according to an embodiment of the present invention can generate QTP as a secure one-time password by providing sufficient randomness using quantum radiation as a noise source.
  • the quantum entropy-based one-time quantum password generation device and method according to an embodiment of the present invention can be applied to blockchain by performing a cryptographic process based on an analog noise source generated from quantum entropy.
  • the quantum entropy-based one-time quantum password generation device and method according to an embodiment of the present invention can operate a quantum password generator, etc. by securing a safe, low-cost, and ultra-small quantum entropy source in an environment where the use of a one-time password for authentication is essential. there is.
  • Figure 1 is a diagram showing a quantum entropy-based one-time quantum password generation system according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing the system configuration of the one-time quantum password generating device in FIG. 1.
  • FIG. 3 is a diagram showing the functional configuration of the one-time quantum password generating device in FIG. 1.
  • FIG. 4 is a block diagram showing the functional configuration of firmware in the one-time quantum password generation device in FIG. 3.
  • Figure 5 is a flowchart showing the QTP generation process of the quantum entropy-based one-time quantum password generation method according to an embodiment.
  • first and second are used to distinguish one component from another component, and the scope of rights should not be limited by these terms.
  • a first component may be named a second component, and similarly, the second component may also be named a first component.
  • identification codes e.g., a, b, c, etc.
  • the identification codes do not explain the order of each step, and each step clearly follows a specific order in context. Unless specified, events may occur differently from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the opposite order.
  • the present invention can be implemented as computer-readable code on a computer-readable recording medium
  • the computer-readable recording medium includes all types of recording devices that store data that can be read by a computer system.
  • Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. Additionally, the computer-readable recording medium can be distributed across computer systems connected to a network, so that computer-readable code can be stored and executed in a distributed manner.
  • Figure 1 is a diagram showing a quantum entropy-based one-time quantum password generation system according to an embodiment of the present invention.
  • the quantum entropy-based one-time quantum password generation system 100 may include a user terminal 110, a one-time quantum password generation device 130, and a blockchain 150, and may be connected through an interconnected network.
  • the network may include wireless communication such as satellite communication, 4G, 5G, 6G, WiFi, and TVWS, or wired communication such as Ethernet and serial communication.
  • the user terminal 110 corresponds to a computing device that can be connected to the disposable quantum password generating device 130 through a network, for example, equipment installed in various facilities or industrial sites, unmanned vehicles, IoT devices and sensors, and desktops. , can be implemented on a laptop, tablet PC, or smartphone.
  • the user can access a specific encryption system or blockchain 150 through the user terminal 110, and in this process, the one-time quantum password generation device 130 generates a one-time quantum password to the specific encryption system or blockchain 150. You can provide this to perform mutual authentication.
  • the one-time quantum password generator 130 is a source of quantum random number entropy and can determine an encryption seed through a stable noise source and generate a random number to create a one-time password and store it in a cryptography system or blockchain.
  • quantum random number entropy may refer to a measure used to evaluate the level of quantum random numbers generated from a noise source.
  • An encryption seed is a number used to initialize a cryptographic function or cryptographic operation and can refer to an entropy source.
  • Noise sources (analog or digital noise) can be unpredictable physical sources.
  • the noise source may use alpha ( ⁇ ), beta ( ⁇ ), or gamma ( ⁇ ) particles emitted from radioactive isotopes, or may also use photons.
  • the one-time quantum password generating device 130 can generate issuance details of a one-time quantum password (QTP) or one-time quantum password required for the encryption system or blockchain 150, respectively.
  • QTP one-time quantum password
  • the one-time quantum password generation device 130 may generate a quantum random number by processing an analog noise source of quantum radiation with a cryptographic algorithm and provide the generated quantum random number as a one-time password, that is, QTP.
  • the one-time quantum password generator 130 can provide a one-time password by converting a quantum random number into a number with a specific number of digits or in the form of a barcode or QR code.
  • the blockchain 150 can store the issuance details of the one-time quantum password generated from the one-time quantum password generation device 130 in a node on the blockchain.
  • the blockchain 150 generally stores small-scale data called 'blocks' in a chain-type link-based distributed data storage environment created based on the P2P (peer to peer) method, so that anyone can manage the data. It can refer to data forgery prevention technology based on distributed computing technology that cannot be modified arbitrarily and anyone can view the results of changes.
  • blockchain 150 is a distributed data storage technology that transparently records transaction details in a ledger that anyone can view, and copies and stores them on multiple computers.
  • the user terminal 110 connected to the blockchain 150 can obtain the storage location of the stored one-time random number password through the one-time random number password generator 130.
  • FIG. 2 is a diagram showing the system configuration of the one-time quantum password generating device in FIG. 1.
  • the one-time quantum password generation device 130 may include a processor 210, a memory 230, a user input/output unit 250, and a network input/output unit 270.
  • the processor 210 may perform a quantum entropy-based one-time quantum password generation process, manage the memory 230 that is read or written during this process, and synchronize between volatile and non-volatile memory in the memory 230. You can schedule time.
  • the processor 210 can control the overall operation of the one-time quantum password generator 130, and is electrically connected to the memory 230, the user input/output unit 250, and the network input/output unit 270 to facilitate data flow between them. You can control it.
  • the processor 210 may be implemented as a CPU (Central Processing Unit) of the one-time quantum password generation device 130.
  • CPU Central Processing Unit
  • the memory 230 is implemented as a non-volatile memory such as EEPROM (Electrically Erasable Programmable Read-Only Memory), SSD (Solid State Disk), or HDD (Hard Disk Drive) to store all the data required for the one-time quantum password generation device 130. It may include an auxiliary memory used for storage, and may include a main memory implemented as volatile memory such as RAM (Random Access Memory).
  • EEPROM Electrically Erasable Programmable Read-Only Memory
  • SSD Solid State Disk
  • HDD Hard Disk Drive
  • the user input/output unit 250 includes an environment for receiving user input and an environment for outputting specific information to the user, for example, a mouse, trackball, touch pad, graphic tablet, scanner, touch screen, keyboard, or pointing. It may include an input device including an adapter such as a device and an output device including an adapter such as an LED indicator or monitor. In one embodiment, the user input/output unit 250 may correspond to a computing device connected through a remote connection, and in such case, the one-time quantum password generation device 130 may be performed as a server.
  • the network input/output unit 270 includes a hardware interface environment such as UART, SPI, and I2C for connection with at least one of the user terminal 110 and the blockchain 150, and includes an adapter for LAN (Local Area Network) communication. It can be included.
  • the one-time quantum password generation device 130 may interact with the user terminal 140 through the network input/output unit 270.
  • FIG. 3 is a diagram showing the functional configuration of the one-time quantum password generating device in FIG. 1.
  • the one-time quantum password generator 130 may include a quantum entropy generator 310, an encryption seed extractor 330, a QTP generator 350, and a control unit 370, and a separate It can be implemented as an independent chipset.
  • the quantum entropy generator 310 may provide analog noise by generating an analog noise source of quantum radiation.
  • the quantum entropy generator 310 may use radiation emitted when a radioisotope decays or a random line generated when a photon exhibits a quantum mechanical physical phenomenon as an analog noise source. Signal extraction using one photon is affected by external factors such as temperature or power, but since radioisotope decay is not related to external influences, the quantum entropy generator 310 can generate radiation as analog noise.
  • the quantum entropy generator 310 may use radiation emitted from one of alpha ( ⁇ ), beta ( ⁇ ), or gamma ( ⁇ ) emitting radioisotopes.
  • the quantum entropy generator 310 may use alpha ( ⁇ ) rays from americium-241 or beta ( ⁇ ) rays from nickel-63.
  • Alpha and beta rays are constantly emitted at very irregular times and locations.
  • alpha rays can be shielded with a piece of paper and beta rays can be shielded with plastic, so there is no risk of radiation.
  • the analog noise of quantum radiation generated by the quantum entropy generator 310 may be generated to have sufficient entropy to generate an unpredictable encryption seed.
  • the quantum entropy generator 310 may generate the waveform of radiation particles emitted from a radioactive isotope as analog noise.
  • the quantum entropy generator 310 is not limited to this and may include a noise source operating system implemented in software.
  • the quantum entropy generator 310 can generate analog noise through Android, Linux, or Windows operating systems.
  • the quantum entropy generator 310 may be implemented as hardware.
  • the quantum entropy generator 310 may be implemented using non-deterministic phenomena in electronic circuits, such as shot noise of a Zener diode and inherent thermal noise of a semiconductor circuit.
  • the quantum entropy generator 310 may be implemented in a hybrid form by combining software and hardware.
  • the encryption seed extractor 330 can extract an encryption seed from analog noise by digitizing it.
  • the encryption seed extractor 330 may provide digital noise that is instantaneously generated at a random time through digitization of the analog noise of quantum radiation.
  • the encryption seed extractor 330 may receive the analog noise generated by the quantum entropy generator 310 and perform digitization. More specifically, the encryption seed extractor 330 can provide digital noise that is instantaneously generated at an arbitrary point in time by digitizing analog noise, which is a noise source.
  • the encryption seed extractor 330 may generate an instantaneous pulse with the same amplitude at any point in time at which a particle of quantum radiation is detected and determine the pulse as digital noise.
  • the encryption seed extractor 330 can obtain a random time point through detection of digital noise and determine the random time point as an encryption seed for password generation.
  • the encryption seed extractor 330 may sample the time interval between pulses of digital noise and determine it as the encryption seed.
  • the encryption seed extractor 330 may count the number of pulses of digital noise at regular intervals and determine this number of pulses as the encryption seed.
  • the encryption seed extractor 330 periodically generates reference noise having an amplitude less than the same amplitude and then compares the digital noise with the reference noise every cycle to detect the occurrence point of the digital noise and generate the reference noise.
  • An arbitrary point in time can be determined based on the count. More specifically, the encryption seed determination unit 330 can variably detect the occurrence point of digital noise by changing the generation period of the reference noise, count the occurrence times of the variable reference noise, and flexibly determine an arbitrary point in time accordingly. there is.
  • the encryption seed extractor 330 may determine the encryption seed by performing a bit operation between an arbitrary time point according to the occurrence count of the reference noise and an arbitrary time point according to the occurrence count of the previous reference noise. For example, the encryption seed extractor 330 may determine the encryption seed by performing an XOR logical operation in bit units between a plurality of arbitrary time points.
  • the QTP generator 350 can generate QTP, a one-time quantum password, based on the encryption seed and store the issuance details of the QTP in the node on the blockchain 150. More specifically, the QTP generator 350 provides an encryption seed to a random number generator implemented separately from the one-time quantum password generator 130 and generates QTP, a one-time quantum password, as a random number. can be created. In one embodiment, the QTP generator 350 may convert a quantum random number into a number with a specific number of digits, a barcode, or a QR code and provide the QTP to the user terminal 110. Additionally, the generated QTP can be applied to an encryption system or authentication system. In one embodiment, the QTP generator 350 may store the issuance details of the generated QTP in the blockchain 150. For example, the QTP generator 350 can be utilized for the security of the blockchain 150 by storing the issuance details of the QTP in the blockchain 150.
  • the QTP generator 350 may obtain a random number, a digital signature, or an encryption key by providing an encryption seed to a random number generator, a digital signature generator, or an encryption key generator.
  • the QTP generator 350 may obtain a random number by providing an encryption seed to a deterministic random bit generator (DRBG).
  • DRBG deterministic random bit generator
  • the deterministic random number generator may be composed of a cryptographic algorithm that generates a bit string from an initial encryption seed.
  • a deterministic random number generator can obtain a noise source from a non-deterministic random number generator and use it as an encryption seed.
  • the QTP generator 350 is an elliptic curve digital signature algorithm using an elliptic curve DSA (Elliptic Curve Digital Signature Algorithm, ECDSA) or an elliptic curve Diffie-Hellman (Elliptic Curve Diffie-Hellman) key exchange method using an elliptic curve encryption.
  • ECDSA Elliptic Curve Digital Signature Algorithm
  • ECDH Curve Diffie-Hellman
  • the QTP generator 350 may express the random number in the form of a one-time password, for example, a 6-digit number, or a barcode or QR code, and provide it as a QTP. In one embodiment, the QTP generator 350 may generate a QTP by setting a secret key using a random number and encrypting the set secret key and time value as input.
  • the QTP generation unit 350 may generate issuance details of the QTP based on the issuance time, access code, and issuer and store it in the blockchain 150. More specifically, the QTP generation unit 350 generates the issuance history of the QTP based on the information on the QTP issuance time, accessible code, and issuer, and stores it in the blockchain 150 to enable multiple users. You can check with the terminal.
  • the control unit 370 can control the overall operation of the one-time quantum password generator 130 and controls the data flow between the quantum entropy generator 310, the encryption seed extractor 330, and the QTP generator 350. You can.
  • the one-time quantum password generator 130 can be implemented as a single chipset, and the encryption seed extractor 330 and QTP generator 350 are implemented as firmware to ensure cryptographic safety for the encryption seed and external You can enable QTP communication with the device.
  • FIG. 4 is a block diagram showing the functional configuration of firmware in the one-time quantum password generation device in FIG. 3.
  • the one-time quantum password generating device 130 may be implemented as a single chipset including a quantum entropy chip (QEC) 410, firmware 430, and UART interface 450.
  • QEC quantum entropy chip
  • the quantum entropy chip (hereinafter referred to as QEC) 410 may generate a quantum random entropy source (noise source) and provide analog noise to the firmware 430. At this time, the analog noise can be generated to have sufficient entropy to generate an unpredictable encryption seed.
  • QEC 410 may correspond to a noise source operating system implemented in software such as Android, Linux, or Windows.
  • the QEC 410 can be implemented in hardware by using non-deterministic phenomena in electronic circuits, such as shot noise of Zener diodes and inherent thermal noise of semiconductor circuits, or by using radiation decay, which is a physical phenomenon. there is.
  • QEC 410 may be implemented by combining software and hardware.
  • the QEC 410 may correspond to the quantum entropy generator 310 and may generate an analog noise source of quantum radiation and provide analog noise to the firmware 430.
  • the firmware 430 can receive an analog noise source of quantum radiation from the QEC 410, perform a cryptographic algorithm processing process, generate a random number, and issue the generated random number as a one-time password, QTP.
  • Firmware 430 may provide QTP as a UART interface 450.
  • the firmware 430 includes a security function processing unit 431, an encryption algorithm processing unit 432, an important security parameter processing unit 433, a finite state processing unit 434, an instruction set-based security agent protocol processing unit 435, and an input/output data processing unit ( 436) may be included.
  • the security function processing unit 431 performs roles such as authentication and key zeroing.
  • the encryption algorithm processing unit 432 uses block ciphers such as ARIA, LEA, HiGHT, SEED, and AES, hash functions such as SHA-224, SHA-256, SHA-384, and SHA-512, and message authentication such as HMAC, CMAC, and GMAC. It performs cryptographic functions such as code, DBRG random number generator, key settings such as DH and ECDH, and ECDSA electronic signature.
  • block ciphers such as ARIA, LEA, HiGHT, SEED, and AES
  • hash functions such as SHA-224, SHA-256, SHA-384, and SHA-512
  • message authentication such as HMAC, CMAC, and GMAC. It performs cryptographic functions such as code, DBRG random number generator, key settings such as DH and ECDH, and ECDSA electronic signature.
  • the important security parameter processing unit 433 performs the security roles shown in Table 1 below.
  • the important security parameter processing unit 433 is a layer that processes important security parameters such as secret keys used for encryption/decryption for block ciphers, authentication keys used for message authentication codes, public key encryption, and private keys for electronic signatures, Perform key zeroing processing.
  • the finite state processing unit 434 includes the operation state and error state of the encryption module, transition from an arbitrary state to another state, input event causing the transition, output event obtained as a result of the transition, state transition in standby mode, and encryption function operation state. Processing is performed to map states and inputs to outputs for state transitions, state transitions in power-on test states, state transitions in conditional test states, etc.
  • the security agent processing unit 435 performs roles such as managing the security suite and security policy of the cryptographic module with the counterpart device.
  • the input and output data processing unit 436 performs an input/output function of setting and confirming the input/output format of key data such as plain text, key, and policy with an external device.
  • the UART interface 450 provides data input from the password manager and the user to the firmware 430, and can provide QTP generated from the firmware 430 to communicate with an external device.
  • Figure 5 is a flowchart showing the QTP generation process of the quantum entropy-based one-time quantum password generation method according to an embodiment.
  • the quantum entropy-based one-time quantum password generation method may provide analog noise by generating an analog noise source of quantum radiation through the quantum entropy generator 310 (step S510).
  • the quantum entropy-based one-time quantum password generation method can extract the encryption seed by digitizing the analog noise through the encryption seed extractor 330 (step S530).
  • the quantum entropy-based one-time quantum password generation method provides an encryption seed to the random number generator through the QTP generator 350 to generate QTP as a one-time password and stores the issuance details of the QTP in the blockchain 150 (step S550). .
  • a quantum entropy-based one-time quantum password generation device and method is a device and method for interacting between devices and systems in 5G, 6G, satellite security, unmanned vehicle security, Internet of Things (IoT), smart grid, intelligent energy network, etc.
  • IoT Internet of Things
  • a quantum entropy source with safety, low power, low cost, and ultra-small size can be secured to operate a quantum entropy-based quantum password generator, thereby securing the IoT-based blockchain market. This could be a possible opportunity.
  • Quantum entropy generation unit 330 Encryption seed extraction unit
  • QEC Quantum Entropy Chip
  • Important security parameter processing unit 434 Finite state processing unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Theoretical Computer Science (AREA)
  • Semiconductor Lasers (AREA)
  • Optical Communication System (AREA)

Abstract

본 발명은 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법에 관한 것으로, 상기 장치는 양자 방사선의 아날로그 잡음원을 발생하여 아날로그 잡음을 제공하는 양자 엔트로피 생성부, 상기 아날로그 잡음에 대한 디지털화를 통해 암호화 시드를 추출하는 암호화 시드 추출부, 및 상기 암호화 시드에 기초하여 일회용 양자 비밀번호(QTP)를 생성하고 상기 일회용 양자 비밀번호(QTP)의 발급 내역을 블록체인 상의 노드에 저장하는 QTP 생성부를 포함한다.

Description

양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법
본 발명은 일회용 양자 비밀번호(Quantum one Time Password; 이하, 'QTP'라 함) 생성 기술에 관한 것으로, 보다 상세하게는 양자 방사선을 잡음원으로 충분한 난수성을 제공하여 안전한 일회용 비밀번호로서 QTP를 생성할 수 있는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법에 관한 것이다.
양자난수는 양자 현상에서 발생하는 불규칙성을 이용해 무작위적이고 예측 불가능한 고품질 난수를 생성하는 기술로 주로 양자암호통신 분야에 적용돼 왔다. 양자난수는 IoT(Internet of Things) 데이터 통신 분야, 대용량 데이터 통신이 이뤄지는 5G, 6G 등의 암호통신망 구축에 활용되고 있다. 양자난수 생성 방식은 빛(광자)의 랜덤성을 이용하는 방식과 방사성 동위원소를 이용하는 방식으로 구분된다.
한편, 일회용 비밀번호인 OTP(One Time Password)는 사용자 인증을 위해 사용되는 인증 도구로, 인증을 위해 고정된 값을 사용하는 기존의 비밀번호와는 달리 매번 새로운 값을 인증 값으로 사용한다.
이러한 OTP 값은 사용자를 구별하기 위해 사용자마다 다르게 부여된 비밀키와 OTP 값을 매 인증 시에 변화시키기 위한 값(일반적으로 시간 값)을 입력 값으로 사용하며, 이 입력 값들은 OTP 값을 생성하기 위한 HMAC-SHA-1 함수를 비롯한 각종 함수를 통해 OTP 값을 생성한다.
그러나, 종래의 OTP는 고정된 비밀키를 사용하여 지속적으로 OTP 값을 생성하기 때문에 OTP 비밀키가 누출될 위험성이 존재하였다.
최근에는 OTP 기술에 양자 기술을 접목하여 양자 난수로 OTP 생성 과정을 암호화해 보안성을 강화하는 기술이 개발되고 있다.
[선행기술문헌]
[특허문헌]
한국등록특허 제10-0872901 (2008.12.02)호
본 발명의 일 실시예는 양자 방사선을 잡음원으로 충분한 난수성을 제공하여 안전한 일회용 비밀번호로서 QTP를 생성할 수 있는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 양자 엔트로피에서 발생되는 아날로그 잡음원을 바탕으로 암호적 처리과정 수행하여 블록체인에 적용 가능한 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 인증처리를 위한 일회용 비밀번호 사용이 필수적인 환경에서 안전하고 저가의 초소형의 양자 엔트로피 소스를 확보하여 양자 비밀번호 생성기를 구동시키는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법을 제공하고자 한다.
실시예들 중에서, 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치는 양자 방사선의 아날로그 잡음원을 발생하여 아날로그 잡음을 제공하는 양자 엔트로피 생성부, 상기 아날로그 잡음에 대한 디지털화를 통해 암호화 시드를 추출하는 암호화 시드 추출부, 및 상기 암호화 시드에 기초하여 일회용 양자 비밀번호(QTP)를 생성하고 상기 일회용 양자 비밀번호(QTP)의 발급 내역을 블록체인 상의 노드에 저장하는 QTP 생성부를 포함한다.
상기 양자 엔트로피 생성부는 알파(α), 베타(β) 또는 감마(γ) 방출 방사선 동위원소 중 하나의 방사선 동위원소에서 방출되는 방사선 입자의 파형을 상기 아날로그 잡음으로 제공할 수 있다.
상기 암호화 시드 추출부는 상기 양자 방사선의 입자가 검출되는 임의의 시점마다 동일한 진폭을 가지는 순간적인 펄스를 생성하여 해당 펄스를 상기 디지털 잡음으로 검출하고, 상기 디지털 잡음의 펄스간의 시간간격을 샘플링해서 상기 암호화 시드로 결정할 수 있다.
상기 암호화 시드 추출부는 상기 디지털 잡음의 펄스 수를 일정 시간마다 카운트하여 카운트한 펄스 수를 암호화 시드로 결정할 수 있다.
상기 암호화 시드 추출부는 상기 동일 진폭보다 적은 진폭을 가지는 기준 잡음을 주기적으로 발생시킨 후 각 주기마다 상기 디지털 잡음과 상기 기준 잡음을 비교하고, 상기 비교를 통해 상기 디지털 잡음의 발생 시점을 검출하고 상기 기준 잡음의 발생 카운트를 기초로 상기 임의의 시점을 결정하여 상기 임의의 시점을 상기 암호화 시드로 추출할 수 있다.
상기 QTP 생성부는 난수발생기에 상기 암호화 시드를 제공하여 양자 난수를 생성하고 상기 양자 난수를 특정 자리수의 숫자 또는 바코드 또는 QR코드 형태로 변환하여 상기 일회용 비밀번호인 QTP로서 제공할 수 있다.
상기 QTP 생성부는 상기 암호화 시드에 대해 암호학적 안전성을 보장하고 외부 장치와의 상기 QTP를 소통하는 펌웨어를 포함하는 펌웨어를 포함할 수 있다.
상기 펌웨어는 양자 엔트로피 칩(QEC)에서 생성되는 양자 방사선의 아날로그 잡음원을 전송받아 암호알고리즘 처리과정을 수행하여 난수를 생성하고 생성된 난수를 일회용 비밀번호인 QTP로 발급하여 발급된 QTP를 UART 인터페이스를 통해 외부 장치와 통신을 통해 소통하도록 할 수 있다.
실시예들 중에서, 양자 엔트로피 기반 일회용 양자 비밀번호 생성 방법은 양자 방사선의 아날로그 잡음원을 발생하여 아날로그 잡음을 제공하는 양자 엔트로피 생성단계, 상기 아날로그 잡음에 대한 디지털화를 통해 암호화 시드를 추출하는 암호화 시드 추출단계, 및 상기 암호화 시드에 기초하여 일회용 양자 비밀번호(QTP)를 생성하고 상기 일회용 양자 비밀번호의 발급 내역을 블록체인 상의 노드에 저장하는 일회용 양자 비밀번호 생성단계를 포함한다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법은 양자 방사선을 잡음원으로 충분한 난수성을 제공하여 안전한 일회용 비밀번호로서 QTP를 생성할 수 있다.
본 발명의 일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법은 양자 엔트로피에서 발생되는 아날로그 잡음원을 바탕으로 암호적 처리과정 수행하여 블록체인에 적용 가능하다.
본 발명의 일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법은 인증처리를 위한 일회용 비밀번호 사용이 필수적인 환경에서 안전하고 저가의 초소형의 양자 엔트로피 소스를 확보하여 양자 비밀번호 생성기 등을 구동시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 시스템을 나타내는 도면이다.
도 2는 도 1에 있는 일회용 양자 비밀번호 생성 장치의 시스템 구성을 나타내는 도면이다.
도 3은 도 1에 있는 일회용 양자 비밀번호 생성 장치의 기능적 구성을 나타내는 도면이다.
도 4는 도 3에 있는 일회용 양자 비밀번호 생성 장치에서 펌웨어의 기능적 구성을 나타내는 블록도이다.
도 5는 일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 방법의 QTP 생성 과정을 보여주는 흐름도이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명의 일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 시스템을 나타내는 도면이다.
도 1을 참조하면, 양자 엔트로피 기반 일회용 양자 비밀번호 생성 시스템(100)은 사용자 단말(110), 일회용 양자 비밀번호 생성 장치(130) 및 블록체인(150)을 포함할 수 있고, 상호 네트워크를 통해 연결될 수 있다. 여기에서, 네트워크는 위성통신, 4G, 5G, 6G, WiFi, TVWS 등의 무선 통신 또는 이더넷(Ethernet), 시리얼(Serial) 통신 등의 유선 통신을 포함할 수 있다.
사용자 단말(110)은 일회용 양자 비밀번호 생성 장치(130)와 네트워크를 통해 연결될 수 있는 컴퓨팅 장치에 해당하고, 예를 들어, 각종 시설물이나 산업현장에 설치되는 설비, 무인이동체, IoT 기기 및 센서, 데스크톱, 노트북, 태블릿 PC 또는 스마트폰으로 구현될 수 있다. 사용자는 사용자 단말(110)을 통해 특정 암호화 시스템 또는 블록체인(150)에 접근할 수 있고, 이 과정에서 일회용 양자 비밀번호 생성 장치(130)는 특정 암호화 시스템 또는 블록체인(150)에 일회용 양자 비밀번호를 제공하여 상호 인증을 수행하도록 할 수 있다.
일회용 양자 비밀번호 생성 장치(130)는 양자난수 엔트로피의 소스로서 안정한 잡음원을 통해 암호화 시드를 결정하고 난수를 발생시켜 일회용 비밀번호로 생성하여 암호 시스템 또는 블록체인에 저장할 수 있다. 여기에서, 양자난수 엔트로피는 잡음원에서 발생한 양자난수의 수준을 평가하기 위해 사용하는 척도를 의미할 수 있다. 암호화 시드는 암호함수 또는 암호연산의 초기화를 위해 사용되는 수치로 엔트로피 소스를 의미할 수 있다. 잡음원(아날로그 또는 디지털 잡음)은 예측 불가능한 물리적 소스에 해당할 수 있다. 여기에서, 잡음원은 방사선 동위원소에서 방출하는 알파(α) 또는 베타(β) 또는 감마(γ) 입자를 이용할 수 있으며, 광자를 이용할 수도 있다. 일회용 양자 비밀번호 생성 장치(130)는 각각 암호 시스템 또는 블록체인(150)에 필요한 일회용 양자 비밀번호(QTP) 또는 일회용 양자 비밀번호의 발급내역을 생성할 수 있다.
일 실시예에서, 일회용 양자 비밀번호 생성 장치(130)는 양자 방사선의 아날로그 잡음원을 암호알고리즘 처리하여 양자 난수를 생성하고 생성한 양자 난수를 일회용 비밀번호 즉, QTP로 제공할 수 있다. 여기에서, 일회용 양자 비밀번호 생성 장치(130)는 양자 난수를 특정 자리수의 숫자 또는 바코드나 QR코드 등의 형태로 변환하여 일회용 비밀번호를 제공할 수 있다.
블록체인(150)은 일회용 양자 비밀번호 생성 장치(130)로부터 생성된 일회용 양자 비밀번호의 발급 내역을 블록체인 상의 노드에 저장할 수 있다. 여기에서, 블록체인(150)은 일반적으로, 관리 대상 데이터를 '블록'이라고 하는 소규모 데이터들이 P2P(peer to peer) 방식을 기반으로 생성된 체인 형태의 연결고리 기반 분산 데이터 저장환경에 저장하여 누구라도 임의로 수정할 수 없고 누구나 변경의 결과를 열람할 수 있는 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술을 의미할 수 있다. 즉, 블록체인(150)은 누구나 열람할 수 있는 장부에 거래 내역을 투명하게 기록하고, 여러 대의 컴퓨터에 이를 복제해 저장하는 분산형 데이터 저장기술이다. 블록체인(150)에 연결된 사용자 단말(110)은 일회용 난수 비밀번호 생성 장치(130)를 통해 저장된 일회용 난수 비밀번호의 저장 위치를 획득할 수 있다.
도 2는 도 1에 있는 일회용 양자 비밀번호 생성 장치의 시스템 구성을 나타내는 도면이다.
도 2를 참조하면, 일회용 양자 비밀번호 생성 장치(130)는 프로세서(210), 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)를 포함할 수 있다.
프로세서(210)는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 과정을 수행할 수 있고, 이러한 과정에서 읽혀지거나 작성되는 메모리(230)를 관리할 수 있으며, 메모리(230)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄 할 수 있다. 프로세서(210)는 일회용 양자 비밀번호 생성 장치(130)의 동작 전반을 제어할 수 있고, 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210)는 일회용 양자 비밀번호 생성 장치(130)의 CPU(Central Processing Unit)로 구현될 수 있다.
메모리(230)는 EEPROM(Electrically Erasable Programmable Read-Only Memory), SSD(Solid State Disk) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 일회용 양자 비밀번호 생성 장치(130)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.
사용자 입출력부(250)은 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함하고, 예를 들어, 마우스, 트랙볼, 터치 패드, 그래픽 태블릿, 스캐너, 터치 스크린, 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 LED 표시기 또는 모니터 등과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(250)은 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 일회용 양자 비밀번호 생성 장치(130)는 서버로서 수행될 수 있다.
네트워크 입출력부(270)은 사용자 단말(110) 및 블록체인(150) 중 적어도 하나와 연결하기 위한 UART, SPI, I2C 등의 하드웨어 인터페이스 환경을 포함하고, LAN(Local Area Network) 통신을 위한 어댑터를 포함할 수 있다. 일 실시예에서, 일회용 양자 비밀번호 생성 장치(130)는 네트워크 입출력부(270)를 통해 사용자 단말(140)과 연동할 수 있다.
도 3은 도 1에 있는 일회용 양자 비밀번호 생성 장치의 기능적 구성을 나타내는 도면이다.
도 3을 참조하면, 일회용 양자 비밀번호 생성 장치(130)는 양자 엔트로피 생성부(310), 암호화 시드 추출부(330), QTP 생성부(350) 및 제어부(370)를 포함할 수 있고, 별도의 독립적인 칩셋으로 구현될 수 있다.
양자 엔트로피 생성부(310)는 양자 방사선의 아날로그 잡음원을 발생하여 아날로그 잡음을 제공할 수 있다. 일 실시예에서, 양자 엔트로피 생성부(310)는 방사선동위원소가 붕괴하며 나오는 방사선이나 하나의 광자가 양자역학적으로 물리현상을 보일 때 발생하는 무작위선을 아날로그 잡음원으로 사용할 수 있다. 하나의 광자를 이용한 신호 추출은 온도나 전원 등 외부 요인에 영향을 받지만, 방사선동위원소 붕괴는 외부 영향과 관계가 없으므로 여기에서 양자 엔트로피 생성부(310)는 방사선을 아날로그 잡음으로 생성할 수 있다.
양자 엔트로피 생성부(310)는 알파(α), 베타(β) 또는 감마(γ) 방출 방사선 동위원소 중 하나의 방사선 동위원소에서 방출되는 방사선을 사용할 수 있다. 예컨대, 양자 엔트로피 생성부(310)는 아메리슘-241에서 나오는 알파(α)선 또는 니켈-63에서 나오는 베타(β)선을 사용할 수 있다. 알파선 및 베타선은 매우 불규칙한 시점과 위치에서 끊임없이 방출되며 특히 알파선은 종이 한장으로 차폐할 수 있고 베타선은 플라스틱으로 차폐할 수 있어 방사선 위험도 없다. 양자 엔트로피 생성부(310)에서 생성되는 양자 방사선의 아날로그 잡음은 예측 불가능한 암호화 시드를 생성하기 위해 충분한 엔트로피를 가지도록 생성될 수 있다. 일 실시예에서, 양자 엔트로피 생성부(310)는 방사선 동위원소에서 방출하는 방사선 입자의 파형을 아날로그 잡음으로 생성할 수 있다. 양자 엔트로피 생성부(310)는 이에 한정되지 않고 소프트웨어로 구현된 잡음원 운영체제를 포함할 수 있다. 예를 들어, 양자 엔트로피 생성부(310)는 안드로이드, 리눅스 또는 윈도우 운영체제를 통해 아날로그 잡음을 생성할 수 있다. 또한, 양자 엔트로피 생성부(310)는 하드웨어로 구현될 수도 있다. 예를 들어, 양자 엔트로피 생성부(310)는 제너(Zener) 다이오드의 산탄 잡음, 반도체 회로의 내재적인 열 잡음 등 전자회로 상의 비결정론적 현상들을 이용하여 구현될 수 있다. 또한, 양자 엔트로피 생성부(310)는 소프트웨어와 하드웨어로 결합하여 하이브리드 형태로 구현될 수도 있다.
암호화 시드 추출부(330)는 아날로그 잡음에 대해 디지털화를 통해 암호화 시드를 추출할 수 있다. 일 실시예에서, 암호화 시드 추출부(330)는 양자 방사선의 아날로그 잡음에 대한 디지털화를 통해 임의의 시점에 순간적으로 발생되는 디지털 잡음을 제공할 수 있다. 여기에서, 암호화 시드 추출부(330)는 양자 엔트로피 생성부(310)로부터 생성된 아날로그 잡음을 수신하여 디지털화를 수행할 수 있다. 보다 구체적으로, 암호화 시드 추출부(330)는 잡음원인 아날로그 잡음의 디지털화를 통해 임의의 시점에서 순간적으로 발생되는 디지털 잡음을 제공할 수 있다. 암호화 시드 추출부(330)는 양자 방사선의 입자가 검출되는 임의의 시점마다 동일한 진폭을 가지는 순간적인 펄스를 생성하여 해당 펄스를 디지털 잡음으로 결정할 수 있다.
암호화 시드 추출부(330)는 디지털 잡음의 검출을 통해 임의의 시점을 획득하여 임의의 시점을 암호생성을 위한 암호화 시드로 결정할 수 있다. 일 실시예에서, 암호화 시드 추출부(330)는 디지털 잡음의 펄스간의 시간간격을 샘플링해서 그것을 암호화 시드로 결정할 수 있다. 일 실시예에서, 암호화 시드 추출부(330)는 디지털 잡음의 펄스 수를 일정 시간마다 카운트하여 이 펄스 수를 암호화 시드로 결정할 수도 있다.
일 실시예에서, 암호화 시드 추출부(330)는 동일 진폭보다 적은 진폭을 가지는 기준 잡음을 주기적으로 발생시킨 후 주기마다 디지털 잡음과 기준 잡음을 비교하여 디지털 잡음의 발생시점을 검출하고 기준 잡음의 발생 카운트를 기초로 임의의 시점을 결정할 수 있다. 보다 구체적으로, 암호화 시드 결정부(330)는 기준 잡음의 발생 주기를 변화시킴으로써 디지털 잡음의 발생시점을 가변적으로 검출하고 가변되는 기준 잡음의 발생시점을 카운트하여 그에 따라 임의의 시점을 유동적으로 결정할 수 있다. 일 실시예에서, 암호화 시드 추출부(330)는 기준 잡음의 발생 카운트에 따른 임의의 시점 및 이전 기준 잡음의 발생 카운트에 따른 임의의 시점 간의 비트 연산을 수행하여 암호화 시드를 결정할 수 있다. 예를 들어, 암호화 시드 추출부(330)는 복수의 임의의 시점간 비트 단위로 XOR 논리 연산을 수행하여 암호화 시드를 결정할 수 있다.
QTP 생성부(350)는 암호화 시드에 기초하여 일회용 양자 비밀번호인 QTP를 생성하고 QTP의 발급 내역을 블록체인(150) 상의 노드에 저장할 수 있다. 보다 구체적으로, QTP 생성부(350)는 일회용 양자 비밀번호 생성 장치(130)와 별도로 일회용 양자 비밀번호 생성 장치(130)에 포함되어 구현되는 난수발생기에 암호화 시드를 제공하여 난수로서 일회용 양자 비밀번호인 QTP를 생성할 수 있다. 일 실시예에서, QTP 생성부(350)는 양자 난수를 특정 자리수의 숫자, 바코드 또는 QR코드 등의 형태로 변환하여 사용자 단말(110)에 QTP로서 제공할 수 있다. 또한, 생성된 QTP는 암호화 시스템 또는 인증 시스템에 적용될 수 있다. 일 실시예에서, QTP 생성부(350)는 생성된 QTP의 발급 내역을 블록체인(150)에 저장할 수 있다. 예를 들어, QTP 생성부(350)는 블록체인(150)에 QTP의 발급 내역을 저장하여 블록체인(150)의 보안에 활용될 수 있다.
일 실시예에서, QTP 생성부(350)는 난수 발생기, 전자서명 생성기 또는 암호화 키 생성기에 암호화 시드를 제공하여 난수, 전자서명 또는 암호화 키를 획득할 수 있다. 예를 들어, QTP 생성부(350)는 결정론적 난수 생성기(DRBG, Deterministic Random Bit Generator)에 암호화 시드를 제공하여 난수를 획득할 수 있다. 여기에서, 결정론적 난수 생성기는 초기값인 암호화 시드로부터 비트 열을 생성하는 암호 알고리즘으로 구성될 수 있다. 결정론적 난수 생성기는 비결정론적 난수 생성기로부터 잡음원을 얻어 암호화 시드로 사용할 수 있다. 예를 들어, QTP 생성부(350)는 타원곡선을 이용한 전자서명 알고리즘으로 타원곡선 DSA(Elliptic Curve Digital Signature Algorithm, ECDSA) 또는 타원곡선 암호를 이용한 키 교환 방식에 해당하는 타원곡선 디피-헬만(Elliptic Curve Diffie-Hellman, ECDH)을 통해서 각각 전자서명이나 암호화 키를 획득할 수 있다.
일 실시예에서, QTP 생성부(350)는 난수를 일회용 비밀번호 형태, 예컨대 6자리의 숫자 또는 바코드나 QR코드로 표현하여 QTP로서 제공할 수 있다. 일 실시예에서, QTP 생성부(350)는 난수를 통해 비밀키를 설정하여 설정된 비밀키와 시간값을 입력으로 암호화하여 QTP를 생성할 수도 있다.
일 실시예에서, QTP 생성부(350)는 QTP가 생성되면 발급시점, 접근코드 및 발급자를 기초로 QTP의 발급 내역을 생성하여 블록체인(150)에 저장할 수 있다. 보다 구체적으로, QTP 생성부(350)는 생성된 QTP를 QTP의 발급시점, 접근 가능한 코드 및 발급자에 대한 정보를 기초로 해당 QTP의 발급 내역을 생성하고 블록체인(150)에 저장하여 복수의 사용자 단말에게 확인하도록 할 수 있다.
제어부(370)는 일회용 양자 비밀번호 생성 장치(130)의 동작 전반을 제어할 수 있고, 양자 엔트로피 생성부(310), 암호화 시드 추출부(330) 및 QTP 생성부(350)간의 데이터 흐름을 제어할 수 있다.
여기에서, 일회용 양자 비밀번호 생성 장치(130)는 단일 칩셋으로 구현될 수 있고, 암호화 시드 추출부(330)와 QTP 생성부(350)는 펌웨어로 구현되어 암호화 시드에 대한 암호학적 안전성을 보장하고 외부 장치와의 QTP를 소통하도록 할 수 있다.
도 4는 도 3에 있는 일회용 양자 비밀번호 생성 장치에서 펌웨어의 기능적 구성을 나타내는 블록도이다.
도 4를 참조하면, 일회용 양자 비밀번호 생성 장치(130)는 양자 엔트로피 칩(QEC)(410), 펌웨어(430) 및 UART 인터페이스(450)를 포함하는 단일 칩셋으로 구현될 수 있다.
양자 엔트로피 칩(이하, QEC 라 함)(410)은 양자난수 엔트로피 소스(잡음원)를 생성하여 펌웨어(430)에 아날로그 잡음을 제공할 수 있다. 이때, 아날로그 잡음은 예측 불가능한 암호화 시드를 생성하기 위해 충분한 엔트로피를 가지도록 생성될 수 있다. 일 실시예에서, QEC(410)는 안드로이드, 리눅스 또는 윈도우 등의 소프트웨어로 구현된 잡음원 운영체제에 해당할 수 있다. 일 실시예에서, QEC(410)는 제너(Zener) 다이오드의 산탄 잡음, 반도체 회로의 내재적인 열 잡음 등 전자회로 상의 비결정론적 현상들을 이용하거나 물리적 현상인 방사선 붕괴 등을 이용하여 하드웨어로 구현될 수 있다. 일 실시예에서, QEC(410)는 소프트웨어와 하드웨어로 결합하여 구현될 수도 있다. 여기에서, QEC(410)는 양자 엔트로피 생성부(310)에 해당할 수 있고, 양자 방사선의 아날로그 잡음원을 생성하여 펌웨어(430)에 아날로그 잡음을 제공할 수 있다.
펌웨어(430)는 QEC(410)로부터 양자 방사선의 아날로그 잡음원을 전송받아 암호알고리즘 처리과정을 수행하여 난수를 생성하고 생성된 난수를 일회용 비밀번호인 QTP로 발급할 수 있다. 펌웨어(430)는 QTP를 UART 인터페이스(450)로 제공할 수 있다.
펌웨어(430)는 보안기능 처리부(431), 암호알고리즘 처리부(432), 중요 보안매개변수 처리부(433), 유한 상태 처리부(434), 명령 집합 기반 보안 에이전트 프로토콜 처리부(435) 및 입출력 데이터 처리부(436)를 포함할 수 있다.
보안기능 처리부(431)는 인증, 키제로화 등의 역할을 수행한다.
암호알고리즘 처리부(432)는 ARIA, LEA, HiGHT, SEED, AES 등의 블록암호, SHA-224, SHA-256, SHA-384, SHA-512 등의 해시함수, HMAC, CMAC, GMAC 등의 메시지 인증코드, DBRG 난수발생기, DH, ECDH 등의 키설정, ECDSA 전자서명 등의 암호기능을 수행한다.
중요 보안매개변수 처리부(433)는 다음의 표 1과 같은 보안역할을 수행한다.
[표 1]
Figure PCTKR2023004560-appb-img-000001
중요 보안매개변수 처리부(433)는 블록암호용 암/복호화에 사용되는 비밀키, 메시지 인증 코드에 사용되는 인증키, 공개키 암호 및 전자서명용 개인키 등의 중요 보안매개변수를 처리하는 계층으로서, 키 제로화 처리를 수행한다.
유한상태처리부(434)는 암호모듈의 동작 상태와 오류 상태, 임의의 상태에서 다른 상태로의 천이, 천이를 일으키는 입력 사건, 천이 결과로 얻어지는 출력 사건, 대기모드 상태의 상태천이, 암호기능 동작 상태의 상태천이, 전원인가 시험 상태의 상태천이, 조건부 시험 상태의 상태천이 등에 대하여 상태와 입력을 출력에 매핑하는 처리를 수행한다.
보안에이전트 처리부(435)는 암호모듈의 상대 장치와의 보안수트, 보안정책 관리 등의 역할을 수행한다.
입력, 출력 데이터 처리부(436)는 외부장치와의 평문, 키, 정책 등의 핵심 데이터의 입출력 포맷을 설정 및 확인하는 입출력 기능을 수행한다.
UART 인터페이스(450)는 암호 관리자 및 사용자의 데이터 입력을 펌웨어(430)에 제공하며 펌웨어(430)로부터 생성된 QTP를 외부 장치와 통신을 통해 소통하도록 제공할 수 있다.
도 5는 일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 방법의 QTP 생성 과정을 보여주는 흐름도이다.
도 4에서, 양자 엔트로피 기반 일회용 양자 비밀번호 생성 방법은 양자 엔트로피 생성부(310)를 통해 양자 방사선의 아날로그 잡음원을 발생하여 아날로그 잡음을 제공할 수 있다(단계 S510).
양자 엔트로피 기반 일회용 양자 비밀번호 생성 방법은 암호화 시드 추출부(330)를 통해 아날로그 잡음에 대한 디지털화를 통해 암호화 시드를 추출할 수 있다(단계 S530).
양자 엔트로피 기반 일회용 양자 비밀번호 생성 방법은 QTP 생성부(350)를 통해 난수발생기에 암호화 시드를 제공하여 일회용 비밀번호로서 QTP를 생성하고 QTP의 발급 내역을 블록체인(150)에 저장할 수 있다(단계 S550).
일 실시예에 따른 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법은 5G, 6G, 위성보안, 무인이동체 보안, 사물인터넷(IoT, Internet of Things), 스마트그리드, 지능형 에너지망 등에서 기기와 시스템 사이의 상호 인증처리를 위한 일회용 비밀번호 사용이 필수적인 환경에서 안전성, 저전력, 저가, 초소형의 크기를 갖는 양자 엔트로피 소스를 확보하여 양자 엔트로피 기반 양자 비밀번호 생성기를 구동케 할 수 있으며, 이를 통하여 IoT 기반의 블록체인 시장 확보가 가능한 계기가 될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
[부호의 설명]
100: 양자 엔트로피 기반 일회용 양자 비밀번호 생성 시스템
110: 사용자 단말 130: 일회용 양자 비밀번호 생성 장치
150: 블록체인
210: 프로세서 230: 메모리
250: 사용자 입출력부 270: 네트워크 입출력부
250: 양자난수 엔트로피 생성기
310: 양자 엔트로피 생성부 330: 암호화 시드 추출부
350: QTP 생성부 370: 제어부
410: 양자 엔트로피 칩(QEC) 430: 펌웨어
431: 보안기능 처리부 432: 암호알고리즘 처리부
433: 중요 보안매개변수 처리부 434: 유한 상태 처리부
435: 명령 집한 기반 에이전트 프로토콜 처리부
436: 입력 및 출력 데이터 처리부
450: UART 인터페이스

Claims (9)

  1. 양자 방사선의 아날로그 잡음원을 발생하여 아날로그 잡음을 제공하는 양자 엔트로피 생성부;
    상기 아날로그 잡음에 대한 디지털화를 통해 암호화 시드를 추출하는 암호화 시드 추출부; 및
    상기 암호화 시드에 기초하여 일회용 양자 비밀번호(QTP)를 생성하고 상기 일회용 양자 비밀번호(QTP)의 발급 내역을 블록체인 상의 노드에 저장하는 QTP 생성부를 포함하는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치.
  2. 제1항에 있어서, 상기 양자 엔트로피 생성부는
    알파(α), 베타(β) 또는 감마(γ) 방출 방사선 동위원소 중 하나의 방사선 동위원소에서 방출되는 방사선 입자의 파형을 상기 아날로그 잡음으로 제공하는 것을 특징으로 하는 양자 엔트로피 기반 일회용 비밀번호 생성 장치.
  3. 제1항에 있어서, 상기 암호화 시드 추출부는
    상기 양자 방사선의 입자가 검출되는 임의의 시점마다 동일한 진폭을 가지는 순간적인 펄스를 생성하여 해당 펄스를 상기 디지털 잡음으로 검출하고, 상기 디지털 잡음의 펄스간의 시간간격을 샘플링해서 상기 암호화 시드로 결정하는 것을 특징으로 하는 양자 엔트로피 기반 일회용 비밀번호 생성 장치.
  4. 제3항에 있어서, 상기 암호화 시드 추출부는
    상기 디지털 잡음의 펄스 수를 일정 시간마다 카운트하여 카운트한 펄스 수를 암호화 시드로 결정하는 것을 특징으로 하는 양자 엔트로피 기반 일회용 비밀번호 생성 장치.
  5. 제3항에 있어서, 상기 암호화 시드 추출부는
    상기 동일 진폭보다 적은 진폭을 가지는 기준 잡음을 주기적으로 발생시킨 후 각 주기마다 상기 디지털 잡음과 상기 기준 잡음을 비교하고, 상기 비교를 통해 상기 디지털 잡음의 발생 시점을 검출하고 상기 기준 잡음의 발생 카운트를 기초로 상기 임의의 시점을 결정하여 상기 임의의 시점을 상기 암호화 시드로 추출하는 것을 특징으로 하는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치.
  6. 제1항에 있어서, 상기 QTP 생성부는
    난수발생기에 상기 암호화 시드를 제공하여 양자 난수를 생성하고 상기 양자 난수를 특정 자리수의 숫자 또는 바코드 또는 QR코드 형태로 변환하여 상기 일회용 비밀번호인 QTP로서 제공하는 것을 특징으로 하는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치.
  7. 제6항에 있어서, 상기 QTP 생성부는
    상기 암호화 시드에 대해 암호학적 안전성을 보장하고 외부 장치와의 상기 QTP를 소통하는 펌웨어를 포함하는 펌웨어를 포함하는 것을 특징으로 하는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치.
  8. 제7항에 있어서, 상기 펌웨어는
    양자 엔트로피 칩(QEC)에서 생성되는 양자 방사선의 아날로그 잡음원을 전송받아 암호알고리즘 처리과정을 수행하여 난수를 생성하고 생성된 난수를 일회용 비밀번호인 QTP로 발급하여 발급된 QTP를 UART 인터페이스를 통해 외부 장치와 통신을 통해 소통하도록 하는 것을 특징으로 하는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치.
  9. 양자 방사선의 아날로그 잡음원을 발생하여 아날로그 잡음을 제공하는 양자 엔트로피 생성단계;
    상기 아날로그 잡음에 대한 디지털화를 통해 암호화 시드를 추출하는 암호화 시드 추출단계; 및
    상기 암호화 시드에 기초하여 일회용 양자 비밀번호(QTP)를 생성하고 상기 일회용 양자 비밀번호의 발급 내역을 블록체인 상의 노드에 저장하는 일회용 양자 비밀번호 생성단계를 포함하는 양자 엔트로피 기반 일회용 양자 비밀번호 생성 방법.
PCT/KR2023/004560 2022-04-08 2023-04-05 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법 WO2023195755A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2022-0043951 2022-04-08
KR1020220043951A KR102425077B1 (ko) 2022-04-08 2022-04-08 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2023195755A1 true WO2023195755A1 (ko) 2023-10-12

Family

ID=82701294

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/004560 WO2023195755A1 (ko) 2022-04-08 2023-04-05 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102425077B1 (ko)
WO (1) WO2023195755A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102425077B1 (ko) * 2022-04-08 2022-07-27 국민대학교산학협력단 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법
KR102569487B1 (ko) * 2023-05-04 2023-08-23 조아전자(주) 외부 잡음원으로부터 불규칙적인 암호키를 생성하는 cctv 영상 데이터 암호화 시스템 및 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160091104A (ko) * 2015-01-23 2016-08-02 서울시립대학교 산학협력단 모바일 커머스용 양자암호 보안기능을 갖는 모바일 단말기 및 인증 방법
KR20180016434A (ko) * 2015-06-04 2018-02-14 가부시키가이샤 콴타리온 방사성 동위 원소의 자연 붕괴를 이용한 유일성을 실현하는 장치
KR20190046624A (ko) * 2017-10-25 2019-05-07 고려대학교 산학협력단 일회용 비밀번호 생성 장치 및 qotp 프로토콜에 의한 인증 방법
KR20200056110A (ko) * 2018-11-14 2020-05-22 국민대학교산학협력단 Duss 지원 가능한 양자난수 엔트로피 암호화용 코드 발급 장치 및 방법
US20200326912A1 (en) * 2019-04-09 2020-10-15 Electronics And Telecommunications Research Institute Random number generating device and operating method of the same
KR102425077B1 (ko) * 2022-04-08 2022-07-27 국민대학교산학협력단 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100872901B1 (ko) 2008-04-24 2008-12-10 주식회사 한국액센 Otp 단말기와 이를 이용한 인증 시스템 및 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160091104A (ko) * 2015-01-23 2016-08-02 서울시립대학교 산학협력단 모바일 커머스용 양자암호 보안기능을 갖는 모바일 단말기 및 인증 방법
KR20180016434A (ko) * 2015-06-04 2018-02-14 가부시키가이샤 콴타리온 방사성 동위 원소의 자연 붕괴를 이용한 유일성을 실현하는 장치
KR20190046624A (ko) * 2017-10-25 2019-05-07 고려대학교 산학협력단 일회용 비밀번호 생성 장치 및 qotp 프로토콜에 의한 인증 방법
KR20200056110A (ko) * 2018-11-14 2020-05-22 국민대학교산학협력단 Duss 지원 가능한 양자난수 엔트로피 암호화용 코드 발급 장치 및 방법
US20200326912A1 (en) * 2019-04-09 2020-10-15 Electronics And Telecommunications Research Institute Random number generating device and operating method of the same
KR102425077B1 (ko) * 2022-04-08 2022-07-27 국민대학교산학협력단 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법

Also Published As

Publication number Publication date
KR102425077B1 (ko) 2022-07-27
KR102425077B9 (ko) 2023-08-04

Similar Documents

Publication Publication Date Title
WO2023195755A1 (ko) 양자 엔트로피 기반 일회용 양자 비밀번호 생성 장치 및 방법
WO2020204444A2 (ko) 월렛 앱이 설치된 소유 디바이스 및/또는 블록체인 노드에 키를 분산 저장하는 비밀 키 보안 방법
WO2012077856A1 (ko) 식별키 생성 장치 및 방법
WO2014119936A1 (en) Method of and apparatus for processing software using hash function to secure software, and computer-readable medium storing executable instructions for performing the method
US20130086691A1 (en) Secure island computing system and method
WO2010087678A2 (ko) 클립보드 보안 시스템 및 방법
WO2020164280A1 (zh) 数据传输加密方法、装置及存储介质、服务器
WO2017105072A1 (ko) 생체 정보 기반 인증 장치 그리고 이의 동작 방법
CN104160407A (zh) 利用存储控制器总线接口以确保存储设备和主机之间的数据传输安全
WO2023096027A1 (ko) 보안성이 향상된 데이터 백업 시스템
EP4273843A1 (en) Data sharing system, data sharing method, and data sharing program
WO2018097521A1 (ko) 데이터베이스의 이중화를 위한 방법
Cha et al. An ISO/IEC 15408-2 compliant security auditing system with blockchain technology
WO2014003497A1 (ko) 특정 포맷을 가지는 대체 데이터의 생성 및 검증
CN102831352A (zh) 设备授权使用的方法及其设备
CN101739622A (zh) 一种可信支付计算机系统
KR20200056110A (ko) Duss 지원 가능한 양자난수 엔트로피 암호화용 코드 발급 장치 및 방법
US7599492B1 (en) Fast cryptographic key recovery system and method
US7788479B2 (en) Apparatus, system and method of ensuring that only randomly-generated numbers that have passed a test are used for cryptographic purposes
CN105554038A (zh) 一种在线系统和离线系统数据交互时数据安全的管控方法
CN116776346B (zh) 一种数据安全管理系统
Cui et al. Power system real time data encryption system based on DES algorithm
WO2019103360A1 (ko) Iot 경량단말 환경에서 프록시 재암호화 기반의 데이터 관리 방법 및 시스템
US20210111870A1 (en) Authorizing and validating removable storage for use with critical infrastrcture computing systems
WO2018216991A1 (ko) 다중 사용자의 인증요소를 조합하여 보안키를 생성하는 보안인증방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23784979

Country of ref document: EP

Kind code of ref document: A1