t3n News Software

Was ist eigentlich ein SSL-Zertifikat?

Was ist eigentlich ein SSL-Zertifikat?

Es gibt viele Maßnahmen, um Benutzer zu schützen – eine davon sind sogenannte SSL-Zertifikate. Wir zeigen euch, was diese Zertifikate sind und warum ihr sie manchmal auf eurem Computer findet.

Was ist eigentlich ein SSL-Zertifikat?
SSL heisst eigentlich TSL. (Grafik: t3n)

Man kennt das – als ambitionierter Internet-User stößt man fast täglich auf Begriffe, die man schon tausendmal gelesen, bei denen man aber noch nie wirklich verstanden hat, was genau sich dahinter verbirgt. Oder man hat nur eine ungefähre Ahnung, worum es geht und möchte durch das eigene Halbwissen nicht unangenehm auffallen. Wir bringen Licht ins Dunkel und erklären die Begriffe und Plattformen auf leicht verständliche Weise. In der Vergangenheit haben wir uns schon reddit, Tumblr, GitHub, Medium.com, Markdown und dem Thema Social Intranet gewidmet. Heute erklären wir euch, was es mit SSL-Zertifikaten auf sich hat.

Crash-Kurs SSL-Zertifikat

Zuallererst: SSL steht für „Secure Sockets Layer“ und verschlüsselt die Kommunikation von Daten, die von deinem Computer zu einem Server transportiert werden. Oft sieht man SSL/TLS, wobei die Abkürzung TLS für „Transport Layer Security“ steht. Bei TLS handelt es sich um nichts anderes als um die standardisierte Weiterentwicklung des „Secure-Sockets-Layer“-Protokolls von Netscape.

Eine Verschlüsselung findet auf den zu übertragenden Daten zwischen Web-Browser und Server statt, und die Details dazu findet man in einem entsprechenden SSL-Zertifikat. Anderes ausgedrückt: Das SSL-Zertifikat ist wie ein Vertrag zwischen Web-Browser und Web-Server, in dem die Konditionen definiert sind. Die Hauptaufgaben von TLS sind:

  1. Die Authentifizierung der Kommunikationspartner. Dabei kommen asymetrische Verschlüsselungsverfahren zum Einsatz.
  2. Die vertrauliche Ende-zu-Ende-Datenübertragung mit Hilfe symmetrischer Verschlüsselungen. Erreicht wird das mit der Nutzung eines gemeinsamen Sitzungsschlüssels.
  3. Die Sicherstellung der Integrität der transportierten Daten.

Ein digitales SSL-Zertifikat ist also ein digitaler Datensatz, der bestimmte Eigenschaften von Personen oder Objekten bestätigt und dessen Authentizität und Integrität durch kryptographische Verfahren geprüft werden kann. Das digitale Zertifikat enthält alle benötigten Informationen, die für diese Prüfung gebraucht werden.

Wie funktioniert ein TLS/SSL-Zertifikat?

Dein Client baut eine Verbindung zu einem Server auf und für gewöhnlich authentifiziert sich zuerst der Server gegenüber dem Client mit einem Zertifikat. Danach schickt entweder der Client dem Server eine – mit dem öffentlichen Schlüssel des Servers verschlüsselte – geheime Zufallszahl oder der Server und dein Client berechnen mit dem Diffie-Hellman-Schlüsselaustausch-Verfahren ein gemeinsames Geheimnis. Aus diesem Geheimnis wird dann ein Schlüssel errechnet, der in weiterer Folge benutzt wird, um die Kommunikation mit einer symmetrischen Verschlüsselung zu codieren.

Ein SSL-Zertifikat ist also nicht anderes als ein Übereinkommen zwischen deinem Client und einem Server, um deine an den Server zu übertragenden Daten verschlüsseln zu können.

ssl-zertifikat
SSL/TLS-Verschlüsselung ist auf dieser Website aktiv. (Grafik: t3n)

Ob SSL/TLS aktiviert ist, sieht man übrigens auch an einem kleinen Schloss-Icon, dass bei verschiedenen Browsern an verschiedenen Stellen auftritt. Meistens wird das SSL/TLS-Schloss aber in der Adressleiste oder am unteren Rand des Browsers angezeigt.

Setzt ihr SSL-Zertifikate auf euren Servern ein?

Vorheriger Artikel Zurück zur Startseite Nächster Artikel
8 Antworten
  1. von Dominic am 21.11.2013 (10:26 Uhr)

    Ich benutze SSL-Zertifikate von StartSSL und lasse mir diese von den Jungs bei Uberspace.de einbinden.

    Antworten Teilen
  2. von Martin am 21.11.2013 (11:16 Uhr)

    Bei einem Artikel über SSL Zertifikate hätte ich mir mindestens einen Absatz über die Nutzung in Browsern gewünscht. Über vorinstallierte "vertrauensvolle" Zertifikate und die (mafiösen) Strukturen die zwischen Zertifikatsstellen und Browserherstellern herrschen. Das Chrome z.B. bei selbst erstellen SSL Zertifikaten eine erschreckend rote Warnseite anzeigt oder Firefox es einem unerfahrenen User mit einer unsäglichen Klickstrecke nahezu unmöglich macht die Seite zu betreten ist doch wirklich mehr als unschön für jeden kleinen Webmaster. Wer keine Lust oder kein Geld hat, sich für 100€+ pro Jahr für jede Domain ein SSL Zertifikat zu leisten, der hat keine Chance auf ein userfreundliches Erlebnis.
    Das Zertifikatsstellen eben nicht die vorgetäuschte Sicherheit bieten haben die Skandale der Vergangenheit ja bereits gezeigt.

    Antworten Teilen
  3. von Ich am 21.11.2013 (11:32 Uhr)

    @Martin,
    benutz doch die SSL-Zertifikate von StartSSL.com! Die sind in der Basisversion kostenlos und funktionieren einwandfrei, auch auf mobilen Browsern. Alternativ fangen kostenpflichtige SSL-Zertifikate bei 15 € (z.B. von PSW-Group) an. Der Preis sollte also wirklich kein Argument sein. Sobald eine Seite z.B. einen Benutzerlogin erlaubt setze ich grundsätzlich SSL ein und lass auch nur bei einer SSL-Verbindung einen Login zu.

    Antworten Teilen
  4. von Mario Janschitz am 21.11.2013 (11:35 Uhr)

    Hallo Martin! Danke für deinen Kommentar.
    Wenn ich deinen Beitrag lese, dann haben deine Probleme nichts mit "Lust und Geld" zu tun sondern lassen zum Beispiel eher den Schluss auf „bad neighborhood“ zu.

    Antworten Teilen
  5. von Mathis am 21.11.2013 (13:18 Uhr)

    @Martin,
    dass kann ich jetzt nicht ganz nachvollziehen.
    Wir selber setzen auch SelfSigned Zertifikate und es ist auch relativ einfach als "Webmaster" diese SelfSigned-Certs auf dem Rechner zu installieren und beim nächsten Aufruf kommt diese Meldung nicht mehr.

    Zu den Grundlagen von SSL finde gehört aber auch (gerade durch die NSA-Affäre noch mehr hervorgehoben) das PFS (Perfect Forward Secrecy), normales SSL ist ja nicht mehr so schwer zu knacken...

    Antworten Teilen
  6. von Kahner am 21.11.2013 (14:27 Uhr)

    Guter Einsteigerartikel, allerdings hätte ich mir gerade bei der NSA-Debatte noch einen Absatz zum Thema *Sicherheit* gewünscht.

    Es gibt verschiedene Szenarien, die Sicherheit einer SSL/TLS-Verbindung zu beeinträchtigen. Wobei allerdings gleich nachgeschoben sei, dass hier nicht das zugrunde liegende mathematische Prinzip (RSA/DH/ECC), sondern diverse Schwächen in der Implementierung das Problem sind.

    Ich denke, keiner im Forum (ich auch nicht) ist in der Lage, ohne deutlichen Aufwand die Validität der obigen Verbindung zur Deutschen Bank trotz Extended-Validation-Zertifikat zu überprüfen, also ob sich nicht jemand "dazwischen geklemmt hat" - a.k.a "Man-In-The-Middle-Attack" - der meine Verbindungsdaten im Klartext mitlist.

    Auch wenn TLS als sicherer gilt als SSL, so ist das entscheidende Problem, nämlich die fehlende Validierung der Gegenstelle durch ein weiteres Root-CA derzeit nicht gelöst.

    Vereinfacht gesagt: wer von uns kann ohne extra Recherche sagen, bei welchem Root-CA sich die Deutsche Bank hat zertifizieren lassen? Es ist überhaupt kein Problem ein identisches EV-Zertifikat der Deutschen Bank zu generieren, dass aber vom Root-CA eines Landes zertifiziert wurde, in dass wir nicht mal in den Urlaub fahren würden (Nord-Korea, Pakistan, Syrien, Weißrussland etc.)
    Sobald der Browser vom Root-CA oder einer seiner unzähligen Subs ein OK bekommt, reicht dies für eine sichere Verbindung. DNS-/IP-Spoofing macht den Rest. Siehe auch (http://www.spiegel.de/netzwelt/netzpolitik/raetselhafter-umweg-unbekannte-leiten-internet-datenstrom-durch-weissrussland-a-934810.html)

    Übrigens - die Liste der *Trusted Root-CAs* wird von dem Betriebssystemhersteller (MS, Apple, etc.) verwaltet und im Rahmen der Update-Dienste mit bearbeitet. Dieser entscheidet also, welches CA hier erst einmal als vertrauensvoll gilt. Auch Änderungen durch den User lassen sich so später wieder rückgängig machen.
    Nur Firefox ist da ein Ausnahme, da dieser seine eigene Liste führt.

    Ich empfehle in diesem Zusammenhang ein Browser-AddOn wie Certificate Patrol (FireFox)(http://patrol.psyced.org/), dass einmal freigegebene Zertifikate auf Änderungen prüft.

    Aber das Problem bleibt - Das bisherige hierarchische Root-CA-Konzept lässt sich mit Fremdzertifikaten knacken, da man nicht ohne zusätzlichen Aufwand weiß, bei welchem der sicherlich über 2.000 Root-CA und Subs der Inhaber tatsächlich zertifiziert ist.

    Danke für's Lesen bis hierher

    Antworten Teilen
  7. von Martin am 21.11.2013 (15:02 Uhr)

    Schön das es zu einer Diskussion kommt, ich versuche nochmal zu erläutern worum es mir ging.

    @Mathis: Natürlich kann ich mein selbst erstelltes Zertifikat importieren, aber das bringt meinen Besuchern erstmal nichts. Welcher normale User weiß denn schon wie das funktioniert?

    @Mario: Könntest Du das erläutern, den Zusammenhang verstehe ich nicht. Es ging mir um selbstgenerierte Zertifikate, die dem Enduser vom Browser als "böse" dargestellt werden. Obwohl sie schlicht und ergreifend z.B. von "snakeoil" sind ;)
    Das die Verschlüsselung im Browser vermischt wird mit Identifikation der Anbieteridentität ist für manche Seiten gut, aber für kleine Hobbyprojekte unschön. Wer will seinen Usern das ernsthaft anbieten, wenn er nur Verschlüsselung will?
    Und wer genau bestimmt auf welche Weise, wessen Root Zertifikate im Browser hinterlegt sind? Das sind doch die Browser Hersteller - oder irre ich da? D.h. als Zertifizierungsstelle muß ich mich beim Hersteller einkaufen und im Gegenzug können diese dann SSL Zertifikate signieren.

    @Ich: startssl.com kannte ich nicht, werde ich mir anschauen. Danke für den Link! Ich denke aber schon das der Preis eine Rolle spielt, denn ein signiertes Zertifikat bringt von sich aus erstmal nicht mehr Sicherheit (im Sinne von Verschlüsselung) als ein selbst erstelltes.

    Ob das aber letztlich in einen Grundlagen Artikel gehört, weiß ich jetzt auch gerade nicht mehr ;-)

    Antworten Teilen
  8. von Lutz Kohl am 22.11.2013 (08:36 Uhr)

    Wenn man keine Lust hat sich mit SSL Zertifikaten rumzuärgern, aber trotzdem schnell ein einfaches Backend mit sicherer Kommunikation benötigt, so kann man auch Backend as a Service Anbieter wie http://www.apiomat.com nutzen. Dort kann man sich ein individuelles Backend anlegen und bekommt https-Verschlüsselung bereits im kostenlosen Paket. Siehe auch http://t3n.de/news/backend-service-perfekt-mobile-483451/

    Antworten Teilen
Deine Meinung

Bitte melde dich an!

Du musst angemeldet sein, um einen Kommentar schreiben zu können.

Jetzt anmelden

Mehr zum Thema
Das Ende kostenpflichtiger SSL-Zertifikate: Amazon folgt dem Beispiel von „Let‘s Encrypt“
Das Ende kostenpflichtiger SSL-Zertifikate: Amazon folgt dem Beispiel von „Let‘s Encrypt“

Kunden der Amazon Web Services können bald kostenlos SSL- und TLS-Zertifikate für ihre Website erhalten. Das neue Feature kümmert sich auch automatisch darum, die Zertifikate zu erneuern, bevor … » weiterlesen

SHA-2 in den Startlöchern: Umstellung der SSL-Zertifikate beginnt
SHA-2 in den Startlöchern: Umstellung der SSL-Zertifikate beginnt

Künftig können SSL-Zertifikate, die mit dem Hash-Algorithmus SHA-1 signiert wurden, nicht mehr als sicher eingestuft werden. Bis Anfang 2017 haben Website-Betreiber Zeit ihre SSL-Zertifikate mit … » weiterlesen

Was ist eigentlich ... Arduino?
Was ist eigentlich ... Arduino?

Fast jeder hat heute schonmal von Arduino gehört  – aber was genau steckt hinter dem Begriff? Arduino ist mehr als ein Stück Hardware. Wir erklären den Begriff leicht verständlich. » weiterlesen

Alle Hefte Jetzt abonnieren – für nur 35 €

Kennst Du schon unser t3n Magazin?