具有不同storepass和keypass的Java Server SSL

时间:2014-03-06 16:49:22

标签: java ssl keystore

我使用Keytool创建了一个serverkeystore.jks,其中有2个不同的pwd用于存储和密钥,但我得到java.security.UnrecoverableKeyException: Cannot recover key,除非我编辑其中一个并在两者中放入相同的值

如何修改我的代码以允许2个不同的传递? :

SSLServerSocket sslserversocket=null;

        try {

            System.setProperty("javax.net.ssl.keyStore", serverKeyStore);
            System.setProperty("javax.net.ssl.keyStorePassword", pwdStore);

            SSLServerSocketFactory sslserversocketfactory = (SSLServerSocketFactory) SSLServerSocketFactory.getDefault();
            sslserversocket = (SSLServerSocket) sslserversocketfactory.createServerSocket(port);

[...]

提前谢谢^^

1 个答案:

答案 0 :(得分:0)

您无法使用系统属性执行此操作。您必须编写并加载自己的X509KeyManager并使用它创建自己的SSLContext。