Quelle est la différence entre les chiffrements de flux et les chiffrements par bloc ?

...

Les chiffrements de flux sont bien adaptés aux applications matérielles en temps réel.

Un chiffrement est un ensemble de règles mathématiques, ou d'algorithmes, utilisé pour convertir du texte lisible, ou en clair, en texte illisible ou en texte chiffré. La principale différence entre les chiffrements par flux et les chiffrements par bloc est que les chiffrements par flux fonctionnent sur des flux de texte, un bit ou un octet à la fois, tandis que les chiffrements par bloc fonctionnent sur des blocs de texte.

Chiffre de flux

L'idée de base d'un chiffrement de flux est de diviser le texte en petits blocs, d'un bit ou d'un octet de long, et de coder chaque bloc en fonction de nombreux blocs précédents. Les chiffrements de flux utilisent une clé de chiffrement différente -- une valeur qui doit être introduite dans l'algorithme -- pour chaque bit ou octet, de sorte que le même bit ou octet produit un texte chiffré différent à chaque fois qu'il est chiffré. Certains chiffrements de flux utilisent un générateur de flux de clés, qui produit un flux de bits aléatoire ou presque aléatoire. Le chiffrement effectue une opération booléenne, connue sous le nom de OU exclusif, entre les bits du flux de clés et les bits du texte en clair pour produire le texte chiffré.

Vidéo du jour

Chiffre par bloc

L'idée de base d'un chiffrement par bloc est de diviser le texte en blocs relativement grands, généralement de 64 ou 128 bits de long, et de coder chaque bloc séparément. La même clé de cryptage est utilisée pour chaque bloc et c'est la clé de cryptage qui détermine le ordre dans lequel la substitution, le transport et d'autres fonctions mathématiques sont effectuées sur chaque bloquer. Des algorithmes puissants signifient que l'ingénierie inverse du chiffrement, ou déterminer quelles fonctions ont été exécutées sur chaque bloc, dans quel ordre, est pratiquement impossible.

Diffusion et confusion

Les chiffrements par blocs utilisent des techniques connues sous le nom de confusion et de diffusion pour chiffrer le texte en clair en texte chiffré. L'idée derrière la confusion est de rendre la relation entre la clé de chiffrement et le texte chiffré aussi complexe que possible. Idéalement, chaque caractère de la clé de chiffrement devrait influencer chaque caractère du texte chiffré. En revanche, la diffusion étend l'influence de chaque caractère du texte en clair sur plusieurs caractères du texte chiffré, rendant le chiffre moins sensible aux attaques statistiques.

Avantages et inconvénients

Le fait que les chiffrements de flux cryptent et décryptent les données un bit à la fois signifie qu'ils sont particulièrement bien adaptés aux applications matérielles en temps réel, telles que les applications audio et vidéo. Les chiffrements de flux sont plus faibles et moins efficaces que les chiffrements par blocs en ce qui concerne les applications logicielles et sont moins fréquemment utilisés dans ce domaine. Les chiffrements par blocs sont plus faciles à implémenter dans le logiciel car ils chiffrent les données en blocs d'une longueur déjà utilisée par le logiciel. La clé de chiffrement est souvent de la même longueur que la taille du bloc.