Différence entre le chiffrement de flux et le chiffrement de bloc

Différence entre le chiffrement de flux et le chiffrement de bloc
Différence entre le chiffrement de flux et le chiffrement de bloc

Vidéo: Différence entre le chiffrement de flux et le chiffrement de bloc

Vidéo: Différence entre le chiffrement de flux et le chiffrement de bloc
Vidéo: Le Chiffrement de Données | Cryptographie Symétrique 2024, Novembre
Anonim

Stream Cipher vs Block Cipher | Chiffrement d'état vs chiffrement par bloc

En cryptographie, les chiffrements de flux et les chiffrements par blocs sont deux algorithmes de chiffrement/déchiffrement appartenant à la famille des chiffrements à clé symétrique. Généralement, un chiffrement prend un texte brut en entrée et produit un texte chiffré en sortie. Les chiffrements par blocs chiffrent un bloc de bits de longueur fixe à l'aide d'une transformation invariable. Les chiffrements de flux chiffrent des flux de bits de longueur variable et utilisent une transformation variable sur chaque bit.

Qu'est-ce qu'un chiffrement de flux ?

Les chiffrements de flux appartiennent à la famille des chiffrements à clé symétrique. Les chiffrements de flux combinent des bits de texte brut avec un flux de bits de chiffrement pseudo-aléatoire avec l'utilisation de l'opération XOR (ou exclusif). Les chiffrements de flux chiffrent les chiffres en texte brut un à la fois avec des transformations variables pour les chiffres successifs. Étant donné que le cryptage de chaque chiffre dépend de l'état actuel du moteur de chiffrement, les chiffrements de flux sont également appelés chiffrements d'état. En règle générale, les bits/bits uniques sont utilisés comme chiffres uniques. Pour éviter les problèmes de sécurité, il convient de s'assurer que le même état de départ n'est pas utilisé plus d'une fois. Le chiffrement de flux le plus largement utilisé est RC4.

Qu'est-ce qu'un chiffrement par bloc ?

Un chiffrement par bloc est un autre chiffrement à clé symétrique. Les chiffrements par blocs fonctionnent sur des blocs (groupes de bits) de longueur fixe. Les chiffrements par blocs utilisent une transformation fixe (invariable) pour tous les chiffres du bloc. Par exemple, lorsqu'un texte brut de bloc de x bits (accompagné d'une clé secrète) est fourni en entrée au moteur de chiffrement par blocs, il produit le bloc de x bits de texte chiffré correspondant. La transformation réelle dépend de la clé secrète. De même, l'algorithme de déchiffrement récupère le bloc original de x bits de texte en clair en utilisant le bloc de x bits de texte chiffré et la clé secrète ci-dessus comme entrée. Dans le cas où le message d'entrée est trop long par rapport à la taille du bloc, il sera décomposé en blocs et ces blocs seront (individuellement) chiffrés à l'aide de la même clé. Cependant, comme la même clé est utilisée, chaque séquence répétée dans le texte en clair devient la même séquence répétée dans le texte chiffré, ce qui peut poser des problèmes de sécurité. Les chiffrements par blocs populaires sont DES (Data Encryption Standard) et AES (Advanced Encryption Standard).

Quelle est la différence entre un Stream Cipher et un Block Cipher ?

Bien que les chiffrements de flux et les chiffrements par blocs appartiennent à la famille des chiffrements de chiffrement symétriques, il existe quelques différences essentielles. Les chiffrements par blocs chiffrent des blocs de bits de longueur fixe, tandis que les chiffrements par flux combinent des bits de texte brut avec un flux de bits de chiffrement pseudo-aléatoire à l'aide de l'opération XOR. Même si les chiffrements par blocs utilisent la même transformation, les chiffrements par flux utilisent des transformations variables en fonction de l'état du moteur. Les chiffrements de flux s'exécutent généralement plus rapidement que les chiffrements de blocs. En termes de complexité matérielle, les chiffrements de flux sont relativement moins complexes. Les chiffrements de flux sont généralement préférés aux chiffrements par blocs lorsque le texte brut est disponible en quantités variables (par exemple, une connexion wifi sécurisée), car les chiffrements par blocs ne peuvent pas fonctionner directement sur des blocs plus courts que la taille du bloc. Mais parfois, la différence entre les chiffrements de flux et les chiffrements de blocs n'est pas très claire. La raison en est que, lors de l'utilisation de certains modes de fonctionnement, un chiffrement par bloc peut être utilisé pour agir comme un chiffrement de flux en lui permettant de chiffrer la plus petite unité de données disponible.

Conseillé: