Asymmetrische Verschlüsselung 1
Das Prinzip der asymmetrischen Verschlüsselung beruht also auf zwei verschiedenen Schlüsseln, dem sogenannten Schlüsselpaar (engl. key pair). Die beiden Schlüssel eines Schlüsselpaars nennt man öffentlichen und privaten Schlüssel (engl. public und private key).
Da für den Verschlüsselungsvorgang nicht derselbe Schlüssel verwendet wird wie für den Entschlüsselungsvorgang, spricht man von einem asymmetrischen Verfahren.
Schlüsselpaar
Jede Person besitzt ein eigenes Schlüsselpaar, so auch Bob. Die beiden Schlüssel, die dieses Schlüsselpaar bilden, sind mathematisch verwandt. Der private Schlüssel lässt sich jedoch nicht in sinnvoller Zeit aus dem öffentlichen Schlüssel berechnen.
Bobs öffentlicher Schlüssel entspricht also dem Bügelschloss aus unserem ersten Beispiel. Bobs privater Schlüssel ist der Schlüssel, der zum Bügelschloss passt. Das Schloss kann (in geöffneter Form natürlich) bei einer vertrauenswürdigen Stelle (Trent) deponiert werden, wo es von Alice abgeholt werden kann. Den Schlüssel behält Bob stets für sich.
Verschlüsselung
In der folgenden Abbildung sieht man auf der linken Seite, dass Alice bei der Verschlüsselung den öffentlichen Schlüssel von Bob (und nicht den eigenen) verwendet. Dieser öffentliche Schlüssel enthält keine geheime Information und ist für alle Leute zugänglich (z.B. via eine vertrauenswürdige Stelle), somit können alle eine Nachricht für Bob verschlüsseln.
Entschlüsselung
In derselben Abbildung ist zu sehen, dass Bob bei der Entschlüsselung seinen privaten Schlüssel verwenden muss. Somit ist sichergestellt, dass nur Bob die Nachricht entschlüsseln kann.
Achtung
Um Verwechslungen zu vermeiden, spricht man bei der symmetrischen Verschlüsselung vom geheimen Schlüssel (engl. secret key), während man bei asymmetrischen Verfahren vom privaten Schlüssel spricht und nicht vom geheimen Schlüssel, weil jede involvierte Person ein eigenes Schlüsselpaar und somit einen eigenen privaten Schlüssel besitzt.
Asymmetrische Verschlüsselung
- Überlegen Sie sich, wie die Verschlüsselung funktioniert, wenn ein Dokument an verschiedene Leute versendet wird. Machen Sie sich dazu eine Skizze.
- Welche Nachteile erkennen Sie?
⭐️ RSA Algorithmus
Der RSA Algorithmus ist der aktuell am weitesten verbreitete asymmetrische Verschlüsselungsalgorithmus und wird etwa für die SSL/TLS Verschlüsselung beim HTTPS-Protokoll verwendet. Der Algorithmus wurde 1977 von Ronald Rivest, Adi Shamir und Leonard Adlerman unter dem Namen RSA entwickelt und publiziert2.
Funktionsweise
Die Funktionsweise basiert darauf, dass es leicht ist, zu berechnen, aber praktisch unmöglich, ohne den privaten Schlüssel d
die Umkehrfunktion zu berechnen.
öffentliche Zahl | |
öffentlicher Schlüssel des Empfängers | |
privater Schlüssel des Empfängers | |
Klartext | |
Geheimtext |
Verschlüsselung
Zur Verschlüsselung berechnet Bob den Geheimtext c
:
Wobei mod
der Ganzzahlige Rest bei der Division mit n
darstellt. Beispiel: , da .
Die Zahl ist das Produkt von zwei verschiedenen Primzahlen und , diese sind geheim. Wie können und geheim sein, wenn doch öffentlich ist? Dies beruht nur darauf, dass die Primfaktorzerlegung von zu rechenaufwendig ist, da sehr gross ist (z.B. 1024
Bit lang).
Für die Zahl e
muss gelten
Hierbei ist
die Anzahl der zu n teilerfremden Zahlen, die kleiner als n sind.
Entschlüsselung
Der Empfänger hat als privaten Schlüssel eine Zahl mit
daher
für irgend ein .
Ist , so gilt nach einem Satz von Euler für alle Zahlen mit und für alle natürlichen Zahlen :
Zur Entschlüsselung berechnet der Empfänger also
und erhält damit den Klartext .
⭐️ RSA Schlüssellänge
Die RSA Schlüssel haben standardmässig 1024
oder 2048
bits, wobei Schlüssel mit 1024
bits mittelfristig als knackbar erachtet werden, so dass die Industrie heute oft mindestens 2048
bits voraussetzt.
- Quelle: rothe.io↩
- Quelle: techtarget.com↩