Public Key Infrastructure

Eine Public Key Infrastructure (deutsch: Öffentliche-Schlüssel-Infrastruktur; kurz: PKI) dient zur Verwaltung und Verteilung von Schlüsseln und digitalen Zertifikaten in öffentlich zugänglichen Netzwerken, um eine sichere digitale Kommunikation zu gewährleisten. Der Austausch von Daten, Informationen und Nachrichten via Internet erfolgt in einer PKI durch ein Schlüsselpaar, das aus einem öffentlichen (public key) und einem privaten Schlüssel (private key) besteht. Die Schlüssel sind über eine mathematische Funktion miteinander verbunden, sodass Daten, die mit dem öffentlichen Schlüssel verschlüsselt wurden, nur mit dem privaten Schlüssel entschlüsselt werden können (Einwegfunktion).[1] Wenn ein Sender und ein Empfänger vertrauliche Daten austauschen wollen, übernehmen verschiedene Teile der PKI die Überprüfung der versendeten Daten (Integrität) sowie der Kommunikationsteilnehmer mithilfe des Schlüsselpaares (Authentifizierung).

Die Public-Key-Infrastruktur stellt dazu Zertifikate aus, gibt sie an die Kommunikationsteilnehmer weiter und prüft die Zertifikate auf Echtheit. Mit dieser mehrstufigen Prüfung werden Sender und Empfänger authentifiziert und die zu übermittelnden Daten einem Integritätstest unterzogen. Public Key Infrastrukturen sind eine Kombination aus symmetrischen und asymmetrischen Verschlüsselungsverfahren, die mit zwei verschiedenen Schlüsseln arbeiten und das Schlüsselaustauschproblem in der Kryptografie anhand einer informationstechnischen Infrastruktur und einer Zertifizierungsstelle lösen wollen, die Daten und Schlüssel in einem automatisierten Prozess digital signiert. Das Standardprotokoll im Internet wird als PKIX (Public Key Infrastructure Exchange) bezeichnet, es existieren auch ähnliche Ansätze wie Let's encrypt oder OpenPGP.

Allgemeine Informationen zum Thema

Die sichere Übermittlung von Nachrichten zwischen Sendern und Empfängern war spätestens mit der Entwicklung des Internets ein wichtiges Thema, das auch die technikaffine Öffentlichkeit interessierte. Die Bedeutung des Datenschutzes und der Privatsphäre stieg mit der technologischen Entwicklung rasant an – insbesondere im E-Commerce, B2B-Handel und später auch im Online Banking. Im Fokus standen nicht nur die Verschlüsselung von Daten, sondern auch die Bedrohung durch Kommunikationsteilnehmer, die sich mithilfe computergestützter Verfahren in die Übermittlung von Daten einklinken konnten – etwa um Passwörter zu knacken, Kundendaten zu kopieren oder ganze Systeme lahmzulegen.[2]

Während die übermittelten Daten bereits seit den 50er Jahren mit symmetrischen Verfahren verschlüsselt wurden, wurde die Notwendigkeit einer Überprüfung der Kommunikationsteilnehmer evident: Denn eine One-to-One-Kommunikation zwischen Regierungsstellen lässt sich relativ einfach schützen, wenn der Schlüssel geheim gehalten wird, aber eine One-to-Many-Kommunikation im World Wide Web erfordert schon alleine aufgrund der Menge der Teilnehmer eine Schlüsselverteilung und- verwaltung. Um die tatsächlichen Identitäten von Sendern und Empfänger zu prüfen, wurden neue asymmetrische sowie hybride Verfahren erfunden und getestet. Eines der bekanntesten Verfahren, das noch heute verwendet wird, ist das RSA-Kryptosystem, welches in 1977 veröffentlicht wurde.[3]

Die Begriffe Public-Key-Infrastruktur und Public Key Verschlüsselung umfassen verschiedene Ansätze, die sich in den letzten fünfzig Jahren teils parallel entwickelten und aufeinander aufbauen. Einige Beispiele für PKIs oder ähnliche Infrastrukturen und Sicherheitsprotokolle:

Funktionsweise einer Public Key Infrastruktur

Public Key Infrastrukturen zeichnen sich insbesondere durch eine dritte, vertrauenswürdige Partei (engl.: Trusted Third Party) aus, die für die Vertraulichkeit von übermittelten Nachrichten einsteht. Diese Partei wird in einer PKI als Certification Authority (CA) bezeichnet. Sie ist der Dreh- und Angelpunkt für die Verwaltung von Zertifikaten und kann auch selbst zertifiziert werden – beispielsweise von Internetnutzern (Web of Trust), Internetanbietern (ISP) oder einer übergeordneten Zertifizierungsstelle (IETF; Internet Engineering Task Force).

Die wichtigsten Komponenten einer Public Key Infrastruktur:[4]

  • Certification Authority (CA): Die CA befindet sich im Besitz des Schlüsselpaares, wozu der geheime Schlüssel ebenfalls gehört. Beide Schlüssel stehen in einem mathematischen Verhältnis zueinander, beispielsweise über eine kryptografische Hashfunktion. Die CA zeichnet jedes digitale Zertifikat mithilfe des geheimen Schlüssels aus, bevor sie es an Personen oder Unternehmen ausgibt oder verifiziert. Die Personen oder Unternehmen kennen den geheimen Schlüssel nicht, ihnen ist nur der öffentliche Schlüssel bekannt.
  • Registration Authority (RA): Die RA ist für die Registrierung von Personen und Unternehmen zuständig. Sie erlaubt die Nutzung von digitalen Zertifikaten für bestimmte Anwendungsfälle und prüft auch die Zertifikate, bevor sie von der CA ausgegeben werden.
  • Verzeichnis- und Zeitstempeldienst: Hier werden alle Zertifikate und ihre öffentlichen Schlüssel gespeichert. Jeder kann diesen Dienst nach Zertifikaten durchsuchen, um zu prüfen, ob die Zertifikate bestimmter Personen oder Unternehmen echt sind – analog zu einer Whitelist. In Echtzeit können die Zertifikate auch auf ihre zeitliche Gültigkeit hin überprüft werden, um abgelaufene Zertifikate auszuschließen.
  • Certificate Revocation List (CRL): Die CRL generiert Listen von ungültigen und abgelehnten Zertifikaten, deren Schlüssel nicht mehr sicher sind. Auch wenn die Identität des Senders oder Empfängers nicht eindeutig ist, können Zertifikate abgelehnt werden. In solchen Fällen wird das Zertifikat zunächst gesperrt und überprüft, bevor es endgültig widerrufen wird. Die CRL ist eine Blacklist für Zertifikate und damit verknüpfte digitale Signaturen.
  • X.509-Zertifikate: Die digitalen Zertifikate im PKI-System werden als X.509-Zertifikate bezeichnet und sind standardisiert. Die Beglaubigung eines Schlüssels ist stets an einen Sender oder Empfänger gebunden, etwa eine Email-Adresse oder einen Domaineintrag (DNS). Durch die hierarchische Struktur der Zertifizierung soll die Vertraulichkeit gewährleistet werden. X.509-Zertifikate beinhalten verschiedenste Daten, die die kryptologische Hashfunktion, die Verschlüsselung des öffentlichen Schlüssels sowie die Gültigkeit der digitalen Signaturen betreffen. In der neuesten Version X.509v3 können auch Erweiterungen für bestimmte Anwendungsfälle implementiert werden.

Soll nun eine Nachricht verschlüsselt und verschickt werden, verwendet der Sender den öffentlichen Schlüssel des Empfängers. Der Sender signiert diese Nachricht und nutzt für die digitale Signatur seinen privaten Schlüssel. Der Empfänger entschlüsselt die Nachricht wiederum mit seinem privaten Schlüssel. Die mitgelieferte Signatur wird ebenfalls entschlüsselt – der öffentliche Schlüssel des Senders kann hierzu benutzt werden. Dank der gesonderten Übertragung der digitalen Signatur kann der Empfänger den Sender authentifizieren und dank des privaten Schlüssels des Empfängers kann nur er die Nachricht im Klartext lesen.[5] Die Bereitstellung der Zertifikate, die digital signiert werden, wird ein sicherer Kommunikationskanal geschaffen, den nur vertrauenswürdige Sender und Empfänger benutzen dürfen. Allerdings darf die Zertifizierungsstelle selbst nicht kompromittiert sein – ein wesentliches Problem des hierarchischen Modells.

Bedeutung für die Programmierung

PKI-Systeme zählen prinzipiell zu den sichersten Verfahren der digitalen Datenübertragung. Der aktuelle Stand dieser Arten von Verschlüsselungsverfahren und Methoden zur Prüfung der Integrität und Authentizität ist allerdings unübersichtlich: Je nach Anwendungsfall sind verschiedene Systeme im Gebrauch und die Vielfalt der Anbieter macht die Public Key Verschlüsselung für den Endnutzer mitunter wenig praktikabel. Denn Sender und Empfänger müssen sich auf ein Verfahren festlegen, was in großen, verteilten Netzwerken wie dem World Wide Web problematisch sein kann.

Das Resultat besteht darin, dass es derzeit unterschiedliche Arten von Vertrauensmodellen in der digitalen Kommunikation gibt, von denen sich noch keines durchgesetzt hat. Zu erwähnen wären folgende Ansätze:

  • Strict Hierachy: Eine übergeordnete Instanz ist für die Stammzertifikate zuständig. X.509v3 arbeitet mit diesem Modell.
  • Loose Hierarchy: Mehrere Instanzen sind für Verteilung der Zertifikate verantwortlich. Die Kette der Zertifikate kann unterschiedlich angeordnet werden, darf aber nicht zu komplex sein.
  • Hub and Spoke: Wenn einzelne Zertifizierungsstellen sich gegenseitig beglaubigen wollen, wird eine Brückeninstanz verwendet, die den Austausch zwischen gleichberechtigten Zertifikatsnutzern und -erstellern regelt.
  • Web of Trust: Vertrauen in Form von Zertifikaten oder digitalen Signaturen auszusprechen, ist im Web of Trust die Aufgabe der Endnutzer. OpenPGP basiert auf diesem Prinzip.

Lediglich einzelne Anwendungen von hybriden Verschlüsselungsverfahren wie HTTPS, SSL oder TLS werden in der Praxis häufig genutzt. So gilt HTTPS als Standard im E-Commerce, Banking und B2B-Handel, in der privaten Email-Kommunikation sind Public Key Verfahren dagegen seltener anzutreffen, da Empfänger einer Email diese nur lesen können, wenn sie an dem gleichen Verfahren wie der Absender teilnehmen. Generell ist der Markt an PKIs diversifiziert. Es bleibt abzuwarten, welche Art von PKI-System das Internet der Zukunft vor Identitätsdiebstahl, Man-in-the-Middle-Angriffen und Eavesdropping (deutsch: Lauschangriff) schützen wird.

Einzelnachweise

  1. Asymmetrische Verschlüsselung philipphauer.de. Abgerufen am 31.08.2016
  2. PKI – Public Key Infrastruktur ftp.tik.ee.ethz.ch. Abgerufen am 31.08.2016
  3. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems people.csail.mit.edu. Abgerufen am 31.08.2016
  4. IT-Sicherheit: Digitale Signatur, Zertifikate, PKI, Sicherheitsprotokolle -rn.informatik.uni-bremen.de. Abgerufen am 31.08.2016
  5. PKI (Public-Key-Infrastruktur) searchsecurity.de. Abgerufen am 31.08.2016

Weblinks