2012 CTRSA Plaintext CheckableEncryption
2012 CTRSA Plaintext CheckableEncryption
2012 CTRSA Plaintext CheckableEncryption
1 Introduction
The problem of searching on data that is encrypted has been studied intensively
and in many different scenarios. For instance, the problem of delegation of key-
word search on private databases to a data storage provider concerns users who
upload their data to a provider they do not fully trust. When the user wants
to delegate keyword search on his own encrypted data to the provider, he usu-
ally has to transmit a corresponding message-dependent trapdoor (or encrypted
keyword) which enables the provider to perform the search. When the databases
are public, the user wishes to delegate the search on public data to a cloud data
storage provider without revealing the plaintext content of the search. Another
setting is the delegation of search to an email gateway [9], where data collected
by the mail server is from third parties (contrary to the private-key setting as
above) and the database is not public.
Most of the constructions proposed in the literature are based either on
symmetric-key cryptography to encrypt the plaintext message or keyword, or
2 Plaintext-Checkable Encryption
We define here the notion of plaintext-checkable encryption and its security.
Expind-cpa
Π,A (k)
Expunlink
Π,A (k) Expind-det
Π,A (k)
$
b←
$
− {0, 1} b← − {0, 1} b←
$
− {0, 1}
(pk, sk) ← G(1k ) (pk, sk) ← G(1k ) m ← Af (1k , b)
(m0 , m1 , st) ← Af (1k , pk) m0 ← Af (1k , pk) (pk, sk) ← G(1k )
c ← E (1k , pk, mb ) m1 ← Af (1k , pk) c ← E (1k , pk, m)
b ← Ag (1k , c, st) c0 ← E (1k , pk, mb ) b ← Ag (1k , pk, c)
Return (b = b) c1 ← E (1k , pk, m1 ) Return (b = b)
b ← Ag (1k , pk, c0 , c1 )
Return (b = b)
Fig. 1. We say Π has unlinkable encryptions (or “satisfies unlink”) if for every
legitimate p.p.t. adversary A with high min-entropy, Advunlink
Π,A (k) is negligible.
We now give a complete taxonomy of all these security notions and we prove
(see the full version) that the unlink notion falls strictly between ind-cpa of prob-
abilistic encryption, and ind-det of deterministic encryption. More precisely, we
show the following relation:
This means that every scheme that achieves ind-cpa is unlink and every scheme
that achieves unlink is ind-det. On the other hand, there are schemes that are
unlink but not ind-cpa, and others satisfying ind-det but not unlink.
It is obvious that a PCE scheme cannot be ind-cpa since the adversary could
forward m0 and m1 as st from Af to Ag , which could then apply PCheck to
the challenge c and for example m0 , and win the experiment with overwhelming
probability. As a consequence, the somewhat best we can hope for in the case
of PCE is unlinkability. We will thus show that our schemes satisfy this new
security notion.
Deterministic encryption schemes [3], though trivially plaintext-checkable,
cannot satisfy the property unlink since every two encryptions of a message are
equal, which allows a trivial check of plaintext equality. One may attempt to con-
struct plaintext-checkable encryption from an encryption scheme with equality
2
The original definition considers vectors of messages since (unlike for ind-cpa-secure
encryption) there is no reduction to the single-message case by a hybrid argument
for deterministic encryption.
338 S. Canard et al.
test as described in [23] by simply encrypting the message and then perform-
ing the test of equality. However, this scheme does not satisfy unlink either for
obvious reasons. Moreover, as noticed by the authors, their Test function only
works properly when the ciphertexts are two real encryptions of messages, as
this procedure does not check the validity of the ciphertexts.
It thus remains open to give a construction (practical or generic) with the
above features, namely providing a PCheck procedure, while maintaining un-
linkability. We give such constructions in the two following sections.
We show how to obtain secure PCE schemes using a secure probabilistic or de-
terministic encryption scheme with security proofs in the random-oracle model.
Theorem 1. If Πp satisfies ind-cpa then the PCE from Fig. 2 satisfies unlink.
Proof (sketch, see full version for the full proof ). We show that a successful
adversary A against unlink of our PCE scheme can be used to construct an
adversary B against ind-cpa of Πp . A natural construction of B is the following:
Bf runs Af twice and outputs the obtained messages m0 and m1 . The challenger
then gives Bg a Πp -encryption c of mb . Now Bg must use Ag to determine b.
Playing the unlinkability game, Ag expects two PCE ciphertexts; one of mb and
one of m1 . While the latter can be computed honestly, Bg could construct the
former as (c, r0 ), for some random r0 .
However, this implicitly defines H(mb , r0 ) to be the randomness B’s challenger
used in constructing c; B can thus not answer this random-oracle query and the
simulation might fail. In a series of lemmas, we show that under ind-cpa of Πp ,
the probability of Ag (who does not know m0 and m1 ) querying m0 or m1 to H
is negligible. We first show that this holds if B’s challenger’s bit b = 0:
Suppose in game unlink when b = 0, Ag queries (m0 r) (for some r) to the
random oracle H. Then we construct B that breaks ind-cpa. It uses Af to sample
m0 and m1 , gets an encryption c of md from its challenger and then runs Ag on
(c, r0 ) (for some random r0 ) and a PCE encryption of an independent message
m . Since Ag does not have any information on m1−d (which was sampled from a
high min-entropy space), querying e.g. m0 must mean d = 0. Thus if Ag makes
a query to H containing md , Bg outputs d as its guess. Note that the issue
of correctly simulating the random oracle does not arise here, as Bg aborts as
soon as Ag makes a critical query. Analogously, we show that when b = 0, the
probability that Ag queries (m1 ·) is negligible.
It remains to prove that when b = 1 then Ag queries (m1 ·) with negligible
probability. Again, assuming Ag makes such a query, we construct B breaking
ind-cpa. As before, B uses Af to sample m0 and m1 and receives c. Now Bg picks
a random bit d and sends Ag the following: (c, r0 ), for some random r0 and a PCE
encryption of md . If Ag queries (md ·) then Bg outputs d. (Note that up to this
point, the simulation is perfect.) We show that B wins the indistinguishability
game. If d equals B ’s challenger’s bit then Ag gets two encryptions of the same
message; A is thus playing the unlink game with b = 1, for which we assumed
Ag queries the encrypted message to H with non-negligible probability, in which
case B wins. On the other hand, if d is different from the challenger’s bit (in
which case B loses) then A gets encryptions of two different messages and it
is thus playing unlink with b = 0. For this case however, the previous result for
b = 1 asserts that A will not query an encrypted message to the random oracle.
340 S. Canard et al.
Let us first analyze the G1 part of our assumption: (g x , g rx , g sx ) and g r+s . DLIN
states that given (g x , g y , g rx , g sy ) it is hard to distinguish g r+s from random.
The G1 components of our assumption can thus be seen as a DLIN instance
with y = x (note that whereas DLIN also holds in symmetric groups, this is
not the case when y = x). It is also immediate that this “partial” assumption
is a DDH instance where s = 0, and thus implied by DDH. However, since—as
opposed to DDH—we have two random combined exponents r and s for the
challenge, this allows us to add values depending on them in G2 , which cannot
be used to verify the structure of g r+s , since the bases ha and hb for r and s are
different.
The following theorem holds against adversaries A = (Af , Ag ) where Af
outputs the uniform distribution. This restriction is similar to the results by
Bellare et al. [3] for their practical construction of a deterministic encryption
scheme. In fact, in real life applications, the uniform distribution is most of time
enough and easily obtained. In particular, this notion also suffices when applying
the scheme to VLR group signatures.
In this section we use our new primitive as a building block for group signatures
with verifier-local revocation (VLR) [10]. This is a group signature scheme [2,8]
which allows an efficient revocation of group members.
Our aim in this section is twofold. First, we present plaintext-checkable en-
cryption as a new building block for group signatures with VLR; thus any im-
provement to PCE is likely to lead to more efficient group signatures with VLR.
Second, we design in the following, to the best of our knowledge, the most efficient
group signature scheme with VLR and backward unlinkability in the standard
model. We first recall the concept of group signatures with VLR, and eventually
describe our new construction.
Let k, n and T be integers. A group signature scheme with VLR (VLR-GS for
short) is composed of the following algorithms (following [19]).
– Sign takes as input the group public key gpk, the current time interval j, a
secret key ski for i ∈ [[1, n]] of a group member and a message m ∈ {0, 1}∗,
and outputs a signature σ.
– Verify takes as input the group public key gpk, the current time period j, the
public key of the revocation authority rpk, a set of revocation tokens RLj ,
and a purported signature σ on a message m. It returns either valid if the
signature σ is valid or invalid if σ is not a valid signature or if the user who
generated it has been revoked.
The security requirements are traceability and backward unlinkability (BU)
anonymity. The corresponding formal definitions can be found in [19]. We only
recall the BU-anonymity since adding the VLR functionality to a group signature
scheme only concerns this security notion, whereas traceability is inherited from
the original scheme. A VLR-GS with backward unlinkability is BU-anonymous
if no p.p.t. adversary A has non-negligible advantage in the following game.
$
1. The challenger C executes (gpk, sk, grt) ← − KeyGen(1k , n, T ) and the adver-
sary is given gpk.
2. For each period, C increments the counter j and during this period, A can
access the Sign(·, ·) oracle, which gives a group signature on a message m by
a user i during time period j, the Corrupt(·) oracle, which permits to corrupt
the user i and the Revoke(·) oracle, which revokes the member i.
3. At some period j ∗ ∈ [1, T ], A outputs (m∗ , i0 , i1 ) such that i0 and i1 are not
corrupted and have not been revoked during or before the time period j ∗ .
The challenger C flips a coin b and generates σ ∗ ← − Sign(gpk, j ∗ , skib , m∗ ),
$
which is sent to A.
4. A can again access the above oracles. A is not allowed to corrupt i0 nor i1
but it may revoke them after time period j ∗ .
5. Eventually, A outputs a bit b∗ and wins if b = b∗ .
The advantage of A in breaking this anonymity is defined as Advbu-a
VLR-GS,A (k) :=
| Pr[b = b∗ ] − 12 |.
key when he joins the group. To make a group signature, the user first signs the
message using his personal signing key; the group signature is then a Groth-Sahai
proof of knowledge of the following: the user’s verification key, a valid certificate
on it by the group manager, and a signature on the message that is valid under
his verification key. Since the registration protocol consists of only one round,
the scheme is concurrently secure. Moreover, since the group members create
their own signing keys, the scheme achieves non-frameability [6].
Making Use of a PCE. The group signature cannot contain the revocation
token in the clear, as this would compromise the member’s anonymity. Our
approach is to include in the group signature a plaintext-checkable encryption of
the revocation token, together with a proof of well-formedness. When a revoked
group member’s token gets published, the verifier can use PCheck of the PCE
scheme to check whether the group signature comes from a revoked member
or not. For our concrete scheme, we use the standard-model PCE scheme from
Sect. 4.1, since it complies with the Groth-Sahai methodology.
After this series of games, the only dependency of the challenge signature
on the bit b occurs when the adversary asks for a signature of user ib in time
interval j ∗ . Since the tokens are chosen uniformly at random, we can replace the
encryption of the token in the challenge signature by a random value. This is
implied by unlinkability of our PCE scheme (which states that two encryptions
of the same value are indistinguishable from two encryptions of two different
(random) values). After this final step the challenge signature is independent of
b and the adversary’s winning probability is thus exactly 12 .
Regarding related work on group signature schemes with VLR, there are typ-
ically 3 criteria to compare such schemes: random-oracle or standard model,
anonymity revocation or not and backward unlinkability or not. Table 1 com-
pares all existing solutions, to the best of our knowledge.
one pairing per element in RLj . On the other hand, our signatures are com-
posed of 12 elements in G1 , 18 elements in G2 and no element in GT . The signer
must perform 6 modular exponentiations, 1 quadratic GS proofs and 5 linear
GS proofs. The revocation checking requires the computation of 2 pairings per
element in RLj . Considering moreover that in asymmetric groups, representa-
tions of group elements are shorter and computation of pairings are much more
efficient, our scheme is more efficient in terms of signature computation and size
but necessitates slightly more work during the revocation check.
6 Conclusion
We proposed a new promising public-key encryption scheme with a special fea-
ture: this primitive allows anyone to verify whether a given ciphertext (together
with the public key used to encrypt) actually encrypts any potential message.
However, if the messages come from a space with enough entropy, one cannot
decide whether two ciphertexts encrypt the same message. Plaintext-checkable
encryption with unlinkable ciphertexts is perfectly adapted to design group sig-
natures with verifier-local revocation and backward unlinkability. The efficiency
of the constructions also enables its use in a context of cloud storage services.
Acknowledgements. This work has been supported by the French Agence
Nationale de la Recherche under the PACE 07 TCOM Project, the European
Commission under Contract ICT-2007-216676 ECRYPT II and EPSRC Grant
EP/H043454/1. We are grateful to Jacques Traoré for his suggestions of im-
provement, and to the anonymous referees for their valuable comments.
References
1. Abe, M., Fuchsbauer, G., Groth, J., Haralambiev, K., Ohkubo, M.: Structure-
Preserving Signatures and Commitments to Group Elements. In: Rabin, T. (ed.)
CRYPTO 2010. LNCS, vol. 6223, pp. 209–236. Springer, Heidelberg (2010)
2. Ateniese, G., Camenisch, J., Joye, M., Tsudik, G.: A Practical and Provably Secure
Coalition-Resistant Group Signature Scheme. In: Bellare, M. (ed.) CRYPTO 2000.
LNCS, vol. 1880, pp. 255–270. Springer, Heidelberg (2000)
3. Bellare, M., Boldyreva, A., O’Neill, A.: Deterministic and Efficiently Searchable
Encryption. In: Menezes, A. (ed.) CRYPTO 2007. LNCS, vol. 4622, pp. 535–552.
Springer, Heidelberg (2007)
4. Bellare, M., Fischlin, M., O’Neill, A., Ristenpart, T.: Deterministic Encryption:
Definitional Equivalences and Constructions without Random Oracles. In: Wagner,
D. (ed.) CRYPTO 2008. LNCS, vol. 5157, pp. 360–378. Springer, Heidelberg (2008)
5. Bellare, M., Rogaway, P.: Random oracles are practical: A paradigm for design-
ing efficient protocols. In: ACM Conference on Computer and Communications
Security, pp. 62–73 (1993)
6. Bellare, M., Shi, H., Zhang, C.: Foundations of Group Signatures: The Case of
Dynamic Groups. In: Menezes, A. (ed.) CT-RSA 2005. LNCS, vol. 3376, pp. 136–
153. Springer, Heidelberg (2005)
7. Blum, M., Micali, S.: How to generate cryptographically strong sequences of
pseudo-random bits. SIAM J. Comput. 13(4), 850–864 (1984)
348 S. Canard et al.
8. Boneh, D., Boyen, X., Shacham, H.: Short Group Signatures. In: Cachin, C.,
Camenisch, J.L. (eds.) EUROCRYPT 2004. LNCS, vol. 3027, pp. 56–73. Springer,
Heidelberg (2004)
9. Boneh, D., Di Crescenzo, G., Ostrovsky, R., Persiano, G.: Public Key Encryption
with Keyword Search. In: Cachin, C., Camenisch, J.L. (eds.) EUROCRYPT 2004.
LNCS, vol. 3027, pp. 506–522. Springer, Heidelberg (2004)
10. Boneh, D., Shacham, H.: Group signatures with verifier-local revocation. In: ACM
Conference on Computer and Communications Security, pp. 168–177. ACM (2004)
11. Camenisch, J., Groth, J.: Group Signatures: Better Efficiency and New Theoretical
Aspects. In: Blundo, C., Cimato, S. (eds.) SCN 2004. LNCS, vol. 3352, pp. 120–133.
Springer, Heidelberg (2005)
12. Fuchsbauer, G.: Automorphic signatures in bilinear groups and an application
to round-optimal blind signatures. Cryptology ePrint Archive, Report 2009/320
(2009), http://eprint.iacr.org/
13. Fuhr, T., Paillier, P.: Decryptable Searchable Encryption. In: Susilo, W., Liu, J.K.,
Mu, Y. (eds.) ProvSec 2007. LNCS, vol. 4784, pp. 228–236. Springer, Heidelberg
(2007)
14. El Gamal, T.: A public key cryptosystem and a signature scheme based on discrete
logarithms. IEEE Transactions on Information Theory 31(4), 469–472 (1985)
15. Goldreich, O., Levin, L.A.: A hard-core predicate for all one-way functions. In:
Proc. of STOC 1989, pp. 25–32. ACM (1989)
16. Groth, J.: Fully Anonymous Group Signatures without Random Oracles. In: Kuro-
sawa, K. (ed.) ASIACRYPT 2007. LNCS, vol. 4833, pp. 164–180. Springer, Hei-
delberg (2007)
17. Groth, J., Sahai, A.: Efficient Non-Interactive Proof Systems for Bilinear Groups.
In: Smart, N.P. (ed.) EUROCRYPT 2008. LNCS, vol. 4965, pp. 415–432. Springer,
Heidelberg (2008)
18. Kiltz, E.: Chosen-Ciphertext Security from Tag-Based Encryption. In: Halevi, S.,
Rabin, T. (eds.) TCC 2006. LNCS, vol. 3876, pp. 581–600. Springer, Heidelberg
(2006)
19. Libert, B., Vergnaud, D.: Group Signatures with Verifier-Local Revocation and
Backward Unlinkability in the Standard Model. In: Garay, J.A., Miyaji, A., Otsuka,
A. (eds.) CANS 2009. LNCS, vol. 5888, pp. 498–517. Springer, Heidelberg (2009)
20. Nakanishi, T., Funabiki, N.: Verifier-Local Revocation Group Signature Schemes
with Backward Unlinkability from Bilinear Maps. In: Roy, B. (ed.) ASIACRYPT
2005. LNCS, vol. 3788, pp. 533–548. Springer, Heidelberg (2005)
21. Nakanishi, T., Funabiki, N.: A Short Verifier-Local Revocation Group Signature
Scheme with Backward Unlinkability. In: Yoshiura, H., Sakurai, K., Rannenberg,
K., Murayama, Y., Kawamura, S.-i. (eds.) IWSEC 2006. LNCS, vol. 4266, pp.
17–32. Springer, Heidelberg (2006)
22. Ostrovsky, R., Skeith III, W.E.: Private searching on streaming data. J. Cryptol-
ogy 20(4), 397–430 (2007)
23. Yang, G., Tan, C.H., Huang, Q., Wong, D.S.: Probabilistic Public Key Encryption
with Equality Test. In: Pieprzyk, J. (ed.) CT-RSA 2010. LNCS, vol. 5985, pp.
119–131. Springer, Heidelberg (2010)
24. Yao, A.C.-C.: Theory and applications of trapdoor functions (extended abstract).
In: Proc. of FOCS 1982, pp. 80–91. IEEE (1982)
25. Zhou, S., Lin, D.: Shorter Verifier-Local Revocation Group Signatures from Bilinear
Maps. In: Pointcheval, D., Mu, Y., Chen, K. (eds.) CANS 2006. LNCS, vol. 4301,
pp. 126–143. Springer, Heidelberg (2006)