Zu den häufigen Betrügereien im Facebook Messenger gehören Anfragen nach Authentifizierungscodes, gefälschte Wohltätigkeitsseiten, die nach Spenden fragen, Nachrichten, die Anlageberatung anbieten oder sogar gefälschte W...
Elliptische-Kurven-Kryptografie (ECC) ist eine Form von Kryptografie mit öffentlichen Schlüsseln, die auf der Berechnung elliptischer Kurven basiert. Sie stellt eine sichere Methode zur Durchführung kryptografischer Operationen wie Schlüsselaustausch, digitaler Signaturen und Verschlüsselung dar. ECC ist eine Alternative zur Rivest-Shamir-Adleman (RSA)-Verschlüsselung, die erstmals 1977 veröffentlicht wurde.
Lesen Sie weiter, um mehr über Elliptische-Kurven-Kryptografie und die Frage zu erfahren, warum sie als die sicherste Form von Verschlüsselung gilt.
Was ist der Unterschied zwischen ECC und RSA?
Bevor wir die Unterschiede zwischen ECC und RSA erörtern, ist es wichtig zu verstehen, wie kryptografische Algorithmen mit öffentlichen Schlüsseln funktionieren. Robuste kryptografische Algorithmen sind im Grunde genommen „Falltürfunktionen“. Während es leicht ist, durch eine Falltür zu fallen, ist es ziemlich schwierig, wieder herauszukommen, da Falltüren nur in eine Richtung schwingen. Damit ein kryptografischer Algorithmus effektiv und sicher ist, muss es einfach sein, eine Nachricht zu verschlüsseln, aber nahezu unmöglich, sie ohne den Entschlüsselungsschlüssel zu entschlüsseln.
Sowohl ECC als auch RSA sind Verschlüsselungsalgorithmen mit öffentlichen Schlüsseln, die hoch entwickelte mathematische Funktionen nutzen. Verschlüsselung mit öffentlichen Schlüsseln besteht aus zwei Komponenten: einem öffentlichen Schlüssel und einem privaten Schlüssel. Der öffentliche Schlüssel verschlüsselt eine Nachricht, indem er einen mathematischen Algorithmus anwendet, um die Nachricht in eine sehr große, zufällig erscheinende Zahl zu verwandeln. Die Nachricht kann nur mit dem privaten Schlüssel entschlüsselt werden, der die zufällig erscheinende Zahl nimmt und einen anderen Algorithmus anwendet, der den ursprünglichen Algorithmus im Prinzip wieder „rückgängig macht“.
Die Berechnungen hinter ECC und RSA sind so komplex, dass sie nur mit Computern gelöst werden können. Die Funktionsweise der Berechnungen hinter dem RSA-Algorithmus würden den Rahmen dieses Blogs sprengen. Der Kernpunkt ist aber, dass die Sicherheit von RSA von der immensen Schwierigkeit abhängt, sehr große Zahlen in ihre zusammengesetzten Primzahlen zu zerlegen.
Für diejenigen, die eine Auffrischung benötigen, sieht das Faktorisieren einer Zahl wie z. B. 20 wie folgt aus:
20 = 4 × 5 = 2 × 2 × 5 = 22 × 5
Sieht ganz einfach aus, oder? Stellen Sie sich nun aber vor, das Gleiche mit einer Zahl zu tun, die über 100 Stellen hat. Deshalb ist es selbst mit einem öffentlichen Schlüssel extrem rechenintensiv, den privaten Schlüssel zu berechnen, ohne die Primfaktoren zu kennen.
Probleme bei der RSA-Kryptografie
Der RSA-Algorithmus ist zwar ziemlich robust, aber nicht unproblematisch.
Das Faktorisieren sehr großer Zahlen ist äußerst schwierig, aber weniger schwierig als früher. Das Faktorisieren ist ein zentraler Bestandteil der Infinitesimalrechnung und anderer fortgeschrittener Mathematik, weshalb Mathematiker jahrhundertelang nach Möglichkeiten gesucht haben, das Verfahren zu vereinfachen. Es gibt effiziente Algorithmen zur Faktorisierung großer Zahlen, wie z. B. das Zahlkörpersieb (General Number Field Sieve, GNFS). Es ist derzeit die bekannteste Methode zur Faktorisierung großer Zahlen mit mehr als 110 Ziffern.
Unterdessen wächst die Rechenleistung mit erstaunlicher Geschwindigkeit. 1965 sagte der Intel-Mitbegründer Gordon Moore voraus, dass sich die Anzahl der Transistoren auf Mikrochips alle ein bis zwei Jahre verdoppeln würde. Diese Hypothese ist als Mooresches Gesetz bekannt und wird seit den 1970er Jahren erfüllt oder sogar übertroffen. Die Rechenleistung verdoppelt sich etwa alle zwei Jahre – und der Preis für Rechenleistung sinkt.
Da die für das Faktorieren extrem großer Zahlen erforderlichen Rechenressourcen für eine breite Öffentlichkeit (einschließlich Cyberkriminellen) immer leichter verfügbar und erschwinglicher werden, müssen die RSA-Schlüsselgrößen wachsen, um mitzuhalten. Darum sind die Ver- und Entschlüsselungsgeschwindigkeiten von RSA ziemlich niedrig, was das Verfahren für die Verschlüsselung großer Nachrichten, insbesondere auf mobilen Geräten, unbrauchbar macht. Stattdessen wird RSA häufig für Schlüsselaustausch und digitale Signaturen verwendet, wobei die eigentlichen Daten mit symmetrischen Verschlüsselungsalgorithmen mit kürzerlebigen Sitzungsschlüsseln verschlüsselt werden.
Umgekehrt bietet Elliptische-Kurven-Kryptografie mehr Sicherheit bei kürzeren Schlüssellängen und ist somit effizienter in Bezug auf Rechenaufwand und Bandbreitenbedarf. Im nächsten Abschnitt gehen wir auf die Funktionsweise von ECC ein.
Wie funktioniert Elliptische-Kurven-Kryptografie?
ECC basiert auf einem anderen Bereich der fortgeschrittenen Mathematik, den sogenannten elliptischen Kurven. Eine elliptische Kurve wird durch eine Gleichung in der Form y2 = x3 + ax + b definiert, wobei a und b Konstanten sind und die Kurve über einem endlichen Körper definiert ist. Als Diagramm sieht das wie folgt aus:
Elliptische Kurven haben spezielle Eigenschaften, die sie sowohl für Mathematiker als auch für Kryptografen interessant und nützlich machen. Erstens sind elliptische Kurven horizontal symmetrisch. Wenn sie an der x-Achse (der horizontalen Linie) gespiegelt werden, sind beide Seiten gleich, wie ein Spiegelbild.
Außerdem schneidet jede nicht senkrechte Gerade, die durch eine elliptische Kurve gezogen wird, die Kurve stets an maximal drei Punkten. Im folgenden Beispiel sind diese Punkte als P, Q und R gekennzeichnet.
Die Sicherheit von Elliptischer-Kurven-Kryptografie beruht auf der Schwierigkeit, das sogenannte Diskrete-Logarithmus-Problem der elliptischen Kurve zu lösen. Bei einem Punkt P auf der Kurve und einem Skalar k ist es außerordentlich schwierig, den Punkt Q so zu bestimmen, dass Q = k × P ist – viel schwieriger, als selbst eine sehr große Zahl zu faktorisieren.
Diese Eigenschaft bedeutet, dass ECC vergleichbare oder sogar bessere Sicherheit als RSA mit weit geringeren Schlüsselgrößen bieten kann.
Vorteile von Elliptischer-Kurven-Kryptografie
Die Tatsache, dass ECC ein sehr hohes Sicherheitsniveau bei kurzen Schlüssellängen bietet, verschafft dem Verfahren Vorteile gegenüber RSA und anderen Kryptografiealgorithmen mit öffentlichen Schlüsseln.
Nachfolgend sind zwei Vorteile der Elliptischen-Kurven-Kryptografie aufgeführt:
- ECC benötigt weniger Rechenressourcen sowie weniger Bandbreite für die Schlüsselgenerierung, Verschlüsselung und Entschlüsselung.
- Aufgrund der geringeren Schlüsselgröße von ECC können ECC-Operationen wie Schlüsselgenerierung sowie Ver- und Entschlüsselung im Vergleich zu RSA schneller ausgeführt werden, was für den Endnutzer eine geringere Latenzzeit bedeutet.
Diese Vorteile machen den Einsatz von ECC besonders sinnvoll in ressourcenbeschränkten Umgebungen, wie z. B. in mobilen Geräten oder IoT-Geräten.
Wie sicher ist Elliptische-Kurven-Kryptografie?
Der RSA-Verschlüsselungsalgorithmus ist zwar äußerst sicher, ECC ist wahrscheinlich aber noch besser.
Quantencomputer haben theoretisch das Potenzial, RSA zu knacken, indem sie das Faktorisierungsproblem, auf dem RSA beruht, auf effiziente Weise lösen. Ob dies in absehbarer Zeit der Fall sein wird, ist jedoch Gegenstand großer Debatten. Es ist jedoch sicher, dass ECC aufgrund seiner Komplexität im Vergleich zu RSA widerstandsfähiger gegen Angriffe mit Quantencomputern ist.
Wie widerstandsfähig? Der niederländische Mathematiker Arjen Lenstra war Mitverfasser einer Forschungsarbeit, in der er das Knacken kryptografischer Algorithmen mit dem Kochen von Wasser verglich. Die Idee besteht darin zu berechnen, wie viel Energie benötigt werden würde, um einen bestimmten kryptografischen Algorithmus zu knacken, und dann zu berechnen, wie viel Wasser mit dieser Energie zum Kochen gebracht werden könnte. Wenn man dieser Metapher folgt, braucht man weniger Energie, um einen 228-Bit-RSA-Schlüssel zu knacken, als um einen Teelöffel Wasser zum Kochen zu bringen. Die Energie, die zum Knacken eines 228-Bit-ECC-Schlüssels aufgewendet werden muss, könnte hingegen das gesamte Wasser auf der Erde zum Kochen bringen. Das gleiche Sicherheitsniveau bei RSA würde eine Schlüsselgröße von 2.380 Bit erfordern.
Wo wird Elliptische-Kurven-Kryptografie verwendet?
Wie bereits erwähnt, eignet sich ECC aufgrund der geringeren Schlüsselgröße perfekt für Geräte mit geringen CPU- und Speicherressourcen, wie z. B. für mobile und IoT-Geräte. So können Entwickler von Web- und Mobilanwendungen leistungsfähige Websites und Anwendungen mit niedrigen Latenzzeiten entwickeln und Benutzern gleichzeitig robuste Datensicherheit bieten. ECC wird häufig verwendet, um drahtlose mobile Kommunikationsprotokolle wie Bluetooth, WLAN und Near Field Communication (NFC) zu schützen.
Im Folgenden finden Sie weitere gängige Anwendungsfälle für ECC:
- Sichere Kommunikationsprotokolle: ECC wird in verschiedenen sicheren Kommunikationsprotokollen verwendet, um Verschlüsselung, digitale Signaturen und Schlüsselaustausch zu ermöglichen. Beispiele hierfür sind Transport Layer Security (TLS) für sicheres Surfen im Internet, Secure Shell (SSH) für sichere Fernanmeldung und Virtual Private Networks (VPNs) für sichere Netzwerkkommunikation.
- Kryptowährungen und Blockchain-Technologie: Viele Kryptowährungen, darunter Bitcoin, Ethereum und Litecoin, nutzen Elliptische-Kurven-Kryptografie für die Generierung öffentlicher und privater Schlüsselpaare sowie für die Signierung von Transaktionen. ECC bietet die kryptografische Sicherheit, die zum Schutz digitaler Ressourcen sowie zur Gewährleistung der Integrität von Blockchain-Netzen erforderlich ist.
- Smartcards und eingebettete Systeme: ECC wird häufig zur Sicherung von Zahlungssystemen, Zugriffskontrollsystemen, elektronischen Reisepässen und anderen Anwendungen verwendet, die sichere und kompakte kryptografische Lösungen erfordern.
- Digitale Signaturen und Zertifikate: ECC kann zur Generierung digitaler Signaturen genutzt werden, die sich zur Überprüfung der Authentizität und Integrität digitaler Dokumente und Nachrichten einsetzen lassen. ECC-basierte digitale Signaturen werden auch in PKI-Systemen (Public Key Infrastructure) verwendet, um digitale Zertifikate auszustellen und zu validieren.
Obwohl ECC im Vergleich zu RSA noch recht neu ist, genießt das Verfahren eine breite Standardisierung und Unterstützung durch private Organisationen und Branchengremien. So hat beispielsweise das US-amerikanische National Institute of Standards and Technology (NIST) ECC in seiner Suite kryptografischer Algorithmen standardisiert. Außerdem wird ECC von gängigen kryptografischen Bibliotheken, Programmiersprachen und Betriebssystemen unterstützt. Diese Akzeptanz fördert den Einsatz in verschiedenen Sektoren wie Finanzwesen, Gesundheitswesen und öffentlichen Dienstleistungen.
Angesichts dessen ist Elliptische-Kurven-Kryptografie ziemlich beliebt und kommt in einer Vielzahl von Anwendungen und Branchen zum Einsatz. Die Effizienz, Sicherheit und breite Unterstützung des Verfahrens machen es zu einer zuverlässigen Wahl für sichere Kommunikation und kryptografische Operationen.