Samstag, 31. Juli 2010


Topthema

Donnerstag, 5. Oktober 2006 | Topthema

About Security #75: AES — Entschlüsselung, Sicherheit und Anwendung

(Link zum Artikel: http://www.entwickler.de/php/kolumnen/031635)

Entschlsselung, Sicherheit und Anwendung des in About Security #74 vorgestellten Advanced Encryption Standard AES werden in dieser Folge beschrieben.

Entschlsselung von AES

Die Entschlsselung eines mit AES verschlsselten Texts erfolgt durch Anwendung der inversen Transformationen in umgekehrter Reihenfolge. Die dafr bentigte inverse S-Box wird aus der vorhandenen S-Box berechnet. Die Rundenschlssel werden wie bei der Verschlsselung berechnet, aber in der umgekehrten Reihenfolge angewendet.

Die inversen Transformationen:

  • SubBytes^-1
    Jedes Byte im aktuellen Block wird durch die inverse S-Box umgewandelt.
  • ShiftRow^-1
    Die ShiftRow-Verschiebung wird durch Verschiebung in die Gegenrichtung rckgngig gemacht: Die Bytes des aktuellen Blocks werden zeilenweise nach rechts verschoben, bergelaufene Zellen von links nachgeschoben.
  • MixColumn^-1
    Die Spalten des aktuellen Blocks werden mit dem zum bei der Verschlsselung verwendeten konstanten Polynom inversen Polynom multipliziert
  • AddRoundKey
    Aktueller Block und aktueller Rundenschlssel werden bitweise XOR-verknpft Die Umkehrung besteht darin, das die Rundenschlssel in umgekehrter Reihenfolge verwendet werden.
Ablauf der AES-Entschlsselung
Sicherheit von AES

Die linearen Transformationen MixColumn und ShiftRow sorgen fr eine optimale Vermischung der Bits innerhalb jedes Blocks. Die nichtlineare Substitution durch die S-Box in SubBytes schtzt vor differentieller und linearer Kryptanalyse. Die XOR-Verknpfung mit den Rundenschlsseln vor der ersten und nach jeder weiteren Runde fhrt dazu, dass jedes Bit vom Schlssel abhngig ist.

N E U ! Security aktuell
Tglich aktuelle Security-Infos!

Da AES auf mathematischen Funktionen basiert, ist es inzwischen gelungen, den allgemeinen Algorithmus als Formel mit 2^70 Termen zu schreiben. 128-Bit-AES kann als System von ca. 8.000 Gleichungen mit 1.600 Variablen dargestellt werden. Solche Systeme knnen theoretisch gelst werden, praktisch scheitert ein Angriff darber (noch) an der Komplexitt der Aufgabe und damit an der bentigten Rechenzeit. Trotzdem knnte sich die algebraische Einfachheit in der Zukunft als entscheidende Schwachstelle von AES erweisen.

Zurzeit erfolgversprechender sind die so genannten 'side chanel attacks', bei denen nicht der Algorithmus, sondern seine Implementierung das Ziel des Angriffs ist. So kann z.B. der Inhalt eines Prozessor-Caches Informationen ber eine zuvor durchgefhrte AES-Berechnung an einen anderen Prozess 'verraten' (Cache Timing Attacks, PDF). Dazu muss der Angreifer aber sein eigenes Programm auf dem gleichen Rechner laufen lassen, auf dem die AES-Ver- oder Entschlsselung durchgefhrt wird. Und dies gleichzeitig zur Nutzung von AES. Ob sich diese Methoden in praktisch durchfhrbare Angriffe umsetzen lassen, ist noch nicht endgltig entschieden.

Bisher kann AES auf jedem Fall als sicherer Algorithmus angesehen werden.

About Security: Die komplette Serie
Anwendungen von AES

AES im WLAN
Der Wi-Fi Protected Access 2 Standard (WPA2, IEEE 802.11i (PDF), siehe auch About Security #109 ff.) nutzt AES zur Verschlsselung von ber WLAN bertragenen Daten. Alle bisher bekannten Angriffe auf WPA2 basieren auf dem Aussphen oder der Brute-Force-Berechnung verwendeter schwacher Schlssel, was ein gutes Beispiel dafr ist, dass ein sicherer Algorithmus allein noch nicht zu einem sicheren System fhrt.

AES in GnuPG
AES ist einer der in GnuPG zur Verschlsselung zur Verfgung stehenden Algorithmen. Dabei verwendet GnuPG ein so genanntes hybrides Verschlsselungsverfahren: Die Nachricht wird mit einem zufllig erzeugten Sitzungsschlssel mit einem symmetrischen Verfahren, z.B. AES, verschlsselt. Der Sitzungsschlssel wird danach mit dem ffentlichen Schlssel eines asymmetrischen Verfahrens (auch Public-Key-Verfahren genannt) verschlsselt und zur verschlsselten Nachricht hinzugefgt. Der Empfnger verwendet seinen geheimen Schlssel des asymmetrischen Verfahrens, um den Sitzungsschlssel zu entschlsseln. Danach kann er damit die eigentliche Nachricht entschlsseln.

Asymmetrische Verfahren

Alle bisher vorgestellten Verfahren waren symmetrische Verfahren: Fr Ver- und Entschlsselung wird der gleiche Schlssel verwendet.

Symmetrische Verschlsselung

Ihr groer Nachteil ist der Schlsselaustausch, der sicher erfolgen muss. Das ist kein Problem, wenn sich die Kommunikationspartner persnlich treffen und dabei den Schlssel austauschen knnen. Ohne direkte Begegnung ist ein sicherer Austausch jedoch schwierig. Dazu kommt die groe Anzahl auszutauschender Schlssel: Damit n Parteien miteinander kommunizieren knnen, mssen n(n-1)/2 Schlssel ausgetauscht werden, bei zehn Parteien also bereits 45.

Asymmetrische Verfahren wurden entwickelt, um die Schlsselverteilung zu vereinfachen. Zum Ver- und Entschlsseln werden verschiedene Schlssel c und d verwendet, von denen nur der Dechiffrierschlssel d geheim gehalten werden muss.

Asymmetrische Verschlsselung

Damit c nicht geheim gehalten werden muss, darf d nicht bzw. nicht mit akzeptablem Aufwand aus c zu bestimmen sein. Ein solches asymmetrisches Verfahren ist das RSA-Verfahren, das in der nchsten Folge vorgestellt wird.

Wenn Sie Fragen oder Themenvorschlge haben, knnen Sie diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum einbringen!

Carsten Eilers

About Security bersicht zum aktuellen Thema "Kryptographie AES"

Kommentare

Gravatar sicreator 29.01.2009
um 22:53 Uhr
also ich blick da mit der ase verschlsselung nit durch, hab aber was das ich entschlssen will/muss. ist hier irgendjemand der ase beherrscht und mir hflicherweise helfen wrde?
hier die verschlsselung:

_\flw$%
b:˲ g1LSS͈p
.GnWXӺP.[y_ED
_\_\flw$%\OH,&n}#Vaϴ.
~r
Ȍj@ O2

hoffe auf ne antwort.
lg
#zitieren

Folgende Links könnten Sie auch interessieren