EP3980945A1 - Method and system for highly secured network communication - Google Patents
Method and system for highly secured network communicationInfo
- Publication number
- EP3980945A1 EP3980945A1 EP21766559.5A EP21766559A EP3980945A1 EP 3980945 A1 EP3980945 A1 EP 3980945A1 EP 21766559 A EP21766559 A EP 21766559A EP 3980945 A1 EP3980945 A1 EP 3980945A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- data
- key
- encrypted
- encrypted data
- source
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 109
- 238000004891 communication Methods 0.000 title claims abstract description 36
- 230000005540 biological transmission Effects 0.000 claims abstract description 92
- 238000012795 verification Methods 0.000 claims abstract description 27
- 238000001514 detection method Methods 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 42
- 230000006870 function Effects 0.000 description 15
- 230000003993 interaction Effects 0.000 description 15
- 230000032258 transport Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 8
- 230000001010 compromised effect Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 239000000969 carrier Substances 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 230000005610 quantum mechanics Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0852—Quantum cryptography
Definitions
- the present disclosure is generally related to secure transport and storage of data and more particularly is related to methods and systems for highly secured network communication.
- a common method for encrypted transport of data is to first use public key cryptography to transmit a symmetric cryptographic key and then to transmit the message data encrypted using symmetric cryptography with the exchanged key.
- the cryptography guide by Latacora describes Advanced Encryption Standard- Galois/Counter Mode (AES-GCM) as the most popular mode of symmetric encryption today and recommends the use of a 256-bit key.
- Latacora also recommends Networking and Cryptography library (NaCl) for asymmetric encryption based on the Curve25519 elliptic curve.
- Encryption systems which are based on a small key (e.g., Latacora's recommended 256 bits) enable attacks which discover and transmit those small number of bits to recover all of the encrypted data.
- the single key once known, can be easily and quickly sent across the Internet or by other electronic means and used to decrypt massive amounts of secured data.
- Low data rate transmission methods like inaudible signals over a computer's speaker can even be used to transmit small keys from machines which are not connected to networks.
- Discovery of even a small number of bytes of key data can expose the contents of hundreds of terabytes of supposedly secured message data. In many settings, this kind of risk of exposure is unacceptable.
- SD storage devices
- hard disk drives solid state disk drives
- magnetic tape magnetic tape
- Physical transfer is used because network transfers of large amounts of data can take weeks or months. For example, on a 100 Mbps connection, it can take over 120 days to transfer 100 terabytes of data.
- Today's storage devices have a large capacity and continuing improvements are expected. 14 terabyte hard drives and 100 terabyte SSD drives are now available. Similarly, physical storage devices must be used when data must be stored over time.
- Embodiments of the present disclosure provide a system and method for secure network communications of data.
- one embodiment of such a method can be broadly summarized by the following steps: providing source data; encrypting the source data to produce encrypted data and key data corresponding to the encrypted data; transmitting, from a first network location, a first of the encrypted data or the key data; verifying successful transmission of the first of the encrypted data or the key data; transmitting, from the first network location, a second of the encrypted data or the key data; verifying successful transmission of the second of the encrypted data or the key data; and decrypting, at a second network location, the encrypted data with the key data to provide a data output.
- encrypting the source data comprises generating a random key equal to or greater in size than the source data size for every write request of the source data.
- verifying successful transmission of the encrypted data or the key data comprises detecting eavesdropping by an unauthorized party.
- one or both of the encrypted data or the key data is retransmitted using QKD.
- verifying successful transmission of the first of the encrypted data or the key data occurs at an earlier point in time than transmission of the second of the encrypted data or the key data.
- the data source further comprises blockchain data.
- the method further comprises varying the transmission of the encrypted data or the key data based on timing differences of failure rates of transmission.
- Source data is provided.
- An encryption operator receives the source data and produces encrypted data and key data corresponding to the encrypted data.
- At least one network-enabled communication path is formed between a first network location and a second network location, wherein a first of the encrypted data or the key data is transmitted from the first network location to the second network location.
- At least one verification operator verifies successful transmission of the first of the encrypted data or the key data through the network- enabled communication path.
- a second of the encrypted data or the key data is transmitted from the first network location to the second network location.
- the at least one verification operator verifies successful transmission of the second of the encrypted data or the key data through the network-enabled communication path.
- a decryption operator decrypts, at the second network location, the encrypted data with the key data to provide a data output.
- encrypting the source data comprises generating a random key equal to or greater in size than the source data size for every write request of the source data.
- the write request further comprises the use of a logical block number destination.
- verifying successful transmission of the encrypted data or the key data comprises detecting eavesdropping by an unauthorized party.
- one or both of the encrypted data or the key data is retransmitted using QKD.
- verifying successful transmission of the first of the encrypted data or the key data occurs at an earlier point in time than transmission of the second of the encrypted data or the key data.
- the data source further comprises blockchain data.
- the transmission of the encrypted data or the key data is varied based on timing differences of failure rates of transmission.
- the encryption operator further comprises an XOR operation.
- the present disclosure can also be viewed as providing methods for secure network communications of data.
- one embodiment of such a method can be broadly summarized by the following steps: providing source data located at a first network location; encrypting the source data to produce encrypted data and key data corresponding to the encrypted data, wherein a random bit size generator is used to generate a random bit size corresponding to every write request of the source data of a size equal to the random bit size, and a random key generator is used to generate a random key equal to or greater in size than the random bit size; transmitting the key data from the first network location to a second network location; verifying successful transmission of the key data to the second location; upon verification of successful transmission of the key data to the second location, transmitting the encrypted data from the first network location to the second network location; verifying successful transmission of the encrypted data to the second location; and upon verification of successful transmission of the encrypted data to the second location, decrypting the encrypted data with the key data to provide
- verifying successful transmission of the key data or the encrypted data comprises detecting a level of eavesdropping by an unauthorized party at or below a predetermined threshold.
- verifying successful transmission of the key data occurs at an earlier point in time than transmission of the encrypted data.
- decrypting the encrypted data with the key data comprises: receiving the encrypted data and key data; receiving logical block number (LBN) destination associated with the source data and an integer associated with a number of bytes of the source data; identifying the number of bytes of encrypted data; identifying the same number of bytes of key data; and initiating an operation to combine the encrypted data with the key data to reconstruct the source data.
- LBN logical block number
- FIG. 1 depicts two removable storage devices inserted into a storage device controller, in accordance with embodiments of the present invention
- FIGS. 2A-2B depict the storage device controller of FIG. 1 with the two removable storage devices being removable in accordance with embodiments of the present invention
- FIG. 3 depicts a flowchart of the encryption process for two or more storage devices, in accordance with embodiments of the present invention
- FIG. 4 depicts a flowchart of the decryption process for two or more storage devices, in accordance with embodiments of the present invention
- FIG. 5 depicts a flowchart of the encryption process for two or more storage devices, the transport of at least two of those devices, and the decryption from any two of the original devices to recover the original data, in accordance with embodiments of the present invention
- FIG. 6 depicts a storage device controller designed to fit into a standard disk slot in a computer or RAID array with two removable storage devices inserted into it, in accordance with embodiments of the present invention
- FIG. 7 depicts an embodiment with three removable storage devices inserted into a storage device controller, in accordance with embodiments of the present invention.
- FIG. 8 is an illustrative method for encrypting data, in accordance with embodiments of the present invention.
- FIG. 9A depicts a flowchart of highly secured encryption process for network communication using quantum technologies, in accordance with a second embodiment of the present invention.
- FIG. 9B depicts a flowchart 650 of highly secured encryption process for network communication using quantum technologies, in accordance with the second embodiment of the present invention.
- FIG. 10 depicts a detailed flowchart of highly secured encryption process for network communication using quantum technologies, in accordance with the second embodiment of the present invention.
- FIG. 11 is a flowchart of a method for secure network communications of data, in accordance with the second embodiment of the present invention.
- FIG. 12 is a flowchart of a method for secure network communications of data using quantum key distribution, in accordance with the second embodiment of the present invention.
- Modem applications are generating vast amounts of data.
- a small fleet of drones can generate 100 terabytes of data per day.
- the sensors on a single autonomous vehicle can generate 4 terabytes of data per day.
- Animated movie files can occupy as much as 250 terabytes of storage. Transmitting large amounts of data over networks can take weeks or months (e.g. it can take over 120 days to transfer 100 terabytes of data on a 100 Mbps network connection.)
- embodiments of the present disclosure utilize a unique, dynamically generated, and very long encryption key for every write operation to the data storage media.
- the number of bits in each encryption key is always greater than or equal to the number of bits in the data being written.
- the encryption keys are written to their own media and the encrypted data is written to another. In its simplest embodiment, only with access to both the encryption key media and the encrypted data media can the original data be read.
- the encryption and decryption functions of the present disclosure can be computed extremely efficiently and can be implemented in hardware without need of a dedicated CPU. This allows the systems and methods of the present disclosure to be much faster, use less power, and be more efficient than existing technologies.
- the present disclosure relates to the highly secured transport and storage of large amounts of data. This capability is becoming increasingly important because new applications are generating more and more data which must be kept secure.
- the non-limiting embodiments of the present disclosure solve the problems of the prior art in an efficient, reliable, and easy to use manner. They provide a cryptographically unbreakable method of securing data while it is being transported or preserved in storage facilities. This method secures the data in a way that is immune to further advances in cryptanalysis such as quantum cryptanalysis. It is also immune to all known side-channel attacks on popular private and public key cryptographic schemes.
- FIG. 1 depicts two removable storage devices 102, 104 inserted into a storage device controller 100, in accordance with embodiments of the present invention.
- FIGS. 2A-2B depict the storage device controller of FIG. 1 with the two removable storage devices 102, 104 being removable, in accordance with embodiments of the present invention.
- the storage device controller 100 may comprise an array of one or more SD controllers which includes a physical housing or I/O port capable of receiving or electronically connecting to two or more storage devices (SDs) 102, 104.
- the SDs 102, 104 may include any type of physical storage medium, such as hard disk drives, solid state disk drives, magnetic tape, and other media.
- the storage device controller 100 may be connectable, directly or indirectly, to a source supplying data, such as a server, a desktop computer, a laptop computer, or another type of computerized device.
- a source supplying data such as a server, a desktop computer, a laptop computer, or another type of computerized device.
- the SDs 102, 104 are removable from the storage device controller 100, in that, the physical units of the SDs 102, 104 may be inserted into and removed from the storage device controller 100.
- FIG. 3 depicts a flowchart of the encryption process for the SDs 102, 104
- FIG. 4 depicts a flowchart of the decryption process for the SDs 102, 104, in accordance with embodiments of the present invention
- FIG. 5 depicts a flowchart of both the encryption process and the decryption process, as well as the transportation of the SDs 102, 104 between encryption and decryption, in accordance with embodiments of the present invention.
- the source of the data 300 which is to be secured or encrypted is connected to the storage device controller 100.
- the storage device controller 100 is connected to the two or more removable storage devices 102 and 104.
- the source data 300 is in communication with a controller unit 306 of the storage device controller 100, and the data source 300 sends write and read requests to the controller unit 306.
- the controller unit 306 encrypts the source data and stores the resulting encrypted data on the removable storage devices 102, 104, in such a way that the original data can be reconstructed from a large enough subset of the storage devices but no information is revealed from any smaller subset.
- the source data 300 is copied onto the controller data buffer or source data block 302 of the controller unit 306.
- the controller unit 306 has access to a random number generator 307 and a random bit size generator 308, which may be located within the controller unit 306 or external to it, such as within the attached computer or another computing system.
- the random number generator 307 generates a random key or number equal to or greater in size than the random bit size.
- the random bit size generator 308 generates a random bit size corresponding with every write request of the data source 300 of a size equal to the random bit size.
- Each key data block is the same size as the source data 300 and is generated by the high quality random number generator 307.
- the data from the data source 300 which is copied onto the source data block 302 is then combined with one or more key data blocks derived from the random bit size generator 308 using a XOR operation 310, or a similar technique.
- the resulting encoded data is stored on the SDs 102 and 104, with the encoded data stored on the first SD 102 and the key data stored on the second SD 104, in a way which guarantees the desired properties.
- Independent transportation of the storage devices 102, 104 may include separate vehicular transportation, being transported along different geographical routes, using different transportation carriers, conducting transportation at different times, or other methods for separate transportation.
- FIGS. 3-4 identify the different transportation mediums as an airplane 316 and a truck 318, but any other means of separate or independent transportation is considered within the scope of the present disclosure.
- the user inserts the SDs 102, 104 into the original storage device controller 100 or another storage device controller 100.
- the storage device controller 100 then recreates any desired portions of the original data by combining the information from the individual SDs 102, 104. More specifically, as depicted in FIG. 4, the encoded data of the first SD 102 and the key data of the second SD 104 are received within the controller unit 306 within the storage device controller 100.
- the controller unit 306 receives a logical block number (LBN) destination associated with the desired data and an integer giving the number of bytes to fetch.
- LBN logical block number
- the controller unit 306 also fetches that same number of bytes of data from the second SD 104 and into a data buffer 328. As the data is fetched, the controller initiates the XOR operation 310 to combine the data within the second SD 104 with the data in the first SD 102 already in the buffer. This results in the reconstruction of the source data which resides in the data buffer 334. This reconstructed source data is then delivered or output from the storage device controller 100 to the data destination 336, such as a data storage device used by the requester of the data.
- FIGS. 1-5 illustrate the present disclosure in use with two storage devices.
- the removable storage device controller 100 may have two slots for storage devices 102, 104 to be inserted into, as shown in FIG. 1.
- the SDs 102, 104 may include any type of device for storing data, such as hard disks, SSD disks, magnetic tapes, or others.
- the storage device controller 100 may be connected to a computer or other device which introduces the data source through write and read requests to the storage device controller 100.
- the two removable SDs 102, 104 may be inserted into the two slots of the controller 100, where the controller unit 306 responds to write and read requests in real-time by writing and reading data to and from the storage devices.
- the data source 300 may read and write data for as long as desired.
- the data source 300 may be a video editor which reads and writes high-value video information to the controller. Once all of the desired message data of the data source 300 has been sent to the controller 100, the SDs 102, 104 may be removed from it.
- the SDs 102, 104 may be stored, transported, or otherwise handled independently and/or separately.
- the SDs 102, 104 may be physically stored in separate locations (for example bank vaults or safety deposit boxes). If one of these locations is compromised, the data on that single storage device provides no information about the secured message data.
- FIG. 5 schematically illustrates separate or independent transportation mediums, where the encoded data in the first SD 102 is transported along a first transportation medium 340 whereas the key data within the second SD 104 is transported along a second transportation medium 342.
- the transportation mediums 340, 342 may include any type, format, or means of transportation which allows SD 102 and SD 104 to remain separate from one another.
- the two storage devices 102 and 104 may be sent to that location preferably by separate transport methods and/or on separate paths. If one of the devices is stolen or otherwise compromised, it provides no information about the message to the attacker.
- one SD might be sent by private courier, another SD by a different method, such as a FEDEX® delivery service, etc. Interception of fewer than the specified number of disks provides no information about the source data. Upon arrival at their destination, all of the SDs are inserted into the invented SD system to recover the source data, as described herein.
- Another way to achieve high security while transporting the SDs is to use temporal sequencing.
- one SD 102 could be transported first, and only after its confirmed receipt, are the remaining SDs (e.g. 104) transported.
- one SD may be sent during a first time period and the second SD to be transported in a second time period, only after confirmation of receipt of the first SD.
- the different transportation mediums may include, without limitation, separate vehicular transportation, transportation along different geographical routes, transportation using different transportation carriers, conducting transportation at different times, or other methods for separate transportation.
- one SD 102 can be preserved at one archive facility while the other SD(s) (e.g. 104) are preserved at other archive facilities.
- the SD(s) In order to reconstruct the source data, the SD(s) must be fetched and inserted into an appropriate SD controller 100. Additional security and auditability can be provided by physically securing SDs in tamper-proof or tamper- evident physical containers. For example, these may involve physical locks.
- the message data is combined with the random key using the XOR function 310.
- the XOR function 310 there are many similar alternatives to using the XOR function 310 which may be used, as would be recognized by one skilled in the art.
- an 8-bit byte of message data 302 might be combined with an 8-bit byte of the random key data 308 by using addition modulo 256.
- an encrypted byte would subtract the stored random key byte modulo 256.
- an 8-bit byte of message data might be combined with an 8-bit byte of random key data by subtracting it from modulo 256. In that case, decryption would add the encrypted byte to the stored random key byte modulo 256.
- Many other possibilities may also be used, as may be recognized by one skilled in the art.
- a stand-alone removable storage device controller with an additional slot for a storage device containing the message data.
- an embodiment might have three slots: the first for the source message storage device and the other two for the encrypted data storage devices 102 and 104.
- the message storage device would be inserted into the first slot and the two encryption storage devices 102 and 104 would be inserted into the second and third slots.
- the storage device controller 100 would read data from the source device 300, combine it with random key bits generated from a random source 307, and then write the encrypted data to the second and third devices 102 and 104 as described above.
- the user removes the second and third devices and transports them to the destination independently.
- the storage devices are inserted into a controller along with a blank third storage device, e.g., such as storage device 336 as shown in FIG. 5.
- the controller reads the information from the two encrypted devices 102 and 104 and reconstructs the original message on the blank storage device 336.
- the controller handles a write request for 4096 bytes of message data to the two storage devices:
- the SOURCE data 300 and the logical block number (LBN) destination of the source data are received by the storage device (SD) system's controller.
- LBN 30 logical block number
- the SOURCE data is copied into a controller data buffer. • For each write operation, the controller generates a new 4096-byte one-time-pad key (KDATA) of 4096*8 random bits. This process could be done using a random number generator (RNG). The RNG could be based on shot noise, quantum fluctuations, or other method to produce perfectly random bits. Many modem microprocessor chips include built-in hardware random number generators. If faster but less secure encryption is desired, a pseudo-random number generator (PRNG) could be used to produce the random bits from a smaller set of physically generated truly random bits. Embodiments may balance the number of physically random bits and the number of pseudorandom bits according to the security requirements and the properties of the random source.
- PRNG pseudo-random number generator
- the KDATA is written to LBN 30 on the second storage device (SD2). Because a new one-time-pad key is generated and used for each write operation, the encrypted data is cryptographically unbreakable and is immune to side-channel attacks.
- the SD controller at the destination receives the LBN of the desired data and an integer giving the number of bytes to fetch. In this example, 4096 bytes of data are requested from LBN 30.
- the controller fetches 4096 bytes of data from LBN 30 of SD1 into a controller buffer.
- the controller fetches 4096 bytes of data from LBN 30 of SD2 into the data buffer, but as the data is fetched, the controller XORs the SD2 data with the SD1 data already in the buffer.
- the reconstructed SOURCE data is delivered from the SD controller to the requester of the data.
- FIG. 6 depicts a storage device controller designed to fit into a standard disk slot in a computer or RAID array with two removable storage devices inserted into it, in accordance with embodiments of the present invention.
- FIG. 6 depicts an example in which the storage devices are designed to fit into a container that has a standard form factor for storage devices. For example, it might fit into a standard 5.25 inch slot for a hard drive and it might have two slots for smaller SSD drives.
- This design may allow the controller to be conveniently built into a standard computer, a Redundant Array of Independent Disks (RAID) array of disk drives 402 and 404, or other standard storage system.
- the SD system 400 can act as a single drive unit when it is part of a standard RAID array storage system.
- the SD system 400 can participate as either or both of the RAID 1 array disks.
- multiple SD systems, each acting as a single drive unit, can be part of any type of RAID array. All other aspects of the controller 100 are the same as described relative to FIGS. 1-5.
- FIGS. 1-5 are described relative to using two encrypted storage devices: the first SD 102 and the second SD 104.
- the message data is secure if only one of those disks is stolen or compromised, but the message may be revealed if both disks are stolen or compromised.
- FIG. 7 depicts an embodiment with three removable storage devices inserted into a storage device controller, in accordance with embodiments of the present invention.
- a removable storage device controller 100 has three slots and three storage devices 102, 104, and 106 holding the encrypted information.
- all three encrypted storage devices must be present for decryption. This increases the level of security because an attacker must compromise three separate transportation or storage channels to expose the message information.
- each of the three SDs 102, 104, and 106 must be present to reconstruct the source data (300 in FIG. 3).
- the encoding combines the original source data with the two random key blocks 308 by bitwise XOR.
- the two random key blocks are labelled KEY1 and KEY2
- the contents of the three SDs 102, 104, and 106 after encryption are:
- Encoding is performed in the controller, as described relative to FIGS. 1-5, and these encrypted contents are stored on the three SDs 102, 104, and 106.
- the three SDs 102, 104, and 106 are separated and either stored or transported until the source data needs to be reconstructed. They are then brought together, and the reconstruction is performed by the following operation:
- the number of SDs may vary and include any number of devices greater than two. Accordingly, the number of SDs may be generalized to an arbitrary number N (greater than or equal to two) of storage devices. Designs of the system and method which include N SDs will require N-l random key blocks. For example, the first SD 102 holds the source data combined with all N-l keys, for example by XORing them together, and each of the remaining SDs holds one of the keys as follows:
- SD1 SOURCE XOR KEY1 XOR . XOR KEY(N-1)
- SD1 KEY1 and (SOURCE XOR KEY2)
- SD2 KEY2 and (SOURCE XOR KEY3)
- SD3 KEY3 and (SOURCE XOR KEY1)
- the user is protected against the theft or compromise of any single storage device and the loss or failure of any single storage device. It is a convenient, robust, and highly secure practical means for transporting or storing large amounts of data.
- This example may further be generalized to four SDs, which allow any single SD to fail or be lost and the source data to still be reconstructed. Any fewer than three SDs provide no information about the source data.
- the contents of the four SDs are:
- SD1 KEY1 and (SOURCE XOR KEY2 XOR KEY3)
- SD2 KEY2 and (SOURCE XOR KEY3 XOR KEY4)
- SD3 KEY3 and (SOURCE XOR KEY4 XOR KEY1)
- SD4 KEY4 and (SOURCE XOR KEY1 XOR KEY2)
- Any single SD reveals no information about the source. Any two SDs reveal nothing about the source, because the source is always XORed with a key which is not available on the two disks. Any subset of three disks, however, allows reconstruction of the source data. There are four possibilities:
- any two of the SDs are sufficient for decrypting the original source data. This allows any two SDs to fail or to be lost and the source data to still be reconstructed. Any single SD reveals no information about the source data. But in this example, an attacker must not get access two SDs for the message to remain secure.
- contents of the four SDs after encryption are the contents of the four SDs after encryption:
- SD2 KEY1 and (SOURCE XOR KEY2)
- SD3 KEY1, KEY2, and (SOURCE XOR KEY3)
- FIG. 8 is a flowchart 500 illustrating a method of generating secure data for transport using three SDs, in accordance with embodiments of the disclosure. It should be noted that any process descriptions or blocks in flow charts should be understood as representing modules, segments, portions of code, or steps that include one or more instructions for implementing specific logical functions in the process, and alternate implementations are included within the scope of the present disclosure in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present disclosure.
- source data from the data source is received.
- two or more key blocks may be generated for each source data block.
- the source data block may then be encrypted (block 506).
- the encrypted or encoded data is stored on a first SD (block 508), the key data is stored on a second SD (block 510) and the key data is stored on a third SD (block 512).
- confirmation of the last source data is made. If additional data is required for encryption, the process may begin again. If the data for encryption is received in full, the encryption process may end. At this point, the SDs may be transported to a destination location, where the source data is decrypted. Any number of additional steps, functions, processes, or variants thereof may be included in the method, including any disclosed relative to any other figure of this disclosure.
- FIGS. 1-8 discuss systems and methods for securely transmitting data using physical storage devices, it may also be possible to securely transmit data through purely electronic transmission. Transmitting data electronically without the need for a physical storage device may be useful in certain situations where use of a physical storage device is impractical or where environmental conditions make it difficult. For example, the use of physical storage devices may not be suitable for data that needs to be transmitted within short periods of time where the time for transporting the physical storage device is too great, such as for data transmission between individuals residing on different continents. Additionally, in certain situations, the environmental conditions may make it difficult for transporting physical storage devices, for example, data transmission to underground or underwater facilities, to airplanes or spacecraft, or to locations with hazardous climates.
- FIGS. 9A-12 disclose systems and methods for highly secured network communications without the use of physical data storage devices. It is noted that many of the features, functions, or processes disclosed relative to FIGS. 1-8 may be used with the second embodiment of FIGS. 9A-12, all of which are incorporated by reference herein.
- the highly secured network communications disclosed relative to FIGS. 9A-12 may use quantum technologies, and in particular using quantum key distribution (QKD).
- QKD is a secure communication method which utilizes a cryptographic protocol involving components of quantum mechanics, whereby a random secret key is produced and shared between two parties.
- QKD The key is known only to the two parties, such that it can then be used to encrypt and decrypt messages.
- a specific feature of QKD is the ability of the two communicating users to detect the presence of any unauthorized third party trying to gain knowledge of the data transmitted through QKD. This feature stems from the fact that the process of measuring a quantum system, in general, acts to disturb the system. Thus, a third party trying to eavesdrop on the data transferred using QKD must in some way measure it, which causes detectable anomalies within the data.
- quantum superpositions or quantum entanglement and transmitting information in quantum states a communication system can be implemented that detects eavesdropping, such that one can identify that the transmission was not secure.
- FIG. 9A depicts a flowchart 600 of highly secured encryption process for network communication using quantum technologies, in accordance with a second embodiment of the present invention.
- a quantity of source data is provided at block 602.
- the source data may include any type of data or any size data, e.g., any number of bits, which can be transmitted over an electronic network.
- An encryption operator receives the source data and encrypts it to produce encrypted data 604.
- the encryption operator also produces key data 606 corresponding to the encrypted data 604.
- the key data 606 is then transmitted through at least one network-enabled communication path between a first network location and a second network location, which may be any locations on a computerized network, such as the Internet, a WAN, a LAN, or another network.
- Transmission of the key data 606 occurs using QKD, as shown at block 608, while the encrypted data 604 is not transmitted.
- the key data 606 is first sent from the first network location to the second network location using QKD, while the encrypted data 604 remains secure at the first network location. Only after the key data 606 arrives at the second network location, the success of the transmission may be verified at 610. Verifying the success of the transmission uses QKD and determines whether the key data 606 has been accessed, eavesdropped on, listened to, viewed, or otherwise interacted with by an unauthorized third party.
- the encrypted data 604 may be transmitted at block 608 along the network path. It is noted that the encrypted data 604 is not sent until only after the key data set 606 is verified to have successfully completed transmission. When the encrypted data 604 arrives at the destination location of the network, the success of the transmission may be verified at 610. In the same manner as with the key data 606, verifying the success of the transmission of the encrypted data 604 uses QKD and determines whether the encrypted data 604 has been eavesdropped, listened to, viewed, or otherwise interacted with by an unauthorized third party. If verification of the successful transmission of the encrypted data 604 is complete, the encrypted data 604 and key data 606 may be recombined at block 616 to decrypt the encrypted data 604.
- Decryption may involve a decryption operator using an XOR operation, or similar technique.
- the message data may be combined with the random key using a XOR function.
- a XOR function there are many similar alternatives to using the XOR function which may be used, as would be recognized by one skilled in the art.
- an 8-bit byte of message data might be combined with an 8-bit byte of the random key data by using addition modulo 256.
- an encrypted byte would subtract the stored random key byte modulo 256.
- an 8-bit byte of message data might be combined with an 8-bit byte of random key data by subtracting it from modulo 256.
- decryption would add the encrypted byte to the stored random key byte modulo 256.
- decryption would add the encrypted byte to the stored random key byte modulo 256.
- the resulting, decrypted data is then output at the data output 618, as shown in FIG. 9A.
- the key data 606 is transmitted first while the encrypted data 604 is withheld from transmission until verification that the key data 606 was successfully transmitted. In this way, the key data 606 and the encrypted data 604 are never in transit at the same time. However, it is noted that either the key data 606 or the encrypted data 604 may be sent first, while the other is withheld pending verification.
- FIG. 9B depicts a flowchart 650 of highly secured encryption process for network communication using quantum technologies, in accordance with the second embodiment of the present invention, where the encrypted data 604 is transmitted first and the key data 606 is withheld.
- a quantity of source data is provided at block 602.
- An encryption operator receives the source data and encrypts it to produce encrypted data 604.
- the encryption operator also produces key data 606 corresponding to the encrypted data 604.
- the encrypted data 604 is then transmitted through at least one network- enabled communication path between a first network location and a second network location, which may be any locations on a computerized network, such as the Internet, a WAN, a LAN, or another network.
- Transmission of the encrypted data 604 occurs using QKD, as shown at block 608, while the key data 606 is not transmitted.
- the encrypted data 604 is first sent from the first network location to the second network location using QKD, while the key data 606 remains secure at the first network location. Only after the encrypted data 604 arrives at the second network location, the success of the transmission may be verified at 610. Verifying the success of the transmission uses QKD and determines whether the encrypted data 604 has been eavesdropped, listened to, viewed, or otherwise interacted with by an unauthorized third party.
- the key data 606 may be transmitted at block 608 along the network path. It is noted that the key data 606 is not sent until only after the encrypted data set 604 is verified to have successfully completed transmission. When the key data 606 arrives at the destination location of the network, the success of the transmission may be verified at 610. In the same manner as with the encrypted data 604, verifying the success of the transmission of the key data 606 uses QKD and determines whether the key data 606 has been eavesdropped, listened to, viewed, or otherwise interacted with by an unauthorized third party. If verification of the successful transmission of the key data 606 is complete, the encrypted data 604 and key data 606 may be recombined at block 616 to decrypt the encrypted data 604.
- FIG. 10 depicts a detailed flowchart 700 of highly secured encryption process for network communication using quantum technologies, in accordance with the second embodiment of the present invention.
- FIG. 10 depicts a detailed flowchart of the process generally described in FIGS. 9A-9B.
- the encryption operator generates the encrypted data 704 and the key data 706.
- the encryption operator may produce the encrypted data 704 and key data 706 by a variety of methods.
- One in particular uses a random number generator to generate a random bit size corresponding to every write request of the source data of a size equal to the random bit size. It is then possible to generate a random key equal to or greater in size than the random bit size.
- the write request may include the use of a logical block number destination.
- the key data may be transmitted using QKD as shown at block 710.
- the key data is received at block 712 where verification of whether the data has been interacted with is conducted at block 714.
- a process to transmit the encrypted data is initiated at block 716.
- the encrypted data 704 is transmitted at block 718 using QKD and the transmitted data is received at block 720. Verification of whether the encrypted data has been interacted with is conducted at block 722. If the transmission of the encrypted data was successful and there is no detection of unauthorized interaction, then the encrypted data and the key data are processed in the decryption module where the key data and the encrypted data are combined with a decryption operator at block 724 to decrypt the source data. The resulting message data may then be output at block 726.
- the key data or the encrypted data may be interacted with during transmission, such that the data sets are eavesdropped on, listened to, viewed, or otherwise interacted with by an unauthorized third party. If interaction takes place, the verification of successful transmission will detect such interaction by detecting the anomalies within the data set caused by the unauthorized interaction’s measurement of the data set.
- the verification modules (610 in FIGS. 9A-9B; 714, 722 in FIG. 10) can identify that the transmission of the data set was not secure. When this occurs, the transmitted data set is discarded and an instruction for retransmission of the data set is sent. For example, at block 612 in FIGS. 9A-9B or block 728 in FIG.
- instructions to re-encrypt and retransmit the key data are sent. This instruction begins the process of resending the data set. It is noted that if the key data is determined to have been interacted with during transmission, retransmission of a new key data set is instructed, e.g., by instructing the encryption operator to reencrypt the source data to produce new key data and new encrypted data. The process then repeats with transmitting this new key data, and the process continues until there is a verified successful transmission without unauthorized interaction.
- the encrypted data may then be transmitted, and the success of that transmission is verified, e.g., at block 610 in FIGS. 9A-9B or in block 722 of FIG. 10. If there is evidence of an unauthorized interaction with the encrypted data, then the entire process begins again at the encryption operator with re-encrypting the source data with new key data and new encrypted data, as shown at block 614 in FIGS. 9A-9B and block 730 in FIG. 10. Any number of interactions of transmission, re-encryptions, and retransmission may occur until both the key data and the encrypted data are verified to have been successfully transmitted without unauthorized interaction.
- the verification module may operate in various methods to detect interaction.
- any interaction of the data sets may be detected, such that the detection of any anomaly causes the data sets to be destroyed and for the re-encrypting and retransmission process to begin.
- the transmission of the data sets may be adjusted to improve performance of the transmission.
- the transmission of the encrypted data or the key data may be varied based on timing differences of failure rates of earlier transmission, which can aid in achieving a future successful transmission.
- One or more algorithms may be used to control varying the process of sending the data based on timing differences of transmission.
- the key data may commonly be the first data to be transmitted while the encrypted data has transmission delayed to a later point in time, e.g, until verification of successful transmission of the key data can be completed.
- the encrypted data may be transmitted first while the key data is delayed.
- the specific priority of which data set is transmitted first or second may vary, depending on the design of the system. In the process of FIG. 10, the key data is disclosed as being transmitted first and the encrypted data is transmitted only after verification of successful transmission of the key data.
- One of the benefits of the system and method disclosed herein is that even if unauthorized interaction with the data sets occurs, it is only possible for that interaction to occur with one of the data sets, not both. For example, if interaction with the key data occurs, that interaction is detectable and causes the encrypted data to not be transmitted. If, however, the key data is successfully transmitted but the encrypted data is found to have been interacted with by unauthorized parties, then both the encrypted data and the key data are destroyed and the source data is re-encrypted for the process to begin again. Moreover, since both data sets are encrypted during transmission, even if an unauthorized third party were to eavesdrop, access, or otherwise interact with one of the data sets, they would be unable to discern any intelligible data from the data set since it is fully encrypted. Indeed, anyone who does look at the data during transmission will leam nothing, since they only will be able to view encrypted key data or encrypted data, but not both, regardless of the number of times the data is viewed.
- the method and system disclosed herein may further heighten security of the data transmission by encrypting it through use of a key which uses a number of bytes equal to or greater than the size of the data source.
- encryption may use a random number generator which generates a random key or number equal to or greater in size than the random bit size. Then, a random bit size generator generates a random bit size corresponding with every write request of the data source of a size equal to the random bit size.
- the system and method disclosed herein may be utilized with a variety of different data types.
- the data source may be a simplistic data set having a small size, or the data source may be a complex data set with a large size.
- the data source may also include blockchain data, such that the blockchain data can be transmitted securely through the system and method disclosed herein. In this way, the subject system and method effectively act as a tunnel to transmit blockchain data or ledgers therethrough.
- FIG. 11 is a flowchart 800 of a method for secure network communications of data, in accordance with the second embodiment of the present invention. It should be noted that any process descriptions or blocks in flow charts should be understood as representing modules, segments, portions of code, or steps that include one or more instructions for implementing specific logical functions in the process, and alternate implementations are included within the scope of the present disclosure in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present disclosure. As is shown by block 802, source data is provided. The source data is encrypted to produce encrypted data and key data corresponding to the encrypted data (block 804).
- a quantum key distribution is used to transmit a first of the encrypted data or the key data from a first network location (block 806). Successful transmission of the first of the encrypted data or the key data is verified (block 808). A QKD is then used to transmit the second of the encrypted data or the key data from the first network location (block 810). Successful transmission of the second of the encrypted data or the key data is verified (block 812). At a second network location, the encrypted data is decrypted with the key data to provide a data output (block 814). Any number of additional steps, functions, processes, or variants thereof may be included in the method, including any disclosed relative to any other figure of this disclosure.
- FIG. 12 is a flowchart 900 of a method for secure network communications of data using quantum key distribution, in accordance with the second embodiment of the present invention.
- any process descriptions or blocks in flow charts should be understood as representing modules, segments, portions of code, or steps that include one or more instructions for implementing specific logical functions in the process, and alternate implementations are included within the scope of the present disclosure in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present disclosure.
- source data located at a first network location is provided.
- the source data is encrypted to produce encrypted data and key data corresponding to the encrypted data, wherein a random bit size generator is used to generate a random bit size corresponding to every write request of the source data of a size equal to the random bit size, and a random key generator is used to generate a random key equal to or greater in size than the random bit size (block 904).
- the key data is transmitted from the first network location to a second network location (block 906). Successful transmission of the key data to the second location is verified (block 908).
- the encrypted data is transmitted from the first network location to the second network location using QKD (block 910).
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)
- Storage Device Security (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/996,869 US11108550B1 (en) | 2019-06-24 | 2020-08-18 | Method and system for highly secured network communication using quantum technologies |
PCT/US2021/039445 WO2022039836A1 (en) | 2020-08-18 | 2021-06-28 | Method and system for highly secured network communication |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3980945A1 true EP3980945A1 (en) | 2022-04-13 |
EP3980945A4 EP3980945A4 (en) | 2023-08-16 |
Family
ID=80323673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP21766559.5A Pending EP3980945A4 (en) | 2020-08-18 | 2021-06-28 | Method and system for highly secured network communication |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP3980945A4 (en) |
CN (1) | CN114450917B (en) |
CA (1) | CA3130274C (en) |
WO (1) | WO2022039836A1 (en) |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8099762B2 (en) * | 2003-12-02 | 2012-01-17 | Integic Technologies Llc | Secure digital content trading systems and methods |
DE102008010789B4 (en) * | 2008-02-22 | 2010-09-30 | Fachhochschule Schmalkalden | Method for the access and communication-related random encryption and decryption of data |
US9509506B2 (en) | 2011-09-30 | 2016-11-29 | Los Alamos National Security, Llc | Quantum key management |
JP2016171530A (en) | 2015-03-13 | 2016-09-23 | 株式会社東芝 | Communication apparatus, communication method, program and communication system |
JP6478749B2 (en) | 2015-03-24 | 2019-03-06 | 株式会社東芝 | Quantum key distribution apparatus, quantum key distribution system, and quantum key distribution method |
US10476854B2 (en) | 2017-04-20 | 2019-11-12 | Bank Of America Corporation | Quantum key distribution logon widget |
US10402169B2 (en) * | 2017-07-12 | 2019-09-03 | Dell Products L.P. | Method and system of secure random seed generation for a cryptographically secure pseudo-random number generator |
CN110581763B (en) * | 2018-06-09 | 2022-07-15 | 成都零光量子科技有限公司 | Quantum key service block chain network system |
CN108737114A (en) * | 2018-06-19 | 2018-11-02 | 天津中兴云链技术有限公司 | A kind of endorsement method and device of the block catenary system based on quantum key distribution |
CN110719165B (en) * | 2019-10-12 | 2022-07-12 | 杭州云象网络技术有限公司 | Block chain distributed dynamic network key generation and encryption method |
CN111327419B (en) * | 2020-01-21 | 2022-11-01 | 南京如般量子科技有限公司 | Method and system for resisting quantum computation block chain based on secret sharing |
-
2021
- 2021-06-28 WO PCT/US2021/039445 patent/WO2022039836A1/en unknown
- 2021-06-28 EP EP21766559.5A patent/EP3980945A4/en active Pending
- 2021-06-28 CA CA3130274A patent/CA3130274C/en active Active
- 2021-06-28 CN CN202180003836.5A patent/CN114450917B/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2022039836A1 (en) | 2022-02-24 |
CA3130274C (en) | 2023-08-01 |
CN114450917B (en) | 2024-05-10 |
EP3980945A4 (en) | 2023-08-16 |
CA3130274A1 (en) | 2022-02-18 |
CN114450917A (en) | 2022-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11108550B1 (en) | Method and system for highly secured network communication using quantum technologies | |
US10984138B1 (en) | Method and system for providing highly secured transportable data | |
US7742601B2 (en) | Encryption method using synchronized continuously calculated pseudo-random key | |
JP4703791B2 (en) | Data re-encryption apparatus and method | |
US9191198B2 (en) | Method and device using one-time pad data | |
CA2197915C (en) | Cryptographic key recovery system | |
IL264776B (en) | Systems and methods for secure communication using random cipher pad cryptography | |
US20020159598A1 (en) | System and method of dynamic key generation for digital communications | |
US11457001B2 (en) | System and method for securely encrypting data | |
CN111034115B (en) | Encryption system and method for expanding apparent size of true random number pool | |
JPH118620A (en) | System and method for efficiently executing authentication of communication channel and facilitating detection of illegal forgery | |
US11341254B2 (en) | Method and system for securing data using random bits | |
US11201729B2 (en) | Devices and methods for enabling portable secure communication using random cipher pad cryptography by enabling communications to be passed to the device from a host, encrypted and/or decrypted, and passed back to the host | |
JPWO2020251795A5 (en) | ||
CN112347493A (en) | Encryption, decryption and graying method for OFD (office file) | |
US11537728B1 (en) | Method and system for securing data using random bits and encoded key data | |
JPH05210561A (en) | Data safety storage retrieving method and device, and computer system | |
CA3130274C (en) | Method and system for highly secured network communication | |
JPH02110491A (en) | Storage device | |
US11562081B2 (en) | Method and system for controlling access to secure data using custodial key data | |
GB2427333A (en) | Encryption using a combination of first and second One-Time Pad (OTP) data | |
Tripathi et al. | The hybrid cryptography for enhancing the data security in fog computing | |
Kaur et al. | Cryptography in cloud computing | |
Reinhold | Terakey-An Encryption Method Whose Security Can Be Analyzed from First Principles | |
Bharali et al. | Secure Files Storage in Cloud using Hybrid Cryptography |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20210917 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04L 9/40 20220101ALI20230306BHEP Ipc: H04L 9/08 20060101ALI20230306BHEP Ipc: G06N 10/00 20190101AFI20230306BHEP |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 20230717 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: H04L 9/06 20060101ALI20230711BHEP Ipc: H04L 9/40 20220101ALI20230711BHEP Ipc: H04L 9/08 20060101ALI20230711BHEP Ipc: G06N 10/00 20220101AFI20230711BHEP |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) |