Es gibt viele verschiedene Teile der Kryptographie. Wenn Sie jedoch einige Daten verschlüsseln möchten, können Sie zwei Arten von Algorithmen verwenden: symmetrische Verschlüsselungsalgorithmen und asymmetrische Verschlüsselungsalgorithmen. Das Konzept ist dasselbe: Sie können Daten verschlüsseln, arbeiten aber nach unterschiedlichen Prinzipien und haben andere Anwendungsfälle.
Der Titelunterschied beschreibt jedoch die Verschlüsselungsschlüssel. Ein symmetrischer Verschlüsselungsalgorithmus verwendet einen einzigen gemeinsamen Schlüssel zum Ver- und Entschlüsseln von Daten. Ein asymmetrischer Verschlüsselungsalgorithmus verwendet zwei verknüpfte Schlüssel, einen zum Entschlüsseln und einen zum Entschlüsseln.
Terminologie
Asymmetrische Verschlüsselungsalgorithmen basieren auf der Verwendung zweier unterschiedlicher Schlüssel. Ein Schlüssel kann zum Verschlüsseln von Daten und der andere zum Entschlüsseln verwendet werden. Die beiden Verschlüsselungsschlüssel sind nicht einfach irgendwelche alten zwei Werte. Sie sind eng miteinander verbunden und müssen durch einen Schlüsselgenerierungsalgorithmus generiert werden.
Ein alternativer Name für asymmetrische Verschlüsselung ist Public-Key-Verschlüsselung. Dies liegt daran, dass einer der beiden Schlüssel öffentlich sein soll. Das traditionelle Konzept besteht darin, dass der Verschlüsselungsschlüssel öffentlich geteilt wird und der Entschlüsselungsschlüssel streng vertraulich bleibt. Aus diesem Grund wird der Verschlüsselungsschlüssel als öffentlicher Schlüssel und der Entschlüsselungsschlüssel als privater Schlüssel bezeichnet.
Diese Konfiguration ermöglicht es jedem, eine Nachricht zu verschlüsseln, sodass nur der Eigentümer des privaten Schlüssels sie entschlüsseln kann. Dies ist nützlich, da jeder mit einem einzigen veröffentlichten Verschlüsselungsschlüssel sicher mit dem beabsichtigten Empfänger kommunizieren kann. Für eine sichere Rückkommunikation müsste der Empfänger den öffentlichen Schlüssel des ursprünglichen Absenders verwenden.
Theoretisch gibt es keinen Grund, warum Sie die Schlüssel nicht austauschen und den Entschlüsselungsschlüssel teilen könnten, während der Verschlüsselungsschlüssel geheim bleibt. Dies könnte verwendet werden, um die Authentizität der Quelle zu überprüfen, wenn nicht, um eine sinnvolle Sicherheit zu bieten. Dies geschieht jedoch in der Praxis nicht, da es andere Mechanismen gibt, um das gleiche Ergebnis zu erzielen.
Eigenschaften symmetrischer Verschlüsselungsalgorithmen
Asymmetrische Verschlüsselungsalgorithmen erfordern bei gleichem Sicherheitsniveau die Verwendung wesentlich größerer Schlüssel als symmetrische Verschlüsselungsalgorithmen. Im Allgemeinen gilt ein symmetrischer Verschlüsselungsalgorithmus mit einem 128-Bit-Verschlüsselungsschlüssel als sicher, obwohl 256-Bit-Schlüssel bevorzugt werden. Bei einem asymmetrischen Verschlüsselungsalgorithmus gelten 2048-Bit-Schlüssel als sicher.
Das Beispiel des 2048-Bit-Schlüssels gilt für RSA, das seit langem der Standard für asymmetrische Verschlüsselung ist. Die Elliptische-Kurven-Kryptographie ist jedoch ein neueres Konzept, das ebenfalls asymmetrisch ist, aber deutlich kleinere Schlüssel verwendet. Ein 2048-Bit-RSA-Schlüssel bietet die gleiche Sicherheit wie ein 224-Bit-Ellipsenkurvenschlüssel.
Spitze: Die oben genannten Werte gelten für den kommerziellen Einsatz als sicher, für die streng geheime Verschlüsselung verlangt die NSA jedoch stärkere Schlüssel. Es sind RSA-Schlüssel mit mindestens 3072 Bit und 384-Bit-Ellipsenkurvenschlüssel erforderlich. Es ist erwähnenswert, dass ein 3072-Bit-RSA-Schlüssel schwächer ist als ein 384-Bit-Ellipsenkurvenschlüssel.
Asymmetrische Verschlüsselungsalgorithmen sind im Vergleich zu symmetrischen Verschlüsselungsalgorithmen tendenziell relativ langsam. Eine sichere Kommunikation kann über einen unsicheren Kanal erfolgen, wenn beide Parteien ein asymmetrisches Schlüsselpaar generieren und dann öffentliche Schlüssel austauschen. Auf diese Weise können beide Parteien Nachrichten versenden, die nur der andere entschlüsseln kann.
In der Praxis muss mindestens eine der Parteien die Integrität ihres öffentlichen Schlüssels überprüfen. Dies erfolgt über PKI oder Public Key Infrastructure. Dies geschieht in Form von Zertifizierungsstellen, die die Schlüssel anderer signieren, um zu zeigen, dass ihre Identität überprüft wurde. In diesem System muss allen Zertifizierungsstellen vertraut werden; Ohne das wird das System auseinanderfallen.
Einsatz in der Praxis
Asymmetrische Verschlüsselungsalgorithmen werden in der Regel nicht für die Massenverschlüsselung verwendet, insbesondere wenn es um Zeit oder Leistung geht. Sie können zur Verschlüsselung einmaliger Nachrichten, beispielsweise des Inhalts einer E-Mail, verwendet werden. Ihre Fähigkeit, einen unsicheren Kanal abzusichern, macht sie jedoch zu einer ausgezeichneten Wahl für ein Schlüsselaustauschprotokoll, das symmetrische Schlüssel überträgt, die dann für eine effizientere Massenverschlüsselung verwendet werden können.
Dies ist der Anwendungsfall bei TLS, das Sicherheit in HTTPS bietet. Ein Benutzer stellt eine Verbindung zu einem Webserver her. Anschließend tauschen sie öffentliche Schlüssel aus, um kleine Nachrichten untereinander zu verschlüsseln. Der Server generiert dann einen symmetrischen Schlüssel, verschlüsselt ihn mit dem öffentlichen Schlüssel des Benutzers und sendet ihn an ihn. Der Benutzer entschlüsselt den Schlüssel und kann dann den symmetrischen Schlüssel verwenden, um zukünftige Kommunikationen mit dem Server effizient zu verschlüsseln.
Eine Zertifizierungsstelle überprüft im oben genannten Prozess den öffentlichen Schlüssel des Servers. Dadurch kann der Benutzer sicher sein, dass er mit demjenigen kommuniziert, mit dem er kommunizieren möchte. In den meisten Fällen generiert der Benutzer einen Einmalschlüssel, da der Server nicht überprüfen muss, mit welchem Benutzer er kommuniziert.
Abschluss
Asymmetrische Verschlüsselungsalgorithmen verwenden zwei unterschiedliche Schlüssel. Ein Schlüssel dient der Verschlüsselung, der andere der Entschlüsselung. Die Schlüssel sind mathematisch verknüpft und müssen durch einen Schlüsselgenerierungsalgorithmus generiert werden; Zufallswerte funktionieren nicht. In der Regel wird der Verschlüsselungsschlüssel öffentlich weitergegeben, sodass jeder eine Nachricht verschlüsseln kann, die für den Eigentümer des Schlüsselpaars bestimmt ist.
Solange der Entschlüsselungsschlüssel privat bleibt, kann nur der Schlüsseleigentümer mit dem öffentlichen Schlüssel verschlüsselte Nachrichten entschlüsseln. Daher wird die asymmetrische Verschlüsselung oft auch als Public-Key-Kryptographie bezeichnet.