RSA-768 a ete factorise
Pour changer un peu voici une news pas très linux pour un autre sujet qui m'intéresse aussi (mais dans lequel j'y touche pas grand chose) : la cryptographie.
Le RSA est un algorithme de chiffrement (on ne dit pas cryptage en bon français), inventé bien avant que je sois né, en 1977 (l'algo pas que je né) et est depuis toujours grandement utilisé.
L'algorithme
RSA est une méthode de chiffrement à clef publique (appelé aussi chiffrement asymétrique), c'est même le premier du genre.
Chiffrement à clef publique
Le chiffrement asymétrique s'oppose au chiffrement symétrique ou à clef privée (vous auriez pu le deviner ça). Son génie (surtout celui des trois type qui l'ont inventé) vient du fait que plutôt que d'utiliser une clef qu'il faut absolument éviter de transmettre à n'importe qui vous pouvez la crier haut et fort pour que tout le monde le sache. Pourquoi ? Parce que la clef qui sert à chiffrer est différent de celle pour déchiffrer.
Prenons une adaptation personnelle exemple utilisé, réutilisé et surutilisé :
Kevin veut envoyer un message à Georgette pour lui déclarer sa flamme. Seulement, il ne veut pas que le jaloux Robert puisse lire leurs discussions intimes (ça va encore passer en dessous de la ceinture).
Dans un premier temps, notre brave Kevin en cherchant sur gougle (moteur de recherche dont on ne cessera de vanté les qualités), trouver un super algorithme de chiffrement style le Rijndael (ça a été inventé par des belges, ça peut être que bon). Il fait passer son message ~~prono~~, ~~érotique,~~ d'amour à la moulinette du Rijndael et sort un truc incompréhensible. Il l'envoie par la poste sans même prendre la peine de fermer l'enveloppe (osef, Robert y comprendra que dale). Le problème reste de lui faire passer le mot de passer pour le déchiffrer. Il lui téléphone donc pour dire tout bas que la clef est "georgettemonamour" mais manque de bol, Robert son oreille collé au mur entends tout et va découvrir la relation honteuse qui se trame entre les deux amants !
alala si seulement Kevin avait utilisé le RSA...
Avec un algorithme à clef publique, Georgette crée deux clefs : une privée que seule elle garde et ne communique à personne et une clef publique que tout le monde peut avoir (y compris l'infâme Robert). Kevin va récupérer la clef publique (facilement), chiffrer son message (toujours facilement), l'envoyer à Georgette qui se fera une joie de le déchiffrer avec sa clef (pas plus dur que le reste). Si Robert interceptait à n'importe quel moment, il ne parviendrait pas à lire ce qu'il est écrit car seul Georgette peut le comprendre (même Kevin ne peut pas).
Pour que Georgette puisse répondre, Kevin devra créé aussi deux clefs dont il communiquera la publique à son aimée.
RSA
Les trois brave Ron Rivest, Adi Shamir et Len Adleman ont eu le génie de réussir à trouver la méthode pour créer un jeu de clef de façon à ce qu'il soit ~~impossible~~ très difficile de deviner la clef privée à partir de la publique.
Sans trop rentrer dans des détails mathématique, le principe vient de la factorisation de deux nombres premiers. La sécurité repose grandement sur ces nombres donc il faut en choisir des de plusieurs ~~dizaines~~ centaines de chiffres de long. En les multipliant (et faisant d'autres opérations dessus), l'ont obtient deux nombres qui servent à chiffrer et déchiffrer le message.
Il suffit de communiquer celui servant à chiffrer pour être tranquille.
L'exploit
L'exploit (parce qu'on peut vraiment parler de ça) qu'on réussit plusieurs équipes de chercheurs rassemblées (de Suisse, France, Japon, Allemagne, USA et Pays-Bas) est de factoriser un nombre à 768 bit pour en retrouver les deux nombres premiers qui ont servit à la multiplication. Cela leur à prit plusieurs années (2 ans et demis) et des puissances de calcul énorme mais ils y sont arrivé.
La factorisation avait été lancé à la base par un concours (RSA Factoring Challenge) qui avait aboutit sans vainqueur et avait été poursuivit par des chercheurs passionnés.
Les conséquences
Je ne pense pas que les conséquences sont à ce jour dramatique. Ils ont montrés que l'on pouvait avec du temps et une puissance de calcul suffisante déchiffrer des messages sophistiqués mais il est recommandé depuis quelques temps d'utiliser des clef de minimum 1024 bit, les 2048 étant même conseillées.
La factorisation de nombres aussi grands est quasi impossible mais rien ne dit qu'il n'existe d'autres moyens d'y parvenir. L'on suppose que la factorisation est une étape obligatoire au cassage du code mais peut être qu'un jour, l'on découvrira une faille dans le chiffrement.
Cela ne reste bien sur que des suppositions...
Pour les intéressés, je conseille le premier lien ci-dessous qui est une vrai mine d'information sur la cryptographie