05.11.2013 Aufrufe

Zahn - Unix-Netzwerkprogramminerung mit Threads, Sockets und SSL

Zahn - Unix-Netzwerkprogramminerung mit Threads, Sockets und SSL

Zahn - Unix-Netzwerkprogramminerung mit Threads, Sockets und SSL

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

310 6 Netzwerkprogrammierung <strong>mit</strong> <strong>SSL</strong><br />

graphischen Mitteln nachbilden. Eine sogenannte Zertifizierungsstelle (Certification<br />

Authority, kurz: CA) übernimmt hier die Aufgabe des vertrauenswürdigen<br />

Dritten <strong>und</strong> signiert ein elektronisches Dokument, das digitale Zertifikat,<br />

in dem sie zusichert, daß ein bestimmter öffentlicher Schlüssel zu einer bestimmten<br />

Person (Firma, Institution, Maschine) gehört. Ein Zertifikat enthält<br />

u. a. Informationen über den Namen des Zertifikatnehmers, dessen öffentlichen<br />

Schlüssel, einen Gültigkeitszeitraum <strong>und</strong> den Namen der Zertifizierungsstelle.<br />

Diese Daten sind in der Regel <strong>mit</strong> dem privaten Schlüssel der Zertifizierungsstelle<br />

signiert, die Echtheit des Zertifikats kann folglich <strong>mit</strong> dem öffentlichen<br />

Schlüssel der Zertifizierungsstelle überprüft werden.<br />

Vertraut ein Kommunikationsteilnehmer der ausstellenden Zertifizierungsstelle<br />

eines Zertifikats, so steht für ihn fest, daß der im Zertifikat enthaltene öffentliche<br />

Schlüssel tatsächlich zum gewünschten Kommunikationspartner gehört.<br />

Das ursprüngliche Problem wird also darauf reduziert, daß nurmehr einigen<br />

wenigen Zertifizierungsstellen vertraut werden muß, deren Zertifikate wiederum<br />

für die Zusammengehörigkeit einer Person (Firma, Institution, Maschine)<br />

<strong>und</strong> ihrem öffentlichen Schlüssel bürgen.<br />

Auch Zertifizierungsstellen können ihrerseits wieder von anderen Zertifizierungsstellen<br />

beglaubigt sein, so daß sich vom zu überprüfenden Zertifikat eines<br />

Servers bis zu einer vertrauenswürdigen Zertifizierungsstelle eine ganze<br />

Zertifikatskette bilden kann. Man spricht diesbezüglich auch von einer Zertifikatshierarchie.<br />

Um die Gültigkeit eines Zertifikats zu überprüfen, bildet die<br />

Verifikationssoftware zunächst die Zertifikatskette vom fraglichen Zertifikat<br />

über die ausstellende CA bis hin zu einer vertrauten Zertifizierungsstelle <strong>und</strong><br />

prüft dann über festgelegte Regeln die Gültigkeit dieser Kette. Meist handelt<br />

es sich bei der obersten Zertifizierungsstelle einer solchen Zertifikatskette um<br />

eine sogenannte Wurzel-CA, also eine Zertifizierungsstelle, die nicht von einer<br />

übergeordneten CA zertifiziert wurde. Eine Wurzel-CA zeichnet sich demnach<br />

durch ein selbst ausgestelltes <strong>und</strong> unterschriebenes Zertifikat aus.<br />

Im Zusammenspiel <strong>mit</strong> den zuvor vorgestellten kryptographischen Verfahren<br />

können unter Zuhilfenahme digitaler Zertifikate also auf praktikablem Weg<br />

sowohl die Authentizität, die Vertraulichkeit als auch die Integrität der über<br />

ein unsicheres Netzwerk übertragenen Daten sichergestellt werden.<br />

6.1.5 Praktische Absicherung des Datenverkehrs<br />

Zur Absicherung des Datenverkehrs in IP-basierten Netzen sind gleich auf<br />

mehreren Ebenen des OSI-Schichtenmodells Anpassungen <strong>und</strong> Erweiterungen<br />

denkbar, die auf den zuvor vorgestellten kryptographischen Verfahren<br />

aufbauen. Bereits in der Sicherungsschicht (OSI-Schicht 2) können Erweiterungen<br />

eingebracht werden, welche z. B. das Point to Point Protocol (PPP)<br />

beim Verbindungsaufbau um Authentifizierung <strong>und</strong> Autorisierung ergänzen<br />

<strong>und</strong> da<strong>mit</strong> den Zugang zum Datennetz kontrollieren, etwa

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!