5.1 – Blockchiffren – Generische Angriffe und Designkriterien

 

5.1.1 Definitionen

Die Zusammenfassung von Zeichen des Klartextes p \in \mathcal{P} oder Geheimtextes c \in \mathcal{C} zu einer Einheit nennt man Block. Die Anzahl der Zeichen n \in \mathbb{N} in einem Block heißt Blocklänge.

Sei \left( {\mathcal{P},\mathcal{C},\mathcal{K},\mathcal{E},\mathcal{D}} \right) ein symmetrisches Kryptosystem. Werden die Verschlüsselungsfunktion E:\mathcal{P} \to \mathcal{C} und die Entschlüsselungsfunktion D:\mathcal{C} \to \mathcal{P} auf Blöcke angewendet, nennt man das Kryptosystem eine Blockchiffre.

5.1.2 Generische Angriffe

Es gibt grundsätzlich zwei Arten von generischen Angriffen:

  1. Vollständige Schlüsselsuche (engl.: Exhaustive search)
  2. Wertetabelle

Wir gehen davon aus, dass unser Alphabet nur aus 0 und 1 besteht (binär). Bei einer Blocklänge von n \in \mathbb{N} gibt es {2^n} verschiedene Klartexte: \mathcal{K} = \left| {{2^n}} \right| = \mathcal{C}. Es gibt {2^n}! mögliche Zuordnungen von Klartext zu Geheimtext. Dies nennt man eine vollständige Blockchiffre. Das Verfahren ist analog zu einer monoalphabetischen Substitution. Bei einer solchen ist es durch Häufigkeitsanalyse möglich, Rückschlüsse vom Geheimtext auf den Klartext zu ziehen. Das muss hier verhindert werden.

Annahmen:

  • Angreifer hat Computer mit 1 PFlop, also 1015 Operationen pro Sekunde
  • Eine Blockverschlüsselung entspricht einer Rechenoperation

Aufwand für vollständige Schlüsselsuche:

\begin{array}{*{20}{c}}{Schl\ddot ussell\ddot ange} &\vline & {64Bit} & {112Bit} & {128Bit} & {256Bit} \\\hline{Operationen} &\vline & { \sim {{10}^{19}}} & { \sim {{10}^{23}}} & { \sim {{10}^{38}}} & { \sim {{10}^{77}}} \\\hline{Dauer} &\vline & { \sim Tage} & { \sim {{10}^{10}}a} & { \sim {{10}^{15}}a} & { \sim {{10}^{54}}a} \\ \end{array}

Die Grenze des heute Machbaren liegt etwa bei 80-90Bit Schlüssellänge.

5.1.3 Designkriterien für Blockchiffren

Kriterien für gute Blockchiffren sind:

  • Konfusion: Beseitigung der statistischen Eigenschaften des Geheimtextes („Verrauschen”)
  • Diffusion: Jedes Klartext-Bit beeinflusst viele Geheimtext-Bits, jedes Schlüssel-Bit beeinflusst viele Geheimtext-Bits
  • Avalanche-Kriterium: Änderung eines Eingangs-Bit bewirkt Änderung ca. der Hälfte der Ausgangs-Bit
  • Striktes Avalanche-Kriterium: Änderung eines Eingangs-Bit bewirkt Änderung jedes Ausgangs-Bit mit Wahrscheinlichkeit 0,5
  • Nichtlinearität: Keine Abhängigkeit eines Ausgangs-Bit von einem Eingangs-Bit

Ähnliche Artikel

Kommentar verfassen