SSL-Funktionalität im JDK 1.3

Um einen Provider für den oben geschilderten Zweck verwenden zu können, muss dieser registriert werden. Diese Registrierung kann statisch oder dynamisch erfolgen. Zur statischen Registrierung können Sie die Datei mit den Sicherheitseigenschaften (java.security) bearbeiten. Allerdings schränkt dieses Verfahren die Flexibilität der Verwendung ein. Ich empfehle die Nutzung der dynamischen Registrierung, wie im oben stehenden Code gezeigt. Dadurch wird der Standard-Provider (SunJSSE) dynamisch in Laufzeit hinzugefügt und ist nicht permanent.

Listing A erstellt ein serverseitiges Socket mithilfe einer Server Socket Factory, die einen Port an das Socket (sowie an die lokale IP im Hintergrund) bindet und unterstützte Cipher-Suites ermöglicht.

Anders als ein allgemeines Server-Socket muss ein SSL-Server-Socket aufgrund seiner Komplexität durch sein Factory-Objekt erstellt werden. Die standardmäßige Factory kann von Benutzern aus den USA oder Kanada durch Ändern des Werts für ssl.ServerSocketFactory.provider in der Eigenschaftendatei java.security variiert werden. Alle anderen Benutzer sollten die ursprüngliche Implementierung beibehalten, da es andernfalls zu einer Runtime Exception kommt.

Wie oben bereits erwähnt ist SSLSocket eine Unterklasse von Socket und SSLServerSocket eine Unterklasse von ServerSocket. Diese Hierarchie ist durchaus sinnvoll, da SSL auf dem TCP aufbaut. Ein Socket ist an eine Portnummer gebunden, so dass das TCP den Prozess identifizieren kann, an den bestimmte Daten gesendet werden sollen.

Die letzte Anweisung in Listing A erstellt eine Liste unterstützter Cipher-Suites. Die Cipher-Suites stellen eine Gruppe variierter Verschlüsselungsalgorithmen dar, die zur Authentifizierung zwischen dem Server und dem Client, zur Übermittlung von Zertifikaten und zum Erstellen von Sitzungsschlüsseln eingesetzt werden. Wenn ein Client eine Verbindung zu einem Server anfordert, tauschen die beiden Übertragungsenden Daten aus um sich auf einen von beiden unterstützten Cipher zu einigen.

Der oben stehende Code-Ausschnitt ermöglicht dem Server-Socket das Abhören einer Verbindung. Wenn eine Verbindungsanfrage eingeht, wird das Socket nach einem ordnungsgemäßen SSL-Handshake die Verbindung genehmigen.

Schlussbemerkung

Sie haben hier erfahren, wie Sie die JSSE installieren und den serverseitigen Code einrichten können. In meinem nächsten Artikel werde ich die clientseitigen Konfigurationen erläutern, die Sie vornehmen müssen, bevor Sie Ihre Java-SSL-Anwendung starten können.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

DE-CIX Frankfurt bricht Schallmauer von 17 Terabit Datendurchsatz pro Sekunde

Neuer Datendurchsatz-Rekord an Europas größtem Internetknoten parallel zum Champions-League-Viertelfinale.

2 Wochen ago

Samsungs neuer LPDDR5X-DRAM erreicht 10,7 Gbit/s

Die neuen Chips bieten bis zu 25 Prozent mehr Leistung. Samsung steigert auch die Energieeffizienz…

2 Wochen ago

Cisco warnt vor massenhaften Brute-Force-Angriffen auf VPNs

Betroffen sind Lösungen von Cisco, Fortinet, SonicWall und anderen Anbietern. Die Hacker nehmen Konten mit…

2 Wochen ago

Cybersicherheit in KMUs: Es herrscht oft Aufholbedarf

Immer häufiger müssen sich Betriebe gegen Online-Gefahren wehren. Vor allem in KMUs werden oft noch…

2 Wochen ago

Chrome 124 schließt 23 Sicherheitslücken

Darunter ist ein weiterer Sandbox-Escape. Angreifer können unter Umständen aus der Ferne Schadcode einschleusen und…

2 Wochen ago

Plus 8 Prozent: Gartner hebt Prognose für IT-Ausgaben an

Sie steigt auf 8 Prozent Wachstum in diesem Jahr. Der Bereich IT-Services wächst in diesem…

2 Wochen ago