A Verifiable Random Function With Short Proofs and Keys.: January 2004
A Verifiable Random Function With Short Proofs and Keys.: January 2004
A Verifiable Random Function With Short Proofs and Keys.: January 2004
net/publication/220337087
CITATIONS READS
153 178
2 authors, including:
Yevgeniy Dodis
New York University
173 PUBLICATIONS 12,042 CITATIONS
SEE PROFILE
All content following this page was uploaded by Yevgeniy Dodis on 13 January 2015.
1 Introduction
2 Definitions
Before presenting our results, we review some basic definitions and assumptions.
Let k be a security parameter. We employ the standard cryptographic model
in which protocol participants are modeled by probabilistic Turing machines
(PPTMs), whose running time is polynomial in k. Hereafter, we use negl(k) to
refer to a negligible function in the security parameter k.3
Definition 1. A function family F(·) (·) : {0, 1}a(k) 7→ {0, 1}b(k) is a family
of VRFs if there exist algorithms (Gen, Prove, Ver) such that Gen(1k ) out-
puts a pair of keys (P K, SK); ProveSK (x) outputs a pair FSK (x), πSK (x) ,
where FSK (x) is the function value and πSK (x) is the proof of correctness; and
VerP K (x, y, π) verifies that y = FSK (x) using the proof π. Formally, we require:
Intuitively, the definition says that no value of the function can be distin-
guished from random, even after seeing any other function values together with
corresponding proofs.
A close relative of a VRF is a verifiable unpredictable function (VUF). It can
be thought of as a signature scheme in which a unique (at most one) signature
is accepted by the verification algorithm for every message and public key.
Definition 2. A function family F(·) (·) : {0, 1}a(k) 7→ {0, 1}b(k) is a family of
VUFs, if there exist algorithms (Gen, Sign, Ver) which satisfy the uniqueness
and provability properties of Definition 1, but the pseudorandomness property is
replaced by a weaker property:
For exact security bounds, we will occasionally say that F(·) (·) is an (s′ (k), ǫ′ (k))
secure VRF (resp., VUF) if no adversary A running in time s′ (k) (and therefore
making at most s′ (k) oracle queries) can break the pseudorandomness (resp.,
unpredictability) property with ǫ′ (k) advantage.
3 Complexity assumptions
We now state the hardness assumptions on which our constructions are based.
In what follows, we let G be a bilinear group of prime order p, and let g be its
generator.
where probability is taken over the coin tosses of A and the random choice of
x ∈ Z∗p .
Boneh and Boyen [BB04a] pointed out that the q-DHI assumption implies
the (q + 1)-generalized Diffie-Hellman assumption (GDH), on which many cryp-
tographic constructions are based (e.g., [NR97,BS02,STW96] as well as the VUF
by Lysyanskaya [Lys02]).
where the probability is over the internal coin tosses of A and the choice of
x ∈ Z∗p and Γ ∈ G1 .
4 Our constructions
In Section 4.1, we begin by showing how a signature scheme due to Boneh and
Boyen [BB04b] can be turned into a VUF with small inputs. We forego an
expensive transformation from VUFs to VRFs using a Goldreich-Levin hardcore
bit. Instead, we construct our VRF directly in Section 4.2 on inputs of small
size. We show how input size can be extended in Section 4.3. We analyze our
constructions’ efficiency in Section 4.4.
Fix input length a(k), output length b(k), and security s(k). For notational
convenience, we will usually omit the security parameter k, writing, for example,
a or s, instead of a(k) or s(k). Let G (|G| = p) be a bilinear group, where p
is a k bit prime. Let g be a generator of G. Throughout, we shall assume that
messages can be encoded as elements of Z∗p .
In order to build the intuition for our next proof, we show how to construct a
simple VUF (Gen, Sign, Ver) with small (superlogarithmic) inputs.
Algorithm Gen(1k ): Chooses a secret s ∈r Z∗p and sets the secret key to
SK = s and a public key to P K = g s .
Algorithm SignSK (x): Outputs the signature SignSK (x) = g 1/(x+SK) . Note
that the proof is embedded in the output value so we do not need to include
it explicitly.
Algorithm VerP K (x, y): Outputs 1 if e(g x · P K, y) = e(g, g); otherwise, out-
puts 0. Indeed, if the VRF value y was correctly computed, we have:
use a weaker q-DHI assumption (which implies the q-SDH assumption) to prove
the scheme’s security against adaptive adversaries. We use a trick of Micali-
Rabin-Vadhan [MRV99], which restricts messages to be of slightly superloga-
rithmic size (in security parameter k). This enables us to enumerate all possible
messages and to respond to adversary’s queries adaptively.
Y q−1
X
f (z) = (z + w) = cj z j (for some coefficients c0 , . . . , cq−1 ).
w∈{0,1}a ,w6=x0 j=0
We can compute
q−1
Y cj q cj−1
j Y
h = g f (β) = g (β )
and hβ = g (βj ) .
j=0 j=1
q−2
X
fi (z) = f (z)/(z + xi ) = dj z j (for some coefficients d0 , . . . , dq−2 ).
j=0
We can compute
q−2
Y dj
j
g fi (z) = g (β )
= h1/(xi +β)
j=0
q−2
X γ−1
f (z)/(z + x0 ) = γj z j + ,
j=0
z + x0
Let ǫ′ (k) = ǫ(k) · 2a(k) and s′ (k) = s(k)/(2a(k) · poly(k)). To finish the
proof, note that algorithm B succeeds with probability ǫ′ (k)/2a(k) = ǫ(k).
Its running time is dominated by answering oracle queries, and each query
takes (2a(k) − 2) · poly(k) time to answer. Therefore, B will run in roughly
s′ (k) · 2a(k) poly(k) = s(k) time.
⊓
⊔
Y q−1
X
f (z) = (z + w) = cj z j .
w∈{0,1}a ,w6=x0 j=0
and
FSK (xi ) = e(h, πSK (xi )) = e(h, h)1/(β+xi ) ,
and return them to algorithm A.
Challenge: Eventually, A outputs a message x∗ on which it wants to be chal-
lenged. If x∗ 6= x0 , then we fail. Otherwise, A claims to be able to distinguish
e(h, h)1/(β+x0 ) = e(h, h)1/α from a random element in G1 . Recall that
q−1
X
f (z) = ci z i .
i=0
Let Γ0 be
Y q−2
q−1 q−2
!
Y i j
c i γ j Y t
γ· γm
Γ0 = e g (β ) , g (β ) · e g, g (β )
i=0 j=0 m=0
′
′
= e g f (β) , g f (β) · e g γ , g f (β) (1)
2
− γ 2 )/α
= e(g, g)(f (β) .
2
Set Γ ∗ = Γ (γ ) ·Γ0 . Notice that if Γ = e(g, g)1/α , then Γ ∗ = e(g f (β) , g f (β)/α ) =
e(h, h)1/α . Meanwhile, if Γ is uniformly distributed, then so is Γ ∗ . We give
Γ ∗ to algorithm A.
Remark 3. We can see from Equation (1) that it takes only two bilinear map
evaluations to compute Γ0 .
The proof begins by converting a VRF with output length 1 into a VRF with
output length (a− 1). This transformation loses a factor of a in security. Because
our VRF has output length much larger than 1, we can omit this step. Instead,
we apply a universal hash function to VRF’s output and let the VRF’s value be
the first (a − 1) bits of hash function’s output (it is easily seen that these bits
will be pseudo-random as well).
The rest of the transformation proceeds as usual: The root of the binary
tree is labeled with 0a−1 and children of node y are labeled with short VRF’s
values on inputs (y ◦ 0) and (y ◦ 1). The tree’s depth is precisely the input size
|x|. Computing the VRF value on input x (of unrestricted length) amounts to
computing labels of nodes on the path from the root of the tree to the leaf
corresponding to x. The proof of correctness is the tuple of short VRF’s proofs,
one proof per each node on the path traced by x.6
We note that both of the aforementioned techniques can be used to convert
the VUF in Section 4.1 into a VUF with unrestricted input length.
4.4 Efficiency
We now compare efficiency of our construction with efficiency of prior VRF
constructions. Fix inputs to be a(k) = 160 bits, the length of SHA-1 digests,
and let q = 2a(k) .
5 Distributed VRF
We point out that our VUF/VRF constructions can be easily made distributed
(or even proactive). Indeed, both of the constructions simply amount to a secure
computation of the function πs (x) = g 1/(x+s) when the servers have shares of
the secret s. Since it is well known how to do multiparty addition, inversion,
and exponentiation [BIB89, BoGW88], this extension follows immediately. We
notice however that unlike the construction of Dodis [Dod03], our distributed
VUF/VRF is interactive.
t + t′ = τ + q + 3. (2)
After making at most qG queries, A halts with a guess b̂ ∈ {0, 1}. We now
r
choose x, y ← Z∗p and consider Γb ← 1/x, Γ1−b = y for both choices of b. Our
simulation is perfect and reveals nothing to A about b unless the values that we
chose for indeterminates give rise to some non-trivial equality relation. Specifi-
cally, algorithm A wins the game if for any Fi 6= Fj or any Fi′ 6= Fj′ , either of
these hold:
It turns out that in a generic group model algorithm A that solves the q-
DBDHI problem has advantage, which is roughly twice as much as an advantage
of an algorithm solving the q-SDH problem (see [BB04b], Section 5); the asymp-
totic complexities are the same.
The following corollary is immediate.
Corollary 1. Any adversary that breaks the q-DBDHI assumption with proba-
√
bility ν = 21 + ǫ (0 < ǫ < 1/2) in generic groups of order p such that q < o( 3 p)
p
requires Ω( ǫp/q) generic group operations.
7 Conclusion
We have presented a simple and efficient construction of a verifiable random
function. Our VRF’s proofs and keys have constant size regardless of the size of
the input. Our proofs of security are based on a bilinear Diffie-Hellman inversion
assumption, which seems reasonable given current state of knowledge. We also
demonstrated that our scheme can be instantiated with elliptic groups of very
reasonable size which makes our constructions quite practical.
References
[BB04a] Dan Boneh and Xavier Boyen. Efficient selective-ID secure identity
based encryption without random oracles. In Advances in Cryptology—
EUROCRYPT 2004, volume 3027 of Lecture Notes in Computer Science,
pages 223–238. Berlin: Springer-Verlag, 2004.
[BB04b] Dan Boneh and Xavier Boyen. Short signatures without random oracles.
In Advances in Cryptology—EUROCRYPT 2004, volume 3027 of Lecture
Notes in Computer Science, pages 56–73. Berlin: Springer-Verlag, 2004.
[BF01] Dan Boneh and Matt Franklin. Identity-based encryption from the Weil
pairing. Lecture Notes in Computer Science, 2139:213–229, 2001.
[BIB89] Judit Bar-Ilan and Donald Beaver. Non-cryptographic fault-tolerant com-
puting in a constant number of rounds. In Proceedings of the ACM Sympo-
sium on Principles of Distributed Computation, pages 201–209, 1989.
[BLZ94] Johannes A. Buchmann, J. Loho, and J. Zayer. An implementation of the
general number field sieve. Lecture Notes in Computer Science, 773:159–166,
1994.
[BoGW88] Michael Ben-or, Shafi Goldwasser, and Avi Wigderson. Completeness the-
orems for non-cryptographic fault-tolerant distributed computing. In Pro-
ceedings of the 20th Annual ACM Symposium on the Theory of Computing,
pages 1–10, 1988.
[BS02] Dan Boneh and Alice Silverberg. Application of multilinear forms
to cryptography. Cryptology ePrint Archive, Report 2002/080, 2002.
http://eprint.iacr.org/2002/080/.
[DBS04] Ratna Dutta, Rana Barua, and Palash Sarkar. Pairing-based cryptographic
protocols : a survey. Cryptology ePrint Archive, Report 2004/064, 2004.
http://eprint.iacr.org/2004/064/.
[Dod03] Yevgeniy Dodis. Efficient construction of (distributed) verifiable random
functions. In Proceedings of 6th International Workshop on Theory and
Practice in Public Key Cryptography, pages 1–17, 2003.
[Gal01] Steven D. Galbraith. Supersingular curves in cryptography. Lecture Notes
in Computer Science, 2248:495–513, 2001.
[GB99] S. Goldwasser and M. Bellare. Lecture notes on cryptography. Summer
Course “Cryptography and Computer Security” at MIT, 1996–1999, 1999.
[GL89] Oded Goldreich and Leonid Levin. A hard-core predicate for all one-way
functions. In Proceedings of the 21th Annual ACM Symposium on the The-
ory of Computing, pages 25–32, 1989.
[JN01] Antoine Joux and Kim Nguyen. Separating Decision Diffie-Hellman from
Diffie-Hellman in cryptographic groups. Cryptology ePrint Archive, Report
2001/003, 2001. http://eprint.iacr.org/2001/003/.
[JS04] Stanislaw Jarecki and Vitaly Shmatikov. Handcuffing big brother : an abuse-
resilient transaction escrow scheme. In Advances in Cryptology - Proceedings
of EUROCRYPT 2004, volume 3027 of Lecture Notes in Computer Science,
pages 590–608. Springer-Verlag, 2004.
[Lys02] Anna Lysyanskaya. Unique signatures and verifiable random functions from
DH-DDH separation. In Proceedings of the 22nd Annual International Cryp-
tology Conference on Advances in Cryptology, pages 597–612, 2002.
[MR01] Silvio Micali and Leonid Reyzin. Soundness in the public-key model. Lecture
Notes in Computer Science, 2139:542–565, 2001.
[MR02] Silvio Micali and Ronald L. Rivest. Micropayments revisited. In CT-RSA,
pages 149–163, 2002.
[MRV99] Silvio Micali, Michael O. Rabin, and Salil P. Vadhan. Verifiable random
functions. In Proceedings of the 40th IEEE Symposium on Foundations of
Computer Science, pages 120–130, 1999.
[MSK02] Shigeo Mitsunari, Ryuichi Sakai, and Masao Kasahara. A new traitor trac-
ing. IEICE Trans. Fundamentals, pages 481–484, 2002.
[NR97] Moni Naor and Omer Reingold. Number-theoretic constructions of efficient
pseudo-random functions. In Proceedings of the 38th IEEE Symposium on
Foundations of Computer Science, pages 458–467, 1997.
[Sch80] Jacob T. Schwartz. Fast probabilistic algorithms for verification of poly-
nomial identities. Journal of the Association for Computing Machinery,
27:701–717, 1980.
[Sho97] Victor Shoup. Lower bounds for discrete logarithms and related problems.
Lecture Notes in Computer Science, 1233:256–266, 1997.
[STW96] Michael Steiner, Gene Tsudik, and Michael Waidner. Diffie-Hellman key
distribution extended to group communication. In Proceedings of the 3rd
ACM Conference on Computer and Communications Security, pages 31–37,
1996.