Unterschied zwischen Block-Chiffre und Stream-Chiffre

Autor: Laura McKinney
Erstelldatum: 1 April 2021
Aktualisierungsdatum: 17 Kann 2024
Anonim
Fan-made Numberblocks are Counting from 1 to Most Biggest 1,000,000.
Video: Fan-made Numberblocks are Counting from 1 to Most Biggest 1,000,000.

Inhalt


Block-Chiffre und Stream-Chiffre sind die Methoden, mit denen die Ebene direkt in Chiffre umgewandelt wird und die zur Familie der symmetrischen Schlüsselchiffren gehören.

Der Hauptunterschied zwischen einer Blockverschlüsselung und einer Stromverschlüsselung besteht darin, dass die Blockverschlüsselung jeweils einen Block der verschlüsselt und entschlüsselt. Auf der anderen Seite verschlüsselt und entschlüsselt die Stream-Chiffre die Daten, indem jeweils ein Byte der Daten abgerufen wird.

  1. Vergleichstabelle
  2. Definition
  3. Hauptunterschiede
  4. Fazit

Vergleichstabelle

VergleichsbasisBlockchiffreStream Chiffre
Basic

Wandelt die Ebene um, indem sie jeweils ihren Block einnimmt.
Konvertiert das, indem jeweils ein Byte der Ebene verwendet wird.
Komplexität
Einfaches Design

Komplex vergleichsweise
Anzahl der verwendeten Bits
64 Bits oder mehr
8 Bits
Verwirrung und Diffusion

Verwendet sowohl Verwirrung als auch DiffusionBeruht nur auf Verwirrung
Verwendete Algorithmusmodi

EZB (Elektronisches Codebuch)
CBC (Cipher Block Chaining)
CFB (Chiffre-Feedback)
OFB (Ausgangsrückmeldung)
Reversibilität
Das Umkehren in verschlüsselter Form ist schwierig.

Es verwendet XOR für die Verschlüsselung, die leicht in die Ebene rückgängig gemacht werden kann.
Implementierung
Feistel-Chiffre
Vernam-Chiffre


Definition von Block-Chiffre

Block Cipher nimmt a und zerlegt es in eine feste Blockgröße und konvertiert jeweils einen Block von. Zum Beispiel, Es muss lediglich "STREET_BY_STREET" verschlüsselt werden. Bei Verwendung der Blockverschlüsselung muss zuerst "STREET" verschlüsselt werden, gefolgt von "_BY_" und schließlich "STREET".
In der Praxis erfolgt die Kommunikation nur in Bits. Daher bedeutet STREET tatsächlich das binäre Äquivalent des ASCII-Zeichens von STREET. Anschließend verschlüsselt jeder Algorithmus diese; Die resultierenden Bits werden in ihr ASCII-Äquivalent zurücktransformiert.

Ein offensichtliches Problem bei der Verwendung von Block-Chiffren ist wiederholen , für die die gleiche Chiffre generiert wird. Daher würde es dem Kryptoanalytiker einen Hinweis geben, der es einfacher macht, die wiederkehrenden Ketten der Ebene herauszufinden. Infolgedessen kann es das Ganze enthüllen.


Um dieses Problem zu lösen, muss die Verkettungsmodus wird genutzt. Bei dieser Technik wird der vorhergehende Chiffrierblock mit dem aktuellen Block gemischt, so dass vage Chiffriermuster von Blöcken mit demselben Inhalt vermieden werden.

Definition von Stream-Chiffre

Stream Cipher verschlüsselt in der Regel ein Byte des aktuellen Codes, anstatt Blöcke zu verwenden. Nehmen wir eine Beispiel, Angenommen, das Original (normal) ist "blauer Himmel" in ASCII (d. h. Format). Wenn Sie diese ASCII-Werte in äquivalente Binärwerte konvertieren, wird die Ausgabe in der Form von 0 und 1 ausgegeben. Lassen Sie es in 010111001 übersetzt werden.

Zum Ver- und Entschlüsseln a Pseudozufallsbitgenerator wird verwendet, in dem ein Schlüssel und eine Ebene geladen sind. Ein Pseudozufallsbitgenerator erzeugt einen Strom von 8-Bit-Zahlen, die scheinbar als zufällig bekannt sind Schlüsselstrom. Lassen Sie die Eingabetaste 100101011 lauten. Jetzt sind der Schlüssel und die Ebene XOR-verknüpft. Die XOR-Logik ist einfach zu verstehen.
XOR erzeugt eine Ausgabe von 1, wenn ein Eingang 0 und der andere 1 ist. Die Ausgabe ist 0, wenn entweder beide Eingänge 0 oder beide Eingänge 1 sind.

Verwechslung ist eine Methode, die garantiert, dass eine Chiffre keinen Hinweis auf die ursprüngliche Ebene gibt.
Diffusion ist eine Strategie, die verwendet wird, um die Redundanz der Ebene zu verbessern, indem sie über Zeilen und Spalten verteilt wird.

  1. Die Blockverschlüsselungstechnik beinhaltet die Verschlüsselung von jeweils einem Block, d. H. Einzeln. Ebenso entschlüsseln Sie die, indem Sie einen Block nach dem anderen nehmen. Im Gegensatz dazu beinhaltet die Stream-Verschlüsselungstechnik die Ver- und Entschlüsselung von jeweils einem Byte.
  2. Blockverschlüsselung verwendet sowohl Verwirrung als auch Diffusion, während die Streamverschlüsselung nur auf Verwirrung beruht.
  3. Die übliche Größe des Blocks kann 64 oder 128 Bit in der Blockchiffre sein. Im Gegensatz dazu wird jeweils 1 Byte (8 Bits) in die Stream-Chiffre konvertiert.
  4. Blockverschlüsselung verwendet EZB (Elektronisches Codebuch) und CBC (Cipher Block Chaining) Algorithmus-Modi. Im Gegenteil, Stream-Verschlüsselung verwendet CFB (Chiffre-Feedback) und OFB (Ausgangsrückmeldung) Algorithmus-Modi.
  5. Stream Cipher verwendet die XOR-Funktion zur Umwandlung der Ebene in eine Chiffre. Aus diesem Grund ist es einfach, die XOR-Bits umzukehren. Während Block-Chiffre XOR nicht verwendet, um dies zu tun.
  6. Die Blockverschlüsselung verschlüsselt jeden Block mit demselben Schlüssel, während die Streamverschlüsselung für jedes Byte einen anderen Schlüssel verwendet.

Fazit:

Block-Chiffre und Stream-Chiffre unterscheiden sich in der Art und Weise, in der Plain verschlüsselt und entschlüsselt wird. Die Idee hinter der Blockverschlüsselung besteht darin, die Ebene in Blöcke zu unterteilen, um diese Blöcke weiter zu verschlüsseln. Während Stream Cipher konvertiert einfach Stück für Stück ähnlich wie Stream.