Curriculum vitae   ♦   Blog   ♦   Publik   ♦   Projects
Post-Quantum Crypto

PQCrypto

Die Sicherheit der heute gebräuchlichen asymmetrischen Krypto-Verfahren wie RSA und ECC (Elliptic Curve Crypto) basiert auf folgendem Prinzip: Die Grundlage der Schlüsselgenerierung bilden mathematische Operationen, für die es keine (einfache) Umkehrfunktion gibt:

  • RSA basiert darauf, dass es einfach ist, das Produkt zweier (großer) Primzahlen zu berechnen, es aber praktisch unmöglich ist, nur aus dem Produkt wieder die zwei Primzahlen zu bestimmen.

  • ECC basiert darauf, daß es einfach ist, die Potenzfunktion über einem endlichen Körper (modulo p) zu berechnen, es aber praktisch unmöglich ist, aus dem Ergebnis den diskreten Logarithmus zu bestimmen.

Allerdings muß an dieser Stelle angemerkt werden, daß "praktisch nicht zu berechnen" in beiden Fällen nur für die klassischen mathematischen Ansätze gilt – der Zeitaufwand / die Komplexität der Lösungsalgorithmen ist so hoch, daß sie innert sinnvoller Zeit keine Ergebnisse liefern können.

Es gibt aber alternative Lösungsansätze: Seit den Arbeiten von Shor[1] aus dem Jahr 1994 ist nämlich bekannt, daß beide Probleme durch den Einsatz von Quantencomputern lösbar wären.

Allerdings haben in den letzten 20 Jahren viele Kryptologen diesen Ansatz als "reine Science-Fiction" ignoriert – und tatsächlich ist es alles andere als trivial, eine ausreichende Anzahl von Quanten-Bits zu verschränken, um Schlüssel mit heute gebräuchlichen Längen zu knacken. Aber die Entwicklung auf diesem Gebiet hat in den letzten Jahren rasant zugenommen; kommerzielle System arbeiten schon mit mehr als 100 QBits für bestimmte Probleme (Quantum Annealing [2]).

Es ist aber nicht nur der Fortschritt der Quantentechnologie; die Sicherheit von RSA und speziell ECC wird zusätzlich durch weitere Faktoren geschwächt:

  1. Auf dem Gebiet der klassischen Ansätze werden weiterhin Fortschritte gemacht, die speziell im Bereich Faktorisierung die Sicherheit von RSA-Schlüsseln mit kürzerer Länge (1024 Bit) in Frage stellen.

    ⇒ Neue RSA-Schlüssel immer mit 4096 Bit anlegen; alte RSA-2048-Schlüssel müssen nicht revoked werden, sondern können einfach auslaufen. RSA-1024 auf keinen Fall mehr verwenden und ggf. revoken.

  2. Der Einfluss von Geheimdiensten wie der NSA auf die Definition von Krypto-Algorithmen hat seit den Zeiten von DES (der damals von der NSA vor der Standadisierung von sicheren 128 Bit auf verkrüppelte 56 Bit zurückgestutzt wurde) nicht abgenommen: Die aktuellen NSA-Dokumente von Snowden legen den Schluss nahe, den ECC-Kurven, wie sie von der NIST standardisiert sind, nicht mehr zu vertrauen.

    ⇒ Keine NIST-ECC-Kurven (mehr) verwenden[3]. Wenn ECC eingesetzt wird, dann entweder mit Kurven wie Curve25519 von Bernstein[4] oder der Kurve Secp256p1, wie sie in Bitcoin verwendet wird.

Deshalb wird es langsam Zeit, sich mit neuen Post-Quantum Krypto-Verfahren zu beschäftigen, deren Sicherheit nicht durch Quantencomputer gefährdet wird und die zudem von unabhängigen Kryptologen mit offenen Karten entwickelt und begutachtet werden. Auch wenn wir sie heute vielleicht noch nicht brauchen: aus Erfahrung wissen wir, daß es viel Zeit kostet, gute Verfahren zu entwickeln und zu begutachten – und noch mehr Zeit, um diese Verfahren in Software fehlerfrei und ohne Angriffsfäche zu implementieren. Und wenn wir nicht heute damit anfangen, sind wir vermutlich nicht fertig, wenn wir die neuen Verfahren wirklich brauchen...


  1. https://de.wikipedia.org/wiki/Shor-Algorithmus
  2. http://arxiv.org/abs/1304.4595
  3. http://crypto.stackexchange.com/questions/10263/should-we-trust-the-nist-recommended-ecc-parameters
  4. http://cr.yp.to/djb.html

Zurück