Chiffrement par blocvignette|un schéma de chiffrement par bloc Le chiffrement par bloc (en anglais block cipher) est une des deux grandes catégories de chiffrements modernes en cryptographie symétrique, l'autre étant le chiffrement par flot. La principale différence vient du découpage des données en blocs de taille généralement fixe. La taille de bloc est comprise entre 32 et 512 bits. Dans le milieu des années 1990, le standard était de 64 bits. Depuis 2000 et le concours AES, le standard est de 128 bits.
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.
Chosen-plaintext attackA chosen-plaintext attack (CPA) is an attack model for cryptanalysis which presumes that the attacker can obtain the ciphertexts for arbitrary plaintexts. The goal of the attack is to gain information that reduces the security of the encryption scheme. Modern ciphers aim to provide semantic security, also known as ciphertext indistinguishability under chosen-plaintext attack, and they are therefore, by design, generally immune to chosen-plaintext attacks if correctly implemented.
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.
Réseau de FeistelUn réseau de Feistel est une construction utilisée dans les algorithmes de chiffrement par bloc, nommée d'après le cryptologue d'IBM, Horst Feistel. Elle a été utilisée pour la première fois dans Lucifer et DES. Cette structure offre plusieurs avantages, le chiffrement et le déchiffrement ont une architecture similaire voire identique dans certains cas. L'implémentation matérielle est aussi plus facile avec un tel système même si les choses ont passablement changé depuis la fin des années 1970.
Chiffrement de fluxvignette|Schéma du A5/1 et ses trois registres à décalage, un chiffrement par flot utiliser pour chiffrer les communications téléphoniques mobiles. Le chiffrement de flux, chiffrement par flot ou chiffrement en continu (en anglais stream cipher) est une des deux grandes catégories de chiffrements modernes en cryptographie symétrique, l'autre étant le chiffrement par bloc. Un chiffrement par flot arrive à traiter les données de longueur quelconque et n'a pas besoin de les découper.
Chosen-ciphertext attackA chosen-ciphertext attack (CCA) is an attack model for cryptanalysis where the cryptanalyst can gather information by obtaining the decryptions of chosen ciphertexts. From these pieces of information the adversary can attempt to recover the hidden secret key used for decryption. For formal definitions of security against chosen-ciphertext attacks, see for example: Michael Luby and Mihir Bellare et al. A number of otherwise secure schemes can be defeated under chosen-ciphertext attack.
Logiciels de cryptographievignette|Un portefeuille Bitcoin imprimable en papier composé d'une adresse bitcoin pour la réception et de la clé privée correspondante pour les dépenses Les logiciels de cryptographie sont des logiciels qui peuvent chiffrer et déchiffrer des données, souvent sous la forme de fichiers dans un disque dur ou de paquets envoyés à travers un réseau informatique. chiffrement Les logiciels de chiffrement utilisent un protocole de chiffrement pour chiffrer les données de l’ordinateur donc elles ne peuvent plus être récupérées sans la bonne clé.
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.
Vecteur d'initialisationEn cryptographie, un vecteur d'initialisation (en anglais initialization vector ou IV) est un bloc de bits combiné avec le premier bloc de données lors d'une opération de chiffrement. Il est utilisé dans le cadre des modes d'opération d'un algorithme de chiffrement symétrique par blocs ou pour un chiffrement par flux comme RC4. Dans certains cryptosystèmes, le vecteur est généré de manière aléatoire puis transmis en clair avec le reste du message. Dans d'autres systèmes, on peut utiliser une métadonnée comme le numéro de inode du fichier chiffré.
Taille de bloc (cryptographie)En cryptologie moderne, la cryptographie symétrique se divise en deux catégories : le chiffrement par bloc et le chiffrement par flot. Les chiffrements par bloc travaillent sur des blocs de bits dont la longueur est fixe. La taille de bloc se réfère au nombre de bits présents dans le bloc traité par l'algorithme. Le bloc en clair est transmis à l'algorithme de chiffrement qui va produire un bloc de même taille mais chiffré. La sortie ne peut pas être plus courte que l'entrée puisque le système doit être inversé lors du déchiffrement (contrairement aux fonctions de hachage).
Chiffre (cryptologie)En cryptologie, un chiffre est une manière secrète d'écrire un message à transmettre, au moyen de caractères et de signes disposés selon une convention convenue au préalable. Plus précisément, le chiffre est l’ensemble des conventions et des symboles (lettres, nombres, signes, etc.) employés pour remplacer chaque lettre du message à rendre secret. Avec un chiffre, on transforme un message en clair en message en chiffres, ou message chiffré, ou encore cryptogramme.
Autorité de séquestreEn cryptographie, l'autorité de séquestre (Key Escrow) est une entité d'une infrastructure à clés publiques (PKI) ayant un rôle particulier. Elle a pour objectif de conserver (mise sous séquestre) les clés de chiffrement. Ces clés sont donc généralement générées par l'IGC plutôt que par le porteur lui-même, comme c'est le cas pour un certificat d'authentification ou de signature. Car en cas de perte de la clé de chiffrement par le porteur, les données chiffrées existantes seront perdues.
Texte en clairEn cryptographie, un texte en clair (ou message clair) désigne une information non chiffrée. Il s'oppose à un rendu inintelligible par un processus de chiffrement à toute personne non autorisée. Ces termes s'applique à la fois à une donnée stockée ou en transmission. Il est généralement utilisé pour décrire la donnée en entrée d'un chiffre, mais sert également dans le domaine de la cryptanalyse pour les attaques à texte clair connu et texte clair choisi. Appliquer un chiffrement à un texte en clair permet d'assurer sa confidentialité.
Chiffrement par substitutionvignette|Exemple de chiffrement par substitution: le chiffre de César. Le chiffrement par substitution est une technique de chiffrement utilisée depuis bien longtemps puisque le chiffre de César en est un cas particulier. Sans autre précision, elle désigne en général un chiffrement par substitution monoalphabétique, qui consiste à substituer dans un message chacune des lettres de l'alphabet par une autre (du même alphabet ou éventuellement d'un autre alphabet), par exemple, ainsi que procédait César a par d, b par e et ainsi de suite.
Attack modelIn cryptanalysis, attack models or attack types are a classification of cryptographic attacks specifying the kind of access a cryptanalyst has to a system under attack when attempting to "break" an encrypted message (also known as ciphertext) generated by the system. The greater the access the cryptanalyst has to the system, the more useful information they can get to utilize for breaking the cypher. In cryptography, a sending party uses a cipher to encrypt (transform) a secret plaintext into a ciphertext, which is sent over an insecure communication channel to the receiving party.
Chiffrement de disqueLe chiffrement de disque (disk encryption, full disk encryption ou FDE en anglais) est une technologie qui protège l’information en la transformant en un code illisible qui ne peut pas être déchiffré facilement par les personnes qui n’y sont pas autorisées. Le chiffrement de disque utilise un ou le pour chiffrer chaque bit des données sur un disque dur ou un volume. Le chiffrement de disque lutte contre les accès non autorisés au système de stockage de données.
Algorithme déterministeEn Informatique, un algorithme déterministe est un algorithme qui, étant donné une entrée particulière, produira toujours la même sortie, avec la machine sous-jacente passant toujours par la même séquence d'états. Les algorithmes déterministes forment, de loin, la famille d'algorithme la plus étudiée. Formellement, un algorithme déterministe calcule une fonction mathématique ; une fonction ayant une valeur unique pour n'importe quelle entrée dans son ensemble de définition, l'algorithme produit cette valeur en sortie.
Transport Layer SecurityLa Transport Layer Security (TLS) ou « Sécurité de la couche de transport », et son prédécesseur la Secure Sockets Layer (SSL) ou « Couche de sockets sécurisée », sont des protocoles de sécurisation des échanges par réseau informatique, notamment par Internet. Le protocole SSL a été développé à l'origine par Netscape Communications Corporation pour son navigateur Web. L'organisme de normalisation Internet Engineering Task Force (IETF) en a poursuivi le développement en le rebaptisant Transport Layer Security (TLS).
Nondeterministic algorithmIn computer programming, a nondeterministic algorithm is an algorithm that, even for the same input, can exhibit different behaviors on different runs, as opposed to a deterministic algorithm. There are several ways an algorithm may behave differently from run to run. A concurrent algorithm can perform differently on different runs due to a race condition. A probabilistic algorithm's behaviors depends on a random number generator.