Les informaticien·ne·s relèvent le défi quantique

Pendant longtemps, le développement des ordinateurs quantiques a porté sur les aspects théoriques et matériels. Mais à mesure que l'accent est mis sur les questions de programmation, de logiciels et de sécurité, les sciences informatiques classiques reviennent sur le devant de la scène.
Il faudra des langages de programmation spéciaux pour exploiter correctement le potentiel des ordinateurs quantiques. (Photo: ETH Zurich)

Les physicien·ne·s nourrissaient depuis longtemps l'ambition de construire un ordinateur quantique. Au début des années 1980, l'un des plus célèbres d'entre ell·eux, Richard Feynman (1918-1988), s'est demandé s'il serait jamais possible de calculer et de simuler efficacement les phénomènes de physique quantique à l'aide d'un ordinateur classique. Il affirmait que les ordinateurs numériques ne pouvaient pas calculer assez rapidement pour calculer et simuler les effets quantiques qui se produisent généralement dans les atomes et les molécules et entre les particules élémentaires - du moins pas dans un délai raisonnable.

Dans un premier temps, il a proposé de construire un ordinateur quantique basé non pas sur un codage numérique mais plutôt sur une imitation directe des systèmes quantiques. Son idée centrale, qui continue d'inspirer le développement des ordinateurs quantiques à ce jour, était que certaines propriétés de la mécanique quantique pouvaient être exploitées pour le calcul. Plus précisément, il s'agirait de tirer parti de deux états quantiques des particules: la superposition et l'intrication.

Le principe de superposition, par exemple, peut être exploité par les ordinateurs quantiques pour effectuer des calculs plus rapides. Alors que les ordinateurs numériques utilisent des bits binaires qui ne peuvent prendre que l'état un ou zéro, les ordinateurs quantiques utilisent des bits quantiques, ou qubits, pour traiter les informations. Les qubits peuvent être un ou zéro, mais aussi un et zéro à la fois, un état que nous appelons superposition. Cette différence cruciale permet de faire un énorme bond en avant dans la vitesse de calcul pour certains problèmes de calcul.

À l'avenir, les ordinateurs quantiques promettent d'effectuer des calculs ultra-efficaces que les ordinateurs normaux ne peuvent pas résoudre dans un laps de temps raisonnable, une étape parfois appelée suprématie quantique. Bien que les scientifiques n'aient pas encore trouvé de preuve concluante de l'existence de la suprématie quantique, les récentes avancées techniques ont été impressionnantes. En 2019, Google a affirmé avoir atteint pour la première fois la suprématie quantique pour un problème de calcul spécifique, ayant construit un ordinateur quantique qui n'a eu besoin que de 200 secondes pour résoudre un problème qui aurait pris 10 000 ans à un ordinateur classique.

Le cryptage pourrait être craqué

Pour l'instant, les ordinateurs quantiques sont trop petits et trop sujets aux erreurs pour constituer une menace sérieuse pour les ordinateurs numériques actuels, qui sont capables d'effectuer des milliards de calculs par seconde. Même l'ordinateur quantique de Google n'a pu prouver sa suprématie que dans une tâche unique et spécifique. Néanmoins, les technologies quantiques ont désormais atteint un stade où leur développement n'est plus seulement entre les mains des physiciens. Aujourd'hui, de nombreux·ses informaticien·nes sont curieux·ses de quantique, selon le professeur d'informatique de l'ETH Zurich Kenneth Paterson. Il mène des recherches dans le domaine de la cryptographie et travaille sur les moyens de traiter, transférer et stocker des informations en toute sécurité. «Nous sommes conscient·es de la dimension quantique dans mon domaine de recherche depuis que l'informatique quantique a commencé à prendre de l'importance dans la cryptographie il y a environ dix ans», explique Kenneth Paterson. «Dès que quelqu'un construira un ordinateur quantique suffisamment grand et fiable, le cadre de cryptage actuel d'internet cessera d'être sûr, car l'informatique quantique pourrait être utilisée pour casser ce cryptage.»

Les protocoles de cryptage et de sécurité qui s'exécutent en coulisse chaque fois que nous nous connectons à des médias sociaux, effectuons un achat en ligne, utilisons des services bancaires en ligne ou envoyons un courriel sont tous basés sur la factorisation des nombres entiers et des problèmes connexes qui sont vulnérables à l'algorithme de Shor. La factorisation des nombres entiers consiste à décomposer un grand nombre entier composite en ses facteurs premiers. Ce processus nécessite une énorme puissance de calcul, c'est pourquoi il n'existe toujours pas d'algorithme - c'est-à-dire de procédure de calcul - qu'un ordinateur numérique puisse utiliser pour résoudre efficacement un problème de factorisation. En 1994, le mathématicien Peter Shor a toutefois créé un algorithme spécialement conçu pour l'informatique quantique, qui permet de trouver les facteurs premiers des nombres entiers composites beaucoup plus rapidement que les algorithmes classiques. Les idées de Peter Shor peuvent être utilisées pour craquer les autres formes de cryptographie à clé publique utilisées aujourd'hui.

«Avec les ordinateurs quantiques, la cryptographie utilisée aujourd'hui sur l'internet n'est plus sûre.»      Kenneth Paterson

Les ordinateurs quantiques actuels sont trop petits et trop sujets aux erreurs pour exécuter l'algorithme de Shor. En principe, cependant, il est clair que tout ordinateur quantique suffisamment puissant et fiable pour le faire serait en mesure d'effectuer la factorisation dans un délai raisonnable. Dès que cette situation se produira, la cryptographie basée sur la factorisation et les techniques connexes actuellement utilisées à grande échelle ne seront plus sûres. Bien sûr, toute la cryptographie ne sera pas affectée; par exemple, l'informatique quantique n'affectera pas sérieusement la sécurité des méthodes de cryptage qui reposent uniquement sur la cryptographie à clé secrète. Mais la cryptographie à clé publique, qui constitue actuellement la base de la sécurisation de plus de 90% du trafic web, sera certainement menacée.

Traduire les idées

Selon Kenneth Paterson, un ordinateur quantique aurait besoin de millions de bits quantiques pour craquer une clé de sécurité. Les scientifiques de l'ETH Zurich font actuellement fonctionner des ordinateurs quantiques comportant jusqu'à 17 qubits. En ce qui concerne le développement, les chercheur·ses sont sur le point d'atteindre une nouvelle phase de systèmes informatiques quantiques de taille moyenne, avec 50 à 100 qubits, bien que ceux-ci soient encore sujets à des erreurs. «Mais nous pourrions assister à une percée soudaine de la puissance des ordinateurs quantiques, et il faudrait au moins dix ans pour modifier la cryptographie à clé publique actuelle. C'est pourquoi nous nous préparons dès maintenant», explique Kenneth Paterson. Son groupe a co-développé un nouvel algorithme à sécurité quantique qui est évalué dans le cadre d'un concours mondial en cours visant à sélectionner de nouveaux algorithmes à sécurité quantique.

On demande parfois à Benjamin Bichsel s'il pense que ses recherches auront été vaines si des ordinateurs quantiques fiables et à grande échelle devaient s'avérer irréalisables. «Je pense que c'est une mauvaise question», répond-il. «Mais je me demande ce que nous ferons si les ordinateurs quantiques finissent par fonctionner brillamment et que nous n'avons pas la moindre idée de la façon de les programmer efficacement!» Benjamin Bichsel travaille dans le groupe de recherche dirigé par le professeur d'informatique Martin Vechev, dont le groupe a développé le premier langage de programmation intuitif de haut niveau pour l'informatique quantique en 2020.

Il faudra des langages de programmation spéciaux pour exploiter correctement le potentiel des ordinateurs quantiques. «Les langages de programmation quantique sont essentiels pour traduire les idées en instructions qui peuvent être exécutées par un ordinateur quantique», ont écrit les chercheur·ses de Microsoft en 2020 dans la revue scientifique Nature. Parmi les auteur·ices figuraient Bettina Heim et Matthias Troyer, qui avaient auparavant travaillé comme chercheur·ses à l'Institut de physique théorique de l'ETH Zurich.

Les langages de programmation quantique actuels sont étroitement liés à un matériel spécifique. Ces langages de description du matériel se concentrent sur le comportement des circuits et sur la manière de les optimiser. En revanche, le langage de programmation Silq développé par le groupe de Martin Vechev fait abstraction des détails techniques.

«Silq est le premier langage de programmation quantique de haut niveau qui n'est pas adapté principalement à la conception et aux fonctionnalités du matériel, mais plutôt à l'état d'esprit des programmeur·ses qui veulent résoudre un problème.»      Benjamin Bichsel

Plus d'un an s'est écoulé depuis le lancement de Silq. Premier langage de programmation quantique de haut niveau, il a déjà été salué pour son élégance et sa cohérence interne. Martin Vechev et son équipe ont également été salué·es pour leur contribution innovante à la réduction des erreurs dans l'informatique quantique. Dans un autre article consacré à Silq, Nature fait explicitement référence à la fonction «uncomputation» qui permet à Silq de réinitialiser automatiquement les valeurs temporaires «plutôt que de forcer les programmeur·ses à effectuer ce travail fastidieux manuellement».

Un ordinateur traite une tâche en plusieurs étapes intermédiaires, créant au passage des résultats intermédiaires, ou valeurs temporaires. Dans les ordinateurs classiques, ces valeurs sont effacées automatiquement pour libérer de la mémoire. Cette tâche est toutefois beaucoup plus complexe dans le cas des ordinateurs quantiques, car le principe d'intrication signifie que les valeurs calculées précédemment peuvent interagir avec les valeurs actuelles et compromettre le processus de calcul. C'est pourquoi la capacité à nettoyer automatiquement les valeurs temporaires est un élément clé de l'informatique quantique.

Une vision holistique de l'informatique

La question de savoir si Silq peut se mesurer aux langages de programmation quantique développés par les géants technologiques Microsoft, IBM et Google - Q#, Qiskit et Cirq, respectivement - est encore loin d'être résolue. Mais, en attendant, l'équipe de Martin Vechev a également réussi à transférer le décomptage automatique à Qiskit. «Il est très encourageant de constater que nous pouvons transférer des concepts clés de Silq à d'autres langages, d'autant plus que le décomptage automatique améliore l'efficacité du calcul quantique avec Qiskit», déclare Martin Vechev.

À long terme, les informaticien·nes auront moins tendance à écrire des langages et des logiciels pour le matériel développé par les physicien·nes. Au lieu de cela, l'accent sera mis sur le développement de langages de programmation allant de pair avec les algorithmes quantiques, le matériel quantique, les logiciels quantiques, les applications quantiques et les flux de travail. «Si nous voulons vraiment faire de l'informatique quantique une réalité, nous devrons intégrer cette nouvelle approche dans un système informatique à part entière dans lequel de multiples composants se combinent pour résoudre efficacement des problèmes spécifiques», explique Kenneth Paterson.

Ce texte est paru dans le numéro du 21/03 du magazine Globe de l'ETH Zurich.