AES - Advanced Encryption Standard

Advanced Encryption Standard, kurz AES, ist ein symmetrisches Verschlüsselungsfahren, das unter dem Namen Rijndael den Wettbewerb um die Nachfolge von DES als Verschlüsselungsstandard gewonnen hat. Entwickelt wurde Rijndael von den belgischen Kryptografen Vincent Rijmen und Joan Daemen. Die korrekte Aussprache ist Reindahl.
Seit Ende 2001 ist Rijndeal als AES in den USA von der NIST (National Institute of Standards and Technology) offiziell standardisiert. Es wird für die Verschlüsselung von Dokumenten und Kommunikationsverbindungen verwendet. AES ist nicht patentiert und deshalb frei verwendbar.

Hinweis: Der exakte Funktionsweise von AES bzw. Rijndael lässt sich nur mit mathematischem Grundlagenwissen verstehen, was weit über das notwendige Verständnis von AES hinausgeht. Um den Ablauf einer AES-Verschlüsselung nachvollziehen zu können, muss man diese mathematischen Grundlagen nicht kennen. Auf das mathematische Verfahren von AES wird hier deshalb nicht eingegangen.

AES-Verschlüsselung und -Entschlüsselung

Rijndael bzw. AES sind Blockchiffren auf Basis eines Substitutions-Permutations-Netzwerks (SPN). Das Verfahren wechselt bei jedem Schritt zwischen Substitution und Permutation. Man spricht von AES auch als SP-Chiffre. Dabei erfolgt die Transformation des Klartextes in mehreren Runden gleichen Aufbaus. Der Klartext wird dabei nicht als Ganzes, sondern in Blöcken verarbeitet. Hierbei wird unter anderem die Beziehung zwischen Klar- und Geheimtext verwischt, was man in der kryptologischen Fachsprache als Konfusion bezeichnet.
Bei Rijndael können Blocklänge und Schlüssellänge unabhängig voneinander die Werte 128, 160, 192, 224 oder 256 Bits haben. Bei AES ist die Blocklänge auf 128 Bit und die Schlüsselgröße auf 128 (10 Runden), 192 (12 Runden) und 256 Bit (14 Runden) festgelegt.

Die AES-Entschlüsselung sieht notwendigerweise vor, dass dieselben Schritte wie bei der Verschlüsselung durchlaufen werden müssen. Nur eben in umgekehrter Reihenfolge. Es handelt sich dabei in gewisser Weise um eine Schwäche von AES.

Anwendungen

Viele Prozessoren beinhalten eine Hardware-AES-Implementierung mit speziellen Maschinenbefehlen auf die per Software-Bibliothek zugegriffen werden kann. So eignet sich AES auch für mobile Anwendungen.

Wie sicher ist AES?

Es ist bisher keine Schwäche von AES bekannt, die auch nur annähernd eine praktische Bedeutung hat. Dafür sind einige recht interessante theoretische Angriffe bekannt. Beispielsweise die Biclique-Kryptoanalyse. Zwar sind diese Angriffe nicht praxisrelevant, sie sorgen jedoch immer wieder für Diskussionen.

Ein Kritikpunkt an AES ist die Darstellung des mathematischen Verfahrens als aufwendige algebraische Formel. Das macht AES für die quadratische Kryptoanalyse anfällig. Allerdings gibt es keine Methode, um die quadratische Gleichung dieser Komplexität zu lösen.
Die Lösung der AES-Formel betrifft auch nur Teilgebiete der Mathematik, die mit Kryptografie nichts zu tun haben. Es ist aber nicht auszuschließen, dass irgendwann irgendjemand, der nichts mit Kryptografie am Hut hat, eine Vereinfachung oder sogar die Lösung entdeckt und veröffentlicht. Wie lange AES noch sicher verwendet werden kann ist als nicht mit Bestimmtheit zu sagen.

Die Sicherheit von AES ist unter anderem auch von der Schlüssellänge abhängig. Schon bei einer Schlüssellänge von 128 Bit ist die vollständige Schlüsselsuche erfolglos. Es ist jedoch davon auszugehen, dass die Rechenleistung neuerer Computer schnell voranschreitet und die Schlüssellänge zum Knackpunkt wird. Es empfiehlt sich eine Schlüssellänge von 256 Bit zu wählen, um genug Sicherheitspuffer für die Zukunft zu haben.
Gefahr besteht dann, wenn die Leistungsfähigkeit der Computer rapide zunimmt oder wenn neue Erkenntnisse für eine Vereinfachung der vollständigen Schlüsselsuche führen. Davon abgesehen kann man davon ausgehen, dass AES noch lange Zeit sicher genug ist.

AES-Alternativen

Rijndael setzte sich ursprünglich gegen 15 Konkurrenten im Wettbewerb für einen DES-Nachfolger durch und wurde als AES spezifiziert. Das bedeutet allerdings nicht, dass die anderen Verschlüsselungsverfahren schlechter waren. Unter Verschlüsselungsexperten besteht Einigkeit darüber, dass neben Rijndael auch die Verfahren Serpent und Twofish würdige Gewinner des AES-Wettbewerbs gewesen wären.
Sollte es vielleicht einmal dazu kommen, dass man Rijndael in Form von AES als unsicher ansehen muss, dann gibt es gleich mehrere gleichwertige Alternativen.

Neben den genannten Verfahren sind nur noch die Verfahren CAST-256 und SAFER+ interessant. Zwar weniger bekannt, dafür haben sie der Kryptografie neue Impulse und Erkenntnisse gebracht.

Serpent

Angesichts der heute bekannten Schwächen von AES geht man davon aus, dass Serpent den AES-Wettbewerb hätte gewinnen müssen.
Serpent ist etwas langsamer als andere vergleichbare Verfahren. Man bezeichnet es als ein konservatives Verfahren. Es hat einen großen Sicherheitspuffer, weswegen es für Anwendungen geeignet ist, die auf Jahrzehnte hinweg eine hohe Sicherheit haben müssen.

Twofish (von Bruce Schneier)

Twofish von Bruce Schneier ist das zweite Verfahren neben Serpent, das den AES-Wettbewerb hätte gewinnen können. Es handelt sich um eine Weiterentwicklung von Blowfish, das eine DES-Alternative ist.
Twofish verschlüsselt mit einem 128-Bit-Blöcken und Schlüssellängen von 128, 192 oder 256 Bit.

RC6 - Rivest Cipher 6

RC6 ist der Nachfolger von R5 und wurde von Ron Rivest zusammen mit drei weiteren Kollegen entwickelt, um damit am AES-Wettbewerb teilnehmen zu können.
Die Gründe für die Ablehnung von RC6 sind ungenügend erforschte datenabhängige Rotationen, eine unklare Patentlage und der Fokus auf den Einsatz in 32-Bit-Prozessoren.
RC6 gilt als ausreichend sicher, wenn man vom geringen Sicherheitspuffer absieht. Der beste Angriff ist Brute Force.
Leider ist das Verfahren patentiert und deshalb nur in wenigen kommerziellen Produkten verbreitet. Damit steht RC6 im Schatten von Serpent und Twofish.

MARS (von IBM)

MARS ist einer von 5 AES-Finalisten. Allerdings mit den meisten Schwächen. Das Verfahren wurde von IBM entwickelt, deren Entwickler bei DES Pionierarbeit geleistet haben.
MARS hat eine Blocklänge von 128 Bit und unterstützt Schlüssellängen von 128 bis 448 Bit in 32-Bit-Schritten.
Im Rahmen der Endauswahl des AES-Wettbewerbs wurden einige Ungereimtheiten und Schwächen bekannt. Allerdings ist kein praktisch verwertbarer Angriff bekannt.