Blockschiffre
![Encryption scheme](http://bitcoinwiki.org/wp-content/uploads/2023/12/Encryption.png)
Die Blockverschlüsselung ist eine Art symmetrischer Verschlüsselung. Eine Besonderheit der Blockverschlüsselung ist die Verarbeitung eines Blocks mit mehreren Bytes in einer Iteration (normalerweise 8 oder 16). Block-Kryptosysteme zerlegen den Nachrichtentext in separate Blöcke und konvertieren diese Blöcke dann mit dem Schlüssel.
Der einzige Unterschied zwischen Inline und Block besteht in der Größe der verarbeiteten Informationen (Teil).
Inhaltsverzeichnis
Hauptinformation
Der Verschlüsselungsmodus ist eine Anwendungsmethode für die Blockverschlüsselung, mit der Sie eine Sequenz offener Datenblöcke in eine Sequenz verschlüsselter Datenblöcke konvertieren können. In diesem Fall können die Daten eines anderen Blocks verwendet werden, um einen Block zu verschlüsseln. Typischerweise werden Verschlüsselungsmodi verwendet, um den Verschlüsselungsprozess so zu ändern, dass das Ergebnis der Verschlüsselung jedes Blocks unabhängig von den verschlüsselten Daten eindeutig ist und keine Rückschlüsse auf deren Struktur zulässt. Dies ist hauptsächlich auf die Tatsache zurückzuführen, dass Blockverschlüsselungen Daten in Blöcken fester Größe verschlüsseln. Daher besteht die Möglichkeit, dass Informationen über doppelte Teile von Daten, die im selben Schlüssel verschlüsselt sind, verloren gehen. Es gibt verschiedene Standard-Verschlüsselungsmodi.
Electronic Codebook (ECB)
Die Nachricht ist in Blöcke unterteilt. Jeder Block wird separat verschlüsselt (unabhängig von den anderen und auf demselben Schlüssel). Dieser Modus wird als elektronischer Codebuchmodus bezeichnet, da es möglich ist, ein Buch zu erstellen, in dem jedem Klartextblock ein Chiffretextblock zugeordnet wird. Das Erstellen eines Buches ist jedoch keine triviale Aufgabe. Wenn die Blockgröße x Bits ist, enthält das Buch 2x Einträge, und jedes Buch entspricht einem Schlüssel.
Nachteile
Identische Klartextblöcke werden mit demselben Schlüssel in identische Geheimtextblöcke verschlüsselt. Somit verbirgt diese Methode die Datenstruktur schlecht. Blöcke können verschwinden oder erscheinen. Ein Angreifer kann die Einheit abfangen und duplizieren, und auf der Empfängerseite wird sie als „richtig“ empfunden. Daher wird es nicht für die Verwendung in kryptographischen Protokollen empfohlen.
Cipher Block Chaining (CBC)
Zur Kopplung wird ein Rückkopplungsmechanismus verwendet, da das Ergebnis der Verschlüsselung vorhergehender Blöcke zur Verschlüsselung des aktuellen Blocks verwendet wird. Diese Methode wird „Chiffret-Block-Verkettungsmodus“ genannt. Daher ist jeder Verschlüsselungsblock nicht nur vom Quelltext, sondern auch von allen vorherigen Textblöcken abhängig. In Cipher Block Chaining (CBC) befindet sich der XOR-Text vor der Verschlüsselung mit dem vorherigen verschlüsselten Block. Entschlüsselung ist ähnlich.
Cipher Feedback (CFB)
Der Chiffre-Feedback-Modus (CFB-Modus), ein enger Verwandter der CBC, verwandelt eine Blockverschlüsselung in eine selbstsynchronisierende Stromverschlüsselung. Diese Methode wird auch als „Ciphertext Feedback Mode“ bezeichnet. Die Bedienung ist der vorherigen sehr ähnlich.
Wie im CBC-Modus werden Änderungen im Klartext über den verschlüsselten Text verteilt, und nichts dergleichen ist in der Codierung zu finden. Ähnlich wie in CBC kann man so etwas in der Dekodierung finden. Das Entschlüsseln einer Änderung um ein Bit im verschlüsselten Text wirkt sich auf zwei Klartextblöcke aus: eine Änderung des entsprechenden Klartextblocks um ein Bit und eine vollständige Verzerrung des nächsten Klartextblocks. Spätere Klartextblöcke werden wie üblich decodiert.
Da jede Stufe des CFB-Modus vom verschlüsselten Wert des vorherigen Chiffretextes durch Addieren zum aktuellen Klartextwert abhängt, ist die Form des Pipelining ab einem einzigen Codierschritt möglich, bei dem der Klartext die letzte XOR-Operation ist. Dies ist nützlich für Anwendungen, die eine kurze Wartezeit zwischen dem Eintreffen des Klartextes und der Ausgabe des entsprechenden Chiffretextes erfordern, z. B. bestimmte Streaming-Media-Anwendungen.
Output Feedback (OFB)
Der Output Feedback Mode (OFB) wandelt eine Blockverschlüsselung in einen synchronen Verschlüsselungsstrom um: Er erzeugt Schlüsselblöcke, die das Ergebnis des Hinzufügens zu Klartextblöcken sind, um den Verschlüsselungstext zu erhalten. Genau wie bei anderen Stream-Chiffren erzeugt das Spiegelbild im verschlüsselten Text an derselben Stelle ein gespiegeltes Bit im Klartext. Diese Eigenschaft ermöglicht, dass viele Fehlerkorrekturcodes wie üblich funktionieren, selbst wenn vor der Codierung eine Fehlerkorrektur angewendet wird.
Counter Mode (CTR)
Der Zählermodus (Counter Mode-CTR) geht davon aus, dass der Wert des seit dem Start gesammelten Zählers an den Eingang des entsprechenden Blockverschlüsselungsalgorithmus zurückgegeben wird. Durch Erhöhen des Zählerwerts bildet der Blockverschlüsselungsalgorithmus eine Bitfolge, die als laufender Schlüssel der Vernam-Chiffre verwendet wird, d. H. XOR-Operationen werden auf den laufenden Schlüssel und die Blöcke der ursprünglichen Nachricht angewendet. Der CTR-Modus bietet die folgenden Vorgänge.