WO2024009052A1 - Secure storage of data - Google Patents

Secure storage of data Download PDF

Info

Publication number
WO2024009052A1
WO2024009052A1 PCT/GB2023/051620 GB2023051620W WO2024009052A1 WO 2024009052 A1 WO2024009052 A1 WO 2024009052A1 GB 2023051620 W GB2023051620 W GB 2023051620W WO 2024009052 A1 WO2024009052 A1 WO 2024009052A1
Authority
WO
WIPO (PCT)
Prior art keywords
mask
data
data item
encrypted
key
Prior art date
Application number
PCT/GB2023/051620
Other languages
French (fr)
Inventor
Herschel Aditya CHAWDHRY
Original Assignee
Oxford University Innovation Limited
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 Oxford University Innovation Limited filed Critical Oxford University Innovation Limited
Publication of WO2024009052A1 publication Critical patent/WO2024009052A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • 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
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

Definitions

  • the present invention relates to the storage of data in a secure manner, in particular to the storage of data in such a manner that an adversary is limited in the number of guesses of a password required for access that can be made.
  • Brute-force attacks are a major vulnerability of password-protected systems, particularly in cases where the adversary has physical access to the system (e.g. a thief trying to access the data on a stolen laptop) or an off-line copy of encrypted data.
  • the adversary has physical access to the system (e.g. a thief trying to access the data on a stolen laptop) or an off-line copy of encrypted data.
  • users are typically required to choose complicated passwords, but this increases the risk of forgetting the password. Writing the password down is not desirable as it makes it vulnerable to either misplacement or theft.
  • a method of securely storing data comprising: obtaining a data item to be stored; receiving a user password; generating a mask from the user password using a deterministic algorithm, the mask matching the length of the data item; and storing the data item in a quantum memory using the mask to determine the basis for storage.
  • a method of retrieving securely stored data comprising: receiving a user password; generating a mask from the user password using a deterministic algorithm, the mask matching the length of a data item to be retrieved; and accessing the data item in a quantum memory using the mask to determine the basis for access to the quantum memory.
  • a computer program comprising computer-readable code means for instructing a computer system to perform a method as described above.
  • a security device comprising a processor, a quantum memory and a memory storing instructions to perform a method as described above.
  • Figure 1 depicts a computer system in which the present invention may be embodied
  • Figure 2 depicts a security device according to an embodiment of the invention
  • Figure 3 is a flow chart of an encryption method according to an embodiment of the invention.
  • Figure 4 is a flow chart of an decryption method according to an embodiment of the invention.
  • the strength of a password is quantified by its entropy, which is measured in bits. If a password consists of randomly-chosen case-insensitive letters, each letter carries log2(26) ⁇ 4.7 bits of entropy. If rather than being random, the letters spell out a sentence, then the entropy is generally estimated to be approximately 1 bit per letter. The difficulty of a bruteforce attack increases exponentially with the total entropy of a password. In high-security domains, it is standard practice to use encryption keys that are at least 256 bits long. This is equivalent to a sequence of 55 random letters, and is therefore too difficult to memorise (for most users).
  • the authentication protocol presented here allows encryption/ authentication keys of arbitrarily high entropy to be used, while only requiring the user to memorise a simple low-entropy password.
  • qubits are the quantum-mechanical equivalent of the “0”s and “l”s of classical computing/communication.
  • a qubit can take one of two values, 0 or 1.
  • a “basis” must be chosen before reading from or writing to a qubit. If one first writes to a qubit using one basis and later reads the qubit using a different basis, the qubit will spontaneously adopt a random value (0 or 1) along the new basis, and the former value in the old basis will be irretrievably destroyed.
  • conjugate coding is widely used in quantum communications and is used in the present invention.
  • FIG. 1 depicts a system in which the present invention may be embodied.
  • a user device 10 communicates with a security device 20 which controls access to a secured system 30 which, in turn, controls access to securely stored data 40.
  • security device 20 includes a random number generator 21 for generating a long random number.
  • An input interface 22 receives a user password or pin, e.g. from user terminal 10.
  • Mask generator 23 processes the user password or pin into a bit sequence of equal length of the long random number generated by random number generator 21.
  • Write module 26 uses a bit sequence generated by mask generator 23 to control storage of the random number generated by random number generator 21 into a quantum memory 28 which comprises qubits QB_1 to QB_N, equal in number to the length in bits of the random number. As discussed further below, multiple parallel qubit memories 28 may be provided.
  • readout module 27 similarly uses the mask generated from the user’s password or pin to readout from quantum memory 28.
  • Output processor 24 performs any desired processes on the data item retrieved from quantum memory 28 and output interface 25 communicates the processed output for the desired use.
  • Part A “encryption” - depicted in Figure 3
  • S is used for the process that originally required a strong password (e.g. encrypting a hard drive, registering an account, etc.)
  • the user’s password is received, e.g. from the user or an automatic password generator.
  • B may be considered an example of a mask for storing the password.
  • the user’s password is received, e.g. from the user.
  • step 2 e.g. decrypting a hard drive, logging into an account, etc.
  • S has N bits
  • An algorithm (which may or may not be deterministic) - e.g. secret sharing, finite-field-based encoding, or salting - is used to generate a longer number S’ to store, such that on retrieval S can be obtained from S’ by a deterministic algorithm such as hashing or decryption.
  • M e.g. secret sharing, finite-field-based encoding, or salting
  • steps S4 and S7 one can generate an alternative basis B’ (instead of B) by applying an N-bit cryptographic hash to the user’s password.
  • the protocol only allows a single password attempt. This maximises the difficulty of a brute-force attack. However, it may be beneficial to allow more than one attempt, in order to tolerate user mistakes.
  • T attempts can be allowed by providing T parallel quantum memories 28, each storing a distinct, independently-generated value of S, which can be denoted S n . Note that by allowing the user to make T attempts, we also allow an adversary to make T attempts, so it is desirable that T is a small number (e.g.
  • each of the parallel memories 28 stores a different value S n , each of the values S n must give access to the protected system. Since S n can be made almost arbitrarily long, this does not significantly reduce security. However if the protected system is encrypted data, it would be inconvenient to store multiple copies of the data, each encrypted with a different S n .
  • the use of an intermediate key in this way may be advantageous in other circumstances, e.g. to avoid having to re-encrypt the protected data after a successful access or to allow multiple users to access the data.
  • the protocol is not limited to the use of a specific form of qubit; any type of quantum system that provides multiple bases for storing can be used, irrespective of the underlying technology. It is desirable that the quantum information storage device used provides longterm storage, in order to allow Part B of the protocol to take place several hours/days/months after Part A.
  • Current candidates for long-term quantum information storage include: an optically trapped ultracold gas of RbCs molecules; a 171 Yb+ single-ion qubit memory; an ion-doped crystal. The exact length of time required will depend on the application. In some cases, e.g. to allow time-limited access to data or a facility or to authorise high value rapid transactions, a short storage time may be an advantage.
  • this protocol does not require the qubits to be entangled with each other. This means that the protocol can be implemented using a series of single-qubit memories, rather than requiring a (much more challenging) multi-qubit quantum memory.
  • a strong key S is generated for a user to access a protected system.
  • the protected system stores a hash of strong key S in its own secured memory.
  • An access control device stores the strong key S in a quantum storage system of the invention, protected by the user's memorable password.
  • the user When seeking access to the protected system, the user provides their memorable password to the access control device, which recovers the secure key from the quantum memory and supplies it to the protected system, which grants access if the hash of the supplied key matches the hash previously stored in its secure memory. If an adversary breaches the access control device and gains full access to the qubits contained inside it, the adversary is limited in the number of guesses they can make of the user's memorable password in order to recover the strong key S and gain access to the protected system.
  • the methods of the present invention may be performed by computer systems comprising one or more computers.
  • a computer used to implement the invention may comprise one or more processors, including general purpose CPUs, graphical processing units (GPUs), tensor processing units (TPU) or other specialized processors.
  • a computer used to implement the invention may be physical or virtual.
  • a computer used to implement the invention may be a server, a client or a workstation. Multiple computers used to implement the invention may be distributed and interconnected via a network such as a local area network (LAN), wide area network (WAN) or quantum communication network. Individual steps of the method may be carried out by a computer system but not necessarily the same computer system.
  • the invention may be applied in an arrangement where the user interacts with a mobile device whilst the quantum memory is maintained by a server, which carries out at least steps S5 and S8. Results of a method of the invention may be displayed to a user or stored in any suitable storage medium.
  • the present invention may be embodied in a non-transitory computer-readable storage medium that stores instructions to carry out a method of the invention.
  • the present invention may be embodied in a computer system comprising one or more processors and memory or storage storing instructions to carry out a method of the invention.
  • the present invention may be incorporated into software updates or add-ons for a pre-existing system or device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Electromagnetism (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

A method of securely storing data comprising: obtaining a data item to be stored; receiving a user password; generating a mask from the user password using a deterministic algorithm, the mask matching the length of the data item; and storing the data item in a quantum memory using the mask to determine the basis for storage.

Description

SECURE STORAGE OF DATA
Field
[0001] The present invention relates to the storage of data in a secure manner, in particular to the storage of data in such a manner that an adversary is limited in the number of guesses of a password required for access that can be made.
Background
[0002] Many computer systems and data need to be secured against unauthorised access. Passwords are a very convenient form of authentication used to gain authorised access. Unlike physical authentication tokens (e.g. an ATM card or a door key), a password is ideally memorised and therefore cannot be physically stolen or lost. However, since most people are not capable of memorising long strings of random characters, many people choose short and/or common passwords. Therefore, there is a risk that an adversary might break into a password-protected system by simply guessing the right password. In many situations, the adversary has the advantage of being able to use a computer to try millions of passwords until they find the correct one: this is known as a brute-force attack. Brute-force attacks are a major vulnerability of password-protected systems, particularly in cases where the adversary has physical access to the system (e.g. a thief trying to access the data on a stolen laptop) or an off-line copy of encrypted data. To protect against brute-force attacks, users are typically required to choose complicated passwords, but this increases the risk of forgetting the password. Writing the password down is not desirable as it makes it vulnerable to either misplacement or theft.
Summary
[0003] It is an aim of the invention to improve security and/or user convenience, e.g. by allowing users to use simple passwords without becoming vulnerable to brute-force attacks, even if an adversary gains full physical access to a protected system.
[0004] According to the invention there is provided a method of securely storing data comprising: obtaining a data item to be stored; receiving a user password; generating a mask from the user password using a deterministic algorithm, the mask matching the length of the data item; and storing the data item in a quantum memory using the mask to determine the basis for storage.
[0005] According to the invention there is provided a method of retrieving securely stored data comprising: receiving a user password; generating a mask from the user password using a deterministic algorithm, the mask matching the length of a data item to be retrieved; and accessing the data item in a quantum memory using the mask to determine the basis for access to the quantum memory.
[0006] According to the invention there is provided a computer program comprising computer-readable code means for instructing a computer system to perform a method as described above.
[0007] According to the invention there is provided a security device comprising a processor, a quantum memory and a memory storing instructions to perform a method as described above.
Brief Description of the Drawings
[0008] The present invention is described below with reference to exemplary embodiments and the accompanying schematic drawings, in which:
[0009] Figure 1 depicts a computer system in which the present invention may be embodied;
[0010] Figure 2 depicts a security device according to an embodiment of the invention;
[0011] Figure 3 is a flow chart of an encryption method according to an embodiment of the invention; and
[0012] Figure 4 is a flow chart of an decryption method according to an embodiment of the invention.
[0013] In the drawings, like parts are indicated by like references. Detailed Description of Embodiments
[0014] The strength of a password is quantified by its entropy, which is measured in bits. If a password consists of randomly-chosen case-insensitive letters, each letter carries log2(26) ~ 4.7 bits of entropy. If rather than being random, the letters spell out a sentence, then the entropy is generally estimated to be approximately 1 bit per letter. The difficulty of a bruteforce attack increases exponentially with the total entropy of a password. In high-security domains, it is standard practice to use encryption keys that are at least 256 bits long. This is equivalent to a sequence of 55 random letters, and is therefore too difficult to memorise (for most users). The authentication protocol presented here allows encryption/ authentication keys of arbitrarily high entropy to be used, while only requiring the user to memorise a simple low-entropy password.
[0015] The quantum-mechanical aspects of the protocol are described in terms of “qubits”, which are the quantum-mechanical equivalent of the “0”s and “l”s of classical computing/communication. There are numerous different ways to implement qubits in practice, and the protocol is not affected by the choice of implementation. Just like its classical analogue, a qubit can take one of two values, 0 or 1. In contrast to the classical case, however, a “basis” must be chosen before reading from or writing to a qubit. If one first writes to a qubit using one basis and later reads the qubit using a different basis, the qubit will spontaneously adopt a random value (0 or 1) along the new basis, and the former value in the old basis will be irretrievably destroyed. This property, known as conjugate coding, is widely used in quantum communications and is used in the present invention.
[0016] This invention uses quantum mechanics to improve on password-based authentication systems. A secure (but long) password is randomly generated and stored inside qubits, in a basis that depends on a simple password chosen by the user. Any suitable random or pseudo-random number generating process may be used, the more truly random the better. The qubits are stored by the “host” (e.g. the server), not the user. To prove their identity, the only thing the user needs is knowledge of the password; there is no requirement for them to carry a physical authentication token (such as a smart card, key fob, or other cryptographic device). However an additional factor, such as a physical token or biometric sensor, can be used as well for additional security. The process and an exemplary system in which it can be implemented is described in more detail below. [0017] Figure 1 depicts a system in which the present invention may be embodied. A user device 10 communicates with a security device 20 which controls access to a secured system 30 which, in turn, controls access to securely stored data 40.
[0018] As depicted in Figure 2, security device 20 includes a random number generator 21 for generating a long random number. An input interface 22 receives a user password or pin, e.g. from user terminal 10. Mask generator 23 processes the user password or pin into a bit sequence of equal length of the long random number generated by random number generator 21. Write module 26 uses a bit sequence generated by mask generator 23 to control storage of the random number generated by random number generator 21 into a quantum memory 28 which comprises qubits QB_1 to QB_N, equal in number to the length in bits of the random number. As discussed further below, multiple parallel qubit memories 28 may be provided. For readout, readout module 27 similarly uses the mask generated from the user’s password or pin to readout from quantum memory 28. Output processor 24 performs any desired processes on the data item retrieved from quantum memory 28 and output interface 25 communicates the processed output for the desired use.
[0019] Part A: “encryption” - depicted in Figure 3
51. A secure N-bit key S = {S_l, S_N} is randomly generated by a classical or quantum method (with e.g. N=256 bits). S is an example of a data item to be securely stored.
52. S is used for the process that originally required a strong password (e.g. encrypting a hard drive, registering an account, etc.)
53. The user’s password, is received, e.g. from the user or an automatic password generator.
54. The user’s password, which can be simple, is deterministically compressed to produce a high-entropy-per-bit sequence P = {P_l , .. . , P_m} . Note that m is typically small if the user’s password is simple. P is repeated to obtain a bit string B = {P l, .. ., P m, P l, .. ., P_m, ...} of the same length as S.
55. S is stored in the qubits QB_1 to QB_N, with B determining the basis for each qubit. (Specifically, store S i in qubit QB_i using the x-basis if B i = 0 and the y-basis if B i = 1 (or vice versa)). For this purpose, B may be considered an example of a mask for storing the password. [0020] Part B: “decryption” depicted in Figure 4
56. The user’s password, is received, e.g. from the user.
57. Same as step 4.
58. Obtain 5 by reading QB_1 to QB_N in the basis B l to B N.
59. Use S for the purpose that is complementary to step 2 (e.g. decrypting a hard drive, logging into an account, etc.)
[0021] The security of the system arises because an adversary who does not know the user’s password would not know which basis to use in step S8. Without knowing the correct basis, any measurement made on quantum memory 28 will alter the state of quantum memory 28, making it forever impossible thereafter to retrieve S. Technically, random measurements on quantum memory 28 provide the adversary with some information about S, but this can be mitigated by increasing N by a small factor e.g. about 2 to 4.
[0022] Various modifications and extensions of the above protocol are possible. For example, when storing S in the qubits QB_1 to QB_N, it is possible to use 3 mutually orthogonal bases rather than 2. (These 3 bases correspond to the x, y, z directions on the Bloch sphere.) To do this, P and B should be sequences of trits (i.e. numbers from the set {0,1,2}) rather than bits (numbers from the set {0,1 }). This means an adversary who tries to randomly guess B will only obtain the correct basis for one third of the qubits, rather than one half.
[0023] Another variation is, if S has N bits, to use N*M qubits for some small M (e.g. M=5) to exponentially reduce power of random guessing. An algorithm (which may or may not be deterministic) - e.g. secret sharing, finite-field-based encoding, or salting - is used to generate a longer number S’ to store, such that on retrieval S can be obtained from S’ by a deterministic algorithm such as hashing or decryption. This has the advantage that even if an adversary obtains some information about S’ they have virtually no useful information about 5.
[0024] It could be beneficial to modify the method in order to accommodate noisy qubits, e.g. by using Reed-Solomon encoding to store S. (However, it may be advantageous to tolerate only a small amount of noise, since high tolerance to noise could benefit an adversary.)
[0025] Instead of steps S4 and S7, one can generate an alternative basis B’ (instead of B) by applying an N-bit cryptographic hash to the user’s password. [0026] In the form described above, the protocol only allows a single password attempt. This maximises the difficulty of a brute-force attack. However, it may be beneficial to allow more than one attempt, in order to tolerate user mistakes. T attempts can be allowed by providing T parallel quantum memories 28, each storing a distinct, independently-generated value of S, which can be denoted Sn. Note that by allowing the user to make T attempts, we also allow an adversary to make T attempts, so it is desirable that T is a small number (e.g. 10) - enough to help an honest user but not enough to significantly help an adversary. The parallel quantum memories should not store the same value S using the same basis as this would allow the adversary to determine the value S by making multiple read attempts. Also, note that to have T parallel quantum memories, we of course require T times more qubits. [0027] Given that each of the parallel memories 28 stores a different value Sn, each of the values Sn must give access to the protected system. Since Sn can be made almost arbitrarily long, this does not significantly reduce security. However if the protected system is encrypted data, it would be inconvenient to store multiple copies of the data, each encrypted with a different Sn. This can be avoided by storing the data encrypted by an intermediate key S’, again which can be almost arbitrarily long, and storing multiple copies of the intermediate key S’, each encrypted by a different one of Sn, as a plurality of encrypted key files. The use of an intermediate key in this way may be advantageous in other circumstances, e.g. to avoid having to re-encrypt the protected data after a successful access or to allow multiple users to access the data.
[0028] The protocol is not limited to the use of a specific form of qubit; any type of quantum system that provides multiple bases for storing can be used, irrespective of the underlying technology. It is desirable that the quantum information storage device used provides longterm storage, in order to allow Part B of the protocol to take place several hours/days/months after Part A. Current candidates for long-term quantum information storage (or “quantum memory”) include: an optically trapped ultracold gas of RbCs molecules; a 171 Yb+ single-ion qubit memory; an ion-doped crystal. The exact length of time required will depend on the application. In some cases, e.g. to allow time-limited access to data or a facility or to authorise high value rapid transactions, a short storage time may be an advantage.
[0029] In some types of qubit, a successful read with the correct basis will leave the content of the qubit unchanged. In that case no additional measures are required to allow multiple use. In other cases, read out of the qubit effectively erases it, in which case the key S is stored again into memory using the same basis. Keeping S the same in this case likely does not reduce security to a significant extent but it is also possible to generate a new key S to store again.
[0030] Unlike many applications of quantum memory, this protocol does not require the qubits to be entangled with each other. This means that the protocol can be implemented using a series of single-qubit memories, rather than requiring a (much more challenging) multi-qubit quantum memory.
[0031] There are numerous applications of this protocol, since password-based authentication is so common in the modem world. It would be particularly valuable in offline authentication situations that lack a secure authority who can limit the number of password attempts. Examples include protecting portable devices like laptops and mobile phones. The protocol is also valuable in situations with online authentication: recent years have seen numerous cases where the secure authority (e.g. a web server) has been hacked, leading to the theft of databases of hashed/ encrypted passwords which the attacker can then attempt to decode via brute force.
[0032] Other applications of the protocol include controlling access to buildings, bank vaults, confidential archives, sensitive information, etc.. These applications do not require miniaturisation of the qubit storage technology. The data item to be stored is not restricted to a key for encryption of other data but may have other uses, e.g. an access token or address. [0033] An advantageous application of the invention for access control is as follows. A strong key S is generated for a user to access a protected system. The protected system stores a hash of strong key S in its own secured memory. An access control device stores the strong key S in a quantum storage system of the invention, protected by the user's memorable password. When seeking access to the protected system, the user provides their memorable password to the access control device, which recovers the secure key from the quantum memory and supplies it to the protected system, which grants access if the hash of the supplied key matches the hash previously stored in its secure memory. If an adversary breaches the access control device and gains full access to the qubits contained inside it, the adversary is limited in the number of guesses they can make of the user's memorable password in order to recover the strong key S and gain access to the protected system. Even if an adversary breaches the access control device and, by other means, also breaches the protected system, thereby obtaining full access to the qubits and the hash of the secure password S, the adversary is limited in the number of guesses they can make to determine the user's memorable password with the aim of subsequently accessing other independent systems on which the user has re-used their memorable password. Thus a common weakness that a breach of one system leads to a breach of other independent systems (due to password re-use by users) is avoided.
[0034] The methods of the present invention may be performed by computer systems comprising one or more computers. A computer used to implement the invention may comprise one or more processors, including general purpose CPUs, graphical processing units (GPUs), tensor processing units (TPU) or other specialized processors. A computer used to implement the invention may be physical or virtual. A computer used to implement the invention may be a server, a client or a workstation. Multiple computers used to implement the invention may be distributed and interconnected via a network such as a local area network (LAN), wide area network (WAN) or quantum communication network. Individual steps of the method may be carried out by a computer system but not necessarily the same computer system. For example, the invention may be applied in an arrangement where the user interacts with a mobile device whilst the quantum memory is maintained by a server, which carries out at least steps S5 and S8. Results of a method of the invention may be displayed to a user or stored in any suitable storage medium. The present invention may be embodied in a non-transitory computer-readable storage medium that stores instructions to carry out a method of the invention. The present invention may be embodied in a computer system comprising one or more processors and memory or storage storing instructions to carry out a method of the invention. The present invention may be incorporated into software updates or add-ons for a pre-existing system or device.
[0035] Having described the invention it will be appreciated that variations may be made to the above described embodiments which are not intended to be limiting. The invention is defined in the appended claims and their equivalents.

Claims

1. A method of securely storing data comprising: obtaining a data item to be stored; receiving a user password; generating a mask from the user password using a deterministic algorithm, the mask matching the length of the data item; and storing the data item in a quantum memory using the mask to determine the basis for storage.
2. A method according to any one of the preceding claims wherein obtaining a data item comprises generating a random or pseudo-random number.
3. A method according to any one of the preceding claims further comprising encrypting a data file using the data item as a key to generate an encrypted data file.
4. A method according to claim 3 further comprising storing the encrypted file in a classical memory.
5. A method according to any one of the preceding claims wherein storing the data item comprises storing a plurality of data items in a plurality of separate quantum memories.
6. A method according to claim 5 further comprising encrypting a data file using an intermediate key to generate an encrypted data file; encrypting the intermediate key separately with each of the data items as secondary keys to generate a plurality of encrypted key files.
7. A method of retrieving securely stored data comprising: receiving a user password; generating a mask from the user password using a deterministic algorithm, the mask matching the length of a data item to be retrieved; and accessing the data item in a quantum memory using the mask to determine the basis for access to the quantum memory.
8. A method according to claim 7 further comprising using the data item as a key to decode an encrypted fde.
9. A method according to claim 8 wherein the encrypted file is an encrypted key file and further comprising using the content of the encrypted key file as a key to decrypt an encrypted data file.
10. A method according to any one of the preceding claims wherein generating a mask comprises deterministically compressing the user password to produce a digit-sequence having a high entropy per digit.
11. A method according to claim 10 wherein generating a mask further comprises repeating the digit-sequence.
12. A method according to any one of the preceding claims wherein generating a mask comprises hashing the user password.
13. A method according to any one of the preceding claims wherein the mask is a ternary number and the quantum memory has three orthogonal bases for each qubit.
14. A method according to any one of the preceding claims wherein the data item has greater entropy than the user password.
15. A computer program comprising computer-readable code means for instructing a computer system to perform a method according to any one of the preceding claims.
16. A security device comprising a processor, a quantum memory and a memory storing instructions to perform a method according to any one of claims 1 to 14.
PCT/GB2023/051620 2022-07-04 2023-06-21 Secure storage of data WO2024009052A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB2209779.4 2022-07-04
GB2209779.4A GB2620388A (en) 2022-07-04 2022-07-04 Secure storage of data

Publications (1)

Publication Number Publication Date
WO2024009052A1 true WO2024009052A1 (en) 2024-01-11

Family

ID=82802588

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2023/051620 WO2024009052A1 (en) 2022-07-04 2023-06-21 Secure storage of data

Country Status (2)

Country Link
GB (1) GB2620388A (en)
WO (1) WO2024009052A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083327A1 (en) * 1997-12-23 2002-06-27 Sanguthevar Rajasekaran Method and apparatus for camouflaging of data, information and functional transformations

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004056357A (en) * 2002-07-18 2004-02-19 Tamagawa Gakuen Method for authenticating registered user employing quantum key
US20180034639A1 (en) * 2011-10-04 2018-02-01 International Business Machines Corporation Multiple credentials for mitigating impact of data access under duress
CN112187448B (en) * 2019-07-01 2023-04-07 北京国盾量子信息技术有限公司 Data encryption method and system
CN113852463A (en) * 2021-09-27 2021-12-28 上海市质量监督检验技术研究院 Quantum image encryption method and system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083327A1 (en) * 1997-12-23 2002-06-27 Sanguthevar Rajasekaran Method and apparatus for camouflaging of data, information and functional transformations

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WANG A RAHMAN INTERDIGITAL COMMUNICATIONS C ET AL: "Application Scenarios for the Quantum Internet draft-irtf-qirg-quantum-internet-use-cases-09; draft-irtf-qirg-quantum-internet-use-cases-09.txt", no. 9, 4 March 2022 (2022-03-04), pages 1 - 34, XP015150565, Retrieved from the Internet <URL:https://tools.ietf.org/html/draft-irtf-qirg-quantum-internet-use-cases-09> [retrieved on 20220304] *

Also Published As

Publication number Publication date
GB2620388A (en) 2024-01-10
GB202209779D0 (en) 2022-08-17

Similar Documents

Publication Publication Date Title
CN106534092B (en) The privacy data encryption method of key is depended on based on message
US6986050B2 (en) Computer security method and apparatus
EP1043862B1 (en) Generation of repeatable cryptographic key based on varying parameters
US8817981B2 (en) Generation of registration codes, keys and passcodes using non-determinism
US11741218B2 (en) System and method for improving the security of stored passwords for an organization
US8209751B2 (en) Receiving an access key
US20030219121A1 (en) Biometric key generation for secure storage
US20080288786A1 (en) System with access keys
US8495379B2 (en) Method and system for managing a hierarchy of passwords
US11321448B1 (en) System and method for improving the security of stored passwords for an organization
Boonkrong Security of passwords
US11601291B2 (en) Authentication method and device for matrix pattern authentication
US20210105255A1 (en) Encrypted Data Processing System and Program
Gupta et al. A model for biometric security using visual cryptography
WO2024009052A1 (en) Secure storage of data
Sreelaja et al. An image edge based approach for image password encryption
US20230104633A1 (en) Management system and method for user authentication on password based systems
McGiffen Hashing and salting of passwords
US20020025040A1 (en) Method and apparatus for generating an encryption key
CN118072426B (en) Hash-based intelligent door lock user information storage method, unlocking method and intelligent door lock
Yeole Proposal for novel 3D password for providing authentication in critical web applications
Chakraborty et al. A Study on Password Protection and Encryption in the era of Cyber Attacks
Lopes et al. Application H-Secure for mobile security
Nazir et al. User authentication for mobile device through image selection
Marchang et al. Multidimensional: User with File Content and Server’s Status Based Authentication for Secure File Operations in Cloud

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: 23736442

Country of ref document: EP

Kind code of ref document: A1