Stromchiffren eignen sich gut für Echtzeit-Hardwareanwendungen.
Eine Chiffre ist ein Satz mathematischer Regeln oder ein Algorithmus, der verwendet wird, um lesbaren Text oder Klartext in unlesbaren Text oder Geheimtext umzuwandeln. Der Hauptunterschied zwischen Stromchiffren und Blockchiffren besteht darin, dass Stromchiffren mit Textströmen arbeiten, ein Bit oder ein Byte zu einer Zeit, während Blockchiffren mit Textblöcken arbeiten.
Stream Chiffre
Die Grundidee einer Stromchiffre besteht darin, Text in kleine Blöcke mit einer Länge von einem Bit oder einem Byte zu unterteilen und jeden Block abhängig von vielen vorherigen Blöcken zu codieren. Stromchiffren verwenden für jedes Bit oder Byte einen anderen Verschlüsselungsschlüssel – einen Wert, der in den Algorithmus eingegeben werden muss –, sodass dasselbe Bit oder Byte bei jeder Verschlüsselung einen anderen Chiffretext erzeugt. Einige Stromchiffren verwenden einen Schlüsselstromgenerator, der einen zufälligen oder fast zufälligen Bitstrom erzeugt. Die Chiffre führt eine boolesche Operation, bekannt als exklusives ODER, zwischen den Bits im Schlüsselstrom und den Bits im Klartext durch, um Chiffretext zu erzeugen.
Video des Tages
Blockchiffre
Die Grundidee einer Blockchiffre besteht darin, Text in relativ große Blöcke, typischerweise 64 oder 128 Bit lang, aufzuteilen und jeden Block separat zu codieren. Für jeden Block wird derselbe Verschlüsselungsschlüssel verwendet, und der Verschlüsselungsschlüssel bestimmt die Reihenfolge, in der Substitution, Transport und andere mathematische Funktionen auf jedem ausgeführt werden Block. Starke Algorithmen bedeuten, dass ein Reverse Engineering der Chiffre oder das Bestimmen, welche Funktionen für jeden Block in welcher Reihenfolge ausgeführt wurden, praktisch unmöglich ist.
Verbreitung und Verwirrung
Blockchiffren verwenden Techniken, die als Verwirrung und Diffusion bekannt sind, um Klartext in Geheimtext zu verschlüsseln. Die Idee hinter der Verwirrung besteht darin, die Beziehung zwischen dem Verschlüsselungsschlüssel und dem Geheimtext so komplex wie möglich zu gestalten. Idealerweise sollte jedes Zeichen im Verschlüsselungsschlüssel jedes Zeichen im Geheimtext beeinflussen. Im Gegensatz dazu verteilt die Diffusion den Einfluss jedes Zeichens im Klartext auf mehrere Zeichen im Geheimtext, wodurch die Chiffre weniger anfällig für statistische Angriffe wird.
Vor-und Nachteile
Da Streamchiffren Daten bitweise ver- und entschlüsseln, eignen sie sich besonders gut für Echtzeit-Hardwareanwendungen wie Audio- und Videoanwendungen. Stromchiffren sind bei Softwareanwendungen schwächer und weniger effizient als Blockchiffren und werden in diesem Bereich seltener verwendet. Blockchiffren sind in Software einfacher zu implementieren, da sie Daten in Blöcken einer Länge verschlüsseln, die die Software bereits verwendet. Der Verschlüsselungsschlüssel hat oft die gleiche Länge wie die Blockgröße.