Beitrag von Florin Gruber, April 2017

Wie sicher ist die Verschlüsselung mit AES 256 Bit? Ein Beispiel.

Der Advanced Encryption Standard (AES) ist einer der heutigen Standards zur Verschlüsselung von Daten. Bei AES handelt es sich um ein symmetrisches* Verschlüsselungsverfahren. Das bedeutet, dass der selbe Schlüssel zum Ver- und Entschlüsseln verwendet wird (und bekannt sein muss). AES verwendet eine fixe Blocklänge von 128 Bit sowie eine definierte Schlüssellänge von 128, 192 oder 256 Bit.

*Symmetrische Verschlüsselungsverfahren: Im Gegensatz zu asymmetrischen Verschlüsselungsverfahren, wo die Daten mit einem öffentlichen Schlüssel verschlüsselt und mit einem (anderen) privaten Schlüssel entschlüsselt werden (also zwei unterschiedliche Schlüssel verwendet werden), wird bei symmetrischen Verschlüsselungsverfahren der selbe Schlüssel für die Ver- und Entschlüsselung verwendet.

Grundsätzlich gilt: Je länger der Schlüssel bzw. die Anzahl Bit, desto sicherer werden die Daten verschlüsselt, und desto mehr Ressourcen werden für die Ver- und Entschlüsselung benötigt. Die Bezeichnungen AES 128, AES 192 und AES 256 beziehen sich dabei jeweils auf die Bit-Länge des Schlüssel.

Ein Rechenbeispiel mit AES 256:

Nehmen wir an, ein Angreifer möchte unsere Verschlüsselung knacken. Zur Veranschaulichung machen wir nun ein kleines Rechenbeispiel zu AES 256 Bit:

  • Schlüsselkombinationen: AES mit 265 Bit ermöglicht 2^256 verschiedene Schlüsselkombinationen, das sind 1.15792E+77 mögliche Schlüssel (115‘792 ergänzt um weitere 77-mal die Zahl 0). Das sind also genau 1'157'920'000'000'000'000'000'000'000'000'000' 000'000'000'00'000'000'000'000'000'000'000'000'000'000'000 mögliche Schlüssel.
  • CPU-Leistung: Ein aktueller Computer mit einem vergleichsweise starken Intel® Core i7-7700k Prozessor mit 4 Cores und je Kern 4.20 GHz Taktrate kann ca. 16,8 Milliarden Versuche pro Sekunde unternehmen, den Schlüssel zu knacken (Dies als theoretisches Rechenbeispiel, effektiv wären es weniger, da die CPU noch viele andere Tasks zu bewältigen hat und nicht bei jedem Takt einen ganzen Schlüssel testen kann). Wir werden sehen, selbst wenn der Angreifer 10'000 oder sogar 1'000'000 CPUs zur Verfügung hätte, würde die Dauer nur marginal kleiner.
  • Dauer: Bei 1.15792E+77 Schlüsselkombinationen, geteilt durch 16,8 Milliarden Versuche pro Sekunde, den Schlüssel zu knacken, werden im Durchschnitt 6.89239E+66 Sekunden dazu benötigt, die Daten zu entschlüsseln.
  • Dauer in Jahren: 6.89239E+66 Sekunden sind rund 2.18556E+59 Jahre, die zum Knacken des Schlüssels benötigt werden. Eine unvorstellbar grosse Zahl: Das sind insgesamt 218'556'000'000'000'000'000'000'000'000'000'000' 000'000'000'000'000'000'000'000 Jahre!
  • Diese Zahl müssen wir jetzt noch halbieren, denn über eine grosse Anzahl an Versuchen gesehen wird ja der Schlüssel im Schnitt bereits nach der Hälfte aller theoretisch möglichen Schlüssel gefunden (Vergleichen wir hier ein altes Fahrradschloss mit 3 Stellen von 0-9: Es gibt hier insgesamt 1000 Kombinationen (000-999). Wenn wir hunderte von solchen Schlössern knacken würden, werden wir im Schnitt 500 Versuche pro Schloss benötigen, um es zu öffnen, wenn die Schlüssel perfekt zufällig verteilt wurden).
  • Natürlich würde ein ernsthafter Angreifer über mehr Rechenkapazität als wir im oberen Beispiel verfügen, aber selbst wenn er über die tausend- oder sogar über die zehntausendfache Rechenleistung verfügt, müssen von der oben genannten Anzahl Jahre lediglich 3 bzw. 4 Nullen abgezogen werden (!!!).

Die Anzahl Jahre, die es dauern würde, einen einzigen AES Schlüssel auf diese Art zu knacken ist also länger, als das Universum alt ist und länger, als unsere Sonne noch Brennstoff hat. Obwohl bereits einige theoretische Angriffsmöglichkeiten auf AES unter bestimmten, in der Praxis nicht vorhandenen Bedingungen gefunden wurden, gilt das Knacken von AES als nicht praktikabel. Die gefundenen Angriffsmethoden haben keine praktische Relevanz, da die dafür notwendigen Bedingungen entweder nicht vorherrschen oder weil sie die notwendige Knack-Dauer nur um ein paar tausend Jahre verringern. Es erstaunt daher also nicht, dass AES 256 zurzeit als nicht knackbar und somit als sicher gilt und wir bei Backup ONE die Datensicherheit aller Kundendaten durch den Einsatz dieser erprobten und hundertfach peer-reviewten Verschlüsselungsmethode garantieren können.

Fazit

AES kann aus mathematischer Sicht heute und wohl noch für eine ganze Weile als sicher betrachtet werden. Die oben gezeigten Rechenbeispiele zeigen, wie lange ein theoretische Angriff dauern würde und zeigen damit auch, dass ein solcher nicht praktikabel ist. Dies erklärt auch die weite Verbreitung von AES.

Bonus für mehr Informationen zum Thema:
Sehr anschaulich wird die Sicherheit von AES 256 Bit in diesem (englischen) Video visualisiert: