SSL Server - how "can I start without" flag

The Server starts and run if I executing by typing following

java -Djavax.net.ssl.keyStore=mySrvKeystore -Djavax.net.ssl.keyStorePassword=123456 EchoServer

How can I make it to run whitout the need of anny flags ?

import java.security.KeyStore;

import javax.net.ssl.SSLServerSocket;

import javax.net.ssl.SSLServerSocketFactory;

import javax.net.ssl.SSLSocket;

import java.io.*;

import javax.net.ssl.*;

import javax.net.ssl.KeyManagerFactory;

import java.io.IOException;

import java.io.BufferedReader;

import java.io.InputStream;

import java.io.InputStreamReader;

publicclass EchoServer{

publicstatic String stringIdentity =null;

publicstaticvoid main(String[] arstring){

try{

char[] password ={'1','2','3','4','5','6'};

java.io.FileInputStream fileinputstream =new java.io.FileInputStream("mySrvKeystore");

KeyStore keystore = KeyStore.getInstance(KeyStore.getDefaultType());

try

{

keystore.load(fileinputstream, password);

}

catch (IOException ioexception)

{

System.out.println("Cannot load keystore. Password may be wrong.");

}

// Create key manager. The key manager holds this peer's

// private key.

KeyManagerFactory keymanagerfactory = KeyManagerFactory.getInstance("SunX509");

keymanagerfactory.init(keystore, password);

KeyManager [] arkeymanager = keymanagerfactory.getKeyManagers();

SSLServerSocketFactory sslserversocketfactory = (SSLServerSocketFactory) SSLServerSocketFactory.getDefault();

SSLServerSocket sslserversocket = (SSLServerSocket) sslserversocketfactory.createServerSocket(9999);

SSLSocket sslsocket = (SSLSocket) sslserversocket.accept();

InputStream inputstream = sslsocket.getInputStream();

InputStreamReader inputstreamreader =new InputStreamReader(inputstream);

BufferedReader bufferedreader =new BufferedReader(inputstreamreader);

String string =null;

while ((string = bufferedreader.readLine()) !=null){

if(string =="exit"){

bufferedreader.close();

}

System.out.println(string);

System.out.flush();

}

}catch (Exception exception){

exception.printStackTrace();

}

}

}

\Micke C

[4178 byte] By [mcarlinga] at [2007-10-1 15:15:18]
# 1

Hi, i use a things like this

private final String CERT_KEYSTORE = "keystore.ks";

private final String TRUST_KEYSTORE = "truststore.ks";

private final String CERT_KEYSTOREPASS = "xxxx";

private final String TRUST_KEYSTOREPASS = "xxxx";

private final String KEYPASS = "xxxx";

private final String TYPE_KEYSTORE = "JKS";

private final String TYPE_CERTIFICAT = "SunX509";

private final String TYPE_SSL = "SSLv3";

--

cert = new FileInputStream ("keystore.ks");

trust = new FileInputStream ("truststore.ks");

KeyStore ksCert = KeyStore.getInstance(TYPE_KEYSTORE);

ksCert.load(cert, CERT_KEYSTOREPASS.toCharArray());

kmfCert = KeyManagerFactory.getInstance(TYPE_CERTIFICAT);

kmfCert.init(ksCert,KEYPASS.toCharArray());

ksTrust = KeyStore.getInstance(TYPE_KEYSTORE);

ksTrust.load(trust, TRUST_KEYSTOREPASS.toCharArray());

kmfTrust = TrustManagerFactory.getInstance(TYPE_CERTIFICAT);

kmfTrust.init(ksTrust);

mardela at 2007-7-10 19:20:35 > top of Java-index,Security,Java Secure Socket Extension (JSSE)...
# 2
Or alternatively, you can use the System.setProperty("javax.net.ssl.keyStore", "xxx");If you're running with the security manager, you need to have perms to do this.
wetmorea at 2007-7-10 19:20:35 > top of Java-index,Security,Java Secure Socket Extension (JSSE)...