Teilen über


CipherMode Enumeration

Definition

Gibt den Blockchiffremodus an, der für die Verschlüsselung verwendet werden soll.

public enum class CipherMode
public enum CipherMode
[System.Serializable]
public enum CipherMode
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum CipherMode
type CipherMode = 
[<System.Serializable>]
type CipherMode = 
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CipherMode = 
Public Enum CipherMode
Vererbung
CipherMode
Attribute

Felder

CBC 1

Ein Modus, bei dem die Rückkopplung genutzt wird, ist der CBC-Modus (Cipher Block Chaining). Vor der Verschlüsselung jedes einzelnen Klartextblocks wird dieser durch eine bitweise exklusive OR-Operation mit dem Geheimtext des vorherigen Blocks kombiniert. Auch wenn der Klartext viele identische Blöcke enthält, wird hierdurch sichergestellt, dass jeder zu einem anderen Geheimtextblock verschlüsselt wird. Der Initialisierungsvektor wird durch eine bitweise exklusive OR-Operation mit dem ersten Klartextblock kombiniert, bevor der Block verschlüsselt wird. Wenn ein einzelnes Bit des Geheimtextblocks geändert wird, ändert sich auch der entsprechende Klartextblock. Außerdem wird ein Bit im folgenden Block an derselben Position wie das ursprüngliche geänderte Bit geändert.

CFB 4

Im CFB-Modus (Cipher Feedback) wird nicht der gesamte Block auf einmal verarbeitet, sondern es werden kleine Abschnitte des Klartexts schrittweise in Geheimtext umgewandelt. Für diesen Modus wird ein Schieberegister verwendet, das eine Länge von einem Block hat und in Abschnitte unterteilt ist. Bei einer Blockgröße von 8 Bytes, die nacheinander verarbeitet werden, ist das Schieberegister in acht Abschnitte unterteilt. Wenn ein Bit im Geheimtext geändert wird, wird ein Bit im Klartext geändert und das Schieberegister beschädigt. In der Folge werden die nächsten Klartextabschnitte geändert, bis das ungültige Bit aus dem Schieberegister heraus verschoben wurde. Die Standardfeedbackgröße kann entsprechend dem Algorithmus variieren, i. d. R. entspricht sie jedoch 8 Bit oder der Bitanzahl der Blockgröße. Sie können die Anzahl der Bits für die Feedbackgröße mit der FeedbackSize-Eigenschaft ändern. Algorithmen, die CFB unterstützen, legen mithilfe dieser Eigenschaft das Feedback fest.

CTS 5

Der CTS-Modus (Cipher Text Stealing) verarbeitet Klartext jeder Länge und erzeugt Geheimtext mit gleicher Länge. Bis auf die letzten zwei Blöcke des Klartextes entspricht dieser Modus in seiner Funktion dem CBC-Modus.

ECB 2

Im ECB-Modus (Electronic Codebook) wird jeder Block einzeln verschlüsselt. Alle identischen Klartextblöcke innerhalb einer Nachricht bzw. in unterschiedlichen Nachrichten, die mit demselben Schlüssel verschlüsselt wurden, werden in identische Geheimtextblöcke umgewandelt. Wichtig: Dieser Modus wird nicht empfohlen, da er die Tür für mehrere Sicherheitsbeuteten öffnet. Wenn der zu verschlüsselnde Klartext genügend viele Wiederholungen enthält, kann der Geheimtext blockweise entschlüsselt werden. Der Verschlüsselungsschlüssel kann auch mithilfe der Blockanalyse bestimmt werden. Darüber hinaus kann ein aktiver Angreifer einzelne Blöcke ohne Erkennung ersetzen und austauschen, wodurch Blöcke im Stream ohne Erkennung an anderen Positionen gespeichert und eingefügt werden können.

OFB 3

Im OFB-Modus (Output Feedback) wird nicht der gesamte Block auf einmal verarbeitet, sondern es werden kleine Abschnitte des Klartexts schrittweise in Geheimtext umgewandelt. Dieser Modus ist dem CFB-Modus ähnlich. Der Unterschied zwischen den beiden Modi besteht lediglich in der Art, in der das Schieberegister gefüllt wird. Wenn ein Bit des Geheimtexts geändert wird, ändert sich auch das entsprechende Bit des Klartexts. Wenn jedoch Bits dem Geheimtext hinzugefügt oder aus diesem entfernt werden, wird der Klartext von diesem Punkt an geändert.

Hinweise

Blockverschlüsselungsalgorithmen verschlüsseln Daten in Blockeinheiten und nicht in einem einzelnen Byte gleichzeitig. Die häufigste Blockgröße ist 8 Bytes. Da jeder Block stark verarbeitet wird, bieten Blockchiffre ein höheres Maß an Sicherheit als Streamchiffre. Blockverschlüsselungsalgorithmen werden jedoch in der Regel langsamer ausgeführt als Streamchiffren.

Blockchiffre verwenden für jeden Block denselben Verschlüsselungsalgorithmus. Aus diesem Fall gibt ein Nur-Text-Block immer den gleichen Chiffretext zurück, wenn er mit demselben Schlüssel und Algorithmus verschlüsselt wird. Da dieses Verhalten zum Knacken einer Verschlüsselung verwendet werden kann, werden Verschlüsselungsmodi eingeführt, die den Verschlüsselungsprozess basierend auf Feedback aus früheren Blockverschlüsselungen ändern. Die resultierende Verschlüsselung bietet ein höheres Maß an Sicherheit als eine einfache Blockverschlüsselung.

Gilt für:

Weitere Informationen