Research Paper On Security Paillier
Research Paper On Security Paillier
Pascal Paillier1,2
1
GEMPLUS
Cryptography Department
34 Rue Guynemer, 92447 Issy-Les-Moulineaux
paillier@gemplus.com
2
ENST
Computer Science Department
46, rue Barrault, 75634 Paris Cedex 13
paillier@inf.enst.fr
1 Background
Since the discovery of public-key cryptography by Diffie and Hellman [5], very
few convincingly secure asymetric schemes have been discovered despite consi-
derable research efforts.
We refer the reader to [26] for a thorough survey of existing public-key cryp-
tosystems. Basically, two major species of trapdoor techniques are in use today.
The first points to RSA [25] and related variants such as Rabin-Williams [24,30],
LUC, Dickson’s scheme or elliptic curve versions of RSA like KMOV [10]. The
technique conjugates the polynomial-time extraction of roots of polynomials over
a finite field with the intractability of factoring large numbers. It is worthwhile
pointing out that among cryptosystems belonging to this family, only Rabin-
Williams has been proven equivalent to the factoring problem so far.
Another famous technique, related to Diffie-Hellman-type schemes (El Gamal
[7], DSA, McCurley [14], etc.) combines the homomorphic properties of the mod-
ular exponentiation and the intractability of extracting discrete logarithms over
finite groups. Again, equivalence with the primitive computational problem re-
mains open in general, unless particular circumstances are reached as described
in [12].
Other proposed mechanisms generally suffer from inefficiency, inherent se-
curity weaknesses or insufficient public scrutiny : McEliece’s cryptosystem [15]
z = y n mod n2 .
Proof. Since the two groups Zn × Z∗n and Z∗n2 have the same number of ele-
ments nφ(n), we just have to prove that Eg is injective. Suppose that g x1 y1n =
g x2 y2n mod n2 . It comes g x2 −x1 ·(y2 /y1 )n = 1 mod n2 , which implies g λ(x2 −x1 ) =
1 mod n2 . Thus λ(x2 − x1 ) is a multiple of g’s order, and then a multiple of
n. Since gcd(λ, n) = 1, x2 − x1 is necessarily a multiple of n. Consequently,
x2 − x1 = 0 mod n and (y2 /y1 )n = 1 mod n2 , which leads to the unique solution
y2 /y1 = 1 over Z∗n. This means that x2 = x1 and y2 = y1 . Hence, Eg is bijective.
t
u
that is, the class function w 7→ [[w]]g is a homomorphism from (Z∗n2 , ×) to (Zn, +)
for any g ∈ B.
The n-th Residuosity Class Problem of base g, denoted Class [n, g], is defined
as the problem of computing the class function in base g : for a given w ∈ Z∗n2 ,
compute [[w]]g from w. Before investigating further Class [n, g]’s complexity, we
begin by stating the following useful observations :
Proof. Indeed, we can easily transform any w ∈ Z∗n2 into a random instance
w0 ∈ Z∗n2 with uniform distribution, by posing w0 = w g α β n mod n2 where α
and β are taken uniformly at random over Zn (the event β 6∈ Z∗n occurs with
negligibly small probability). After [[w0 ]]g has been computed, one has simply to
return [[w]]g = [[w0 ]]g − α mod n. t
u
Proof. It can easily be shown that, for any w ∈ Z∗n2 and g1 , g2 ∈ B, we have
t
u
We now proceed to find out which connections exist between the Composite
Residuosity Class Problem and standard number-theoretic problems. We state
first :
Proof (of Lemma 10). Since 1 + n ∈ B, there exists a unique pair (a, b) in the
set Zn × Z∗n such that w = (1 + n)a bn mod n2 . By definition, a = [[w]]1+n . Then
by virtue of Equation 1. t
u
228 Pascal Paillier
Proof. Since all the instances of Class [n, g] are computationally equivalent for
g ∈ B, and since 1 + n ∈ B, it suffices to show that
Let us be given an oracle for RSA [n, n]. We know that w = (1 + n)x · y n mod n2
for some x ∈ Zn and y ∈ Z∗n. Therefore, we have w = y n mod n and we get y
by giving w mod n to the oracle. From now,
w
= (1 + n)x = 1 + xn mod n2 ,
yn
Theorem 12. Let D-Class [n] be the decisional problem associated to Class [n]
i.e. given w ∈ Z∗n2, g ∈ B and x ∈ Zn, decide whether x = [[w]]g or not. Then
Proof. The hierarchy D-Class [n] ⇐ Class [n] comes from the general fact that
it is easier to verify a solution than to compute it. Let us prove the left-side
equivalence. (⇒) Submit wg −x mod n2 to the oracle solving CR [n]. In case of
n-th residuosity detection, the equality [[wg −x ]]g = 0 implies [[w]]g = x by Lemma
5 and then answer ”Yes”. Otherwise answer ”No” or ”Failure” according to the
oracle’s response. (⇐) Choose an arbitrary g ∈ B (1 + n will do) and submit the
triple (g, w, x = 0) to the oracle solving D-Class [n]. Return the oracle’s answer
without change. t
u
CR [n] ≡ D-Class [n] ⇐ Class [n] ⇐ RSA [n, n] ⇐ Fact [n] , (3)
Now, consider (n, g) as public parameters whilst the pair (p, q) (or equiva-
lently λ) remains private. The cryptosystem is depicted below.
Encryption :
plaintext m < n
select a random r < n
ciphertext c = g m · r n mod n2
Decryption :
ciphertext c < n2
L(cλ mod n2 )
plaintext m = mod n
L(g λ mod n2 )
Proof. Assume that m0 and m1 are two known messages and c the ciphertext
of either m0 or m1 . Due to Lemma 5, c is the ciphertext of m0 if and only
if cg −m0 mod n2 is a n-th residue. Therefore, a successfull chosen-plaintext at-
tacker could decide composite residuosity, and vice-versa. t
u
230 Pascal Paillier
Encryption :
plaintext m < n2
split m into m1 , m2 such that m = m1 + nm2
ciphertext c = g m1 m2 n mod n2
Decryption :
ciphertext c < n2
L(cλ mod n2 )
Step 1. m1 = mod n
L(g λ mod n2 )
Step 2. c0 = cg −m1 mod n
n−1 mod λ
Step 3. m2 = c0 mod n
plaintext m = m1 + nm2
Proof. a) Since Class [n] ⇐ RSA [n, n] (Theorem 11), extracting n-th roots
modulo n is sufficient to compute m1 from Eg (m1 , m2 ). Retrieving m2 then
requires one more additionnal extraction. Thus, inverting Scheme 2 cannot be
harder than extracting n-th roots modulo n. b) Conversely, an oracle which
inverts Scheme 2 allows root extraction : first query the oracle to get the two
2
note that every public bijection m ↔ (m1 , m2 ) fits the scheme’s structure, but
euclidean division appears to be the most natural one.
Public-Key Cryptosystems Based on Composite Degree Residuosity Classes 231
Here, the idea consists in restricting the ciphertext space Z∗n2 to the sub-
group < g > of smaller order by taking advantage of the following extension of
Equation 2. Assume that g ∈ Bα for some 1 ≤ α ≤ λ. Then for any w ∈ < g >,
L(wα mod n2 )
[[w]]g = mod n . (5)
L(g α mod n2 )
Encryption :
plaintext m < n
randomly select r < n
ciphertext c = g m+nr mod n2
Decryption :
ciphertext c < n2
L(cα mod n2 )
plaintext m = mod n
L(g α mod n2 )
Note that this time, the encryption function’s trapdoorness relies on the
knowledge of α (instead of λ) as secret key. The most computationally expensive
operation involved in decryption isthe modular exponentiation c → cα mod n2
which runs in complexity O |n|2 |α| (to be compared to O |n|3 in Scheme 1). If
g is chosen in such a way that |α| = Ω (|n| ) for some > 0, then decryption will
only take O |n|2+ bit operations. To the best of our knowledge, Scheme 3 is the
only public-key cryptosystem based on modular arithmetics whose decryption
function features such a property.
Clearly, inverting the encryption function does not rely on the composite
residuosity class problem, since this time the ciphertext is known to be an ele-
ment of < g >, but on a weaker instance. More formally,
Theorem 20. We call Decisional Partial Discrete Logarithm Problem the de-
cisional problem D-PDL [n, g] defined as follows : given w ∈ < g > and x ∈ Zn,
decide whether [[w]]g = x. Then Scheme 3 is semantically secure if and only if
D-PDL [n, g] is hard.
Public-Key Cryptosystems Based on Composite Degree Residuosity Classes 233
but equivalence can be reached when g is of maximal order nλ and n the product
of two safe primes. When g ∈ Bα for some α < λ such that |α| = Ω (|n| ) for
> 0, we conjecture that both PDL [n, g] and D-PDL [n, g] are intractable.
In order to thwart Baby-Step Giant-Step attacks, we recommend the use
of 160-bit prime numbers for αs in practical use. This can be managed by an
appropriate key generation. In this setting, the computational load of Scheme 3
is smaller than a RSA decryption with Chinese Remaindering for |n| ≥ 1280.
Next section provides tight evaluations and performance comparisons for all the
encryption schemes presented in this paper.
Sp = x < p2 | x = 1 mod p and Sq = x < q 2 | x = 1 mod q
by
x−1 x−1
Lp (x) = and Lq (x) = .
p q
with precomputations
Performance evaluations. For each |n| = 512, · · · , 2048, the modular mul-
tiplication of bitsize |n| is taken as the unitary operation, we assume that the
execution time of a modular multiplication is quadratic in the operand size and
that modular squares are computed by the same routine. Chinese remaindering,
as well as random number generation for probabilistic schemes, is considered to
be negligible. The RSA public exponent is taken equal to F4 = 216 + 1. The pa-
rameter g is set to 2 in our main scheme, as well as in the trapdoor permutation.
Other parameters, secret exponents or messages are assumed to contain about
the same number of ones and zeroes in their binary representation.
Public-Key Cryptosystems Based on Composite Degree Residuosity Classes 235
Encryption
|n|, |p| = 512 5120 5120 4032 17 1536
|n|, |p| = 768 7680 7680 5568 17 2304
|n|, |p| = 1024 10240 10240 7104 17 3072
|n|, |p| = 1536 15360 1536 10176 17 4608
|n|, |p| = 2048 20480 20480 13248 17 6144
Decryption
|n|, |p| = 512 768 1088 480 192 768
|n|, |p| = 768 1152 1632 480 288 1152
|n|, |p| = 1024 1536 2176 480 384 1536
|n|, |p| = 1536 2304 3264 480 576 2304
|n|, |p| = 2048 3072 4352 480 768 3072
These estimates are purely indicative, and do not result from an actual im-
plementation. We did not include the potential pre-processing stages. Chinese
remaindering is taken into account in cryptosystems that allow it i.e. all of them
excepted ElGamal.
8 Properties
∀m1 , m2 ∈ Zn and k ∈ N
Self-Blinding. Any ciphertext can be publicly changed into another one with-
out affecting the plaintext :
∀m ∈ Zn and r ∈ N
9 Further Research
In this paper, we introduced a new number-theoretic problem and a related
trapdoor mechanism based on the use of composite degree residues. We derived
three new cryptosystems based on our technique, all of which are provably secure
under adequate intractability assumptions.
Although we do not provide any proof of security against chosen ciphertext
attacks, we believe that one could bring slight modifications to Schemes 1 and
3 to render them resistant against such attacks, at least in the random oracle
model.
Another research topic resides in exploiting the homomorphic properties of
our systems to design distributed cryptographic protocols (multi-signature, se-
cret sharing, threshold cryptography, and so forth) or other cryptographically
useful objects.
10 Acknowledgments
The author is especially grateful to David Pointcheval for his precious comments
and contributions to this work. We also thank Jacques Stern and an anonymous
Public-Key Cryptosystems Based on Composite Degree Residuosity Classes 237
referee for having (independently) proved that Class [n] ⇐ RSA [n, n]. Finally,
Dan Boneh, Jean-Sébastien Coron, Helena Handschuh and David Naccache are
acknowledged for their helpful discussions and comments during the completion
of this work.
References
1. D. Angluin and D. Lichtenstein, Provable Security of Cryptosystems: A Survey,
Computer Science Department, Yale University, TR-288, 1983.
2. M. Bellare and P. Rogaway, Random Oracles are Practical : a Paradigm for Design-
ing Efficient Protocols, In Proceedings of the First CCS, ACM Press, pp. 62–73,
1993.
3. J. C. Benaloh, Verifiable Secret-Ballot Elections, PhD Thesis, Yale University, 1988.
4. R. Cramer, R. Gennaro and B. Schoenmakers, A Secure And Optimally Effi-
cient Multi-Authority Election Scheme, LNCS 1233, Proceedings of Eurocrypt’97,
Springer-Verlag, pp. 103-118, 1997.
5. W. Diffie and M. Hellman, New Directions in Cryptography, IEEE Transaction on
Information Theory, IT-22,6, pp. 644–654, 1995.
6. C. Ding, D. Pei and A. Salomaa, Chinese Remainder Theorem - Applications in
Computing, Coding, Cryptography, World Scientific Publishing, 1996.
7. T. ElGamal, A Public-Key Cryptosystem an a Signature Scheme Based on Discrete
Logarithms, IEEE Trans. on Information Theory, IT-31, pp. 469–472, 1985.
8. J. Feigenbaum, Locally Random Reductions in Interactive Complexity Theory,
in Advances in Computational Complexity Theory, DIMACS Series on Discrete
Mathematics and Theoretical Computer Science, vol. 13, American Mathematical
Society, Providence, pp. 73–98, 1993.
9. S. Goldwasser and S. Micali, Probabilistic Encryption, JCSS Vol. 28 No 2, pp.
270–299, 1984.
10. K. Koyama, U. Maurer, T. Okamoto and S. Vanstone, New Public-Key Schemes
based on Elliptic Curves over the ring Zn, LNCS 576, Proceedings of Crypto’91,
Springer-Verlag, pp. 252–266, 1992.
11. T. Matsumoto and H. Imai, Public Quadratic Polynomial-Tuples for Efficient
Signature-Verification and Message-Encryption, LNCS 330, Proceedings of Euro-
crypt’88, Springer-Verlag, pp. 419–453, 1988.
12. U. Maurer and S. Wolf, On the Complexity of Breaking the Diffie-Hellman Protocol.
13. R. Merkle and M. Hellman, Hiding Information and Signatures in Trapdoor Knap-
sacks, IEEE Trans. on Information Theory, Vol. 24, pp. 525–530, 1978.
14. K. McCurley, A Key Distribution System Equivalent to Factoring, Journal of Cryp-
tology, Vol. 1, pp. 95–105, 1988.
15. R. McEliece, A Public-Key Cryptosystem Based on Algebraic Coding Theory, DSN
Progress Report 42-44, Jet Propulsion Laboratories, Pasadena, 1978.
16. D. Naccache and J. Stern, A New Public-Key Cryptosystem Based on Higher
Residues, LNCS 1403, Advances in Cryptology, Proceedings of Eurocrypt’98,
Springer-Verlag, pp. 308–318, 1998.
238 Pascal Paillier
17. D. Naccache and J. Stern, A New Public-Key Cryptosystem, LNCS 1233, Advances
in Cryptology, Proceedings of Eurocrypt’97, Springer-Verlag, pp. 27–36, 1997.
18. P. Nguyen and J. Stern, Cryptanalysis of the Ajtai-Dwork Cryptosystem, LNCS
1462, Proceedings of Crypto’98, Springer-Verlag, pp. 223–242, 1998.
19. T. Okamoto and S. Uchiyama, A New Public-Key Cryptosystem as secure as
Factoring, LNCS 1403, Advances in Cryptology, Proceedings of Eurocrypt’98,
Springer-Verlag, pp. 308–318, 1998.
20. S. Park and D. Won, A Generalization of Public-Key Residue Cryptosystem, In
Proceedings of 1993 Korean-Japan Joint Workshop on Information Security and
Cryptology, pp. 202–206, 1993.
21. J. Patarin, The Oil and Vinegar Algorithm for Signatures, presented at the
Dagstuhl Workshop on Cryptography, 1997.
22. J. Patarin and L. Goubin, Trapdoor One-Way Permutations and Multivariate Poly-
nomials, LNCS 1334, Proceedings of ICICS’97, Springer-Verlag, pp. 356–368, 1997.
23. R. Peralta and E. Okamoto, Faster Factoring of Integers of a Special Form, IEICE,
Trans. Fundamentals, E79-A, Vol. 4, pp. 489–493, 1996.
24. M. Rabin, Digital Signatures and Public-Key Encryptions as Intractable as Fac-
torization, MIT Technical Report No 212, 1979.
25. R. Rivest, A. Shamir and L. Adleman, A Method for Obtaining Digital Signatures
and Public-Key Cryptosystems, Communications of the ACM, Vol. 21, No 2, pp.
120–126, 1978.
26. A. Salomaa, Public-Key Cryptography, Springer-Verlag, 1990.
27. T. Sander and F. Tschudin, On Software Protection Via Function Hiding, Pro-
ceedings of Information Hiding Workshop’98, 1998.
28. S. Vanstone and R. Zuccherato, Elliptic Curve Cryptosystem Using Curves of
Smooth Order Over the Ring Zn , IEEE Trans. Inf. Theory, Vol. 43, No 4, July
1997.
29. S. Vaudenay, Cryptanalysis of the Chor-Rivest Cryptosystem, LNCS 1462, Pro-
ceedings of Crypto’98, Springer-Verlag, pp. 243–256, 1998.
30. H. Williams, Some Public-Key Crypto-Functions as Intractable as Factorization,
LNCS 196, Proceedings of Crypto’84, Springer-Verlag, pp. 66–70, 1985.