1 Introduction
Time-lock puzzles, introduced by Rivest, Shamir, and Wagner [29], refer to a fascinating type of computational problem that requires a certain amount of sequential effort to solve. Time-lock puzzles can be used to construct timed commitments [7], which “encrypt a message m into the future” such that m remains computationally hidden for some time T, but can be recovered once this time has passed. Time-lock puzzles can be used to build various other primitives, including verifiable delay functions (VDFs) [5, 6, 28, 33], zero-knowledge proofs [13], and non-malleable (standard) commitments [19], and have applications to fair coin tossing, e-voting, auctions, and contract signing [7, 23]. In this work, we (1) provide the first formal evidence in support of the hardness of the most widely used time-lock puzzle [29] and (2) give new, stronger security definitions (and constructions) for timed commitments and related primitives. These contributions are explained in more detail next.
Hardness in the (strong) AGM. The hardness assumption underlying the most popular time-lock puzzle [29] is that, given a random generator g in the group of quadratic residues1 (where N is the product of two safe primes), it is hard to compute
in fewer than T sequential steps. We study this assumption in a new, strengthened version of the algebraic group model (AGM) [15] that we call the strong AGM (SAGM) that lies in between the generic group model (GGM) [24, 32] and the AGM. Roughly, an algorithm
in the AGM is constrained as follows: for any group element x that
outputs,
must also output coefficients showing how x was computed from group elements previously given to
as input. The SAGM imposes the stronger constraint that
output the entire path of its computation (i.e., all intermediate group operations) that resulted in output x. We show that if
is modeled as a strongly algebraic group, then computing
from g using fewer than T squarings is as hard as factoring N. Our result is the first formal argument supporting the sequential hardness of squaring in
, and immediately implies the security of Pietrzak’s VDF [28] in the SAGM (assuming the hardness of factoring). Our technique deviates substantially from known proofs in the AGM, which use groups of (known) prime order. We also show that in the AGM, it is not possible to reduce the hardness of speeding up sequential squaring to factoring (assuming factoring is hard in the first place).
Non-malleable Timed Commitments. The second part of our paper is concerned with the security of non-interactive timed commitments (NITCs). A timed commitment differs from a regular one in that it additionally has a “forced decommit” routine that can be used to force open the commitment after a certain amount of time in case the committer refuses to open it. Moreover, a commitment comes with a proof that it can be forced open if needed. We introduce a strong notion of non-malleability for such schemes. To construct a non-malleable NITC, we formalize as a stepping stone a timed public-key analogue that we call timed public-key encryption (TPKE). We then show how to achieve an appropriate notion of CCA-security for TPKE. Finally, we show a generic transformation from CCA-secure TPKE to non-malleable NITC. Although our main purpose for introducing TPKE is to obtain a non-malleable NITC, we believe that TPKE is an independently interesting primitive worthy of further study.
1.1 Related Work
We highlight here additional works not already cited earlier. Mahmoody et al. [22] show constructions of time-lock puzzles in the random-oracle model, and Bitansky et al. [4] give constructions based on randomized encodings. In recent work, Malavolta and Thyagarajan [23] study a homomorphic variant of time-lock puzzles. Another line of work initiated by May [25] and later formalized by Rivest et al. [29] studies a model for timed message transmission between a sender and receiver in the presence of a trusted server. Bellare and Goldwasser [3] considered a notion of “partial key escrow” in which a server can store keys in escrow and learn only some of them unless it expends significant computational effort; this model was subsequently studied by others [11, 12] as well. Liu et al. [21] propose a time-released encryption scheme based on witness encryption in a model with a global clock.
Concurrent Work. In work concurrent with our own, Baum et al. [2] formalize time-lock puzzles and timed commitments in the framework of universal composability (UC) [9]; universally composable timed commitments are presumably also non-malleable. Baum et al. present constructions in the (programmable) random-oracle model that achieve their definitions, and show that their definitions are impossible to realize in the plain model. Ephraim et al. [14] also recently formalized a notion of non-malleable timed commitments that is somewhat different from our own. They do not distinguish between time-lock puzzles and timed commitments, which makes a direct comparison somewhat difficult. They also give a generic construction of a time-lock puzzle from a VDF in the random-oracle model. Finally, the work of Rotem and Segev [30] analyzes the hardness of speeding up sequential squaring and related functions over the ring . Their analysis is in the generic ring model [1], where an algorithm can only perform additions and multiplications modulo N, but the algorithm does not get access to the actual representations of ring elements. This makes their analysis incomparable to our analysis in the strong AGM.
1.2 Overview of the Paper
We introduce notation and basic definitions in Sect. 2. In Sect. 3 we introduce the SAGM and state our hardness result about the sequential squaring assumption. We give definitions for TPKE and NITC in Sect. 2, and give a construction of CCA-secure TPKE in Sect. 4.2. In Sect. 4.3, we then show a simple, generic conversion from CCA-secure TPKE to non-malleable NITC.
2 Notation and Preliminaries
Notation. We use “:=” to denote a deterministic assignment, and “” to denote assignment via a randomized process. In particular, “
” denotes sampling a uniform element x from a set S. We denote the length of a bitstring x by |x|, and the length of the binary representation of an integer n by ||n||. We denote the security parameter by
. We write
for the output of experiment
involving adversary
.
Running Time. We consider running times of algorithms in some unspecified (but fixed) computational model, e.g., the Turing machine model. This is done both for simplicity of exposition and generality of our results. To simplify things further, we omit from our running-time analyses additive terms resulting from bitstring operations or passing arguments between algorithms, and we scale units so that multiplication in the group under consideration takes unit time. All algorithms are assumed to have arbitrary parallel computing resources.
The Quadratic Residue Group . Let
be an algorithm that, on input
, outputs (N, p, q) where
and
are two safe primes (i.e., such that
and
are also prime) with
; here,
is defined such that the fastest factoring algorithm takes time
to factor N with probability
.
may fail with negligible probability, but we ignore this from now on. It is well known that
is cyclic with
.
For completeness, we define the factoring problem.


- 1.
Compute
, and then run
on input N.
- 2.
When
outputs integers
, the experiment evaluates to 1 iff
.



![$$\begin{aligned} \Pr \left[ \mathbf {FAC}_\mathsf {GenMod}^{\mathcal {A}}=1\right] \le \epsilon . \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ1.png)
The Repeated Squaring Algorithm. Given an element , it is possible to compute
(all modulo N) in i steps: in step i, simply multiply each value
by
. (Recall that we allow unbounded parallelism.) In particular, it is possible to compute
for any positive integer x in
steps. We denote by
the algorithm that on input (g, N, x) computes
in this manner.










The RSW Problem. We next formally define the repeated squaring problem in the presence of preprocessing. This problem was first proposed by Rivest, Shamir, and Wagner [29] and hence we refer to it as the RSW problem. We write elements of (except for the fixed generator g) using bold, upper-case letters.


- 1.
Compute
.
- 2.
Run
on input N in a preprocessing phase to obtain some intermediate state.
- 3.
Sample
and run
on input g in the online phase.
- 4.
When
outputs
, the experiment evaluates to 1 iff
.






Clearly, an adversary can run
to compute
in T steps. This means there is a threshold
such that the T-RSW problem is easy when
. In Sect. 3.1 we show that in the strong algebraic group model, when
the T-RSW problem is
-hard (for negligible
) unless N can be factored in time roughly
. To put it another way, the fastest way to compute
(short of factoring N) is to run
.
We also introduce a decisional variant of the RSW assumption where, roughly speaking, the problem is to distinguish from a uniform element of
in fewer than T steps.


- 1.
Compute
.
- 2.
Run
on input N in a preprocessing phase to obtain some intermediate state.
- 3.
Sample
and a uniform bit
. If
, run
on inputs
; if
, run
on inputs
in the online phase.
- 4.
When
outputs a bit
, the experiment evaluates to 1 iff
.






The decisional T-RSW problem is related to the generalized BBS (GBBS) assumption introduced by Boneh and Naor [7]; however, there are several differences. First, the adversary in the GBBS assumption is given the group elements and then asked to distinguish
from uniform. Second, the GBBS assumption does not account for any preprocessing. Our definition is also similar to the strong sequential squaring assumption [23] except that we do not give g to
in the preprocessing phase.
Non-interactive Zero-Knowledge. We recall the notion of a non-interactive zero-knowledge proof system, defined as follows.



The randomized parameter generation algorithm
takes as input the security parameter
and outputs a common reference string
.
The randomized prover algorithm
takes as input a string
, an instance x, and a witness w. It outputs a proof
and runs in time at most
for all
, x and w.
The deterministic verifier algorithm
takes as input a string
, an instance x, and a proof
. It outputs 1 (accept) or 0 (reject) and runs in time at most
for all
, x and
.
The randomized simulation parameter generation algorithm
takes as input the security parameter
. It outputs a common reference string
and a trapdoor td and runs in time at most
.
The randomized simulation prover algorithm
takes as input an instance x and a trapdoor td. It outputs a proof
and runs in time at most
.
We require perfect completeness: For all , all
, and all
, it holds that
We next define zero-knowledge and soundness properties of a NIZK.



- 1.
Compute
and
, and choose a uniform bit
.
- 2.
Run
on input
with access to a prover oracle
, which behaves as follows: on input (x, w),
returns
if
; otherwise it generates
and returns
.
- 3.
When
outputs a bit
, the experiment evaluates to 1 iff
.



![$$\begin{aligned} \Pr \left[ \mathbf {ZK}_\mathsf {NIZK}^{\mathcal {A}}=1\right] \le \frac{1}{2}+\epsilon . \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ3.png)



- 1.
Compute
.
- 2.
Run
on input
.
- 3.
When
outputs
, the experiment evaluates to 1 iff
and
.



![$$\begin{aligned} \Pr \left[ \mathbf {SND}_\mathsf {NIZK}^{\mathcal {A}}=1\right] \le \epsilon . \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ4.png)
In our applications we also need the stronger notion of simulation soundness, which says that the adversary cannot produce a fake proof even if it has oracle access to the simulated prover algorithm.



- 1.
Compute
and initialize
.
- 2.
Run
on input
with access to a simulated prover oracle
, which behaves as follows: on input (x, w),
generates
, sets
, and returns
.
- 3.
When
outputs
, the experiment evaluates to 1 iff
,
, and
.



![$$\begin{aligned} \Pr \left[ \mathbf {SIMSND}_\mathsf {NIZK}^{\mathcal {A}}=1\right] \le \epsilon . \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ5.png)
3 Algebraic Hardness of the RSW Problem
We briefly recall the AGM, and then introduce a refinement that we call the strong AGM (SAGM) that lies in between the GGM and the AGM. As the main result of this section, we show that the RSW assumption can be reduced to the factoring assumption in the strong AGM. (Unfortunately, it does not seem possible to extend this result to prove hardness of the decisional RSW assumption based on factoring in the same model.) For completeness, we also show that it is not possible to reduce hardness of RSW to hardness of factoring in the AGM (unless factoring is easy).
3.1 The Strong Algebraic Group Model
The algebraic group model (AGM), introduced by Fuchsbauer, Kiltz, and Loss [15], lies between the GGM and the standard model. As in the standard model, algorithms are given actual (bit-strings representing) group elements, rather than abstract handles for (or random encodings of) those elements as in the GGM. This means that AGM algorithms are strictly more powerful than GGM algorithms (e.g., when working in an AGM algorithm can compute Jacobi symbols), and in particular means that the computational difficulty of problems in the AGM depends on the group representation used. (In contrast, in the GGM all cyclic groups of the same order are not only isomorphic, but identical.) On the other hand, an algorithm in the AGM that outputs group elements must also output representations of those elements with respect to any inputs the algorithm has received; this restricts the algorithm in comparison to the standard model (which imposes no such restriction).
In the AGM all algorithms are algebraic [8, 27]:
(Algebraic Algorithm). An algorithm over
is called algebraic if whenever
outputs a group element
, it also outputs an integer vector
with
, where
denotes the (ordered) list of group elements that
has received as input up to that point.
The original formulation of the AGM assumes that is a group of (known) prime order but this is not essential and we do not make that assumption here.
The Strong AGM. The AGM does not directly provide a way to measure the number of (algebraic) steps taken by an algorithm. This makes it unsuitable for dealing with “fine-grained” assumptions like the hardness of the RSW problem. (This point is made more formal in Sect. 3.3. On the other hand, as we will see, from a “coarse” perspective any algebraic algorithm can be implemented using polylogarithmically many algebraic steps.) This motivates us to consider a refinement of the AGM that we call the strong AGM (SAGM), which provides a way to directly measure the number of group operations performed by an algorithm.
In the AGM, whenever an algorithm outputs a group element it is required to also provide an algebraic representation of
with respect to all the group elements the algorithm has received as input so far. In the SAGM we strengthen this, and require an algorithm to express any group element as either (1) a product of two previous group elements that it has either received as input or already computed in some intermediate step, or (2) an inverse of a previous group element. That is, we require algorithms to be strongly algebraic:



- 1.
, where
and
were either provided as input to
or were output by
in some previous step(s);
- 2.
, where
and
was either provided as input to
or was output by
in some previous step.
Note that we allow arbitrary parallelism, since we allow strongly algebraic algorithms to output multiple tuples per step. As an example of a strongly algebraic algorithm, consider the following algorithm3 computing the product of n input elements
in
steps: If
then
outputs
; otherwise,
runs
and
in parallel, and outputs
. It is also easy to see that the repeated squaring algorithm
described previously can be cast as a strongly algebraic algorithm
such that
computes
in
steps.
Any algebraic algorithm with polynomial-length output can be turned into a strongly algebraic algorithm that uses polylogarithmically many steps:
Let be an algebraic algorithm over
taking as input n group elements
and outputting a group element
along with its algebraic representation
(so
), where
. Then there is a strongly algebraic algorithm
over
running in
steps such that the final group element output by
is identically distributed.

- 1.
Run
and receive
’s output
together with
. (Note that this is not an algebraic step, since all computation is “internal” to
and no group element is being output by
here.)
- 2.
Run
in parallel.
- 3.
Run
.
The theorem follows.
Running Time in the SAGM. The SAGM directly allows us to count the number of algebraic steps used by an algorithm. So far, we have treated all steps in our discussion as algebraic steps. In some settings, however, we may also wish to account for other (non-group) computation that an algorithm does, measured in some underlying computational model (e.g., the Turing machine model). In this case we will express the running time of algorithms as a pair and say that a strongly algebraic algorithm runs in time if it uses
algebraic steps, and has running time
in the underlying computational model.
3.2 Hardness of the RSW Problem in the Strong AGM
If the factorization of N (and hence ) is known, then
can be computed in at most
algebraic steps by first computing
and then computing
. Thus, informally, if the T-RSW problem is hard then factoring must be hard as well. Here we prove a converse in the SAGM, showing that the hardness of factoring implies the hardness of solving the T-RSW problem in fewer than T sequential steps for a strongly algebraic algorithm. We rely on a concrete version of the well-known result that N can be efficiently factored given any positive multiple of
(A proof follows by straightforward adaptation of the proof of [17, Theorem 8.50]):
Suppose and
(where
). Then there exists an algorithm
which runs in time at most
and outputs
such that
with probability at least
.
We now show:
Assume that factoring is -hard relative to
, and let T be any positive integer. Then the T-RSW problem is
-hard relative to
in the SAGM.










;
If
outputs
in an algebraic step, then
;
If
outputs
in an algebraic step, then
.
Obviously, for any
output by
. We have:
For any strongly algebraic algorithm given only g as input and running in
algebraic steps, every
output by
satisfies
.













We construct an algorithm that factors N as follows.
, on input N, runs the preprocessing phase of
, and then samples
and runs the online phase of
. When
produces its final output
, then
(recursively) computes
. Finally,
sets
and outputs
.
When we have
, i.e.,
divides
. Since, by the claim,
, we have
and so m is a nontrivial (integer) multiple of
in that case. We thus see that
factors N with probability at least
. The running time of
is at most
. This completes the proof.
3.3 The RSW Problem in the AGM
In the previous section we have shown that the hardness of the RSW problem can be reduced to the hardness of factoring in the strong AGM. Here, we show that a similar reduction in the (plain) AGM is impossible, unless factoring is easy. Specifically, we give a “meta-reduction” that converts any such reduction
into an efficient algorithm for factoring. In the theorem that follows, we write
to denote execution of
given (black-box) oracle access to another algorithm
. When we speak of the running time of
we assign unit cost to its oracle calls.
Let be a reduction running in time
and such that for any algebraic algorithm
with
, algorithm
satisfies
. Then there is an algorithm
running in time at most
with
.
Let be as described in the theorem statement. Intuitively,
simply runs
, handling its oracle calls by simulating the behavior of an (algebraic) algorithm
that solves the RSW problem with probability 1. (Note that the running time of doing so is irrelevant insofar as analyzing the behavior of
, since
cannot observe the running time of
. For this reason, we also ignore the fact that
is allowed preprocessing, and simply consider an algorithm
for which
outputs
.) Formally,
runs
. When
makes an oracle query
, algorithm
answers the query by computing
(using
) and returning the answer
to
. Finally,
outputs the factors that are output by
.
The assumptions of the theorem imply that factors N with probability at least
. The running time of
is the running time of
plus the time to run
(i.e., T steps) each time
calls
.
4 Non-malleable Timed Commitments
In this section we provide appropriate definitions for non-interactive (non-malleable) timed commitments (NITCs). As a building block toward our construction of NITCs, we introduce the notion of time-released public-key encryption (TPKE) and show how to construct CCA-secure TPKE.
4.1 Definitions
Timed commitments allow a committer to generate a commitment to a message m such that binding holds as usual, but hiding holds only until some designated time T; the receiver can “force open” the commitment by that time. Boneh and Naor [7] gave a (somewhat informal) description of the syntax of interactive timed-commitments and provided some specific constructions. We introduce the syntax of non-interactive timed commitments and then give appropriate security definitions.


The randomized parameter generation algorithm
takes as input the security parameter
and outputs a common reference string
.
The randomized commit algorithm
takes as input a string
and a message m. It outputs a commitment C and proofs
in time at most
.
The deterministic commitment verification algorithm
takes as input a string
, a commitment C, and a proof
. It outputs 1 (accept) or 0 (reject) in time at most
.
The deterministic decommitment verification algorithm
takes as input a string
, a commitment C, a message m, and a proof
. It outputs 1 (accept) or 0 (reject) in time at most
.
The deterministic forced decommit algorithm
takes as input a string
and a commitment C. It outputs a message m or
in time at least
.






To commit to message m, the committer runs to get C,
, and
, and sends C and
to a receiver. The receiver can run
to check that C can be forcibly decommitted (if need be). To decommit, the committer sends m and
to the receiver, who can then run
to verify the claimed opening. If the committer refuses to decommit, C be opened using
. NITCs are generally only interesting when
, i.e., when forced opening of a commitment takes longer than the initial verification and decommitment verification.
NITCs must satisfy appropriate notions of both hiding and binding.
Hiding. For hiding, we introduce a notion of non-malleability for NITCs based on the CCA-security notion for (standard) commitments by Canetti et al. [10]. Specifically, we require hiding to hold even when the adversary is given access to an oracle that provides the (forced) openings of commitments of the adversary’s choice. In the timed setting, the motivation behind providing the adversary with such an oracle is that (honest) parties may be running machines that can force open commitments at different speeds. As such, the adversary (as part of the higher-level protocol) could trick some party into opening commitments of the attacker’s choice. Note that although the adversary could run the forced opening algorithm itself, doing so would incur a cost; in contrast, the adversary only incurs a cost of one time unit to make a query to the oracle.



- 1.
Compute
.
- 2.
Run
on input
with access to a decommit oracle
in a preprocessing phase.
- 3.
When
outputs
, choose a uniform bit
, compute
, and run
on input
in the online phase.
continues to have access to
, except that
may not query this oracle on C.
- 4.
When
outputs a bit
, the experiment evaluates to 1 iff
.






Binding. The binding property states that a commitment cannot be opened to two different messages. It also ensures that the receiver does not accept commitments that cannot be forced open to the correct message.



- 1.
Compute
.
- 2.
Run
on input
with access to a decommit oracle
.
- 3.When
outputs
, the experiment evaluates to 1 iff
and either of the following holds:
and
;
.




Time-Released Public-Key Encryption. TPKE can be thought of the counterpart of timed commitments for public-key encryption. As in the case of standard public-key encryption (PKE), a sender encrypts a message for a designated recipient using the recipient’s public key; that recipient can decrypt and recover the message. Timed PKE additionally supports the ability for anyone (and not just the sender) to also recover the message, but only by investing more computational effort.


The randomized key-generation algorithm
takes as input the security parameter
and outputs a pair of keys
. We assume, for simplicity, that
includes
.
The randomized encryption algorithm
takes as input a public key
and a message m, and outputs a ciphertext c. It runs in time at most
.
The deterministic fast decryption algorithm
takes as input a secret key
and a ciphertext c, and outputs a message m or
. It runs in time at most
.
The deterministic slow decryption algorithm
takes as input a public key
and a ciphertext c, and outputs a message m or
. It runs in time at least
.
We require that for all output by
, all m, and all c output by
, it holds that
.
Such schemes are only interesting when , i.e., when fast decryption is much faster than slow decryption.
We consider security of TPKE against chosen-ciphertext attacks.



- 1.
Compute
.
- 2.
Run
on input
with access to a decryption oracle
in a preprocessing phase.
- 3.
When
outputs
, choose
, compute
, and run
on input c in the online phase.
continues to have access to
, except that
may not query this oracle on c.
- 4.
When
outputs a bit
, the experiment evaluates to 1 iff
.






We remark that in order for to be an independently interesting primitive, one might require that even for maliciously formed ciphertexts c,
and
always produce the same output (a property indeed enjoyed by our
scheme in the next section). However, since our primary motivation is to obtain commitment schemes, we do not require this property and hence opt for a simpler definition that only requires correctness (i.e., of honestly generated ciphertexts).
4.2 CCA-Secure TPKE
Here we describe a construction of a TPKE scheme that is CCA-secure under the decisional RSW assumption. While our construction is in the standard model, it suffers from a slow encryption algorithm. In the full version of our paper, we describe a CCA-secure construction in the ROM in which encryption can be sped up, using the secret key.
The starting point of our construction is a CPA-secure TPKE scheme based on the decisional RSW assumption. In this scheme, the public key is a modulus N and a generator ; the secret key contains
. To encrypt a message
s.t.
, the sender encodes m as
. It then first computes a random generator
(by raising g to a random power modulo N), and then computes the ciphertext
. This ciphertext can be decrypted quickly using
, but can also be decrypted slowly without knowledge of the secret key. (To decode to the original m, one can just compute the square root over the integers, since
).

A CCA-secure TPKE scheme
Subtleties in the Simulation. The proof of security in our context requires the ability to simulate both the challenge ciphertext and the decryption oracle using a “fast” decryption algorithm. The reason behind this is that if it were not possible to simulate decryption fast, then the reduction from the decisional RSW assumption would take too much time simulating the experiment for the adversary. Fast simulation is possible for two reasons. First, in the proof of the Naor-Yung construction, the simulator knows (at least) one of the secret keys at any time. Second, we use a NIZK with simulation soundness for which verification and proof simulation take linear time in the size of the instance (but not in the size of the circuit). Using these two components, the simulator can perform fast decryption on any correctly formed ciphertext. To reduce from decisional RSW, it embeds the decisional RSW challenge into the challenge ciphertext component for which the secret key is not known.











For all
,
runs within time O(|x|) on input
.
For all
,
runs within time
on input
.
On input
,
runs in time
.
In other words, both and
run in a fast manner, i.e., linear in the scale of the input instance.
We remark that both of the above constructions work over for primes p only, but can be translated to circuits over
, where N is composite, with small overhead, as shown in [18]. The idea is very simple: any arithmetic operation over
is emulated using multiple (smaller) values in
. The multiplicative overhead in this construction is roughly linear in the size difference between p and N and is ignored here for readability.
Suppose is
-zero-knowledge and
-simulation sound, and the decisional T-RSW problem is
-hard relative to
. Then the
-TPKE scheme in Fig. 1 is
-CCA-secure.
Let be an adversary with preprocessing time
and online time
. We define a sequence of experiments as follows.
: This is the original CCA-security experiment
. Denote
’s challenge ciphertext by
.
:
is identical to
, except that
and
are simulated. That is, in
run
, and in the challenge ciphertext compute
.
![$$|\Pr [\mathsf{Expt}_1^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_0^{\mathcal {A}}=1]|$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_IEq567.png)





Setup:
, on input
, for
runs
, computes
, sets
, and chooses
. Then
runs
.
answers
’s
queries using the fast decryption algorithm
. That is, on
’s query
,
computes
and
; if
then
returns
, otherwise
returns
.
- Online phase: When
makes its challenge query on
,
chooses
and for
chooses
, and computes
and outputs. After that,
answers
’s
queries just as in setup.
Output: On
’s output bit
,
outputs 1 if
, and 0 otherwise.




![$$\begin{aligned} |\Pr [\mathsf{Expt}_1^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_0^{\mathcal {A}}=1]|\le \epsilon _{ZK}. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ10.png)








![$$|\Pr [\mathsf{Expt}_2^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_1^{\mathcal {A}}=1]|$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_IEq622.png)










Preprocessing phase:
, on input N, runs
, computes
, sets
, and chooses
,
; runs
. Then
runs
.
answers
’s
queries as described in
.
- Online phase: When
makes its challenge query on
,
asks for
from the decisional RSW challenger, chooses
and
, and computes
and returns.
answers
’s
queries as described in
.
Output: On
’s output bit
,
outputs 1 if
, and 0 otherwise.



![$$\begin{aligned} |\Pr [\mathsf{Expt}_2^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_1^{\mathcal {A}}=1]|\le \epsilon _{DRSW}. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ13.png)








![$$\begin{aligned} \Pr [\mathsf{Expt}_3^{\mathcal {A}}=1]=\Pr [\mathsf{Expt}_2^{\mathcal {A}}=1]. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ14.png)


























![$$\Pr [\mathsf {Fake}]$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_IEq698.png)


Setup:
, on input
, for
runs
, computes
, sets
, and chooses
. Then
runs
.
On
’s query
,
computes
and
as described in
. If
, then
returns
; otherwise
checks if
, and if so, it returns
, otherwise it outputs
to its challenger (and halts).
- Online phase: When
makes its challenge query on
,
chooses
and computes
and outputs. After that,
answers
’s
query just as in setup.












![$$\begin{aligned} |\Pr [\mathsf{Expt}_4^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_3^{\mathcal {A}}=1]|\le \Pr [\mathsf {Fake}]\le \Pr [\mathcal {R}_{SS}~\mathrm {wins}]\le \epsilon _{SS}. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ18.png)












![$$\begin{aligned} |\Pr [\mathsf{Expt}_5^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_4^{\mathcal {A}}=1]|\le \epsilon _{DRSW}. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ19.png)








![$$\begin{aligned} \Pr [\mathsf{Expt}_6^{\mathcal {A}}=1]=\Pr [\mathsf{Expt}_5^{\mathcal {A}}=1]. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ20.png)


![$$\begin{aligned} \Pr [\mathsf{Expt}_6^{\mathcal {A}}=1]=\frac{1}{2}. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ21.png)

4.3 Constructing Non-malleable Timed Commitments
In this section, we show how our notion of CCA-secure TPKE implies non-malleable timed commitments. The idea is very simple. At setup, the committer generates the parameters and keys for a TPKE and NIZKs
and
To commit to a message m, the committer computes
(for some random coins r) and uses
and
to prove that (1) it knows (m, r) s.t.
. This proof will be used as
, i.e., to prove that the commitment is well-formed; and (2) it knows r s.t.
. This proof will be used as
, i.e., to prove (efficiently) that the opening to the commitment is the correct one. Our construction is presented in Fig. 2.

An NITC scheme.
Correctness of this scheme follows immediately from correctness of the underlying TPKE and NIZK schemes; we next show its CCA-security.
Suppose is
-CCA-secure, and
is
-zero-knowledge. Then the
-NITCS scheme in Fig. 2 is
-CCA-secure.
Let be an adversary with preprocessing time
and online time
. Suppose
’s challenge is
. We define a sequence of experiments as follows.
: This is the original CCA-security experiment
.
:
is identical to
, except that
and
are simulated. That is, in the setup phase run
, and in the challenge compute
.
![$$|\Pr [\mathsf{Expt}_1^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_0^{\mathcal {A}}=1]|$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_IEq795.png)







Setup:
, on input
, runs
,
and
, sets
, and runs
.
On
’s query
,
returns
.
Online phase: When
makes its challenge query on
,
chooses
, computes
and
, and outputs
. After that,
answers
’s
queries just as in setup.
Output: On
’s output bit
,
outputs 1 if
, and 0 otherwise.




![$$\begin{aligned} |\Pr [\mathsf{Expt}_1^{\mathcal {A}}=1]-\Pr [\mathsf{Expt}_0^{\mathcal {A}}=1]|\le \epsilon _{ZK}. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ22.png)














Preprocessing phase:
, on input
, computes
, and runs
. On
’s query
,
queries
and returns the result.
Challenge query: When
outputs
,
makes its challenge query on
, and on its challenge ciphertext
,
computes
and sends
to
. After that,
answers
’s
queries just as in preprocessing phase.
Output: When
outputs a bit
,
also outputs
.






![$$\begin{aligned} \Pr [\mathsf{Expt}_1^{\mathcal {A}}=1]=\Pr [\mathcal {R}_{CCA}\mathrm {~wins}]\le \dfrac{1}{2}+\epsilon _{CCA}. \end{aligned}$$](../images/508076_1_En_14_Chapter/508076_1_En_14_Chapter_TeX_Equ23.png)
























