1. Introduction
As the age of scalable quantum computing comes closer to becoming a reality, research into cryptographic algorithms that are secure against quantum adversaries becomes increasingly important. The transition to new algorithms for real-world applications and protocols has historically been slow. It took nearly two decades [
1] for current public-key cryptographic infrastructure to be fully deployed; hence, new post-quantum infrastructure can be expected to take a similar amount of time. Additionally, maintaining legacy systems and addressing concerns of potential downgrade attacks should be considered when the transition begins. Finally, while quantum-resistant schemes have been increasingly studied and analyzed, the underlying hardness assumptions remain relatively novel, in which future cryptanalysis may show that they are vulnerable to quantum attacks or, even worse, classical attacks. As the release of standards is still years away and full deployment of quantum-resistant algorithms is a long-term effort, there is still a need to secure today’s data from quantum adversaries.
Hybrid Cryptography and Combiners. So-called classical–quantum hybrid cryptography, which combines classically secure and quantum-resistant algorithms to produce a new secure scheme, represents a stopgap solution to the dilemma of transitioning from classical to quantum-resistant cryptographic infrastructure and the need to secure data and communications versus the cost, and the time, to fully transition. Harnik et al. [
2] formalized this idea of combining algorithms as a
-robust combiner, where
n represents the number of inputs and
k represents the threshold of secure inputs required to achieve security. Hybrid combiners have been the subject of previous works for various primitives, such as Bindel et al. [
3] on hybrid signatures and Bindel et al. [
4] on hybrid key encapsulation mechanisms (KEMs) and hybrid authenticated key exchange.
Traditional combiners for public-key encryption (PKE), the focus of this work, have also been studied by Asmuth and Blakely [
5], Herzberg [
6], and Zhang et al. [
7]. However, these previous results either failed to achieve
-security [
6], required every input to be secure [
8], or lacked a proof against quantum adversaries [
9].
In the place of PKE combiners, there has been successful work in the field of KEM combiners. Giacon et al. presented a swath of different construction of robust
combiners for KEMs using different
core function constructions to produce the final key [
10]. However, the results are limited to only KEMs with perfect correctness, which many quantum-resistant schemes do not have. Bindel et al. additionally provided three more constructions of robust KEM combiners against adversaries with varying levels of quantum capabilities over time [
4].
Currently, there is interest in both academia and industry for hybrid cryptography. As mentioned, both Bindel et al. [
3], and Bindel et al. [
4] constructed hybrid primitives, digital signatures, and KEMs, respectively, with the latter also presenting a design for a hybrid authenticated key exchange built from hybrid KEMs. Mirroring the interest in hybrid cryptography, ISARA and Cisco investigated the viability of hybrid X.509 digital certificates [
11] in 2018. Meanwhile, in 2016, Google experimented with combining elliptic curve Diffie–Hellman (ECDH) and ring-learning with errors (R-LWE) key exchange in the transport layer security (TLS) stack in a test version of its Chrome web browser [
12,
13].
Our Contributions. In this work, we present a (mostly) generic construction of a
-robust combiner for PKEs that preserves
-security in the random oracle model and in the quantum random oracle model, which we call the Quantum Augmented KEM-DEM (or QuAKe) combiner. Furthermore, the security reduction of our construction is tight in both the classical and, more importantly, quantum random oracle models. We achieve this with the use of two PKEs, one of which we require to be built from the KEM-DEM paradigm put forth by Cramer and Shoup [
14], and a pair of random oracles,
. Our construction relies on preventing an adversary from obtaining both the symmetrically encrypted message, along with a random seed, and the asymmetrically encrypted key by encrypting the symmetric ciphertext under the second PKE. By doing this, an adversary can only obtain the encrypted message and key if they were already able to break the security of both the KEM-DEM and the second PKE. Additionally, the random seed is used to guard against re-encryption and re-encapsulation attacks, as well as mix-and-match attacks. We then prove the security reduction of QuAKe is tight in both the classical and quantum random oracle models.
The paper is organized as follows. In
Section 2, we define our notation lemmas required for our proof in the quantum random oracle mode and give some preliminary cryptographic definitions. In
Section 3, we present our construction and its security. In
Section 4, we review previous results on PKE and KEM combiners, and then provide a comparison with previous results. We then conclude our paper in
Section 5.
2. Preliminaries
In this section, we cover the preliminaries used in this work. We begin with the notation used, then an introduction to the random oracle model, the security notions and definitions used, and finally define -robust combiners.
2.1. Notation
By we denote an algorithm, (either classical or quantum), that runs on (classical) input x, and (classical) outputs y. When has access to an oracle, , we write this as . If is an algorithm that uses some randomness in its execution on input x and we wish to specify what the randomness is, say r, we denote it as . We refer to specific subroutines within as . We consider all adversaries as algorithms (either classical or quantum) that are probabilistic polynomial time on their input length.
We write to denote that x was outputted by S probabilistically, where if S is some algorithm, then x was selected according to some internal distribution, and if S is some space, such as , then we implicitly mean for x to be sampled uniformly at random.
We say a function g mapping non-negative integers to non-negative reals is called negligible, if for all positive numbers c, there exists an integer such that for all we have . A family of functions F is called q-wise independent if for any distinct and for the values are independently uniformly distributed.
2.2. Random Oracle Model and Quantum Random Oracle Model
In this section, we briefly describe the random oracle model (ROM) and quantum random oracle model (QROM) and state the lemmas that will be used in the main result when proving the
-security of QuAKe. We provide a brief introduction to quantum computing in
Appendix A and refer to Nielsen and Chuang [
15] as a standard text for a more complete explanation.
2.2.1. Random Oracles
In the classical random oracle model (ROM), we assume the existence of a truly random function
H and give all parties access to query this function [
16]. When implemented, a suitable hash function,
, is used in place of
H. Any queries to the random oracle, made by any party, is then replaced with an evaluation of
on the query.
As in the ROM, in the quantum random oracle model (QROM), all parties are given access to a random function
H, which, when implemented, is replaced by a suitable hash function
. However, in quantum settings, since a quantum algorithm can evaluate
in a superposition of inputs, an adversary must also be allowed to query
H in superposition. This is called the quantum random oracle model [
17]. To denote when superposition access to
H is available, we will adopt the notation
.
2.2.2. QROM Lemmas
We next state two useful lemmas regarding quantum random oracles. First is the one-way-to-hiding (O2H) Lemma, proven by Unruh [
18]. The O2H lemma, informally, states that if a quantum adversary makes at most
q queries to a quantum random oracle,
, and is able to distinguish
from
, where
y was sampled uniformly at random, then a simulator can recover
x by measuring one of the queries to
. In other words, this lemma reduces distinguishing
from
y to guessing
x. We present the updated statement of the O2H Lemma as formulated by Ambainis et al. [
19].
Lemma 1 (One-way-to-hiding, probabilities).Let be random. Let be random functions satisfying . Let z be a random bit string ( may have arbitrary joint distribution). Let be a quantum oracle algorithm with query depth q (not necessarily unitary). Let be an oracle algorithm that on input z does the following: pick run until (just before) the ith query, measure all query input registers in the computational basis, output the set T of measurement outcomes. Let We refer to the algorithm
as the O2H simulator. As noted by Ambainis et al., the original statement of the O2H Lemma by Unruh is a consequence of the updated version [
19].
The next lemma concerns simulating quantum random oracles. In the original QROM introduced by Boneh et al. [
17], reduction or simulator algorithms are not allowed access to a random oracle, and therefore, must somehow simulate the oracle itself. Zhandry [
20] demonstrated that a simulator can use a
-wise independent function to successfully simulate a random oracle, where
q denotes the number of queries made by the adversary. Moreover, they proved the simulation of the random oracle is perfect, and no adversary can distinguish between a true random oracle and a
-wise independent function.
Lemma 2. Let H be an oracle drawn from the set of 2q-wise independent functions uniformly at random. Then, the advantage any quantum algorithm making at most q queries to H has in distinguishing H from a truly random function is identically 0.
For the security reduction of the main result in the QROM, we implicitly assume the use of -wise independent functions by any simulators to answer the adversary’s oracle queries.
2.3. Public-Key Encryption
In this section, we provide an overview of public-key encryption algorithms and the relevant security definitions. We begin by defining a public-key encryption (PKE) algorithm. We define the
correctness of PKEs in
Appendix B.
Definition 1 (Public-Key Encryption Scheme).We say a triple of algorithms form a public-key encryption (PKE) scheme, if:
: the key generation algorithm is a probabilistic algorithm which on input outputs a related pair, , of public and secret keys.
: the encryption algorithm is a probabilistic algorithm that takes two inputs, a public-key , and a plaintext m, from a designated message space, , and outputs a ciphertext c.
: the decryption algorithm is a deterministic algorithm that takes as input a secret key , and ciphertext c, and returns the plaintext m, or a special designated rejection symbol ⊥.
We now define the -security (also referred to as -security in the literature) and security experiment for PKEs in the random oracle model.
Definition 2 (
-Security for PKEs in the ROM). We say that a PKE, , is -secure in the random oracle model if, for all adversaries , and a random oracle H, we have thatis a negligible function in , where is defined in Algorithm 1. Algorithm 1 The -security experiments for PKEs in the ROM, . |
1: |
2: |
3: |
4: |
5: |
6: Return |
In this work, when we discuss security against quantum adversaries, we are considering the case of an adversary with quantum computational powers, including the ability to query the random oracle in superposition but who only has classical access to decryption oracles. We adopt the
notation, introduced in Bindel et al. [
3], to denote security against such adversaries, where
denotes whether the adversary is classical or quantum while they have decryption oracle access,
denotes whether the adversary can perform classical or superposition decryption queries, and
denotes whether the adversary is classical or quantum after they lose access to decryption oracles. Thus,
-security against a quantum adversary with only classical decryption queries in the quantum random oracle model is denoted as
. Security against an
-adversary is defined analogously to Algorithm 1, and we include the full definition in
Appendix B.
2.4. Key/Data Encapsulation Mechanisms
In this section, we define both key encapsulation mechanisms (KEMs), data encapsulation mechanisms (DEMs), and the security notions necessary for this work. We then describe the KEM-DEM paradigm to build a public-key encryption algorithm and the necessary conditions to attain
-security using the paradigm. We define the
correctness for both KEMs and DEMs in
Appendix B.
First, we define a key encapsulation algorithm [
21].
Definition 3 (Key Encapsulation Mechanism).We say the triple of algorithms , , form a key encapsulation mechanism (KEM), if:
: the key generation algorithm is a probabilistic algorithm which on input , outputs a related pair, , of a public encapsulation and secret decapsulation keys.
: the encapsulation algorithm is a probabilistic algorithm that takes one input, a public encapsulation key , and produces a pair of related outputs, a ciphertext c, and an ephemeral key k, from a designated key space .
: the decapsulation algorithm is a deterministic algorithm that takes as input a secret decapsulation key , and ciphertext c, and returns the related ephemeral key k, or a specially designated rejection symbol ⊥.
Note that a KEM can be built from a public-key encryption algorithm by simply sampling a message uniformly at random, to be used as the key, then encrypting it and sending the ciphertext.
The next definition is for -security of KEMs. We use the standard model in the following definition, but the definition lifts to the random oracle model in a natural way.
Definition 4 (-Security for KEMs).
We say that a KEM, , is if, for all adversaries , we have thatis a negligible function in , where is defined in Algorithm 2. Algorithm 2 The -security experiments for KEMs, . |
1: |
2: |
3: |
4: |
5: |
6: |
7: Return |
We now informally define -security for KEMs against quantum adversaries in the QROM. As in the PKE case, this security is an extension of classical -security to the QROM with a quantum adversary that is restricted to only classical decryption queries. Once again, we adopt the notation and refer to this security notion as -security for KEMs, or simply when the context is clear.
We now define the symmetric primitive and data encapsulation mechanisms (DEMs) [
21].
Definition 5 (Data Encapsulation Mechanism/Symmetric Encryption Scheme).We say a triple of algorithms form a (stateless) data encapsulation mechanism (DEM), or symmetric encryption scheme, if:
: the key generation algorithm is a probabilistic algorithm that on input outputs a secret key k.
: the encryption algorithm is a deterministic algorithm that takes two inputs, a secret key k and a plaintext m, from a designated message space , and outputs a ciphertext c.
: the decryption algorithm is a deterministic algorithm that takes as input a secret key k and ciphertext c, and returns the plaintext m, or a special designated rejection symbol ⊥.
In this work, referring to such an algorithm as a DEM rather than symmetric encryption emphasizes the relation between KEMs and DEMs covered in the next section.
Next, we define the primary security definition for DEMs this work is concerned with, the
-security introduced by Cramer and Shoup [
14]. Informally,
is similar to the
-security experiment, except that the adversary cannot encrypt any messages of their choice and only after receiving the challenge ciphertext is given access to a decryption oracle. When we wish to consider security of a DEM against a quantum capable adversary, we again make use of the
notation and denote
-security for a DEM against a quantum adversary with only classical decryption queries as
-security.
Definition 6 (-Security for DEMs).We say that a DEM is if, for all adversaries , we have that:is a negligible function in , where is defined in Algorithm 3. Algorithm 3 The -security experiments for DEMs, . |
1: |
2: |
3: |
4: |
5: |
6: |
7: Return |
KEM-DEM Paradigm
We go on to describe how a public-key encryption system can be built from a KEM and DEM pair.
Intuitively, a KEM can be used to generate a key from the key space of the DEM, which, in turn, is used to encrypt the message. The KEM-DEM paradigm of constructing a PKE was first proposed by Cramer and Shoup [
14]. The PKE is built by using the KEM keys as the public and private key, generating a ciphertext–key pair from the KEM, then using the key as the symmetric key to encrypt the message and sending the asymmetric and symmetric ciphertexts. Decryption is defined in the natural way. Traditionally, the KEM-DEM is referred to in the literature as a hybrid scheme, referencing public-key–symmetric-key hybrid. To avoid confusion, we elect to use the term KEM-DEM paradigm instead and use hybrid schemes to refer to classical–quantum hybrid schemes.
In addition to proposing the KEM-DEM paradigm, Cramer and Shoup outlined the necessary conditions on the KEM, , and DEM, , for the resulting PKE, , to achieve -security. The following theorem outlines these conditions.
Theorem 1. If , a KEM, is -secure and , a DEM, is -secure, then , described in Algorithms 4–6 is an -secure PKE.
Algorithm 4. |
1: |
2: Return |
Algorithm 5. |
1: |
2: |
3: Return |
Algorithm 6. |
1: |
2: |
We include an informal outline of the proof of Theorem 1.
Since is -secure, the key used to encrypt the challenge message is indistinguishable from a bit string of equal length sampled uniformly at random, say r. The challenger then generates , but instead of using to encrypt the message, r is used. From here, the adversary is then given and is effectively in the -security experiment for .
We make the observation that the proof of this theorem is also directly applicable in the quantum setting, and as a corollary state the quantum version of Theorem 1.
Corollary 1. If , a KEM, is -secure and , a DEM, is -secure, then , as described in Algorithms 4–6, is an -secure PKE.
2.5. Combiners
In this section, we introduce and formally define
robust combiners. We provide a review of previous PKE and KEM combiners in
Section 4.
First, we define the notion of a
-robust combiner. Informally, a
-robust combiner is an algorithm that accepts inputs of
n of the same type of cryptographic schemes to produce a new cryptographic scheme, and so long as at least
k of the inputs satisfies the same security notion the output is also equally secure. The formal definition of a robust combiner was first proposed by Harnik et al. [
2] to formalize such combinations.
Definition 7 ((k,n)-Robust Combiner).Let be a set of cryptographic primitives. A -robust combiner is an algorithm that gets n candidate schemes from as inputs, and whose output is a single algorithm that is secure to some security specification s, if the following holds:
If at least k candidates securely implement the security specification s, then the result of the combiner also securely implements s.
The running time of the result of the combiner is polynomial in the security parameter m, in n, and in the lengths of the inputs to .
3. QuAKe
In this section, we propose the Quantum Augmented KEM-DEM (QuAKe) combiner and then prove it is a -robust combiner for both - and -security in the classical and quantum random oracle models, respectively.
3.1. Construction
We first outline the QuAKe combiner. Informally, QuAKe encrypts the message with the KEM-DEM scheme,
, then encrypts the DEM component of the ciphertext using the second PKE,
. Intuitively, we prevent an adversary who can break the
-security of
from having the
ciphertexts and prevent an adversary who can break the
-security of
from directly seeing the message encrypted within. Importantly, along with the message, we encrypt a secret random value,
. Two hashes of
are used as the randomness for the encapsulation of the KEM,
, and the encryption under
, respectively. This
value is then later used during the decryption process to provide a method of ensuring that the ciphertext was well-formed. This ensures that the adversary cannot perform any re-encryption/encapsulation attacks on a ciphertext. We formally present QuAKe in Algorithms 7–9.
Algorithm 7. |
1: |
2: |
3: |
4: |
5: Return |
Algorithm 8. |
1: |
2: |
3: |
4: |
5: Return |
Algorithm 9. |
1: |
2: |
3: |
4: if
then |
5: Return ⊥
|
6: else |
7: if then |
8: Return m |
9: else |
10: Return ⊥
|
11: end if |
12: end if |
We first provide some insight into the construction of QuAKe. As mentioned, the use of is to deterministically randomize the encryption (encapsulation) of () and perform a check. This check is intended to guard against adversaries capable of total manipulation of either or . For example, if an adversary is able to recover the key from any ciphertext of , as well as encapsulate any key they wish, the adversary may attempt to recover the key used in the challenge ciphertext, re-encapsulate to a different ciphertext, and then submit it to the decryption oracle. Without a check, the decryption oracle would then return the challenge message directly to the adversary. The case of being completely broken by the adversary is analogous to the situation described above. Thus, without any check, there is no hope for security if one of or is broken by the adversary.
3.2. Security of QuAKe
In this section, we prove that QuAKe is a -robust combiner with a tight security reduction for both and -security in the classical and quantum random oracle models, respectively.
3.2.1. -Security of QuAKe
We begin with the -security.
Theorem 2. Let and be random oracles. Let be an -correct KEM-DEM-based PKE and be an -correct PKE. If either is -secure or is -secure PKE, then , as described in Algorithms 7–9, is a -robust combiner for -security in the random oracle model and is ϵ-correct, where . More precisely, for any efficient classical adversary that breaks the -security of , there exist efficient adversaries , and such thatwhere the run times of all are approximately equal to that of , is the number of decryption queries made by , and is the number of queries made to the random oracle by . We begin with the correctness of . It is straightforward to see that is perfectly correct if both and are perfectly correct. If is perfectly correct, then the real encrypted message in is always recovered when running the part of the decryption. If is perfectly correct, then always correctly decrypts to . Finally, the deterministic re-encryption check is done; thus, an honestly generated ciphertext would have been used to generate the randomness for both and and so would pass the re-encryption check. Therefore, we have that is perfectly correct.
We now suppose that and are both not perfectly correct, but are - and -correct, respectively. Whenever a decryption query is made, both and are performed. In the case of a decapsulation error occurring, a different symmetric key is recovered and used to decrypt some and obtain some . The case where is equal to the actual message and randomness used is overwhelmingly unlikely. Therefore, either ⊥ is returned if either check fails or a different message is returned if the checks are passed. As decapsulation errors happen with probability , the probability of returning a different output instead of the true message is bounded above by probability .
The argument is analogous when considering the case of a decryption error occurring, and the probability of an output that is not the true message being returned is bounded above by . We thus conclude that is -correct, where .
Proof. We now prove the security of . First, we assume is an -secure KEM-DEM encryption scheme.
:
Game 0, described in Algorithm 10, is the
-security experiment for
so,
Algorithm 10 Game 0 for the proof of Theorem 2, . |
1: |
2: |
3: |
4: |
5: |
6: |
7: |
8: |
9: Return |
: For
Game 1, outlined in Algorithm 11, we replace both
and
with
and
, respectively, chosen uniformly at random from the ranges of
and
, so that if
is called on
, either
or
is returned instead of
, or
, respectively. This replacement is done consistently with the decryption algorithm so that if
is evaluated on
during decryption,
and
are used to perform the checks. The probability of distinguishing between the first two games is upper bounded by the probability of
guessing
and querying it. As
was sampled uniformly at random, and as
has no access to
, unless they are able to completely invert both
and
since the decryption oracle never returns
, we have that
where
is the number of queries
makes to
Algorithm 11 Game 1 for the proof of Theorem 2, . |
1: |
2: |
3: |
4: |
5: Using random coins in place of |
6: Using random coins in place of |
7: |
8: |
9: |
10: |
11: Return |
We can now demonstrate that if can win Game 1, then can be used as an oracle algorithm to win the experiment of .
Proof. In the experiment of , is first given the encapsulation key of , then it runs and generates , and picks two random oracles and , then forwards to . Here, is able to perfectly simulate the oracles would have at this point, until eventually terminates and outputs its two challenge messages and . Then, picks uniformly at random and submits and as its challenge messages. It then receives before picking uniformly at random and computing and giving to .
To answer decryption queries for , when receives it first decrypts itself by using , then uses its decryption oracle , and finally performs the checks after receiving the decryption . Note that if , then cannot query its decryption oracle, but it does not need to do so, as in the real experiment such a query, provided a decryption error does not occur, would fail the re-encryption check. Thus, will just perform a hash query to each of and before returning ⊥. As a result, the simulation is then perfect unless an error occurs in Game 1 during decryption and results in a message being returned. Eventually, will submit a guess and will submit the same guess.
Let E denote the event that performs a query of the form, and , that does not return ⊥ in Game 1 but does return ⊥ when simulated by .
First, note that
corresponds to
’s simulation of
’s decryption oracle being perfect, that is
’s answer to queries of the form
and
agree with
’s decryption oracle. Thus, we have
We now bound from above . As described, if decryption was performed correctly, the oracle would return ⊥ as the query would fail the re-encryption check; thus, E could only have occurred if a decryption error had taken place. Since QuAKe is -correct we apply a uniform bound across all decryption queries and conclude that
□
As a result, by combing the inequalities above, we have
□
We now consider the case where is an PKE.
Proof. :
Game 0, as described in Algorithm 10, is the
-security experiment for
so,
: For
Game 1, we perform the same game hop as before in Algorithm 11, and replace both
and
with
and
, chosen independently and uniformly at random from the ranges of
and
. This change is done consistently with the random oracles and the decryption oracle so that if
is queried during decryption,
and
are used for the check. By the same argument as above we have that the probability that
distinguishes between these games is
where
is the number of queries
makes to
We are now able to show that if can win Game 1, then can be used as an oracle algorithm to win the experiment of .
Proof. Suppose that
can win
Game 1 in the classical setting with non-negligible probability, then it can be used as an oracle algorithm to break the
-security of
as follows. Once
is given
by the
challenger it runs
to generate the key pair
, then it selects
and
uniformly at random, and finally forwards the
to
. At this stage,
can perfectly act as a random oracle to
and uses its decryption oracle for
to act as a decryption oracle for
. Eventually,
terminates and outputs challenge messages
and
to
who then selects
and
uniformly at random and performs the following computations:
Then, submits as its challenge messages. Next, then receives and forwards to and acts as the decryption oracle. We note that there are special cases of decryption queries that will not fully perform, but can answer.
: cannot query to its own decryption oracle. However, answers the query as follows: use to decapsulate c; if the result is , query and on r, a uniform random value, then return ⊥; otherwise, simply return ⊥ without querying the random oracles. In the first case, the real experiment would reject, as the re-encapsulation check would fail. While in the second case, the symmetric decryption algorithm would reject as was encrypted under and the key given was different.
: will always return ⊥ and query and on r, a uniform random value. In a real experiment, such a query would be rejected as it would fail the re-encryption check.
For all other queries, is able to perform decryption queries perfectly matching ’s oracles.
Eventually, terminates and outputs a guess, which matches.
Let F denote the event that performs a special case decryption query that does not return ⊥ in Game 1 but returns ⊥ when simulated by .
First, note that
corresponds to
’s simulation of
’s decryption oracle being perfect, as it was able to correctly answer all special case decryption queries. Thus, we have
We now bound from above . As outlined above in how answers special decryption cases, if decryption was performed correctly, both cases would return ⊥, thus F could only have occurred if a decryption error had taken place. Since QuAKe is -correct we apply a uniform bound across all decryption queries and conclude that
□
Finally, we can conclude if
is in an
PKE, then
□
3.2.2. -Security of QuAKe
Next, we prove the -security of QuAKe.
Theorem 3. Let and be quantum random oracles. Let be an -correct KEM-DEM based PKE and be an -correct PKE. If either is -secure or is -secure, then , as described in Algorithms 7–9, is a -robust combiner for -security in the quantum random oracle model and is ϵ-correct, where . More precisely, for any efficient quantum adversary that breaks the -security of , there exists efficient adversaries and such thatwhere the run times of all are approximately equal to that of , and the hash queries performed by each are equal to . Proof. We will outline the proof of -security of QuAKe. It is virtually identical to that of Theorem 2, except and are replaced with quantum random oracles, and , the simulator algorithms use -wise independent functions, where is the number of queries the adversary makes in the reduction, and the adversaries are quantum. The primary difference is the first game hop to , as described in Algorithm 11 in both halves of the proof. In the classical setting, we employ a simple replacement of with or . However, such a replacement does not work in the quantum random oracle model. This is due to the inability of the challenger to read the oracle queries and perform the replacement of with and with in the quantum random oracle model as a result of superposition access to the oracles. Instead, we invoke the O2H Lemma 1 to replace the hashes with random values and otherwise continue in the same manner. We provide a description of the O2H simulator below in Algorithm 12, where is the adversary from the security experiment. After this replacement, the proof continues in the same fashion as in Theorem 2.
In Game 1, we reprogram both and on ; thus, to invoke the O2H Lemma we set , , where , G is H except reprogrammed such that when queried on , is returned, and .
Algorithm 12 O2H Simulator algorithm, . |
1: |
2: run until the ith query.
|
3: if the number of queries made to then |
4: Return ⊥
|
5: else Measure the query |
6: return |
7: end if |
We then have that , as in the O2H Lemma, describes Game 0 for as it is running with the original, untampered oracle H. While describes running with the reprogrammed oracle G, which returns when queried on . In both cases, is running on input .
Finally,
is then described in Algorithm 12. Note, as
was chosen uniformly at random from
, we have
. We also note that
makes at most
queries to its oracle
to answer
’s queries, and so we have that
. Thus, by the O2H Lemma, we have that
As mentioned before, from here, the proof proceeds in the same fashion as in Theorem 2, and we can then conclude
□
5. Conclusions
Hybrid cryptographic algorithms, which combine both classical and quantum-resistant primitives, offer an appealing solution to the upcoming problems associated with the transitioning of the cryptographic infrastructure. Such algorithms provide quantum-resistance without the risk of losing current-day security assurances and satisfy existing standards. While there have been earlier work on the theory of hybrid cryptography, there have not been any results on direct constructions of hybrid PKEs or hybrid combiners for PKEs. The more common approach has been to develop KEM combiners and then convert the resulting KEM into a PKE.
In this work, we furthered the theory of hybrid cryptography by proposing a new provably secure
-robust combiner, QuAKe, with tight reduction for both
-security in the random oracle model, and
-security in the quantum random oracle model. Our combiner built from the KEM-DEM paradigm first proposed by Cramer and Shoup [
14] and augmented the paradigm to directly construct a new, fully secure PKE. Moreover, our construction was built with fewer components and security assumptions when compared with previous results, as well as not being limited to schemes with perfect decryption correctness.