Cryptosystème de Paillier

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Le cryptosystème de Paillier est un cryptosystème basé sur un algorithme asymétrique conçu par Pascal Paillier en 1999. Son principe repose sur des travaux de Okamoto et Uchiyama présentés en 1998 à la conférence EUROCRYPT.

Le système est basé sur un homomorphisme additif. En d'autres termes, avec uniquement la clé publique et le chiffrement de m_1~ et m_2~, il est possible de calculer le chiffrement de m_1+m_2~.

Fonctionnement[modifier | modifier le code]

Génération de la clé[modifier | modifier le code]

  1. choisir deux nombres premiers de grande taille, indépendants et aléatoires : p~ et q~.
  2. calculer la clé publique N=pq~ et la clé privée \phi=(p-1)(q-1)~

Chiffrement[modifier | modifier le code]

Soit m~ un message à chiffrer avec 0\le m<N~. Soit r~, un entier aléatoire tel que 0<r<N~. Le chiffré est alors :

 c=(1+N)^m \cdot r^N \mod N^2

Déchiffrement[modifier | modifier le code]

Pour retrouver le texte clair m~, :

 c \equiv r^N \mod N

et

 (1+N)^m=1+m \cdot N=\frac{c}{r^N} \mod N^2

On obtient ainsi :

 r=c^{N^{-1} \mod \phi} \mod N
 m=\frac{(c \cdot r^{-N} \mod N^2) -1}{N}

Références[modifier | modifier le code]

  • Pascal Paillier, « Public-Key Cryptosystems Based on Composite Degree Residuosity Classes », EUROCRYPT 1999, pp. 223-238.

Liens externes[modifier | modifier le code]