Comment concevoir un système d'information post-quantique
Jean-Louis Olié, Alain Fernando-Santana ; novembre 2022
Cet article introduit le concept de Post Quantum Information Systems (PQIS), un nouveau concept visant à définir des systèmes d'information conçus pour résister à toute attaque, qu'elle provienne d'ordinateurs classiques ou quantiques. Dans cet article, CyferAll propose une définition du PQIS et son approche pour concevoir de tels systèmes et identifier les éléments constitutifs essentiels.
Arrière plan
Dans notre précédent article , nous avons évoqué pourquoi et comment les systèmes d'information et les données numériques qui y transitent restent exposés à la cybercriminalité, malgré les cryptosystèmes actuellement déployés pour protéger les données numériques. Nous avons également examiné les nouvelles menaces que l'informatique quantique générera à mesure que la technologie mûrit et pourquoi ces nouvelles menaces créent une menace immédiate obligeant les gouvernements et les entreprises à remplacer leurs cryptosystèmes actuels . Mais comment concevoir des systèmes d'information pour les rendre résistants aux menaces informatiques quantiques et assurer aux données numériques un niveau de protection proche du « secret parfait », concept défini à l'origine par Claude Shannon en 1949 ? [1]L'objectif de cet article est de proposer différentes pistes dont la poursuite peut nous rapprocher de la vision de Shannon tout en fournissant les premières briques d'un Système d'Information Post-Quantique .

Définir un système d'information post-quantique
Aux fins de cet article, un système d'information post-quantique est défini comme un système d'information au niveau applicatif, fonctionnant sur un ou plusieurs ordinateurs reliés par un réseau et censé fournir aux utilisateurs du système une protection totale :
(i) des données numériques traitées, dans tous leurs états possibles : « en cours d'utilisation », « au repos » et « en transit » , de la création à la restitution, contre toute menace, qu'elle provienne des ordinateurs classiques ou quantiques ;
(ii) de virus et logiciels malveillants qui pourraient résider sur les ordinateurs traitant les données numériques ; et
(iii) lors des services d' intégration et de connexion des utilisateurs pris en charge par le système.
Protection totale des données
Précisons tout d'abord ce que signifie réellement « protection totale des données » et quelles sont les limites concrètes de la protection qu'un système d'information peut apporter aux données numériques. En effet, pour diverses raisons, un système d'information ne peut jamais assurer une protection « totale » en tant que telle car il existe des réalités pratiques qui rendront cela impossible. Par exemple:
Comportement de l'utilisateur
Les utilisateurs sont des personnes physiques et, à ce titre, ils sont les détenteurs ultimes des informations effectives ou de l'accès aux informations à protéger. Cependant, ces personnes ont toujours la possibilité de divulguer les informations , que ce soit intentionnellement (avec ou sans autorisation) ou non intentionnellement par négligence simple ou grave. Aussi sophistiqué que soit le système d'information, il ne peut jamais empêcher la divulgation intentionnelle non autorisée ou involontaire par négligence par un utilisateur de données ou d'identifiants d'accès. Cela peut être atténué par des procédures d'habilitation de sécurité , une compartimentation des informations avec des critères de «besoin de savoir», ainsi que la formation du personnel pour sensibiliser à la sécurité .
De plus, les instructions logicielles sous-jacentes à tout système d'information sont codées par des individus qui peuvent avoir des arrière-pensées. Une back-door placée intentionnellement lors du développement d'une solution par un codeur qui entraînera alors des attaques zero-day ne peut pas être identifiée à l'avance et protégée par un système d'information. Cela peut être atténué par des revues de code et des procédures de certification externes .
Surveillance en établissement
De plus, les utilisateurs et les périphériques se trouvent dans des installations physiques (une entreprise ou un bureau à domicile) et ces installations pourraient faire l'objet d' équipements de surveillance non autorisés capables de capturer les identifiants d'accès / les données échangées et un système d'information ne peut pas protéger contre un tel scénario. Cela peut être atténué par des systèmes qui détectent la présence de dispositifs indésirables.
Ainsi, la définition de « Total Protection » s'entend pour décrire des mesures entrant dans le périmètre technologique d'un système d'information et sa gestion des données numériques .
Considérations initiales concernant un système d'information post-quantique (PQIS)
Équipement/ micrologiciel
Idéalement, un PQIS devrait être facilement accessible et, à ce titre, ne pas nécessiter l'utilisation de matériel informatique spécifique, adapté ou personnalisé. En outre:
je. les composants du matériel informatique et leur micrologiciel ne doivent pas être compromis et un processus pour garantir cet état « propre » doit précéder leur connexion au PQIS ;
ii. le processeur, la carte CPU et la RAM doivent fonctionner en toute sécurité ; et
iii. les périphériques de capture/rendu doivent être sécurisés et ne pas être capables d'accéder subrepticement ou de divulguer des données à des destinataires non autorisés.
Systèmes d'exploitation
Le système d'exploitation joue un rôle fondamental dans le fonctionnement d'un ordinateur, mais il s'agit d'un composant logiciel et, par conséquent, potentiellement modifiable par des virus ou des logiciels malveillants . Rendre un système d'exploitation moins sensible aux virus et aux logiciels malveillants est fondamental pour la création d'un PQIS sécurisé. Une option pour protéger le système d'exploitation consiste à l'exécuter en tant que machine virtuelle et à le faire résider entièrement dans la RAM afin de le protéger contre toute modification malveillante.
Des droits d'accès
Vinton G. Cerf, l'un des concepteurs des blocs clés d'Internet, a déclaré qu'en créant le nouveau réseau, "nous ne nous sommes pas concentrés sur la façon dont vous pourriez détruire le système intentionnellement". Cela reste le défi aujourd'hui. Les Systèmes d'Information accordent des droits d'accès aux utilisateurs autorisés puis ne doutent plus de leurs intentions. Cette logique s'est révélée fondamentalement erronée car il semble y avoir autant d'utilisateurs mal intentionnés à l'extérieur qu'à l'intérieur d'un réseau privé. Le National Institute of Standards and Technology (NIST) américain a répondu à cette préoccupation dans sa publication spéciale de 2020 [2] relative aux modèles pour les systèmes d'information Zero Trust. Dans un tel modèle, les droits d'accès aux données en clair ne sont accordés qu'aux ordinateurs dont les utilisateurs se sont avérés dignes de confiance pour accéder aux données. Tant que cette condition préalable n'est pas remplie, l'ordinateur n'est pas fiable et un composant d'application de politique du système empêche que des données soient fournies en clair à l'utilisateur de l'ordinateur. Le composant d'application de politique agit sous le contrôle d'un point de décision de politique, gérant tous les droits d'accès des utilisateurs à chaque catégorie de données. Cependant, ce modèle doit encore être affiné. En effet, comme nous l'avons vu, considéré dans son ensemble, un ordinateur ne peut être considéré comme digne de confiance car il a pu être infecté par des virus ou des logiciels malveillants ou les informations d'accès de l'utilisateur ont pu être volées en utilisant les techniques décrites plus haut dans cet article. Pour se protéger contre un ordinateur infecté par un virus ou un logiciel malveillant, la mise en œuvre du modèle de confiance zéro doit créer une chaîne incassable de conservation des données entre les enclaves protégées . Dans un tel modèle, le chiffrement de bout en bout est en fait implémenté d' enclave sécurisée à enclave sécurisée , avec de bien meilleures garanties de protection non seulement pour les données « en transit », mais aussi pour les données « en cours d'utilisation » et les données « au repos ».
Pour se prémunir contre un utilisateur dont les informations d'accès ont été volées, le système d'information peut procéder régulièrement à des vérifications d'identité , biométriques ou non, en fonction de l'analyse par le système d'information du comportement de l'utilisateur, des accès antérieurs à ces mêmes informations, de l'heure de la journée, du lieu d'où la demande d'accès est faite etc. etc. L'hypothèse ne devrait plus être que l'utilisateur a le droit d'être dans le réseau et encore moins d'accéder aux informations demandées.
Le rôle du navigateur
Comme son nom l'indique, le navigateur Internet a été inventé pour faciliter la navigation sur Internet et la récupération d'informations à partir de sites ou d'autres emplacements Internet. Le navigateur est également le programme qui configure les connexions de vidéoconférence, les connexions vocales Internet, la messagerie Web et le chat dans des applications Web spécifiques. La plupart des informations transitant par le navigateur sont en clair puisque ce navigateur est le point final du "cryptage de bout en bout".dans ces applications Web. En effet, bien que le protocole TLS prévoit le chiffrement symétrique des données et l'échange asymétrique des clés avec authentification, il ne peut résister aux attaques quantiques. De plus, le protocole TLS ne protège les données que lors du transport entre les navigateurs. Avant le cryptage et après le décryptage, les données résident « en clair » dans le cache des navigateurs et peuvent être extraites ou compromises par des virus et des logiciels malveillants. L'avènement des cookies et leur capacité à suivre, collecter et stocker les données résultant de l'activité de navigation d'un utilisateur (data mining) ont créé une opportunité de revenus d'une telle proportion que le navigateur est devenu autant un outil de surveillance qu'un facilitateur de navigation sur Internet/services Internet . Mais pour entreprendre des activités d'exploration de données sur les informations qui transitent par le navigateur, ces informations doivent être en clair. Étant donné que les navigateurs sont au cœur de toute activité de navigation sur Internet et de communication avec les utilisateurs et que l'objectif principal de l'éditeur de leur navigateur est l'exploration de données et la monétisation des données, dans un PQIS, où il faut absolument éviter d'exposer / compromettre des données, le navigateur ne peut jouer aucun rôle en matière de protection des données . Dans un PQIS, les composants de l'ordinateur doivent être examinés pour identifier les enclaves protégéesqui peuvent abriter des données en clair, et ce sont ces enclaves qui doivent être directement gérées par la composante d'application des politiques. Ce n'est que dans ces enclaves que les données peuvent être en clair et que des changements d'état des données peuvent se produire en toute sécurité lorsque l'authentification de l'utilisateur est effectuée lors d'une transition depuis l'un des trois états, "en cours d'utilisation", "au repos" ou « en transit » vers un autre de ces trois États. Ces enclaves protégées sont également les endroits où les périphériques matériels nécessaires pour créer ou restituer des informations, tels qu'un clavier, un microphone, une caméra, un haut-parleur ou un écran d'affichage, doivent capturer et restituer des données.
Les enclaves protégées
Dans tous les ordinateurs modernes, sans composant matériel spécifique, les trois emplacements possibles pour stocker des données sont les registres des processeurs, la mémoire volatile à accès aléatoire, également appelée mémoire principale, et les périphériques de stockage de masse [3] . Les registres des processeurs ont une capacité très limitée et ne peuvent stocker que les données en cours de traitement. Les périphériques de stockage de masse sont accessibles par n'importe quelle application exécutée sur l'ordinateur et une application peut être un logiciel malveillant. Par conséquent, les données sensibles ne doivent pas être en clair sur les périphériques de stockage de masse. Au final, le seul emplacement pour créer des enclaves protégées est la mémoire volatile à accès aléatoire (RAM) .
En effet, des tranches de RAM sont allouées à chaque processus en cours d'exécution de manière exclusive par le processeur. Si une tranche de mémoire est allouée à une application, aucun des autres processus exécutés simultanément, y compris les virus et les logiciels malveillants, ne pourra accéder aux données stockées dans la tranche allouée.
L'architecture logicielle à base de RAM décrite ci-dessus permet de pallier les faiblesses de la couche applicative de la plupart des systèmes d'information actuels , sans nécessiter de composant matériel spécifique, mais le cryptosystème sur lequel elle doit s'appuyer reste à discuter.

Le cryptosystème
Comme vu précédemment, le premier composant que ce cryptosystème doit inclure est un algorithme de chiffrement symétrique pour chiffrer/déchiffrer les données à protéger au sein des enclaves sécurisées définies ci-dessus. Comme vu dans l'article précédent, cet algorithme nécessitera une clé de 512 bits pour résister aux attaques de l'informatique quantique, mais il devra également : (i) résister aux attaques par canal latéral , (ii) fournir une vérification d'intégrité sans créer de faiblesses ni de limitations opérationnelles dans son utilisation. et, (iii) comme les données seront traitées directement dans la RAM , l'algorithme doit avoir un débit très élevé et une latence ultra-faible. Cette latence est définie comme le nombre de cycles d'horloge nécessaires pour chiffrer, déchiffrer et vérifier l'intégrité de chaque octet de données. Pour atteindre le niveau le plus élevé en termes de résistance à la cryptanalyse, l'algorithme de chiffrement symétrique doit être indiscernable sous l'attaque de chiffrement adaptatif choisi (IND-CCA2) [4]. Un algorithme de chiffrement est dit avoir une telle propriété si un attaquant, disposant de deux clairs et du chiffré d'un de ces deux clairs, ne peut pas déterminer lequel des clairs correspond au chiffré avec une probabilité supérieure à ½. Plus encore, cette propriété doit être établie si l'attaquant a également accès à un oracle de décryptage qui peut fournir un nombre quelconque de formes décryptées de messages cryptés choisis par l'attaquant, à l'exception, bien sûr, du message crypté lui-même. De plus, toutes ces exigences doivent être satisfaites par l'algorithme de chiffrement symétrique sans nécessiter de composant matériel spécifique.
Le deuxième composant du cryptosystème est un algorithme de chiffrement asymétrique qui permettra l'échange de la clé d'algorithme de chiffrement symétrique décrite ci-dessus, entre deux utilisateurs distants du PQIS, lorsque ces utilisateurs sont autorisés par un point de décision politique à échanger des messages ou des flux en temps réel. de données chiffrées avec cet algorithme symétrique. L'algorithme asymétrique doit être post-quantique, plus précisément, capable de résister à l'informatique quantique avec un niveau de sécurité d'au moins 256 bits. En juillet 2022 [5] , le NIST a annoncé qu'après un processus de sélection de cinq ans, il avait choisi de normaliser l'algorithme Crystals-Kyber. Cet algorithme est IND-CCA2 et a une version avec un niveau de sécurité de 256 bits.
Le dernier composant nécessaire au cryptosystème est un autre algorithme asymétrique post-quantique. Cet algorithme asymétrique permettra l'authentification des utilisateurs dans l'échange de clés chiffrées avec le premier algorithme asymétrique, en donnant à ces utilisateurs les moyens de signer cet échange et de vérifier la signature de leurs homologues. Dans son annonce de juillet 2022, le NIST a également donné une liste de trois algorithmes de signature numérique à standardiser : Crystals-Dilithium, Falcon et Sphincs+.
La preuve de concept
Un système d'information post-quantique construit sur de tels principes, avec une architecture logicielle basée sur un modèle Zero-Trust avec cryptage RAM-to-RAM [6] et un cryptosystème comprenant un cryptage symétrique et asymétrique comme décrit ci-dessus, sera en mesure de fournir aux utilisateurs avec une « protection totale » des données numériques. Pour prouver la faisabilité du concept, CyferAll, une start-up basée en France, a mis en œuvre le concept dans sa plate-forme SaaS prenant en charge une large gamme de services de cryptage, de messagerie et de communication. L'architecture logicielle RAM-to-RAM et les algorithmes de chiffrement symétrique ont fait l'objet de deux dépôts de brevet. L'architecture logicielle respecte les principes de confidentialité dès la conceptionpour assurer la conformité GDPR / HIPPA. La plateforme CyferAll est également conforme aux réglementations françaises et européennes visant à empêcher l'utilisation de moyens cryptographiques à des fins de malveillance et d'actes de terrorisme . La première innovation concerne l'architecture logicielle et les protocoles associés d'embarquement et de connexion des utilisateurs, permettant de supporter en toute sécurité le concept logiciel RAM-to-RAM, tout en respectant les contraintes réglementaires.

La deuxième innovation concerne la définition d'un algorithme de chiffrement symétrique qui corrige toutes les faiblesses listées dans notre article précédent, liées à une longueur de clé insuffisante et à des attaques indirectes. L'algorithme de chiffrement symétrique est dérivé de l'algorithme « One Time Pad » (OTP) qui a été proposé par un ingénieur américain, Joseph Mauborgne, comme une version améliorée du chiffrement de Vernam [7] , inventé en 1917 par Gilbert Vernam.

Cet algorithme est dit sémantiquement sécurisé car il a la caractéristique intéressante, mathématiquement prouvée, d'être totalement incassable , quelle que soit la puissance de calcul utilisée. Malheureusement, il nécessite une clé de même longueur que les données à chiffrer et nécessite que cette clé soit différente à chaque transmission de données. Cela rendait l'algorithme impossible à utiliser en pratique dans les systèmes d'information modernes, car les clés, à chaque fois différentes, sont aussi difficiles à échanger que les messages eux-mêmes, mais cet algorithme OTP est IND-CCA2 avec un niveau de sécurité infini. Il est également résistant aux attaques par canaux secondaires, car il n'y a pas de clé fixe à récupérer par analyse statistique, et il a de loin la latence de cryptage la plus faible de tous les algorithmes de cryptage existants. Au sein de la technologie de cryptosystème de CyferAll, cet algorithme a été transformé de manière à pouvoir produire des flux de pads aléatoires, de n'importe quelle longueur et différents pour chaque message , à partir d'une clé fixe, de 512 bits de long et il a également une capacité de vérification d'intégrité . On peut prouver qu'il reste IND-CCA2 mais avec un niveau de sécurité réduit à 512 bits, ce qui est suffisant pour résister à l'informatique quantique. Cette transformation de l'algorithme est également conçue pour préserver sa résistance aux attaques par canaux auxiliaires . La capacité de vérification de l'intégrité augmente la latence, mais les performances restent bien meilleures qu'avec tout autre algorithme standard existant . Lorsque ce développement a été achevé, le NIST n'avait pas encore publié la liste des algorithmes asymétriques post-quantiques sélectionnés pour la normalisation, de sorte que les algorithmes post-quantiques utilisés dans la preuve de concept CyferAll étaient RLCE [8] et XMSS-MT [9] .
Les résultats
Une comparaison des technologies d'algorithme de chiffrement symétrique est fournie ci-dessous.
Sécurité

Performance

Ces résultats confirment qu'avec une latence significativement plus faible, l'algorithme de chiffrement symétrique proposé peut fournir le niveau de sécurité requis de 512 bits, avec vérification de l'intégrité et résistance aux attaques par canal latéral.
En conclusion, il est possible de construire des Systèmes d'Information Post-Quantiques qui offrent ce que nous avons défini comme une "protection totale", un niveau de protection aussi proche que possible du Secret Parfait, tout en considérant la nécessité d'assurer d'excellentes performances applicatives.
[1] Shannon, Claude, Théorie de la communication des systèmes secrets , Bell System Technical Journal, 28(4): 656–715, 1949
[2] Rose Scott, Borchert Oliver, Mitchell Stu et Connelly Sean Zero Trust Architecture , NIST Special Publication 800–207, 2020
[3] John L. Hennessy et David Patterson (2006). Architecture informatique: une approche quantitative (quatrième éd.). Morgan Kaufman. ISBN 978–0–12–370490–0
[4] Bellare, Mihir ; Rogaway, Phillip (11 mai 2005 ). Introduction à la cryptographie moderne, Chapitre 5 : Chiffrement symétrique
[5] https://csrc.nist.gov/News/2022/pqc-candidates-to-be-standardized-and-round-4
[6] CyferAll a déposé la marque RAM2RAM pour décrire son architecture logicielle
[7] Vernam, Gilbert S., Brevet du système de signalisation secret , Google.com , Archivé de l'original le 11 mars 2016
[8] Yongee Wang, Schéma de cryptage à clé publique basé sur un code linéaire aléatoire quantique résistant RLCE, eprint arXiv:1512.08454, 2016
[9] A. Huelsing, D. Butin, S. Gazdag, J. Rijneveld, A. Mohaisen. XMSS : schéma de signature Merkle étendu ,https://datatracker.ietf.org/doc/html/rfc8391