Comment le système RSA fonctionne-t-il?
Jean veut recevoir les messages codés de Julie, pour cela il lui faut 5 nombres : _ p et q qui sont des nombres premiers très grands et distincts _ e qui est premier avec le produit (p-1)(q-1) _ d tel que e*d - 1 est un multiple de (p-1)(q-1) _ n = p*q
Distribution des clés : _(n,e) est la clé publique qui sert à coder les messages _(n,d) est la clé privée pour décoder les messages et doit rester secrète |
Julie veut coder un message pour Jean :
_ elle représente son message sous forme d'un ou de plusieurs entiers M compris entre 0 et n-1 (par exemple elle choisit le rang des lettres dans l'alphabet latin)
_ elle calcule C ≡ Me mod(n) qu'elle envoie à Jean
Jean veut décoder le message de Julie :
_ il calcule grâce à sa clé secrète D ≡ Cd mod(n)
_ il utilise un théorème du mathématicien Euler et calcule D≡Mde≡M mod(n) et reconstitue le message
Intérêt de la méthode :
Tout le système RSA repose aujourd'hui sur le fait qu'on ne peut pas factoriser de très grand entier (ici n) dans un temps raisonnable (même par les ordinateurs les plus puissants)