chiffre ElGamal
codage ElGamal
cryptosystème d’ElGamal
chiffrement El Gamal
système d’El Gamal
CALCUL
Le cryptosystème de ElGamal, ou chiffrement El Gamal ou système d’El Gamal est un algorithme de cryptographie asymĂ©trique (ou Ă clĂ© publique) fondĂ© sur le problème du logarithme discret. Il a Ă©tĂ© créé par Taher Elgamal.
L’algorithme est dĂ©crit pour un groupe multiplicatif Zp* avec p premier, mais n’importe quel groupe cyclique fini pour lequel le problème du logarithme discret est difficie convient. On suppose que Bob veut envoyer un message Ă Alice.
Alice choisit deux paramètres non-secrets : un nombre premier p et une racine primitive de p (un nombre g dont les puissances modulo p engendrent Zp– {0}).
Elle choisit alĂ©atoirement un nombre a dans l’intervalle [1, . . , p-2 ] et calcule α = (ga mod p).
Elle publie sa clĂ© (p, g, α) et garde secrète sa clĂ© a.
Bob, qui dĂ©sire envoyer un message m Ă Alice, l’exprime sous la forme d’un nombre entre 0 et p-1 (quitte Ă le dĂ©composer en sous-blocs de la bonne longueur).
Il choisit alĂ©atoirement un nombre b dans l’intervalle [1, . . , p-2 ] et calcule β = (gb mod p).
Il chiffre alors son message m en m’ = αb • m mod p.
Il transmet enfin Ă Alice le couple (β, m’)
Pour dĂ©chiffrer le message de Bernard, Alice dĂ©termine le nombre x = p – 1 -a.
Elle calcule βx • m’ mod p et retrouve le message m initial
Ce cryptosystème repose sur la difficulté de la résolution du logarithme discret.
Il prĂ©sente l’avantage de faire appel Ă deux processus alĂ©atoires (les choix de a et de b), mais prĂ©sente l’inconvĂ©nient de gĂ©nĂ©rer des messages chiffrĂ©s particulièrement longs.
Cet algorithme est utilisĂ© par le logiciel libre GNU Privacy Guard, de rĂ©centes versions de PGP, et d’autres systèmes de chiffrement. Il peut ĂŞtre utilisĂ© pour le chiffrement, mais aussi la signature Ă©lectronique , par exemple l’algorithme DSA du NIST.
Casser l’algorithme ElGamal est dans la plupart des cas au moins aussi difficile que de calculer le logarithme discret. Cependant, il est possible qu’il existe des moyens de casser l’algorithme sans rĂ©soudre le problème du logarithme discret.