Asymmetrische Schlüssel

Asymmetrische Schlüssel, auch bekannt als öffentliche/private Schlüsselpaare, werden für die asymmetrische Verschlüsselung verwendet. Die asymmetrische Verschlüsselung wird hauptsächlich zum Verschlüsseln und Entschlüsseln von Sitzungsschlüsseln und digitalen Signaturen verwendet. Die asymmetrische Verschlüsselung verwendet Verschlüsselungsalgorithmen mit öffentlichen Schlüsseln .

Algorithmen für öffentliche Schlüssel verwenden zwei verschiedene Schlüssel: einen öffentlichen Schlüssel und einen privaten Schlüssel. Das Element des privaten Schlüssels des Paares muss privat und sicher bleiben. Der öffentliche Schlüssel kann jedoch an jeden verteilt werden, der ihn anfordert. Der öffentliche Schlüssel eines Schlüsselpaars wird häufig über ein digitales Zertifikat verteilt. Wenn ein Schlüssel eines Schlüsselpaars zum Verschlüsseln einer Nachricht verwendet wird, ist der andere Schlüssel aus diesem Paar erforderlich, um die Nachricht zu entschlüsseln. Wenn also der öffentliche Schlüssel von Benutzer A zum Verschlüsseln von Daten verwendet wird, kann nur Benutzer A (oder jemand, der Zugriff auf den privaten Schlüssel von Benutzer A hat) die Daten entschlüsseln. Wenn der private Schlüssel von Benutzer A zum Verschlüsseln eines Datenteils verwendet wird, entschlüsselt nur der öffentliche Schlüssel von Benutzer A die Daten, was bedeutet, dass Benutzer A (oder jemand mit Zugriff auf den privaten Schlüssel von Benutzer A) die Verschlüsselung durchgeführt hat.

Wenn der private Schlüssel zum Signieren einer Nachricht verwendet wird, muss der öffentliche Schlüssel aus diesem Paar verwendet werden, um die Signatur zu überprüfen. Wenn Alice beispielsweise eine digital signierte Nachricht senden möchte, würde sie die Nachricht mit ihrem privaten Schlüssel signieren, und die andere Person könnte ihre Signatur mithilfe ihres öffentlichen Schlüssels überprüfen. Da vermutlich nur Alice Zugriff auf ihren privaten Schlüssel hat, deutet die Tatsache, dass die Signatur mit Alices öffentlichem Schlüssel überprüft werden kann, darauf hin, dass Alice die Signatur erstellt hat.

Leider sind Public Key-Algorithmen sehr langsam, etwa 1.000 Mal langsamer als symmetrische Algorithmen. Es ist unpraktisch, sie zum Verschlüsseln großer Datenmengen zu verwenden. In der Praxis werden Algorithmen mit öffentlichen Schlüsseln verwendet, um Sitzungsschlüssel zu verschlüsseln. Symmetrische Algorithmen werden für die Verschlüsselung/Entschlüsselung der meisten Daten verwendet.

Da das Signieren einer Nachricht die Nachricht in der Tat verschlüsselt, ist es nicht sinnvoll, Algorithmen für die Signatur öffentlicher Schlüssel zum Signieren großer Nachrichten zu verwenden. Stattdessen wird aus der Nachricht ein Hash mit fester Länge erstellt, und der Hashwert wird signiert. Weitere Informationen finden Sie unter Hashes und digitale Signaturen.

Jeder Benutzer verfügt in der Regel über zwei öffentliche/private Schlüsselpaare. Ein Schlüsselpaar wird zum Verschlüsseln von Sitzungsschlüsseln und das andere zum Erstellen digitaler Signaturen verwendet. Diese werden als Schlüsselaustauschschlüsselpaar bzw . Signaturschlüsselpaar bezeichnet.

Beachten Sie, dass Schlüsselcontainer, die von den meisten Kryptografiedienstanbietern (CsPs ) erstellt werden, zwei Schlüsselpaare enthalten, dies jedoch nicht erforderlich ist. Einige CSPs speichern keine Schlüsselpaare , während andere CSPs mehr als zwei Paare speichern.

Alle Schlüssel in CryptoAPI werden in CSPs gespeichert. CSPs sind auch für das Erstellen der Schlüssel, deren Zerstörung und ihre Verwendung für eine Vielzahl von kryptografischen Vorgängen verantwortlich. Das Exportieren von Schlüsseln aus dem CSP, damit sie an andere Benutzer gesendet werden können, wird unter Kryptografieschlüsselspeicher und Exchange erläutert.