Cryptosystème de Paillier

De testwiki
Aller à la navigation Aller à la recherche

Le cryptosystème de Paillier est un cryptosystème basé sur un algorithme asymétrique conçu par Pascal Paillier en 1999Modèle:Sfn. Son principe repose sur des travaux de Okamoto et Uchiyama présentés en 1998Modèle:Sfn.

Le système est un homomorphisme additif; en d'autres termes, avec la clef publique et les chiffrés de m1 et m2, il est possible de calculer le chiffré de m1+m2. Comme de plus ce chiffrement est prouvé sûr face à un attaquant passif, les chiffrés sont indistinguables, ce qui permet de remélanger un chiffré en rajoutant un chiffrement de zéro à un chiffré existant. Cette propriété est importante dans de nombreuses constructions visant à préserver la vie privée, étant donné qu'elle rend intraçable un message ainsi remélangé.

Fonctionnement

Génération des clefs

  1. Choisir deux nombres premiers de grande taille, indépendants et aléatoires : p et q;
  2. Calculer la clef publique 𝗉𝗄N=pq (un module RSA) et la clé privée 𝗌𝗄φ(N)=(p1)(q1).

Chiffrement

Soit m un message à chiffrer avec 0m<N. Soit r, un entier aléatoire tel que 0<r<N (appelé l'aléa). Le chiffré est alors :

c=(1+N)mrNmodN2

Déchiffrement

Pour retrouver le texte clair m, on commence par remarquer que :

crNmodN,

car

crN=(1+N)mmodN2=1+mN+N2(i=2m(mi)Ni2)modN2=1+mNmodN2.

On obtient ainsi :

r=cN1modφ(N)modN.

D’où :

m=(crNmodN2)1N.

On remarque que le calcul de r n'est possible qu’à l'aide de la clef privée 𝗌𝗄=φ(N), qui reste secrète sous l'hypothèse de la difficulté de la factorisation.

Homomorphisme

Le cryptosystème de Paillier est un homomorphisme additif, c'est-à-dire qu’avec la clef publique, un chiffré c1=𝖢𝗁𝗂𝖿𝖿𝗋𝖾𝗋(m1) et un chiffré c2=𝖢𝗁𝗂𝖿𝖿𝗋𝖾𝗋(m2), il est possible de construire un chiffré c1+2=𝖢𝗁𝗂𝖿𝖿𝗋𝖾𝗋(m1+m2) sans connaître ni m1 ni m2Modèle:Sfn.

Cette opération s'effectue en multipliant c1 et c2, ce qui mène à:

c1c2=(1+N)m1r1N(1+N)m2r2NmodN2=(1+N)m1+m2(r1r2)NmodN2

Qui correspond à un chiffré de m1+m2 sous l'aléa r1r2.

Notes et références

Modèle:Références

Annexes

Bibliographie

Articles connexes

Liens externes

Modèle:Portail