Différence entre Block Cipher et Stream Cipher

Auteur: Laura McKinney
Date De Création: 1 Avril 2021
Date De Mise À Jour: 10 Peut 2024
Anonim
Différence entre Block Cipher et Stream Cipher - La Technologie
Différence entre Block Cipher et Stream Cipher - La Technologie

Contenu


Le Block Cipher et le Stream Cipher sont les méthodes utilisées pour convertir directement le plain en chiffrement et appartiennent à la famille des chiffreurs à clés symétriques.

La principale différence entre un chiffrement par bloc et un chiffrement par flux réside dans le fait que le chiffrement par bloc chiffre et déchiffre un bloc à la fois. Par contre, stream cipher chiffre et déchiffre le en prenant un octet à la fois.

  1. Tableau de comparaison
  2. Définition
  3. Différences Clés
  4. Conclusion

Tableau de comparaison

Base de comparaisonBloc de chiffrementFlux de chiffrement
De base

Convertit la plaine en prenant son bloc à la fois.
Convertit le en prenant un octet de la plaine à la fois.
Complexité
Conception simple

Complexe comparativement
Nombre de bits utilisés
64 bits ou plus
8 bits
Confusion et diffusion

Utilise à la fois la confusion et la diffusionNe repose que sur la confusion
Modes d'algorithme utilisés

BCE (Livre de codes électronique)
CBC (chaînage de blocs de chiffrement)
CFB (Cipher Feedback)
OFB (Output Feedback)
Réversibilité
Inverser crypté est difficile.

Il utilise XOR pour le cryptage qui peut facilement être inversé.
la mise en oeuvre
Feistel Cipher
Vernam Cipher


Définition de Block Cipher

Block Cipher prend un et le divise en une taille fixe de blocs et convertit un bloc du un à la fois. Par exemple, nous avons un “STREET_BY_STREET” en clair qui doit être chiffré. En utilisant bock cipher, “STREET” doit d'abord être crypté, suivi de “_BY_” et enfin “STREET”.
Dans la pratique, la communication n’a lieu qu’en bits. Par conséquent, STREET signifie en réalité l'équivalent binaire du caractère ASCII de STREET. Par la suite, tout algorithme les chiffre; les bits résultants sont reconvertis en leur équivalent ASCII.

Un problème évident concernant l’utilisation des chiffrements en bloc est en répétant , pour lequel le même chiffre est généré. Par conséquent, cela donnerait un indice au cryptanalyst qui rend plus facile la compréhension des chaînes récurrentes de plain. En conséquence, cela peut révéler le tout.


Pour surmonter ce problème, le mode chaînage est utilisé. Dans cette technique, le bloc de chiffrement précédent est mélangé au bloc actuel, de sorte que le chiffrement est vague, ce qui évite les motifs récurrents de blocs de même contenu.

Définition du chiffrement de flux

Stream Cipher crypte généralement un octet à ce moment-là au lieu d'utiliser des blocs. Prenons un Exemple, supposons que l’original (en clair) est un «ciel bleu» en ASCII (format). Lorsque vous convertissez ces ASCII en valeurs binaires équivalentes, la sortie apparaît sous forme de 0 et de 1. Que ce soit traduit en 010111001.

Pour le cryptage et le décryptage, un générateur de bits pseudo-aléatoire est utilisé dans lequel une clé et un simple sont chargés. Un générateur de bits pseudo-aléatoire crée un flux de nombres de 8 bits apparemment aléatoires, appelés flux de clés. Soit 100101011 la clé d’entrée. Maintenant, la clé et le type sont XORed. La logique XOR est simple à comprendre.
XOR produit une sortie de 1 lorsque l'une des entrées est 0 et l'autre de 1. La sortie est 0 si les deux entrées sont à 0 ou les deux à 1.

Confusion est une méthode qui garantit qu’un chiffre ne donne aucune indication sur la nature originale.
La diffusion est une stratégie utilisée pour améliorer la redondance de la plaine en l'étalant sur des lignes et des colonnes.

  1. La technique de chiffrement par blocs implique le chiffrement d’un bloc à la fois, c’est-à-dire un par un. De même, décryptez le en prenant un bloc après l'autre. En revanche, la technique de chiffrement par flux implique le chiffrement et le déchiffrement d'un octet à la fois.
  2. Le chiffrement par blocs utilise à la fois la confusion et la diffusion, tandis que le chiffrement en flux ne repose que sur la confusion.
  3. La taille habituelle du bloc peut être de 64 ou 128 bits dans le chiffrement de bloc. Par contre, 1 octet (8 bits) à la fois est converti dans le chiffrement de flux.
  4. Bloquer les utilisations de chiffrement BCE (Livre de codes électronique) et CBC (chaînage de blocs de chiffrement) modes d'algorithme. Au contraire, Stream Cipher utilise CFB (Cipher Feedback) et OFB (Output Feedback) modes d'algorithme.
  5. Stream Cipher utilise la fonction XOR pour convertir le texte brut en Cipher, c'est pourquoi il est facile d'inverser les bits XORed. Considérant que Block Cipher n’utilise pas XOR pour ce faire.
  6. Le chiffrement de blocs utilise la même clé pour chiffrer chaque bloc, tandis que le chiffrement de flux utilise une clé différente pour chaque octet.

Conclusion:

Block Cipher et Stream Cipher se différencient par la manière dont Plain est crypté et décrypté. L'idée derrière le chiffrement par bloc est de diviser la plaine en blocs pour chiffrer davantage ces blocs. Alors que le flux de données chiffrées est converti au format bit par bit, le flux