我想使用PEM文件来建立SSL肥皂连接。
我不想使用java keystore命令行,因为我需要此应用程序具有可移植性。

最好的方法是什么?

最佳答案

我们这样做的方法是使用BouncyCastle PEMReader

私钥示例代码

        Reader reader = new InputStreamReader( new FileInputStream( filename ), "US-ASCII" );
        PEMReader pemReader = new PEMReader( reader );
        PrivateKey privateKey = ( PrivateKey ) pemReader.readObject();
        pemReader.close();


对于X509证书

        X509Certificate certificate = (X509Certificate) pemReader.readObject();


然后初始化KeyStore

        KeyStore ks = KeyStore.getInstance( "JKS" );
        ks.load( null, KSPASSWORD );
        ks.setKeyEntry( "Client: " + subject, privateKey, KSPASSWORD, [certificate] );

08-07 07:45