Symmetrische Verschlüsselung ist ein kryptografischer Algorithmus, der einen einzelnen Schlüssel zum Ver- und Entschlüsseln einer Nachricht verwendet. Die Sicherheit der verschlüsselten Nachricht basiert auf der Geheimhaltung des Schlüssels gemäß [Kerckhoffs Prinzip] (https://xn--kemetmller-feb.de/glossar/kerckhoffs-principle/). Die Betriebsarten teilen sich auf in blockbasierte und streambasierte symmetrische Verschlüsselungssuiten auf.
Ein blockbasierter Algorithmus arbeitet mit Blöcken fester Größe. Jeder Block wird mit einem blockspezifischen Schlüssel verschlüsselt. Es gibt verschiedene Modi für die blockspezifische Schlüsselgenerierung mit Vor- und Nachteilen. Der letzte Block muss möglicherweise auf die verwendete Blocklänge aufgefüllt werden.
Eine Stream-Verschlüsselung verschlüsselt die Nachricht mit einem zufälligen Bit-Stream. Dieser Bit-Stream wird von einem Pseudozufallszahlengenerator (PRNG) erzeugt. Durch eine XOR-Operation wird dieser mit dem Klartext verknüpft, um den Chiffretext zu generieren. Der Anfangszustand des PRNG basiert auf dem Schlüssel.
Die folgenden zwei Aspekte müssen berücksichtigt werden, wenn es um symmetrische Verschlüsselung geht.