Zuletzt aktualisiert am 25. Dezember 2023 von Lars
SSL, Zertifikat. Was hat es damit genau auf sich? In diesem Artikel erfährst du mehr.
Warum Verschlüsselung?
Du kannst den Sinn der Verschlüsselung am Besten am Beispiel eines Online-Shops verstehen. Gehen wir davon aus, er wäre im Internet unter der Adresse "toller-shop-ch" zu erreichen.
Wenn du deine Daten mit dem Online-Shop unverschlüsselt austauscht, kann es sein, dass ein Betrüger den Datenverkehr abhört und so Zugang zu wichtigen Daten, wie zum Beispiel die deiner Kreditkarte, bekommt. Nicht gut, oder?
Anders ist es, wenn der Datenverkehr verschlüsselt wird. Man verwendet hier das Protokoll SSL. Es steht für Secure Sockets Layer. Streng genommen ist SSL nicht mehr aktuell und in der Praxis wird TLS (Transport Layer Security) eingesetzt. SSL ist aber die geläufige Bezeichnung geblieben.
Wie wird SSL eingerichtet?
Um SSL einzurichten, benötigt der Webshopbetreiber ein Zertifikat. Dazu beantragt er für seinen Webserver bei einer CA (Certification Authoritation - Zertifizierungsstelle) ein Zertifikat mit einer CSR (Certificate Signing Request - Zertifikatsanforderung). Bei der Erstellung des CSR, wird auch der sogenannte Private Key verwendet. Die CA prüft die Identität des Antragstellers. Ist alles OK, stellt die CA das Zertifikat aus. Das Zertifikat erhält den sogenannten Public Key, der damit dem Antragssteller fest zugeordnet ist.
Die CSR enthält Informationen (z. B. Name, Unternehmen, Land) und auch den öffentlichen Schlüssel, der im Zertifikat eingefügt wird.
Ablauf der verschlüsselten Verbindung mit SSL
Wie läuft das jetzt ab? Du rufst die Internet-Adresse des Webshops nun mit "https" statt wie bisher "http" am Anfang auf. Der Browser stellt damit die Anfrage an die Website. Der Server antwortet mit dem Zertifikat samt seinem Public Key. Der Browser prüft nun, ob man der zugehörigen CA vertrauen kann.
Dein Browser hat eine Liste von sogenannten Root-Zertifikaten, die wiederum definieren, welchen Zertifizierungsstellen vertraut werden kann. Dadurch wird auch allen Zertfikaten vertraut, die von diesen vertrauenswürdigen Zertifizierungsstellen herausgegeben werden.
Früher kam es durchaus ab und zu vor, dass der Browser wegen fehlender Updates keine aktuellen Root-Zertifikate hatte und die Verbindung fälschlicherweise abgelehnt wurde. Das habe ich in jüngster Zeit allerdings nicht mehr erlebt.
Die CA überprüft bei dieser Anfrage ausserdem, ob der Public Key zum Private Key passt. Dies kann er aufgrund mathematischer Verfahren, ohne den Private Key zu kennen. Wenn ja, kann der Browser die verschlüsselte Verbindung starten.
Wie hängen Private und Public Key zusammen?
Den genauen Zusammenhang zu verstehen, setzt ziemlich tiefgreifende mathematische Kenntnisse voraus. Es hängt damit zusammen, dass das Produkt zweier grosser Primzahlen nur schwer in seine Faktoren zu zerlegen ist.
- Verschlüsselt werden kann mit dem Private Key und Public Key.
- Entschlüsselt werden kann ausschliesslich mit dem Private Key, der nur dem Server bekannt ist.
- Kennt man den Public Key kann man daraus nicht den Private Key herausbekommen (zumindest nicht mit derzeit verfügbaren Mitteln und wenn die Schlüssellänge hinreichend gross ist).
Public Key und private Key. Etwas genauer bitte!
Es wird also ausgenutzt, dass das Produkt zweier grosser Primzahlen nur schwer in seine Faktoren zu zerlegen ist. Wer sich intensiver mit den mathematischen Verfahren auseinander setzen will, sollte sich die Videos von Prof. Christian Spannagel von der PH Heidelberg dazu anschauen.
In diesem Video erklärt er den Zusammenhang zwischen Public und Private Key mathematisch. RSA ist das Krypto-Verfahren hinter SSL.
Der öffentliche Schlüssel ist für jedermann aus dem Zertifikat lesbar, der private muss jedoch geheim gehalten werden.
Der Public Key (auch von anderen) kann von einem beliebigen Absender zur Verschlüsselung einer Klartext-Nachricht verwendet werden. Es ist aber nicht möglich, mit ihm den Klartext zurück zu gewinnen. Dazu benötigt man zwingend den Private Key.
Dieses Einführungsvideo kommt ohne mathematischen "Ballast" aus:
Zertifikate von Let's Encrypt
Let's Encrypt ist eine relativ junge CA (seit 2015). Sie hat sich zur Aufgabe gemacht, verschlüsselte Verbindungen zum Standard zu machen. Die Zertifikate sind daher kostenlos. Inzwischen (2019) bieten die meisten Webhoster diese kostenlose Zertifikate Ihren Kunden an. Mehr zu Let's Encrypt findest du bei Wikipedia.
So, und nun noch ein Video zum Thema von mir:
Hallo, hier schreibt Lars. Dipl-Ing. Ingenieurinformatik (FH). Seit Jahrzehnten in der IT tätig. Geprüfter (und begeisterter) Webmaster. Ebenso begeisterter Windows-, Apple-, und Office-User. Ich schreibe über alle möglichen Themen rund um IT. Mehr über mich erfährst du hier: Über mich. Danke für deinen Besuch!