Le chiffrement des communications électroniques est à la base de notre économie moderne. Les algorithmes actuels nous mettent à l’abri d’une interception car les temps de calcul nécessaires pour casser une clé sont trop importants (voir courbe ci-dessous, source : ici).
Avec les algorithmes quantiques (et notamment le fameux algorithme de factorisation de Shor), le temps pour casser un code, chute drastiquement. (rappel : complexité O(log(n))).
Même si nous sommes encore aux balbutiement de l’informatique quantique, le fameux NIST (National Institute of Standard and Technology) a anticipé le problème depuis 2016. Il a lancé un appel aux chercheurs du monde entier pour trouver des algorithmes de chiffrement « incassables » avec des ordinateurs classiques ET quantiques.
La chronologie des travaux du NIST est la suivante :
- Avril 2016 : publication d’un rapport sur la résistance des algorithmes de crypto actuels aux ordinateurs quantiques.
- Décembre 2016 : un appel à contribution pour proposer des algorithmes crypto-résistants aux ordinateurs quantiques
- 2017-2018 : 69 réponses ont été reçues. 26 semblent satisfaisantes. La liste est consultable sur ce site.
- Janvier 2019-Janvier 2020 : une seconde étape démarre avec l’analyse en détail de ces algorithmes, notamment sous 2 angles : leur efficacité contre l’informatique quantique, et leur scalabilité (lightweight cryptography) : être capable de fonctionner sur des CPU variés : des ordinateurs, des smartphones ou des cartes à puces.
Ces ambitions sont résumées dans cet article, publié le 30 janvier sur le site du NIST.
Les algorithmes sélectionnés permettront de définir les nouvelles normes : FIPS 186-4 (qui spécifie l’utilisation de signatures numériques). NIST SP 800-56A et NIST SP 800-56B (les 2 spécifient l’usage des clés publiques en cryptographie).
Louons l’anticipation du NIST !
Pour info, voici les 26 noms des algorithmes en course. L’un d’eux va-t-il sauver le monde ? 😉
- BIKE
- Classic McEliece
- CRYSTALS-KYBER
- FrodoKEM
- HQC
- LAC
- LEDAcrypt (merger of LEDAkem/LEDApkc)
- NewHope
- NTRU (merger of NTRUEncrypt/NTRU-HRSS-KEM)
- NTRU Prime
- NTS-KEM
- ROLLO (merger of LAKE/LOCKER/Ouroboros-R)
- Round5 (merger of Hila5/Round2)
- RQC
- SABER
- SIKE
- Three Bears
- CRYSTALS-DILITHIUM
- FALCON
- GeMSS
- LUOV
- MQDSS
- Picnic
- qTESLA
- Rainbow
- SPHINCS+
Et avant ?
Certaines normes (IEEE P1363 et X9.98 dans le domaine financier) ont déjà anticipé et ont normalisé des algorithmes cryptographiques à base de réseaux euclidiens (lattice cryptography).
Les types d’algorithmes principaux sont :
- Les réseaux euclidiens
- Les codes correcteurs d’erreur
- les polynômes multivariés
N’ayant pas de doctorat en mathématique, je suis incapable de vous expliquer les concepts. Si vous en avez le courage, rendez-vous sur 3 très bons articles en français :
- [14] Le blog de Stéphane Bortzmeyer qui consacre un article très marrant sur ce sujet
- [15] L’article Wikipedia sur les algo post-cryptographiques (moins rigolo que le [14], mais plus détaillé)
- [16] L’article dans la revue MISC « le grand défi du post-quantique« , très bien documenté. (avril 2016)
Page mise jour le 02/02/2019.