Verschlüsselung > Arten der Verschlüsselung > AES-Verschlüsselung
Was ist AES-Verschlüsselung?
AES bezieht sich in der Kryptografie auf den Advanced Encryption Standard, einen schnellen, effizienten und sicheren Verschlüsselungsalgorithmus, der vom US-amerikanischen National Institute of Standards and Technology (NIST) zertifiziert wurde. Es handelt sich um eine symmetrische Chiffre, die denselben Schlüssel verwendet, um Daten sowohl zu verschlüsseln als auch zu entschlüsseln. Dies ist relativ schnell, was es ideal für das Verschlüsseln großer ruhender Datenmengen macht.
Aufgrund seiner Robustheit und Zuverlässigkeit ist AES eine der beliebtesten und gängigsten Verschlüsselungsarten, die für die Sicherheit kabelloser Netzwerke, die Daten- und Festplattenverschlüsselung, in Online-Zahlungssystemen, beim Cloud-Speicher, in der Passwortverwaltung und sogar für Regierungs- und Militäranwendungen eingesetzt wird. Die US-Regierung nutzt die AES-Verschlüsselung, um ihre eingestuften Informationen zu schützen, was zu ihrer Beliebtheit beigetragen hat.

Ist der AES-Algorithmus sicher?
Ja. Im Jahr 2000 kündigte das NIST nach einem sehr gründlichen(neues Fenster) und offenen Auswahlverfahren an, dass AES (bis dahin bekannt als Rijndael-Algorithmus, der von Vincent Rijmen und Joan Daemen entwickelt wurde) DES als seinen empfohlenen(neues Fenster) „nicht geheim eingestuften, öffentlich offengelegten Verschlüsselungsalgorithmus, der sensible Regierungsinformationen bis weit in das nächste Jahrhundert hinein schützen kann“, ersetzen würde.
Laut NIST gelten alle Schlüssellängen des AES-Algorithmus als „ausreichend“, um eingestufte Informationen bis zur Sicherheitsstufe „Secret“ zu schützen. Für Informationen der Stufe „Top Secret“ ist AES-192 oder AES-256 erforderlich.

Brute-Force-Angriffe
Die einfachste Form eines Angriffs auf ein Verschlüsselungsverfahren ist ein Brute-Force-Angriff, bei dem jede mögliche Schlüsselkombination ausprobiert wird, bis die richtige gefunden wird.
Frontier(neues Fenster) ist der weltweit leistungsstärkste öffentlich bekannte Supercomputer. Wenn er seine gesamte Rechenleistung für einen Brute-Force-Angriff auf AES-128 aufwenden würde, würde er immer noch etwa 10 bis 12 Billionen Jahre benötigen, um alle möglichen Kombinationen für AES-128 auszuschöpfen. Dies ist weitaus länger als das Alter des Universums. Selbst bei geringeren Bitgrößen ist AES daher äußerst resistent gegen Brute-Force-Angriffe durch herkömmliche Computer.
AES-256 ist 340 Milliarden Milliarden Milliarden Milliarden (2¹²⁸) Mal schwerer per Brute-Force zu knacken als AES-128.
Obwohl Grovers Algorithmus(neues Fenster) die Sicherheit symmetrischer Schlüssel gegenüber Quantenbedrohungen theoretisch um die Hälfte reduziert, sind sie immer noch relativ quantenresistent, insbesondere bei der Verwendung eines 256-Bit-Schlüssels.
Schlüsselangriffe
Im Laufe der Jahre haben Kryptografen eine Reihe theoretischer Angriffe auf AES-Schlüssel veröffentlicht, aber alle davon sind entweder in der Praxis nicht umsetzbar oder nur bei AES-Implementierungen wirksam, die eine verringerte Anzahl von Runden verwenden (siehe unten).
Der erfolgreichste Versuch war der theoretische Biclique-Angriff(neues Fenster), der 2011 veröffentlicht wurde und die Zeit, die für einen Brute-Force-Angriff auf AES benötigt wird, um den Faktor vier verringern kann. Trotzdem würde es auf jeder aktuellen oder absehbaren Computerhardware immer noch Milliarden Jahre dauern, AES per Brute Force zu knacken.
Kein bekannter Schlüsselangriff ist gegen korrekt implementiertes AES-128 oder höher praktikabel.
Seitenkanalangriffe
Ein Seitenkanalangriff versucht, die Anzahl der Kombinationen zu verringern, die für einen erfolgreichen Brute-Force-Angriff erforderlich sind, indem er nach Hinweisen im Computer sucht, der die Verschlüsselungsberechnungen durchführt. Hinweise lassen sich gewinnen durch die Untersuchung von:
- Timing – wie lange ein Computer für die Ausführung einer Operation benötigt
- Elektromagnetische Lecks
- Akustische Hinweise
- Visuelle Hinweise (aufgenommen mit einer hochauflösenden Kamera).
Insbesondere Cache-Timing-Angriffe haben sich als recht effektiv beim erfolgreichen Knacken von AES erwiesen. Im bekanntesten Beispiel konnten Forschende im Jahr 2016 einen AES-128-Schlüssel wiederherstellen(neues Fenster), und zwar mit „nur etwa 6 - 7 Blöcken Klartext oder Chiffretext (theoretisch würde sogar ein einzelner Block ausreichen)“.
Es gibt jedoch eine Reihe von Maßnahmen, um die Bedrohung durch Seitenkanalangriffe abzuschwächen:
- Korrekt implementiertes AES kann verhindern, dass Daten auf Arten offengelegt werden, über die Daten-Leaks entstehen können.
- Hardware, die den AES-Befehlssatz integriert, reduziert die Angriffsfläche von AES für Seitenkanalangriffe zusätzlich.
- Randomisierungstechniken können verwendet werden, um die Beziehung zwischen durch AES geschützten Daten und eventuell geleakten Daten zu stören, die über einen Seitenkanalangriff gesammelt werden könnten.
In vielen Fällen erfordern Seitenkanalangriffe, dass sich der Angreifer in unmittelbarer Nähe des Geräts befindet oder physischen Zugriff darauf hat, während es Daten entschlüsselt. Remote-Angriffe sind jedoch möglich, wenn auf einem Gerät Schadsoftware installiert ist, insbesondere im Fall von Timing-Angriffen.
Wie AES funktioniert
AES ist eine Blockchiffre, die Daten in 128-Bit-Blöcken mit 128-Bit-, 192-Bit- oder 256-Bit-Schlüsseln verschlüsselt und entschlüsselt. Wie bereits erwähnt, wird derselbe Schlüssel zum Verschlüsseln und Entschlüsseln von Daten verwendet. AES mit einem 128-Bit-Schlüssel wird oft als AES-128 bezeichnet, entsprechend auch AES-192 und AES-256.

Daten werden in mehreren Runden verschlüsselt, von denen jede aus einer Reihe von mathematischen Operationen besteht.
Der Prozess beginnt mit der Verwendung des Rijndael-Schlüsselplan-Algorithmus, um eine Reihe neuer Rundenschlüssel aus dem ursprünglichen geheimen Schlüssel abzuleiten. Dies wird als Schlüsselexpansion bezeichnet.
Jede Runde besteht dann aus einer oder mehreren (oder einer Kombination) der folgenden Operationen:
1. Add Round Key: Es wird eine XOR-Operation(neues Fenster) durchgeführt, um die zu verschlüsselnden Daten (den Chiffretext) mit dem jeweiligen Rundenschlüssel zu kombinieren.

2. SubBytes: Eine Substitutionstabelle wird verwendet, um die Daten weiter zu vermischen. Stell dir im Prinzip die einfachen Substitutionschiffren vor, die du als Kind verwendet hast, bei denen du jeden Buchstaben in einer Nachricht durch einen ersetzt hast, der im Alphabet um eine feste Anzahl Stellen weiter hinten steht.

3. ShiftRows: Jeder 128-Bit-Datenblock besteht aus einem 16-Bit-4x4-Block. Bei dieser Operation wird jedes Byte in einer Blockzeile um einen bestimmten Versatz nach links verschoben.

4. Mix Columns: An jeder Spalte des Blocks wird eine zusätzliche invertierbare lineare Transformation durchgeführt.

Diese Reihe von Transformationen bildet eine Runde, die dann abhängig von der Schlüsselgröße eine bestimmte Anzahl von Runden lang auf die Daten angewendet wird:
- AES-128 — 10 Runden
- AES-192 — 12 Runden
- AES-256 — 14 Runden
Um Daten zu entschlüsseln, werden einfach alle Schritte, die zum Verschlüsseln verwendet wurden, in umgekehrter Reihenfolge ausgeführt. Dafür wird der ursprüngliche geheime Schlüssel benötigt, um den Prozess mit jedem inversen Rundenschlüssel umzukehren.
Warum wird AES-256 gegenüber AES-192 oder AES-128 bevorzugt?
Mit der heutigen und absehbaren Technologie würde ein Brute-Force-Angriff auf AES-128 länger dauern als das Alter des Universums. Der legendäre Kryptograf Bruce Schneier hat sogar argumentiert(neues Fenster), dass AES-128 stärker als AES-256 sein könnte, da es über einen stärkeren Schlüsselplan verfügt – den Algorithmus, der alle Rundenschlüssel aus dem ursprünglichen geheimen Schlüssel berechnet.
Dennoch ist AES-256 zum De-facto-Goldstandard für die symmetrische Verschlüsselung geworden. Es wird oft (wenn auch etwas umstritten) als die stärkere Wahl angesehen, da seine größere Schlüsselgröße einen zusätzlichen Sicherheitsspielraum signalisiert, sodass verschlüsselte Daten selbst dann sicher bleiben, wenn ein Weg gefunden wird, den Algorithmus drastisch zu schwächen. Dieses Argument hat an Gewicht gewonnen, da der Bedarf an Post-Quanten-Resistenz immer dringlicher wird.
AES-CBC vs. AES-GCM
Bis vor relativ kurzer Zeit wurde AES normalerweise im Cipher Block Chaining (CBC)-Modus verwendet, bei dem jeder Klartextblock vor der Verschlüsselung mit dem vorherigen Chiffretextblock XOR-verknüpft wird. Bei Verwendung im CBC-Modus ist ein HMAC(neues Fenster)-Hashing-Algorithmus wie HMAC-SHA256 erforderlich, um die Daten zu verifizieren.
Inzwischen wird AES jedoch immer häufiger im Galois/Counter (GCM)-Modus verwendet, der den Counter-Modus(neues Fenster) der Verschlüsselung nutzt. Der Hauptvorteil ist, dass dabei das Galois-Feld(neues Fenster) verwendet wird, um Daten zu verifizieren, ohne dass ein externer Algorithmus erforderlich ist. Daher ist dies effizienter als die Verwendung eines separaten Authentifizierungsalgorithmus, der einen hohen Rechenaufwand verursachen kann.
Obwohl AES-CBC mit HMAC-Authentifizierung allgemein als sicher gilt, ist CBC potenziell anfällig für Padding-Angriffe(neues Fenster) wie POODLE(neues Fenster). GCM ist es nicht.
Hardwarebeschleunigtes AES
Die meisten modernen CPUs verfügen über die Advanced Encryption Standard New Instructions (AES-NI(neues Fenster)), einen Satz von Hardware-Anweisungen, die AES-Operationen direkt auf dem Prozessor ausführen. Dies macht AES viel schneller und hilft auch, laufzeitbasierte Seitenkanalangriffe zu verhindern, da die Operationen innerhalb der sicheren Ausführungseinheiten des Prozessors stattfinden, sodass es für einen Angreifer weniger beobachtbare Laufzeitunterschiede gibt, die er ausnutzen könnte.
Proton und AES
Wir verwenden AES in großem Umfang, um Proton-Produkte zu schützen:
Termine und Kontakte werden mit AES-256 in Kombination mit ECC für den Schlüsselaustausch gesichert, um deine Privatsphäre durch Ende-zu-Ende-Verschlüsselung zu gewährleisten.
Proton VPN konzentriert sich hauptsächlich auf das schnelle und effiziente WireGuard®-VPN-Protokoll (das ChaCha20 verwendet), aber OpenVPN-Verbindungen verwenden AES-256.
Proton Pass speichert Passwörter, Notizen, Identitäten und andere Einträge in deinem sicheren Tresor mit AES-256.
Proton Drive verschlüsselt alle hochgeladenen Dateien Ende zu Ende mit AES-256 unter Verwendung von ECC für den Schlüsselaustausch. Proton Docs und Proton Sheets verwenden ebenfalls AES-256 mit ECC-basiertem Schlüsselaustausch, auch wenn sich ihre Verschlüsselungsimplementierung von dem allgemeinen Dateiverschlüsselungsschema von Proton Drive unterscheidet.
Proton Mail speichert E-Mails und Anhänge mit AES-256 über den OpenPGP-Standard. Sogar dein privater Schlüssel, der deine E-Mails entsperrt, wird mit AES-256 verschlüsselt, bevor er auf dem Server gespeichert wird.
Proton Meet verwendet Messaging Layer Security (MLS), um Audio-, Video- und Chat-Nachrichten zu verschlüsseln, und gewährleistet Forward Secrecy (PFS) und Post-Compromise Security (PCS) für die gesamte Kommunikation. Alle Besprechungsdaten werden mit AES-256-GCM Ende-zu-Ende-verschlüsselt.
Abschwächung von Angriffen auf AES-Verschlüsselung
Die Sicherheit ist nur so stark wie ihr schwächstes Glied, und das ist meistens dein Passwort. Das bedeutet, dass auch Social-Engineering-Methoden, Phishing-Angriffe und Keylogger(neues Fenster) eine Bedrohung für AES-verschlüsselte Daten darstellen. Selbst wenn AES verwendet wird, solltest du daher die folgenden Vorsichtsmaßnahmen treffen:
- Verwende einen verschlüsselten Passwort-Manager
- Verwende Hardware-Sicherheitsschlüssel (wie YubiKey) für eine zusätzliche Schutzschicht
- Wenn du Teil einer Organisation bist, führe regelmäßige Sicherheitsschulungen für Mitarbeiter durch, um Phishing-Angriffe zu verhindern
Übernimm die Kontrolle über deine Daten
Proton wurde entwickelt, um deine Daten von Anfang an zu schützen. Mit Ende-zu-Ende-Verschlüsselung, Open-Source-Apps und unabhängigen Prüfungen gehören deine Informationen dir.
Häufig gestellte Fragen zur AES-Verschlüsselung
- Was ist besser: AES oder DES?
- Was ist besser: AES oder RSA?
- Wie stark ist die AES-Sicherheit?


