Abstract 1 Introduction 2 Technical Overview 3 Preliminaries 4 Definitions: Obfuscation and Variants in the BQSM 5 Definitions: Disappearing Cryptography 6 One-Time Programs 7 Program Broadcast 8 Encryption Schemes 9 Note on Noisy Communication References

Powerful Primitives in the Bounded Quantum Storage Model

Mohammed Barhoush Université de Montréal (DIRO), Canada Louis Salvail Université de Montréal (DIRO), Canada
Abstract

The bounded quantum storage model aims to achieve security against computationally unbounded adversaries that are restricted only with respect to their quantum memories. In this work, we provide the following contributions in this model:

  1. 1.

    We build one-time programs and utilize them to construct CCA1-secure symmetric key encryption and message authentication codes. These schemes require no quantum memory from honest users, yet they provide information-theoretic security against adversaries with arbitrarily large quantum memories, as long as the transmission length is suitably large.

  2. 2.

    We introduce the notion of k-time program broadcast which is a form of program encryption that allows multiple users to each learn a single evaluation of the encrypted program, while preventing any one user from learning more than k evaluations of the program. We build this primitive unconditionally and employ it to construct CCA1-secure asymmetric key encryption, encryption tokens, signatures, and signature tokens. All these schemes are information-theoretically secure against adversaries with roughly em quantum memory where m is the quantum memory required for the honest user.

All of the constructions additionally satisfy disappearing security, essentially preventing an adversary from storing and using a transmission later on.

Keywords and phrases:
Quantum Cryptography, Bounded Quantum Storage Model, Information-Theoretic Security
Copyright and License:
[Uncaptioned image] © Mohammed Barhoush and Louis Salvail; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Security and privacy Information-theoretic techniques
Related Version:
Full Version: https://arxiv.org/abs/2302.05724
Editor:
Niv Gilboa

1 Introduction

Most of the interesting cryptographic concepts of security are unattainable when dealing with completely unrestricted adversaries. The conventional approach to resolve this conundrum is to focus solely on adversaries operating within polynomial time. Nevertheless, given our current understanding of complexity theory, security in this setting can only be guaranteed under the assumed hardness of solving certain problems, such as factoring, computing the discrete log, or learning with errors. As a consequence, security in the computational model is usually conditional.

An alternative approach is to constrain the quantum memory (qmemory) available to the adversary. This model is called the Bounded Quantum Storage Model (BQSM) and was first introduced in 2005 by Damgård, Fehr, Salvail, and Schaffner [9, 30]. They demonstrated that non-interactive oblivious transfer and bit-commitment can be achieved information-theoretically in this model! Surprisingly, these schemes demand no qmemory from honest participants and can be made secure against adversaries with arbitrarily large qmemories by sufficiently extending the transmission length. Subsequently, this oblivious transfer scheme was later adapted to the more useful variant of non-interactive 1-2 oblivious transfer1111-2 oblivious transfer is a primitive allowing a sender to transmit two strings so that (1) a receiver can choose to receive anyone of the two strings without learning anything about the other one and (2) the sender is oblivious of the receiver’s choice. [10]. Henceforth, we denote this 1-2 oblivious transfer scheme as BQS-OT.

Concretely, in the BQSM, an adversary 𝒜s has access to unlimited resources at all times except at certain points. At these points, we say the memory bound applies, and the adversary is forced to reduce its stored state to s-qubits. We emphasize that the adversary is again unrestricted with respect to its qmemory after the bound applies and is never restricted with respect to its computational power or classical memory.

In practice, the point when the memory bound applies can be implemented by pausing and delaying further transmissions which enforces the bound given the technological difficulties of maintaining a quantum state. Even in the foreseeable future, qmemory is not only expected to be very expensive but also very limited in size to allow for good enough fidelity. Consequently, this model appears to provide an apt characterization of real-world adversaries.

1.1 Our Results

In this paper, we delve deeper into the BQSM. We first adapt conventional definitions, such as those pertaining to encryption and one-time programs, to the BQSM. We then proceed to construct a variety of cryptographic primitives as elaborated on below.

We first build information-theoretic secure one-time programs 222A one-time program (as introduced in [15]) (1) can be used to obtain a single evaluation of the program on any input chosen by the user, and at the same time, (2) (black-box obfuscation) cannot be used to obtain any other information about the program (see Definition 11). through utilizing the BQS-OT scheme. We then leverage one-time programs to construct information-theoretic secure CCA1-symmetric encryption. All these schemes are secure against any computationally unbounded adversary with s qmemory where s can be any fixed polynomial (in the security parameter) whereas honest users do not need any qmemory.

Next, we address the challenges associated with information-theoretic asymmetric key cryptography, particularly the task of hiding the secret key from the public key without relying on computational assumptions. We propose the novel primitive termed program broadcast as a natural solution.

Roughly speaking, a k-time program broadcast of a function P allows arbitrarily many users to each (1) obtain a single evaluation of the program, and, at the same time, (2) cannot be used by any user to learn more than k evaluations of the program. We proceed to construct an information-theoretically secure program broadcast and employ it to build CCA1-secure asymmetric key encryption. In the full paper, we also use program broadcast to build information-theoretically secure signatures, signature tokens, and encryption tokens. A signature token, as first defined in [5], can be used to sign a single message (without the signing key) and then self-destructs. We similarly define decryption tokens – each such token allows its holder to decrypt a single ciphertext and then self-destructs.

The schemes built from program broadcast are secure against any computationally unbounded adversary with s qmemory where s can be any fixed polynomial in the security parameter but require lgk(λ) qmemory for the receiver where k can take any value larger than 2. This implies that the gap between the qmemory required of the honest user and the needed qmemory to break security approaches lg2(λ)vs.𝗉𝗈𝗅𝗒(λ) which translates to a gap of mvs.em by setting m=lg2(λ). While we cannot assert that the required qmemory for the honest receiver in the asymmetric setting is optimal, we show in the full paper that it is not possible to achieve asymmetric key cryptography without requiring any qmemory for the honest user. Given that our qmemory requirements are already quite minimal, there is little room for improvement. For simplicity, in the rest of the paper we work with k=3, however, our results easily apply to any value k>2.

Prior to this work, none of the aforementioned primitives have been achieved in the BQSM and all are impossible information-theoretically in the plain model.

Our constructions additionally satisfy disappearing security which shall be formally defined in Sec. 5 but we provide a brief overview here. A transmission, say a ciphertext or signature, is deemed disappearing if it can no longer be used after a certain point [21]. In the encryption setting, an adversary cannot decrypt a ciphertext even if the private key is revealed afterward. While in the authentication setting, an adversary cannot forge a signature of a message μ even if it has received a signature of μ earlier! Such disappearing properties are impossible in the plain model for obvious reasons, but in the BQSM an adversary cannot necessarily store a ciphertext or signature for later use.

1.2 Notes on Feasibility

The qmemory requirements for the receiver in our program broadcast, asymmetric key encryption, and signature schemes make these constructions difficult to actualize with current technology given the difficulty of storing quantum states. It is worth noting, however, that the users only need a small amount of qmemory and only need it at the start in order to process the public keys. Therefore, we hope that these schemes will become feasible with further advancements.

Meanwhile, our one-time programs, symmetric key encryption, and message authentication codes can be realized with current technology as they only require the ability to prepare, send, and measure a single qubit in the BB84 basis. Specifically, these constructions can be implemented on hardware designed to run quantum key distribution (QKD), albeit with a caveat. Indeed, popular weak coherent pulse sources require interaction as the receiver needs to tell the sender which pulses were received. However, other technologies can enable non-interactive quantum transmissions to allow for non-interactive primitives such as one-time programs, encryption, and signature schemes. For instance, heralded photon sources can, in principle, remove the need for interaction.

Note also that our constructions can be modified to allow for users with imperfect apparatus to perform non-interactive error correction without compromising the security of the scheme as we briefly discuss in Sec. 9. With all that being said, in this work, we focus on building the theory and leave it as an open research direction to properly prepare the theoretical constructions for real-world applications.

1.3 Related Work

We compare our results with similar contributions in alternative models.

1.3.1 Plain Model

One-time programs in the plain model are impossible for the simple reason that any software can be stored and then reused to obtain multiple evaluations. Broadbent, Gutoski, and Stebila [7] extended this idea to the quantum realm and showed that quantum one-time programs are also impossible. These results do not apply to the BQSM as one-time programs are indeed feasible.

That being said, the works [15, 18] constructed one-time programs by leveraging one-time memory devices. These hardware devices essentially implement 1-2 oblivious transfer – each device holds two secrets and allows the device holder to choose and learn one and only one secret. Essentially, a circuit is encrypted and sent along with appropriate one-time memory devices. A receiver can only obtain enough keys from the devices to learn one evaluation from the encrypted circuit. Our one-time program construction involves replacing the one-time memory devices with the BQS-OT scheme, which serves the same purpose, although our proof requires novel analysis.

1.3.2 Bounded Classical Storage Model (BCSM)

Memory limitations were first considered in the classical setting. Specifically, in 1992, Maurer [26] introduced the bounded classical storage model (BCSM) where adversaries are restricted only with respect to the size of their classical memory. A cipher was shown to guarantee privacy unconditionally, even against adversaries having access to a larger memory than what is needed for honest players. Subsequent works [20, 11, 28, 12] have achieved information-theoretic (interactive) oblivious transfer, key agreement, and symmetric key encryption and signatures in this model. Furthermore, Guan, Wichs, and Zhandry [19] recently provided constructions for disappearing ciphertext and signature schemes based on public-key cryptography and one-way functions, respectively.

Overall, the BQSM seems to provide stronger security guarantees when compared to the BCSM for several reasons. First of all, in the BCSM, the gap between the required memory to run many of these schemes securely and the size of the memory needed to break for various primitives, including asymmetric encryption, is typically on the order of mvs.m2, which is optimal [12]. This memory gap is a notable vulnerability as if it is feasible for honest users to store m bits, it does not seem too difficult for a determined adversary to store m2 bits. In contrast, the memory gap of mvs.em for primitives in the BQSM is far more significant. Moreover, certain primitives achievable in the BQSM are completely unattainable in the BCSM. For instance, non-interactive oblivious transfer was shown to be impossible in the BCSM [11] which implies the impossibility of the stronger one-time program primitive.

1.3.3 Noisy Quantum Storage Model

In the Noisy Quantum Storage Model, which was first introduced in [31], the qmemory of the adversary is not limited in size but is intrinsically noisy. The BQS-OT schemes proposed in [9, 10] can, essentially as such, be shown secure against adversaries with noisy qmemories. In this work, we only study the BQSM and an interesting research direction is to generalize our results to the Noisy Quantum Storage Model.

2 Technical Overview

We now discuss each of our results in more detail. We first describe how to construct one-time programs and then, how to use them to build symmetric key encryption. Next, we explain why we need a new tool to tackle asymmetric cryptography. Correspondingly, we introduce the notion of program broadcast and describe how to build it in the BQSM. We then show how program broadcast can be used to build asymmetric encryption. Finally, we discuss two impossibility results related to the qmemory requirements and disappearing properties of the schemes.

2.1 One-Time Programs

We now present a quantum algorithm 𝒪 that converts any polynomial classical circuit to a one-time program in the BQSM (Theorem 17). Fortunately, the BQSM dodges all the impossibility proofs of one-time programs. The work showing the impossibility of quantum one-time programs [7] does not apply to our setting since our programs cannot be stored by the adversary to be reused. Moreover, the proof of the impossibility of quantum obfuscation [7] does not apply since it requires the adversary to run the quantum circuit homomorphically. Adversaries in our setting are forced to continuously perform measurements on quantum states (due to the memory bound) which interrupts a quantum homomorphic evaluation.

Before describing the construction, we discuss its intuition. A natural first attempt is to apply previous one-time program constructions [15, 18] based on one-time memory devices but replace the devices with BQS-OT transmissions. The problem is that simulating an adversary requires determining which 1-out-of-2 strings are received from the oblivious transfer transmissions. This information allows the simulator to deduce which evaluation the adversary has learned from the program. In earlier constructions, this is not a problem since the adversary must explicitly ask which string it wishes to receive from the one-time memory devices. Note that Kilian [23] builds a similar notion known as oblivious circuit evaluation from OT but the simulator is also assumed to be given this information. In these works, the simulator can simply run the adversary and “know” which strings are requested. However, in our case, it is not clear this extraction is always possible – a complex adversary might not know itself which 1-out-of-2 strings it has received! To make matters worse, our adversary is a quantum and computationally unbounded algorithm. Note that the proof of security for BQS-OT does not provide a method to extract the receiver’s chosen bit but rather just shows that such a bit must exist.

To solve this issue, we construct a simulator that (inefficiently) analyzes the circuit of the adversary gate-by-gate to extract the chosen bit. In particular, the simulator takes the circuit of the adversary and runs it an exponential number of times on all possible BQS-OT transmissions. This allows the simulator to approximately determine the distribution of the measurement results obtained by the adversary given the transmission provided to the adversary. This then allows the simulator to determine the distribution of the BQS-OT transmission from the perspective of the adversary given the measurement results obtained. In other words, the simulator can infer which part of the transmission the adversary is uncertain about which can be used to determine which string the adversary is oblivious to.

The rest of the construction involves adapting Kilian’s approach [23] for building one-time programs from oblivious transfer to the quantum realm. Readers are referred to Sec. 6 for the formal statement of our result. However, the construction and proof are given in the full paper as they are quite long and detailed.

2.2 Symmetric Key Encryption

We use one-time programs to build a symmetric key encryption scheme that satisfies indistinguishability under (lunchtime) chosen ciphertext attack (IND-CCA1) [8] and with disappearing ciphertexts. IND-CCA1 tests security against an adversary that can query the encryption oracle at any point in the experiment and can query the decryption oracle at any point before the challenge ciphertext is received. To satisfy disappearing security under CCA1, we require that such an adversary cannot win the IND-CCA1 experiment even if the private key is revealed after the challenge ciphertext is given.

To achieve IND-CPA (where the adversary is not given access to a decryption oracle), the ciphertext can simply consist of a one-time program that evaluates to on every input except on the private key, where it outputs the message. By the security of one-time programs, an adversary has a negligible chance of guessing the key and learning the message. Upgrading to CCA1-security turns out to be far more involved as we now discuss.

First of all, it is trivial to show that we must rely on quantum ciphertexts for unconditional security in the BQSM. Now, traditionally, a CPA-secure scheme can be upgraded to a CCA-secure one by simply authenticating ciphertexts using message-authentication codes or a signature scheme. However, it seems difficult to authenticate a quantum ciphertext in a way that allows verification without any qmemory. Alternatively, we could authenticate the output of the one-time programs in the CPA construction. Specifically, instead of sending programs that map the secret key to the message, we send programs that map the key to the message along with a tag or signature of the message.

This solution fails due to the following attack: an adversary queries the encryption oracle on an arbitrary message μ, receives a one-time program, modifies the one-time program so that it outputs on any input starting with 0, and forwards the modified one-time program to the decryption oracle. Depending on the response received from the oracle, the adversary can successfully determine the first bit of the secret key. This attack can be repeated a polynomial number of times to deduce the entire secret key. It turns out an adversary can perform a variety of attacks of this sort due to a fundamental problem with the BQSM: this model provides security by ensuring that users only receive partial information from a transmission. Hence, it is difficult to detect whether an adversary has tampered with a transmission.

To thwart such attacks, we rely on a construction where a ciphertext consists of two interdependent one-time programs. The first program initiates some randomness and this randomness is used to ensure that the second one-time program is evaluated on a seemingly random input during decryption. To prevent the adversary from choosing the first one-time program, we authenticate the output of the first program in the second program using the secret key. We show that it is difficult to modify both programs simultaneously in a meaningful way without being detected. Proving this rigorously is somewhat technical as the adversary can still perform various modifications successfully – the reader is referred to Theorem 22 for the formal proof.

2.3 The Obstacle to Asymmetric Cryptography

Asymmetric cryptography utilizes a pair of related keys, a secret and a public key, to enable versatile cryptographic applications. Specifically, our goal is to build information-theoretic secure asymmetric key encryption and digital signatures in the BQSM. However, the task of concealing the secret key from the public key without relying on computational assumptions poses a significant challenge. Such assumptions should be avoided in the BQSM given the goal of this model is to base security purely on the memory limitations of the players.

This implies we need to impose the memory bound in some way during the public key transmission in order to hide the secret key. In the classical bounded storage model, this can be done by announcing a large classical public key [12]. However, in our scenario, imposing the memory bound necessitates the use of quantum public keys. Unfortunately, due to no-cloning, we need to create and distribute multiple copies of the quantum key – this is the general approach taken in the computational setting as well [17, 13, 22]. Here we face a critical problem: if a computationally unbounded adversary gains access to multiple copies of the key, it can repeatedly reuse its quantum memory to process multiple keys. Such an adversary could gradually extract classical information from each key copy until it has learned the entire quantum public key.

To prevent this attack, it is imperative that every public key copy needs additional qmemory to process, preventing an adversary from processing an unlimited number of keys. In other words, we need to distribute keys in a way so that all users must process the keys simultaneously or in parallel. More abstractly, we want to distribute quantum information in a way that allows every user to learn some information while preventing a computationally unbounded adversary from learning too much information. This goal is a recurring theme in various settings, hence, we introduce a new notion which we term program broadcast that formalizes and captures this objective. We build this primitive unconditionally in the BQSM and employ it to build asymmetric cryptography.

All in all, this is the first work to achieve information-theoretic asymmetric key encryption in any of the bounded (classical or quantum) storage models. This is the main focus and contribution of this paper. In the following, we first discuss program broadcast, which may be of independent interest, and then how this can be used to realize asymmetric cryptography.

2.4 Program Broadcast

In many situations, we would like to send multiple one-time programs to multiple users while ensuring that no adversary can take advantage of all the information to learn the program. This is the goal of program broadcast. Recall that a k-time program broadcast of a function P allows an unbounded polynomial number of users to each (1) obtain at least a single evaluation of the program, and, at the same time, (2) cannot be used by any user to learn more than k evaluations of the program. Essentially, an adversary with access to the broadcast can be simulated with access to k queries to an oracle for P.

In Sec. 7, we present a scheme for an information-theoretically secure program broadcast in the BQSM. The idea is to distribute a polynomial number of augmented one-time programs of P in a fixed time period. Unlike the one-time programs discussed in the previous section, these augmented versions require a small amount of qmemory to process.

More rigorously, there is a set time where the sender distributes one-time programs of the form 𝒪(Pci) where 𝒪 is our one-time compiler. In each one-time program, the output of P is padded with a different value ci. A quantum ciphertext is generated which encrypts the value ci and is sent with the corresponding one-time program. Users can evaluate the one-time program but need to store the ciphertext states until the encryption key is revealed to make use of their evaluation. The key is revealed at a set time after all users have received a one-time program copy. By revealing this classical key at the end, we are essentially forcing users to process the programs in a parallel fashion, limiting the number of evaluations that can be learned. In other words, an adversary with bounded qmemory can store the ciphertext states for a limited number of one-time programs and thus can only learn a limited number of evaluations of P.

To prove this rigorously, we need a new min-entropy lower bound (Lemma 7) which roughly states that if H(X0X1Xp1|Q)α, where Xi{0,1}n and Q is some quantum information, then there exists i[p] and negligible ϵ such that roughly Hϵ(Xi)α/p. Konig and Renner [24] established such a bound but only in the case when n is sufficiently large with respect to p. Unfortunately, in our applications, n is very small with respect to p. Informally, we resolve this issue by using their bound when p is small and then use this as a base case to an inductive argument for larger values of p achieving the required result. This result is of independent interest in the field of information theory.

Note that while one-time programs can be built from one-time memory devices in the plain model, this is insufficient to build program broadcast in the plain model. Specifically, we need to use the qmemory bound outside the one-time programs as well in order to construct this primitive. Hence, program broadcast acts as a more pronounced advantage of the BQSM.

2.5 Asymmetric Key Encryption

We now discuss how we upgrade our symmetric key encryption scheme to a CCA1-secure asymmetric key scheme using program broadcast. We let the private key be a large program P while the public key is a quantum program broadcast of P. A user can use the broadcast to learn a single evaluation of P which can be used to encrypt messages in the same way as in the private key setting. However, an adversary can only learn a limited number of evaluations by the security of the program broadcast. If P is large enough then this knowledge is not sufficient to predict the output of P on a random input. In other words, the adversary cannot predict the encryption key of another user, so security is reduced to the symmetric key setting.

It is not difficult to show that the public keys need to be mixed-state for information-theoretic security in the BQSM. This might seem unfortunate, but we believe that it is not very relevant whether keys are pure or mixed-state. Some works, such as [4], require that the quantum public keys be pure since this would provide some level of certification by allowing users to compare keys with a SWAP test. However, this test is not always feasible to perform in the BQSM given that keys cannot necessarily be stored. Instead, we provide a more secure way to certify mixed-state quantum keys without establishing authenticated quantum channels in a companion work [2]. That being said, in this work, we do not certify public keys and it is always assumed that honest users receive authentic quantum public keys. This is a common assumption for the quantum public key schemes, such as those in [17, 13, 22], as a quantum state cannot be signed [3].

2.6 Impossibility Results

We briefly discuss two interesting impossibility results that we present in the full paper. First, we show that it is impossible to implement asymmetric schemes (with unbounded public key copies) in the BQSM without requiring qmemory from the honest user. The fundamental idea is that if the public keys require no qmemory to process then an adversary can request and process an unbounded number of key copies which would reveal information about the secret key. The technical argument is more involved since the public keys may be mixed-state which could aid in hiding information.

The second impossibility result is concerned with the disappearing property of our constructions. The ciphertexts and one-time programs satisfy disappearing security providing interesting applications as we discussed earlier. However, this disappearing property can also be disadvantageous in some scenarios. For instance, sometimes, it is more beneficial to have an obfuscation that can be stored and reused multiple times instead of a disappearing one-time program. The final contribution of this paper is to provide a negative result showing that non-disappearing obfuscation and one-time programs are impossible in the BQSM.

The proof relies on a new approach since our simulator is computationally unbounded, which nullifies adversarial attacks used in standard impossibility proofs [1, 14, 6, 7]. Essentially, we show that if a computationally unbounded adversary can perform a single evaluation after the qmemory bound applies then it can rewind the program and perform another evaluation. By the gentle measurement lemma [32], this rewinding introduces only a negligible error each time which allows the adversary to learn a super-polynomial number of evaluations with non-negligible probability. These evaluations can be used to learn more information regarding the hidden program than any simulator can learn using only a polynomial number of oracle queries. We refer the reader to the full paper for more details.

3 Preliminaries

3.1 Notation

In the following, we denote Hilbert spaces by calligraphic letters: , 𝒱, etc… The set of positive semi-definite operators in Hilbert space are denoted Pos(). When Hilbert space 𝒳 holds a classical value, we denote the random variable for this value by X.

We denote the density matrix of a quantum state in a register E as ρE. If a quantum state depends on a classical variable X, then we denote ρEx as the density matrix of the state given X=x. Meanwhile, to an observer who does not know the value of X, the state is given by ρExP(X=x)ρEx and the joint state by ρXExP(X=x)|xx|ρEx. Such states having a quantum part depending on a classical value are called cq-states. The random variable X then corresponds to the classical state ρXxP(X=x)|xx|.

We denote the trace distance between two density matrices as δ(ρ,σ) and the trace norm as ρ1.

Notice that ρXE=ρXρE if and only if ρE is independent of X (i.e. ρEx=ρE) which means that no information can be learned regarding ρE from X and vice versa. More generally, if ρXE is ϵ-close to ρEρX in terms of trace distance denoted as δ(ρXE,ρXρE)ϵ or equivalently ρXEϵρXρE, then no observer can distinguish between the two systems with advantage greater than ϵ. We write ρA,ρB to denote a sequential transmission where register A is sent and then register B.

The rectilinear or + basis for the complex space 2 is the pair {|0,|1} while the diagonal or × basis is the pair {|0×,|1×} where |0×|0+|12 and |1×|0|12. To choose between the + and × basis depending on a bit b{0,1}, we write {+,×}b.

We say xRX if x is chosen uniformly at random from the values in X. We let 𝟙k denote the density matrix of a uniformly distributed variable on k elements. Also, let [n][0,1,,n1] and let 𝗇𝖾𝗀𝗅(n) be denoting any function that is smaller than the inverse of any polynomial for large enough n.

We say an algorithm A is QPT if it is a quantum polynomial-time algorithm. We let AP denote an algorithm with access to a polynomial number of classical oracle queries to the program P and let AqP denote access to q classical oracle queries.

Recall a Pauli pad [27] information-theoretically hides a n-qubit state using a 2n-bit key k. We denote PPk(ρ) to be the Pauli pad of the state with density matrix ρ using key k.

By abuse of notation, if x is a binary string and M is a matrix then, for simplification, we let Mx denote the string representation of the vector Mx.

3.2 Rényi Entropy

We remind the reader of the notion of quantum Rényi Entropy and its variants. See [25] for more detailed definitions.

Definition 1 (Conditional Min-Entropy).

Let ρXBPos(XB) be classical on X. The min-entropy of ρXB given B is defined as

H(X|B)ρlg(pguess(X|B)ρ)

where pguess(X|B)ρ is the maximal probability to decode X from B with a POVM on B.

Definition 2 (Smooth Min-Entropy).

Let ϵ0 and ρXBPos(XB). The ϵ-smooth min-entropy of ρXB given B is defined as

Hϵ(X|B)ρsupρ¯H(X|B)ρ¯

where the supremum is taken over all density operators ρ¯XB acting on XB such that δ(ρ¯XB,ρXB)ϵ.

3.3 Uncertainty Relations

This section discusses lower bounds on the average min-entropy and presents a new generalized min-entropy splitting lemma conditioned on quantum states. This will be fundamental in our program broadcast construction.

The min-entropy satisfies the following chain rule.

Lemma 3 (Chain Rule for Min-Entropy [29]).

Let ϵ0 and ρXUEPos(XUE) where register E has size m. Then,

Hϵ(X|UE)ρHϵ(XE|U)ρm.
Lemma 4 (Uncertainty Relation [9]).

Let ρ𝒫(H2n) be an arbitrary n-qubit quantum state. Let ΘR{+,×}n and let X be the outcome when ρ is measured in basis Θ. Then for any 0<γ<12,

Hϵ(X|Θ)ρ(122γ)n,

where ϵ=exp(γ2n32(2lg(γ))2).

If X=X0X1 has high entropy, then it was shown in [10] that, in a randomized sense, one of X0 or X1 has high entropy.

Lemma 5 (Conditional Min-Entropy Splitting Lemma [10]).

Let ϵ0 and let X0,X1 and Z be random variables. If Hϵ(X0X1|Z)α, then there exists a binary random variable C such that Hϵ+ϵ(X1C|ZC)α/21log(1/ϵ) for any ϵ>0.

More generally, min-entropy sampling gives lower bounds on the min-entropy of a subset of a string given the min-entropy of the entire string. In [24], it was shown how to sample min-entropy relative to quantum knowledge which allows us to give a lower bound on min-entropy conditioned on a quantum state.

Lemma 6 (Quantum Conditional Min-Entropy Splitting Lemma [24]).

Let ϵ0 and let ρX0X1B be a quantum ccq-state where X0 and X1 are classical random variables on alphabet 𝒳 of dimension d=lg|𝒳|>14. Then, there exists a binary random variable C such that for all τ0,

Hϵ+τ(XC|CB)ρHτ(X0X1|B)ρ22

where ϵ23d2+1.

Proof.

Notice that any distribution PC over {0,1} is a (2,3/4,0)-sampler (Definition 2.1 [24]). Corollary 6.19 in [24] gives the result.

In Lemma 6 the size of the sampled string XC is half the size of the original string X. The results in [24] do not give strong lower bounds when the sampled string is small relative to the size of the original string. Hence, we present the following generalization of Lemma 6 which will be used in constructing program broadcast and asymmetric key encryption.

Lemma 7 (Generalized Min-Entropy Splitting Lemma).

Let ϵ0. Let ρXB be a quantum cq-state where XX0X1X and each Xi is a classical random variable over alphabet 𝒳 of dimension d>14. There exists a random variable C (with lg bits) such that for all τ0,

Hϵ+τ(XC|CB)ρHτ(X|B)ρ4

where ϵ23d2+2.

Proof.

We only consider the case =2k, however, the same argument works for the general case. We prove the following slightly stronger bound using induction on k:

Hϵk+τ(XC|CB)Hτ(X|B)2k4(112k).

where ϵki=0k122id+1. The base case k=1 follows trivially from the Quantum Conditional Min-Entropy Splitting Lemma 6. Assume the claim holds for k=n. For k=n+1, we apply Lemma 6 on the two variables Y0X1X2n and Y1X2n+1X2n+1 to deduce that there exists a binary variable C1 such that Hϵ+τ(YC1|BC1)Hτ(X|B)22 where ϵ22nd+1. By the inductive hypothesis, there exists C such that:

Hϵn+ϵ+τ(XC1C|BC1C) Hϵ+τ(YC1|BC1)2n4(112n)
Hτ(X|B)222n4(112n) =Hτ(X|B)2n+14(112n+1).

3.4 Privacy Amplification

For the rest of this work, we let Hm, denote a two-universal class of hash functions from {0,1}m to {0,1}. Remember that a class of hash functions is two-universal if for every distinct x,x{0,1}m and for FRHm,, we have Pr[F(x)=F(x)]12.

Theorem 8 (Privacy Amplification [29]).

Let ϵ0. Let ρXBPos(XB) be a cq-state where X is classical and takes values in {0,1}m. Let FRHm, be the random variable for a function chosen uniformly at random in a two-universal class of hash functions Hm,. Then,

δ(ρF(X)FB,𝟙ρFB)12212(Hϵ(X|B)ρ)+ϵ.

3.5 Algebra

The following result shows that it is difficult to learn a large matrix using a small number of samples and is proven in the full paper.

Theorem 9.

Let M be an arbitrary ×n binary matrix. Let A be an algorithm that is given as input: (a1,b1),,(am,bm) and (a^1,b^1),,(a^p,b^p) where ai,a^i{0,1}n, bi,b^i{0,1}, m<n, p is a polynomial in , bi=Mai and b^iMa^i. Then the following statements hold:

  1. 1.

    For any vector a{0,1}n not in the span of (a1,,am), if A outputs a guess b of bMa, then Pr[b=b]=O(2).

  2. 2.

    Let x0,x1{0,1}n be any two distinct vectors not in the span of (a1,,am). Choose rR{0,1}. If A is additionally given x0,x1,yr where yrMxr and outputs a guess r then Pr[r=r]12+O(2).

4 Definitions: Obfuscation and Variants in the BQSM

In this section, we adapt the notions of obfuscation and one-time programs to the BQSM and introduce a related notion termed program broadcast.

Definition 10 (BQS Obfuscation).

A algorithm O is a (r,s)-BQS obfuscator of the class of classical circuits if it QPT and satisfies the following:

  1. 1.

    (functionality) For any circuit C, the circuit described by O(C) can be used to compute C on an input x chosen by the evaluator.

  2. 2.

    For any circuit C, the receiver requires r qmemory to learn an evaluation of C using O(C).

  3. 3.

    (security) For any computationally unbounded adversary 𝒜s there exists a computationally unbounded simulator 𝒮s such that for any circuit C,

    |Pr[𝒜s(O(C))=1]Pr[𝒮sC(|0|C|)=1]|𝗇𝖾𝗀𝗅(|C|).

One-time programs, introduced in [7], are similar to obfuscation but can only be used to learn a single evaluation of the program. We adapt this notion to the BQSM.

Definition 11 (BQS One-Time Program).

An algorithm O is a (r,s)-BQS one-time compiler for the class of classical circuits if it is QPT, satisfies the first three conditions of Definition 10, and the following:

  1. 4.

    (security) For any computationally unbounded adversary 𝒜s there exists a computationally unbounded simulator 𝒮s such that for any circuit C

    |Pr[𝒜s(O(C))=1]Pr[𝒮s1C(|0|C|)=1]|𝗇𝖾𝗀𝗅(|C|).

We introduce the notion of BQS program broadcast which is similar to one-time programs but additionally requires that multiple copies of the encrypted program can only be used to learn a limited number of evaluations. While one-time programs allow for symmetric key cryptography, program broadcast allows for powerful applications such as asymmetric cryptography and tokens.

Definition 12 (BQS Program Broadcast).

A (q,s,k)-BQS program broadcast for the class of circuits 𝒞 consists of the following QPT algorithms:

  1. 1.

    KeyGen(1λ,tend): Outputs a classical key ek.

  2. 2.

    Br(s,ek,C): Outputs a quantum transmission OC for the circuit C𝒞 during broadcast time (before tend). Outputs ek after broadcast time.

  3. 3.

    Eval(OC,ek,x): Outputs an evaluation y on input x from the transmission OC,ek using q qmemory.

Correctness requires that for any circuit C𝒞 and input x,

Pr[Eval(OC,ek,x)=C(x)ekKeyGen(1λ,tend)]1𝗇𝖾𝗀𝗅(λ).

Security requires that for any computationally unbounded adversary 𝒜s there exists a computationally unbounded simulator 𝒮s such that for any circuit C𝒞, and ekKeyGen(1λ,tend),

|Pr[𝒜sBr(s,ek,C)(|0)=1]Pr[𝒮skC(|0|C|)=1]|𝗇𝖾𝗀𝗅(λ).

5 Definitions: Disappearing Cryptography

In this section, we initiate the study of disappearing cryptography in the BQSM. These concepts were defined earlier in [21, 16] but we adapt the definitions to the BQSM. We define these notions for oblivious transfer, one-time programs, and asymmetric key encryption.

Informally, a state |ϕ is disappearing if any adversary that receives |ϕ cannot produce a state with the same “functionality” as |ϕ after a certain point in the transmission. In the BQSM, this point is when the adversary’s qmemory bound applies.

5.1 One-Time Programs

We present the following experiment to define disappearing security for one-time programs. Intuitively, the experiment checks whether an adversary that receives a one-time program can retrieve the evaluation on a random input x that is only revealed after the program. The experiment focuses on matrix branching programs but the same experiment can be applied to any circuit class where sampling can be done efficiently.

Experiment 1TP𝚷,𝓐Dis(𝒎,𝒏,): Let Π(m,P) be the one-time program protocol with security parameter m on the matrix branching program P:{0,1}n{0,1}. 1. Sample xR{0,1}n and a matrix branching program P:{0,1}n{0,1} uniformly at random. 2. Protocol Π(m,P) is executed between the experiment and adversary 𝒜. 3. After the execution ends, send x to 𝒜. 4. 𝒜 outputs a guess p for P(x). 5. The output of the experiment is 1 if p=P(x) and 0 otherwise.

Definition 13.

A one-time program protocol Πs is disappearing in the BQSM if for any adversary 𝒜s,

Pr[1TPΠs,𝒜sDis(m,n,)=1]12+𝗇𝖾𝗀𝗅(min(n,m)).

5.2 Encryption

We first recall the definition of a quantum asymmetric (public) key encryption scheme on classical messages. Note that the public key in this setting is quantum so multiple copies must be created and distributed due to the no-cloning theorem. Hence, we add an algorithm KeySend that outputs a copy of the quantum public key when queried. In our security experiment, the adversary is allowed to receive a polynomial number of public key copies. We also introduce an algorithm KeyReceive which describes how to extract a reusable classical key from a public key copy to use for encryption.

Definition 14 (Quantum Asymmetric Key Encryption).

A quantum asymmetric key encryption scheme Π over classical message space consists of the following QPT algorithms:

  • Gen(1λ): Outputs a private key sk.

  • KeySend(sk): Outputs a quantum public key copy ρpk.

  • KeyReceive(ρpk): Extracts a key k from ρpk.

  • Enc(k,μ): Outputs a ciphertext ρct for μ.

  • Dec(sk,ρct): Outputs a message μ by decrypting ρct.

Definition 15 (Correctness).

A quantum asymmetric key encryption scheme Π is correct if for any message μ,

Pr[Dec(sk,ρct)=μskGen(1λ)]1𝗇𝖾𝗀𝗅(λ).

We now present an experiment to test disappearing security under lunchtime chosen ciphertext attack (qDCCA1) in the BQSM. Recall, IND-CCA1 [8] tests security against an adversary that can query the encryption oracle at any point in the experiment and can query the decryption oracles at any point before the challenge ciphertext is received. To satisfy disappearing security under CCA1, we require that an adversary cannot win the IND-CCA1 experiment even if the private key is revealed after the challenge ciphertext is given.

Experiment AsyK𝚷,𝓐qDCCA1(𝝀): 1. Sample a private key skGen(1λ) and bit bR{0,1}. 2. Generate a public key ρpkKeySend(sk). 3. Extract key kKeyReceive(ρpk). 4. Adversary outputs two messages m0,m1𝒜KeySend(sk),Enc(k,),Dec(sk,). 5. Send 𝒜KeySend(sk),Enc(k,) the ciphertext ρctEnc(k,mb). 6. Give 𝒜KeySend(sk),Enc(k,) the private key sk. 7. 𝒜KeySend(sk),Enc(k,) outputs a guess b. 8. The output of the experiment is 1 if b=b and 0 otherwise.

We can similarly construct disappearing experiment in the symmetric key case, denoted SymKΠ,𝒜qDCCA1(λ) by deleting steps 2 & 3 and replacing k with sk in the asymmetric experiment.

Definition 16 (Security).

An asymmetric key encryption scheme Πs satisfies disappearing indistinguishability against chosen ciphertext attacks (qDCCA1) if for any adversary 𝒜s,

Pr[AsyKΠs,𝒜sqDCCA1(λ)=1] 12+𝗇𝖾𝗀𝗅(λ),

6 One-Time Programs

In this section, we give the result for an information-theoretic secure one-time program in the BQSM. The construction and proof are provided in the full paper as they are long and technical. Our construction is also disappearing meaning a one-time program cannot be evaluated after the transmission ends.

Theorem 17.

There exists an algorithm 𝒪s that is a disappearing information-theoretically secure (0,s) one-time compiler for the class of polynomial classical circuits against any computationally unbounded adversary with s qmemory bound.

7 Program Broadcast

In this section, we construct a BQS program broadcaster as introduced in Definition 12. This will allow us to tackle asymmetric key encryption in later sections. Let 𝒞m={𝒞n,m}n2m where 𝒞n,m is a set of polynomial-size circuits in n, of input size n, and output size m. Note that any polynomial-size circuits belongs to such a class by adding null outputs to ensure that n2m.

Construction 18 (BQS Program Broadcaster).

The (12m,s,s2m)-BQS program broadcast scheme for the class 𝒞m until time tend is as follows:

  • KeyGen(1λ,tend): Choose uniformly at random a (12m)×(12m) binary matrix M and let F(x)Mx be the corresponding program. Choose a two-universal hash function HRH12m,m. Output ek(M,H,tend).

  • Br(s,ek,P): Let P𝒞m. If queried before time tend, then:

    1. 1.

      Randomly choose 𝐫,𝐱R{0,1}12m.

    2. 2.

      Compute θF(𝐫) and cH(𝐱).

    3. 3.

      Send |𝐱θ|x1θ1|x12mθ12m.

    4. 4.

      Send 𝒪s(Pc).

    5. 5.

      Send 𝐫.

    The entire transmission is denoted as OPr,x.

    If queried after time tend, then apply the qmemory bound and output ek.

  • Eval(OPr,x,ek,v):

    1. 1.

      Store |𝐱θ.

    2. 2.

      Evaluate the one-time program 𝒪s(Pc) on v to obtain P(v)c.

    3. 3.

      After 𝐫 and F are received, compute θ.

    4. 4.

      Measure |𝐱θ in the basis θ to obtain 𝐱.

    5. 5.

      Use H to compute c=H(𝐱) and obtain P(v).

Theorem 19 (Security).

Construction 18 is a (12m,s,s2m)-BQS program broadcaster for the class 𝒞m.

Proof.

Let P𝒞m. It is clear that the receiver requires 12m qmemory to learn a single evaluation of P from the broadcast.

In terms of security, an adversary 𝒜s can receive a polynomial number, say p, outputs of the broadcast Br(s,ek,P). From these states, the adversary obtains (|𝐱iθi)i[p] and one-time programs (𝒪s(Pci))i[p] where ciH(𝐱i).

𝒜s can be simulated by 𝒮s which has access to a single oracle query to Pci for each i[p] by the security of one-time protocol (Theorem 17). The lemma below shows that 𝒮s can learn at most s2m values in {ci}i[p]. This implies that 𝒜s can learn at most s2m evaluations of P from the broadcast thus achieving program broadcast security.

Lemma 20.

𝒮s can distinguish at most s2m terms in {ci}i[p] from random.

Proof.

Assume that there exists s2m values 𝐱i1,,𝐱is2m that are distinguishable from random.

Instead of the broadcaster sending |𝐱iθi, a standard purification argument shows it is sufficient to show security for the protocol with the following modification. For each qubit supposed to be sent, the broadcaster instead prepares an EPR state 12(|00+|11) and sends one half to 𝒮s and keeps one half. Then the broadcaster measures its halves of the EPR pairs in a random BB84 basis in {+,×}12m after the memory bound of 𝒮s applies. Let Θi and Xi be the random variables representing the broadcaster’s choice of measurement basis and outcome. Let XIXi1Xi2Xis2m and ΘIΘi1Θi2Θis2m. The Uncertainty Relation (Lemma 4) implies that for γ=112, there exists ϵ (negligible in m) such that Hϵ(XI|ΘI)(122γ)(6s)=2s. Let B be the random s qubit state the adversary stores when the memory bound applies. By the chain rule for min-entropy (Lemma 3),

Hϵ(XI|ΘIB)Hϵ(XI|ΘI)ss.

Hence, by the Generalized Min-entropy Splitting Lemma 7, there exists a random variable C and negligible value ϵ>0 such that,

Hϵ(XiC|ΘICB)2m4.

By the Privacy Amplification Theorem 8,

δ(ρH(XiC)CHΘIB,𝟙 ρCHΘIB)
12212(Hϵ(XiC|ΘICB)ρm)+ϵ=O(2m)=𝗇𝖾𝗀𝗅(n).

The final equality is because mlg2(n) which means 2m is negligible in n. This gives a contradiction so there is less than s2m values ci which are distinguishable from random. This completes the proof of Theorem 19.

8 Encryption Schemes

We construct information-theoretically secure symmetric encryption in the BQSM and, then, show how to upgrade it to the asymmetric setting.

8.1 Symmetric Key Encryption

In this section, we present a private key encryption scheme that satisfies disappearing indistinguishability under chosen ciphertext attacks (qDCCA1).

Construction 21.

The symmetric key encryption scheme ΠSymK against adversaries with qmemory bound s is as follows.

  • Gen(1λ): Let m(lgλ)3/2. Choose at random strings q,wR{0,1}m, a (2m)×(2m) invertible binary matrix M and string zR{0,1}2m. Define S(x)Mx+z, and S(x)qx+wmod2m. The private key is k(q,w,M,z).

  • Enc(s,k,μ): Let |μ|. Choose strings a,bR{0,1}m and define f(x)ax+bmod2m. Construct the following program:

    Ek,f,μ(y)={S(f(x))μif y=S(xf(x))otherwise.

    The encryption is ρct𝒪s(f),𝒪s(Ek,f,μ) sent in sequence; first 𝒪s(f) and then 𝒪s(Ek,f,μ).

  • Dec(k,ρct): Check ρct has the correct format (see note below). Evaluate the first one-time program on a random input v to obtain f(v). Evaluate the second one-time program on S(vf(v)). If the output is of the form S(f(v))μ^ (for some string μ^) then output μ^ and otherwise.

Theorem 22 (Security).

Construction 21 (ΠSymK) satisfies qDCCA1 security against computationally unbounded adversaries with qmemory bound s.

Proof.

An adversary 𝒜s in the qDCCA1-security experiment requests a polynomial number, say Qe, of encryption queries and a polynomial number, say Qd, of decryption queries. Denote the ciphertexts produced by all encryption queries to the oracle as 𝒪(fi),𝒪(Ek,fi,μi)i[Qe] and denote the decryption queries submitted to the oracle as 𝒪(f^j),𝒪(E^j)j[Qd] for 𝐍𝐂1 functions f^j:{0,1}m{0,1}m and E^j:{0,1}2m{0,1}m+. Any decryption query not of this form is immediately rejected as an invalid ciphertext.

𝒜s cannot learn anything from the encryption queries alone as such attacks can be simulated with only a single oracle query to each program in (Ek,fi,μi)i[Qe]. All such queries will yield except with negligible probability by the security of one-time programs (Theorem 17).

Now, consider what 𝒜s learns from the first decryption query 𝒪(f^0),𝒪(E^0). Suppose 𝒜s requested the encryption queries 𝒪(fi),𝒪(Ek,fi,μi)i[d0] prior to requesting the first decryption query. These ciphertexts may be utilized in the construction of the decryption query. Let 𝖠0 be the sub-algorithm of 𝒜s which produces the first decryption query using these ciphertexts. Hence, we write 𝒪s(f^0),𝒪s(E^0)𝖠0(𝒪(fi),𝒪(Ek,fi,μi)i[d0]).

As a side note, prior to sending 𝒪s(E^0), the memory bound for (𝒪s(fi))i[d0] must have already been applied; thus there exists values (vi)i[d0] such that 𝒜s can only distinguish fi(x) from random on x=vi for all i[d0]. This is because these functions are of the form fi(x)=aix+bimod2m so learning one evaluation is not sufficient to distinguish the evaluation on another input from random.

When the oracle receives the first decryption query, it evaluates the first one-time program on a random input say v^0 to get f^0(v^0). Next, it evaluates the second one-time program on S(v^0f^0(v^0)) and gets an output say y^0μ^0 (or ). Let 𝖮𝗋0 denote the sub-algorithm of the oracle which performs this evaluation. Then this entire interaction can be described as y^0μ^0𝖮𝗋0(𝖠0(𝒪(fi),𝒪(Ek,fi,μi)i[d0])). Critically, the algorithm 𝖠0 is oblivious of S and 𝖮𝗋0 has access to only a single evaluation of S, namely S(v0^f^0(v^0)).

The purpose of this description is to highlight that this entire procedure is essentially performed by an algorithm with access to only a single evaluation of S. By Theorem 9, this algorithm cannot guess S(x) on any input xv0^f^0(v^0). By the security of one-time programs, this algorithm can be simulated with a simulator that has access to only a single query to each program (Ek,fi,μi)i[d0] instead of (𝒪s(Ek,fi,μi))i[d0]. The query to Ek,fi,μi will yield except with negligible probability unless v^0fi(v^0)=v^0f^0(v^0) since the simulator cannot guess S(x) on xv^0f^0(v^0). If the condition v^0fi(v^0)=v^0f^0(v^0) is not satisfied for any i[d0] then the simulator will receive from all its oracle queries except with negligible probability and thus there is a negligible probability that y^0=S(f^0(v^0)). Note that, there is at most a single value i that satisfies this condition except with negligible probability since the parameters of the functions (fi)i[d0] are chosen independently and at random.

Assume this condition is satisfied only by the function fn where n[d0]. There is negligible chance that v^0=vn and so 𝒜s cannot distinguish fn(v^0) or equivalently f^0(v^0) from random. The other values used by the oracle in the decryption query are: v, S(vf^0(v^0)) and S(f^0(v^0)). Even if 𝒜s learns all these values, it does not help in determining functions S and S since f^0(v^0) is indistinguishable from random.

At the end of this argument, 𝒜s cannot distinguish the key k from random. Notice that the only requirement to apply this argument on a decryption query is that 𝒜 cannot distinguish k from random when it submits the query. Hence, this argument can be applied to all decryption queries and it can be deduced inductively that 𝒜s cannot distinguish k from random when it receives the challenge ciphertext. Let 𝒪s(f),𝒪s(Ek,f,mb) be the challenge ciphertext. By one-time program security, the adversary’s access to these programs can be simulated with a single evaluation to each program. Hence, it is clear that the probability that the adversary guesses b is upper bounded by 12+𝗇𝖾𝗀𝗅(n). This still holds if k is later revealed since one-time programs disappear after their transmission ends by Theorem 17.

8.2 Asymmetric Key Encryption

We now look into the asymmetric key setting and construct an asymmetric key encryption scheme with information-theoretic disappearing security under chosen-ciphertext attacks in the BQSM. The private key is a large matrix and the public key is a program broadcast of the matrix. Since different users will likely learn different evaluations, an evaluation can be used as a secret key to encrypt messages in the same way as in Construction 21. Note that honest users need a small qmemory to process the broadcast as described in Construction 18. This is in contrast to the private key setting where no qmemory is required.

Construction 23.

Let Π¯=(Gen¯,Enc¯,Dec¯) be given in Construction 21 for symmetric key encryption and let ΠBr=(KeyGen,Br,Eval) be the algorithms for program broadcast given in Construction 18. The asymmetric key encryption scheme ΠAsyK against adversaries with qmemory bound s is as follows:

  • Gen(1λ,s): Let m=100(lgλ)3 and n=max(6sm+1,m). Choose uniformly at random m×n binary matrix M and for x{0,1}m, let P(x)Mx be the corresponding program. Generate ekKeyGen(1λ,tend). The private key is sk=(ek,P).

  • KeySend(s,sk): If queried before tend, then output OPBr(s,ek,P).

    If queried after tend, the qmemory bound applies and output ek.

    Let ρpkOP,ek denote the public key copy.

  • KeyReceive(ρpk): Randomly choose vR{0,1}n. Evaluate the public key P(v)Eval(ρpk,v) and output the key kv=(v,P(v)).

  • Enc(s,kv,μ): Output v,Enc¯(s,P(v),μ) 333The string P(v) is of length m=100(lgλ)3, so it is of sufficient length such that it can be interpreted as the secret key in the symmetric-key encryption scheme Π¯. .

  • Dec(sk,v,ρct): Obtain P(v) using sk and v. Output Dec¯(P(v),ρct).

The algorithm KeyReceive requires 100(lgλ)3 qmemory to run and the scheme is secure against adversaries with s qmemory, where s can be any polynomial in λ. Hence, by setting m100(lgλ)3, the gap between the qmemory of the honest user and the adversary is m vs. em3.

Theorem 24 (Security).

Construction 23 (ΠAsyK) satisfies qDCCA1 security against computationally unbounded adversaries with qmemory bound s.

Proof.

An adversary 𝒜s in the qDCCA1 security experiment can request a polynomial number of public key copies ρpk. The proof can be realized in the following steps.

  1. 1.

    By the security of our program broadcast protocol (Theorem 19) 𝒜s can be simulated with an algorithm 𝒮s that is given 6sm queries to P.

  2. 2.

    By Theorem 9, since M is a matrix of dimension m12×n and n>6sm, 𝒮s cannot guess the output of P(x)=Mx on a random input except with negligible probability.

  3. 3.

    This means that there is negligible chance 𝒮s can determine the sub-key kv extracted from the public key ρpk in the experiment which reduces the proof to the private key setting. Theorem 22 gives the result.

9 Note on Noisy Communication

Our protocols assume that the communication between the sender and receiver is error-free. It is assumed that the sender has a perfect quantum source which when requested will produce one and only one qubit in the correct state. Note if the source accidentally produces two copies of a qubit then the adversary can measure the qubit in two bases and break the 1-2 oblivious transfer scheme. Furthermore, it requires the honest evaluator to measure all qubits without error.

Fortunately, in [10] the authors used techniques based on information reconciliation to allow an honest evaluator and sender in the quantum 1-2 oblivious transfer scheme with imperfect apparatus to perform error correction without compromising the security of the scheme. The same techniques are applicable to our protocols since the quantum component of our one-time programs consist of oblivious transfer transmissions. However, we leave a more rigorous treatment of these issues as an avenue for future work.

References

  • [1] Boaz Barak, Oded Goldreich, Rusell Impagliazzo, Steven Rudich, Amit Sahai, Salil Vadhan, and Ke Yang. On the (im) possibility of obfuscating programs. In Annual international cryptology conference, pages 1–18. Springer, 2001. doi:10.1007/3-540-44647-8_1.
  • [2] Mohammed Barhoush and Louis Salvail. How to sign quantum messages. arXiv preprint arXiv:2304.06325, 2023. doi:10.48550/arXiv.2304.06325.
  • [3] Howard Barnum, Claude Crépeau, Daniel Gottesman, Adam Smith, and Alain Tapp. Authentication of quantum messages. In Foundations of Computer Science, 2002. Proceedings. The 43rd Annual IEEE Symposium on, pages 449–458, 2002. doi:10.1109/SFCS.2002.1181969.
  • [4] Khashayar Barooti, Giulio Malavolta, and Michael Walter. A simple construction of quantum public-key encryption from quantum-secure one-way functions. arXiv preprint, 2023. arXiv:2303.01143.
  • [5] Shalev Ben-David and Or Sattath. Quantum tokens for digital signatures. Quantum, 7:901, 2023. doi:10.22331/Q-2023-01-19-901.
  • [6] Nir Bitansky, Ran Canetti, Henry Cohn, Shafi Goldwasser, Yael Tauman Kalai, Omer Paneth, and Alon Rosen. The impossibility of obfuscation with auxiliary input or a universal simulator. In Annual Cryptology Conference, pages 71–89. Springer, 2014. doi:10.1007/978-3-662-44381-1_5.
  • [7] Anne Broadbent, Gus Gutoski, and Douglas Stebila. Quantum one-time programs. In Annual Cryptology Conference, pages 344–360. Springer, 2013.
  • [8] Ronald Cramer and Victor Shoup. A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack. In Annual international cryptology conference, pages 13–25. Springer, 1998. doi:10.1007/BFB0055717.
  • [9] Ivan Damgård, Serge Fehr, Louis Salvail, and Christian Schaffner. Cryptography in the bounded-quantum-storage model. SIAM Journal on Computing, 37(6):1865–1890, 2008. doi:10.1137/060651343.
  • [10] Ivan B Damgård, Serge Fehr, Renato Renner, Louis Salvail, and Christian Schaffner. A tight high-order entropic quantum uncertainty relation with applications. In Advances in Cryptology-CRYPTO 2007: 27th Annual International Cryptology Conference, Santa Barbara, CA, USA, August 19-23, 2007. Proceedings 27, pages 360–378. Springer, 2007. doi:10.1007/978-3-540-74143-5_20.
  • [11] Yevgeniy Dodis, Willy Quach, and Daniel Wichs. Speak much, remember little: Cryptography in the bounded storage model, revisited. Cryptology ePrint Archive, 2021. URL: https://eprint.iacr.org/2021/1270.
  • [12] Yevgeniy Dodis, Willy Quach, and Daniel Wichs. Authentication in the bounded storage model. In Annual International Conference on the Theory and Applications of Cryptographic Techniques, pages 737–766. Springer, 2022. doi:10.1007/978-3-031-07082-2_26.
  • [13] Javad Doliskani. Efficient quantum public-key encryption from learning with errors. arXiv preprint, 2021. arXiv:2105.12790.
  • [14] Shafi Goldwasser and Yael Tauman Kalai. On the impossibility of obfuscation with auxiliary input. In 46th Annual IEEE Symposium on Foundations of Computer Science (FOCS’05), pages 553–562. IEEE, 2005. doi:10.1109/SFCS.2005.60.
  • [15] Shafi Goldwasser, Yael Tauman Kalai, and Guy N Rothblum. One-time programs. In Annual International Cryptology Conference, pages 39–56. Springer, 2008. doi:10.1007/978-3-540-85174-5_3.
  • [16] Daniel Gottesman. Uncloneable encryption. arXiv preprint, 2002. arXiv:quant-ph/0210062.
  • [17] Daniel Gottesman and Isaac Chuang. Quantum digital signatures. arXiv preprint, 2001. arXiv:quant-ph/0105032.
  • [18] Vipul Goyal, Yuval Ishai, Amit Sahai, Ramarathnam Venkatesan, and Akshay Wadia. Founding cryptography on tamper-proof hardware tokens. In Theory of Cryptography: 7th Theory of Cryptography Conference, TCC 2010, Zurich, Switzerland, February 9-11, 2010. Proceedings 7, pages 308–326. Springer, 2010. doi:10.1007/978-3-642-11799-2_19.
  • [19] Jiaxin Guan, Daniel Wichs, and Mark Zhandry. Incompressible cryptography. In Annual International Conference on the Theory and Applications of Cryptographic Techniques, pages 700–730. Springer, 2022. doi:10.1007/978-3-031-06944-4_24.
  • [20] Jiaxin Guan and Mark Zhandary. Simple schemes in the bounded storage model. In Annual International Conference on the Theory and Applications of Cryptographic Techniques, pages 500–524. Springer, 2019. doi:10.1007/978-3-030-17659-4_17.
  • [21] Jiaxin Guan and Mark Zhandry. Disappearing cryptography in the bounded storage model. In Theory of Cryptography Conference, pages 365–396. Springer, 2021. doi:10.1007/978-3-030-90453-1_13.
  • [22] Akinori Kawachi, Takeshi Koshiba, Harumichi Nishimura, and Tomoyuki Yamakami. Computational indistinguishability between quantum states and its cryptographic application. In Eurocrypt, volume 3494, pages 268–284. Springer, 2005. doi:10.1007/11426639_16.
  • [23] Joe Kilian. Founding cryptography on oblivious transfer. In Proc. ACM Symposium on Theory of Computing, STOC ’88, pages 20–31, New York, NY, USA, 1988. ACM. doi:10.1145/62212.62215.
  • [24] Robert König and Renato Renner. Sampling of min-entropy relative to quantum knowledge. IEEE Transactions on Information Theory, 57(7):4760–4787, 2011. doi:10.1109/TIT.2011.2146730.
  • [25] Robert König, Renato Renner, and Christian Schaffner. The operational meaning of min-and max-entropy. IEEE Transactions on Information theory, 55(9):4337–4347, 2009. doi:10.1109/TIT.2009.2025545.
  • [26] Ueli M Maurer. Conditionally-perfect secrecy and a provably-secure randomized cipher. Journal of Cryptology, 5(1):53–66, 1992. doi:10.1007/BF00191321.
  • [27] Michele Mosca, Alain Tapp, and Ronald de Wolf. Private quantum channels and the cost of randomizing quantum information. arXiv preprint, 2000. arXiv:quant-ph/0003101.
  • [28] Ran Raz. Fast learning requires good memory: A time-space lower bound for parity learning. Journal of the ACM (JACM), 66(1):1–18, 2018. doi:10.1145/3186563.
  • [29] Renato Renner and Robert König. Universally composable privacy amplification against quantum adversaries. In Theory of Cryptography Conference, pages 407–425. Springer, 2005. doi:10.1007/978-3-540-30576-7_22.
  • [30] Christian Schaffner. Cryptography in the Bounded-Quantum-Storage Model. PhD thesis, Aarhus Universitet, 2007. arXiv:0709.0289.
  • [31] Stephanie Wehner, Christian Schaffner, and Barbara M. Terhal. Cryptography from noisy storage. Phys. Rev. Lett., 100:220502, June 2008. doi:10.1103/PhysRevLett.100.220502.
  • [32] Andreas Winter. Coding theorem and strong converse for quantum channels. IEEE Transactions on Information Theory, 45(7):2481–2485, 1999. doi:10.1109/18.796385.