tillwiebke.de

SSL-Remote

Mit Hilfe von SSL-Remote ist es möglich, mit einem MIDP 2.0-fähigen Gerät auf eine Remote Shell zuzugreifen. Die Kommunikation zwischen Server und Client wird über SSL/TLS verschlüsselt.
Das Programm ist nicht für den Produktiveinsatz gedacht, sondern dient zur Demonstration von SSL/TLS-Verbindungen zwischen einem mobilen Client und einem "stationären" Server.

Video

Ein Demonstrationsvideo (3.2MB) des Clients (emuliert mit Hilfe des Java Wireless Toolkit 2.5.2) befindet sich auf dieser Seite.

Download

- sslremote1-0.zip (18.962 Bytes) Binaries und Quelltexte

Programmstart

Bevor der Server gestartet werden kann und ein erfolgreicher Verbindungsaufbau möglich ist, muss ein Serverschlüssel erstellt und dem Client bekannt gemacht werden.

Schlüsselerzeugung

Mit Hilfe des Java-Keytools (%JAVA_HOME%\bin) muss der Key für den Server erstellt werden. Ein Zertifikat mit RSA als Schlüsselalgorithmus wird mit folgendem Aufruf erstellt und dem Keystore "server.keystore" hinzugefügt:
keytool -genkey -keyalg RSA -keystore server.keystore

Schlüsselimport ins WTK

Dem WTK muss der erstellte Serverschlüssel bekannt gemacht werden. Mit dem Hilfsprogramm mekeytool (%WTK_HOME%\bin) kann der Serverschlüssel mit dem Alias "mykey" wie folgt importiert werden:
mekeytool -import -keystore %JAVA_HOME%\bin\server.keystore -alias mykey

Starten des Servers

Damit der Server auf das erstellte Zertifikat zugreifen kann, muss ihm der Keystore beim Start mitgeteilt werden. Dazu müssen die Parameter "javax.net.ssl.keyStore" und "javax.net.ssl.keyStorePassword" gesetzt werden. Aufruf des Servers mit:
java -Djavax.net.ssl.keyStore=%JAVA_HOME%\bin\server.keystore -Djavax.net.ssl.keyStorePassword=Passwort -jar SslRemoteServer.jar

SSL-Debug-Nachrichten anzeigen

Um die Debugmeldungen der SSL-Komponente angezeigt zu bekommen, muss der Parameter "javax.net.debug" auf "ssl" gesetzt werden. Beim Aufruf z.B. mit:
-Djavax.net.debug=ssl

Lizenz/Haftung

Ich verzichte auf meine Urheberrechte an "SSL-Remote" und veröffentliche die Quelltexte als "Public Domain". Die Verwendung der Programme und der Quelltexte (im Ganzen oder in Teilen) erfolgt auf eigenes Risiko. Es wird keinerlei Haftung übernommen.