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.
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.
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.
Fonction épongeEn cryptographie, une fonction éponge, ou construction de l’éponge est une classe de fonctions permettant de construire entre autres des fonctions de hachage cryptographique. Elle a notamment été utilisée pour la fonction SHA-3. D'un point de vue théorique, elles permettent aussi de construire des preuves de sécurité de ce type de fonction. Leur originalité est d’accepter en entrée à la fois des chaînes de taille arbitraire et de permettre en sortie des chaînes de la taille que l’on souhaite.
Fonction de hachageQuand il s'agit de mettre dans un tableau de taille raisonnable (typiquement résidant dans la mémoire principale de l'ordinateur) un ensemble de données de taille variable et arbitraire, on utilise une fonction de hachage pour attribuer à ces données des indices de ce tableau. Par conséquent, une fonction de hachage est une fonction qui associe des valeurs de taille fixe à des données de taille quelconque. Les valeurs renvoyées par une fonction de hachage sont appelées valeurs de hachage, codes de hachage, résumés, signatures ou simplement hachages.
MD5vignette|Vue générale de MD5. Le MD5, pour Message Digest 5, est une fonction de hachage cryptographique qui permet d'obtenir l'empreinte numérique d'un fichier (on parle souvent de message). Il a été inventé par Ronald Rivest en 1991. Si l'algorithme MD5 présente un intérêt historique important, il est aujourd'hui considéré comme dépassé et absolument impropre à toute utilisation en cryptographie ou en sécurité. Il est toutefois encore utilisé pour vérifier l'intégrité d'un fichier après un téléchargement.
HMACUn HMAC (en anglais parfois étendu en tant que keyed-hash message authentication code (code d'authentification de message de hachage à clé) ou hash-based message authentication code (code d'authentification de message basé sur le hachage)), est un type de code d'authentification de message (CAM), ou MAC en anglais (message authentication code), calculé en utilisant une fonction de hachage cryptographique en combinaison avec une clé secrète. Comme avec n'importe quel CAM, il peut être utilisé pour vérifier simultanément l'intégrité de données et l'authenticité d'un message.
Advanced Encryption StandardAdvanced Encryption Standard ou AES ( « norme de chiffrement avancé »), aussi connu sous le nom de Rijndael, est un algorithme de chiffrement symétrique. Il remporta en octobre 2000 le concours AES, lancé en 1997 par le NIST et devint le nouveau standard de chiffrement pour les organisations du gouvernement des États-Unis. Il a été approuvé par la NSA (National Security Agency) dans sa suite B des algorithmes cryptographiques. Il est actuellement le plus utilisé et le plus sûr.
Fonction de dérivation de cléEn cryptographie, une fonction de dérivation de clé (en anglais, key derivation function ou KDF) est une fonction qui dérive une ou plusieurs clés secrètes d'une valeur secrète comme un mot de passe ou une phrase secrète en utilisant une fonction pseudo-aléatoire. Les fonctions de dérivation de clé peuvent être utilisées pour renforcer des clés en les étirant ou pour obtenir des clés d'un certain format. Les fonctions de dérivation de clé sont souvent utilisées conjointement avec des paramètres non secrets (appelés sels cryptographiques) pour dériver une ou plusieurs clés à partir d'une valeur secrète.
MD4vignette|Schéma d'une opération MD4, l'algorithme contient 48 de ces opérations. MD4, pour Message Digest 4, est un algorithme de hachage conçu par le professeur Ronald Rivest du Massachusetts Institute of Technology en 1990. La taille de la signature est de 128 bits. L'algorithme a été abandonné au profit du MD5 après la découverte de faiblesses dans sa conception. D'autres attaques encore plus efficaces ont suivi, notamment par Hans Dobbertin du service du chiffre allemand et l'équipe chinoise à l'origine de l'attaque sur MD5.
Architecture ARMLes architectures ARM sont des architectures externes de type RISC 32 bits (ARMv1 à ARMv7) et 64 bits (ARMv8) développées par ARM Ltd depuis 1983 et introduites à partir de 1990 par Acorn Computers. L'architecture ARM est le fruit du travail de Sophie Wilson. Dotés d'une architecture relativement plus simple que d'autres familles de processeurs et faibles consommateurs d'électricité, les processeurs ARM sont aujourd'hui dominants dans le domaine de l'informatique embarquée, en particulier la téléphonie mobile et les tablettes.
NIST hash function competitionThe NIST hash function competition was an open competition held by the US National Institute of Standards and Technology (NIST) to develop a new hash function called SHA-3 to complement the older SHA-1 and SHA-2. The competition was formally announced in the Federal Register on November 2, 2007. "NIST is initiating an effort to develop one or more additional hash algorithms through a public competition, similar to the development process for the Advanced Encryption Standard (AES).
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.
Fonction de compressionvignette|Une fonction de compression unidirectionnelle typique, habituellement utilisée dans la construction Merkle-Damgård En cryptographie, une fonction de compression est une fonction à sens unique qui prend une entrée de M bits et produit à sa sortie une séquence de N bits avec N strictement inférieur à M. On doit ce terme à Ralph Merkle et Ivan Damgård qui l'ont utilisé dans le cadre de la construction de Merkle-Damgård. La sortie est ainsi « compressée » (à perte d'où le terme « sens unique ») puisque plus courte que l'entrée.
Strong cryptographyStrong cryptography or cryptographically strong are general terms used to designate the cryptographic algorithms that, when used correctly, provide a very high (usually unsurmountable) level of protection against any eavesdropper, including the government agencies. There is no precise definition of the boundary line between the strong cryptography and (breakable) weak cryptography, as this border constantly shifts due to improvements in hardware and cryptanalysis techniques.
BlowfishBlowfish est un algorithme de chiffrement symétrique (c'est-à-dire « à clef secrète ») par blocs conçu par Bruce Schneier en 1993. Blowfish utilise une taille de bloc de 64 bits et la clé de longueur variable peut aller de 32 à 448 bits. Elle est basée sur l'idée qu'une bonne sécurité contre les attaques de cryptanalyse peut être obtenue en utilisant de très grandes clés pseudo-aléatoires. Blowfish présente une bonne rapidité d'exécution excepté lors d'un changement de clé, il est environ 5 fois plus rapide que Triple DES et deux fois plus rapide que IDEA.
Modèle de l'oracle aléatoireEn cryptologie, le modèle de l'oracle aléatoire est un cadre théorique idéalisé dans lequel on peut prouver la sécurité de certains algorithmes cryptographiques, en particulier les signatures numériques. Il postule l'existence d'un oracle, c'est-à-dire d'une boîte noire, qu'un adversaire peut interroger et qui fournit une réponse « aléatoire », dans un sens précisé plus bas. Ce modèle essaie de capturer le comportement idéal d'une fonction de hachage cryptographique.
Table de hachageUne table de hachage est, en informatique, une structure de données qui permet une association clé–valeur, c'est-à-dire une implémentation du type abstrait tableau associatif. Son but principal est de permettre de retrouver une clé donnée très rapidement, en la cherchant à un emplacement de la table correspondant au résultat d'une fonction de hachage calculée en O(1). Cela constitue un gain de temps très important pour les grosses tables, lors d'une recherche ou d'un besoin d'accès aux données en utilisant la clé définie.
Compression fractaleLa compression fractale est une méthode de encore peu utilisée aujourd’hui. Elle repose sur la détection de la récurrence des motifs, et tend à éliminer la redondance d’informations dans l'image. C'est une méthode destructive puisque l'ensemble des données de départ ne se retrouve pas dans l'image finale. Il existe plusieurs méthodes (subdivision de triangles, Delaunay etc.) mais la compression par la méthode Jacquin est la plus connue.