Cryptographie asymétriquevignette|320x320px|Schéma du chiffrement asymétrique: une clé sert à chiffrer et une seconde à déchiffrer La cryptographie asymétrique, ou cryptographie à clé publique est un domaine relativement récent de la cryptographie. Elle permet d'assurer la confidentialité d'une communication, ou d'authentifier les participants, sans que cela repose sur une donnée secrète partagée entre ceux-ci, contrairement à la cryptographie symétrique qui nécessite ce secret partagé préalable.
Clé de chiffrementUne clé est un paramètre utilisé en entrée d'une opération cryptographique (chiffrement, déchiffrement, scellement, signature numérique, vérification de signature). Une clé de chiffrement peut être symétrique (cryptographie symétrique) ou asymétrique (cryptographie asymétrique). Dans le premier cas, la même clé sert à chiffrer et à déchiffrer. Dans le second cas on utilise deux clés différentes, la clé publique est utilisée au chiffrement alors que celle servant au déchiffrement est gardée secrète : la clé secrète, ou clé privée, et ne peut pas se déduire de la clé publique.
Cryptographiethumb|La machine de Lorenz utilisée par les nazis durant la Seconde Guerre mondiale pour chiffrer les communications militaires de haut niveau entre Berlin et les quartiers-généraux des différentes armées. La cryptographie est une des disciplines de la cryptologie s'attachant à protéger des messages (assurant confidentialité, authenticité et intégrité) en s'aidant souvent de secrets ou clés. Elle se distingue de la stéganographie qui fait passer inaperçu un message dans un autre message alors que la cryptographie rend un message supposément inintelligible à autre que qui de droit.
Protocole cryptographiqueUn protocole de sécurité (protocole cryptographique ou protocole de chiffrement) est un protocole abstrait ou concret qui remplit une fonction liée à la sécurité et applique des méthodes cryptographiques, souvent sous forme de séquences de primitives cryptographiques. Un protocole décrit comment les algorithmes doivent être utilisés et inclut des détails sur les structures de données et les représentations, à quel point il peut être utilisé pour implémenter plusieurs versions interopérables d'un programme.
Échange de clés Diffie-HellmanEn cryptographie, l'échange de clés Diffie-Hellman, du nom de ses auteurs Whitfield Diffie et Martin Hellman, est une méthode, publiée en 1976, par laquelle deux agents, nommés par convention Alice et Bob, peuvent se mettre d'accord sur un nombre (qu'ils peuvent utiliser comme clé pour chiffrer la conversation suivante) sans qu'un troisième agent appelé Ève puisse découvrir le nombre, même en ayant écouté tous leurs échanges. Cette idée valut en 2015 aux deux auteurs le prix Turing.
Cryptographie post-quantiqueLa cryptographie post-quantique est une branche de la cryptographie visant à garantir la sécurité de l'information face à un attaquant disposant d'un calculateur quantique. Cette discipline est distincte de la cryptographie quantique, qui vise à construire des algorithmes cryptographiques utilisant des propriétés physiques, plutôt que mathématiques, pour garantir la sécurité. En l'effet, les algorithmes quantiques de Shor, de Grover et de Simon étendent les capacités par rapport à un attaquant ne disposant que d'un ordinateur classique.
Chiffrementthumb|Table de chiffrement de la guerre franco–prussienne de 1870, évoquant une série de mots classés par ordre alphabétique. Archives nationales de France. Le chiffrement (ou parfois cryptage) est un procédé de cryptographie grâce auquel on souhaite rendre la compréhension d'un document impossible à toute personne qui n'a pas la clé de chiffrement. Ce principe est généralement lié au principe d'accès conditionnel. Bien que le chiffrement puisse rendre secret le sens d'un document, d'autres techniques cryptographiques sont nécessaires pour communiquer de façon sûre.
Échange de clévignette|Paramètres de configuration pour la machine de cryptographie Enigma, en fonction du jour, du mois, etc. On peut lire sur ce document plusieurs mises en garde concernant son caractère secret. Avant l'avènement de la cryptographie moderne, la nécessité de tels mécanismes d'échange de clé constituaient une vulnérabilité majeure. En informatique, et plus particulièrement en cryptologie, un protocole déchange de clé (ou de négociation de clé, ou d'établissement de clé, ou de distribution de clé) est un mécanisme par lequel plusieurs participants se mettent d'accord sur une clé cryptographique.
Fonction de hachage cryptographiqueUne fonction de hachage cryptographique est une fonction de hachage qui, à une donnée de taille arbitraire, associe une image de taille fixe, et dont une propriété essentielle est qu'elle est pratiquement impossible à inverser, c'est-à-dire que si l'image d'une donnée par la fonction se calcule très efficacement, le calcul inverse d'une donnée d'entrée ayant pour image une certaine valeur se révèle impossible sur le plan pratique. Pour cette raison, on dit d'une telle fonction qu'elle est à sens unique.
Primitive cryptographiqueUne primitive cryptographique est un algorithme cryptographique de bas niveau, bien documenté, et sur la base duquel est bâti tout système de sécurité informatique. Ces algorithmes fournissent notamment des fonctions de hachage cryptographique et de chiffrement. À la création d’un système cryptographique (ou cryptosystème), le concepteur se fonde sur des briques appelées « primitives cryptographiques ». Pour cette raison les primitives cryptographiques sont conçues pour effectuer une tâche précise et ce de la façon la plus fiable possible.
Empreinte de clé publiqueEn cryptographie, une empreinte de clé publique (ou empreinte cryptographique de clé publique ; en anglais, public key fingerprint) est une courte séquence d'octets utilisée pour identifier une clé publique plus longue. Les empreintes de clé publique sont créées en appliquant une fonction de hachage cryptographique à une clé publique. Comme les empreintes de clé publique sont plus courtes que les clés auxquelles elles se rapportent, elles peuvent être utilisées pour simplifier certaines tâches de gestion des clés.
Cryptographie symétriquevignette|320x320px|Schéma du chiffrement symétrique: la même clé est utilisée pour le chiffrement et le déchiffrement La cryptographie symétrique, également dite à clé secrète (par opposition à la cryptographie asymétrique), est la plus ancienne forme de chiffrement. Elle permet à la fois de chiffrer et de déchiffrer des messages à l'aide d'un même mot clé. On a des traces de son utilisation par les Égyptiens vers 2000 av. J.-C. Plus proche de nous, on peut citer le chiffre de Jules César, dont le ROT13 est une variante.
Longueur de cléEn cryptologie, la longueur de clé ( ou key length) est la taille mesurée en bits de la clé de chiffrement (ou de signature) utilisée par un algorithme de chiffrement. La longueur de la clé est différente de la sécurité cryptographique, qui est la mesure de l'attaque la plus rapide contre un algorithme, aussi mesurée en bits. La sécurité évaluée d'un cryptosystème ne peut pas dépasser sa longueur de clé (étant donné que tout algorithme peut être cassé par force brute), mais elle peut être plus petite.
Attaque par analyse du traficDans le domaine du renseignement et de la sécurité informatique, l'attaque par analyse du trafic désigne les méthodes permettant de tirer des informations de flux de communication de tout type (émissions radio, trafic internet, mais également courrier papier, rencontres entre agents...) sans nécessairement avoir accès au contenu des messages échangés (notamment lorsque les messages sont chiffrés. Ce type d'attaque peut être considéré comme une attaque par canal auxiliaire.
Computational complexityIn computer science, the computational complexity or simply complexity of an algorithm is the amount of resources required to run it. Particular focus is given to computation time (generally measured by the number of needed elementary operations) and memory storage requirements. The complexity of a problem is the complexity of the best algorithms that allow solving the problem. The study of the complexity of explicitly given algorithms is called analysis of algorithms, while the study of the complexity of problems is called computational complexity theory.
Infrastructure à clés publiquesthumb|Diagramme de principe d'une autorité de certification, exemple d'infrastructure à clés publiquesCA : autorité de certification ;VA : autorité de validation ;RA : autorité d'enregistrement. Une infrastructure à clés publiques (ICP) ou infrastructure de gestion de clés (IGC) ou encore Public Key Infrastructure (PKI), est un ensemble de composants physiques (des ordinateurs, des équipements cryptographiques logiciels ou matériel type Hardware Security Module (HSM ou boîte noire transactionnelle) ou encore des cartes à puces), de procédures humaines (vérifications, validation) et de logiciels (système et application) destiné à gérer les clés publiques des utilisateurs d'un système.
Key managementKey management refers to management of cryptographic keys in a cryptosystem. This includes dealing with the generation, exchange, storage, use, crypto-shredding (destruction) and replacement of keys. It includes cryptographic protocol design, key servers, user procedures, and other relevant protocols. Key management concerns keys at the user level, either between users or systems. This is in contrast to key scheduling, which typically refers to the internal handling of keys within the operation of a cipher.
Théorie de la complexité (informatique théorique)vignette|Quelques classes de complexité étudiées dans le domaine de la théorie de la complexité. Par exemple, P est la classe des problèmes décidés en temps polynomial par une machine de Turing déterministe. La théorie de la complexité est le domaine des mathématiques, et plus précisément de l'informatique théorique, qui étudie formellement le temps de calcul, l'espace mémoire (et plus marginalement la taille d'un circuit, le nombre de processeurs, l'énergie consommée ...) requis par un algorithme pour résoudre un problème algorithmique.
Cryptosystème de ElGamalLe cryptosystème d'ElGamal, ou chiffrement El Gamal (ou encore système d'El Gamal) est un protocole de cryptographie asymétrique inventé par Taher Elgamal en 1984 et construit à partir du problème du logarithme discret. Ce protocole est utilisé par le logiciel libre GNU Privacy Guard dont les versions récentes implémentent jusqu'à sa version sur les courbes elliptiques. Contrairement au chiffrement RSA, il n’a jamais été sous la protection d’un brevet.
Classe de complexitéEn informatique théorique, et plus précisément en théorie de la complexité, une classe de complexité est un ensemble de problèmes algorithmiques dont la résolution nécessite la même quantité d'une certaine ressource. Une classe est souvent définie comme l'ensemble de tous les problèmes qui peuvent être résolus sur un modèle de calcul M, utilisant une quantité de ressources du type R, où n, est la taille de l'entrée. Les classes les plus usuelles sont celles définies sur des machines de Turing, avec des contraintes de temps de calcul ou d'espace.