我正在使用位于Netty示例代码文件夹中的SSL示例:
String keyStoreFilePath = System.getProperty("keystore.file.path");
String keyStoreFilePassword = System.getProperty("keystore.file.password");
KeyStore ks = KeyStore.getInstance("JKS");
FileInputStream fin = new FileInputStream(keyStoreFilePath);
ks.load(fin, keyStoreFilePassword.toCharArray());
// Set up key manager factory to use our key store
// Assume key password is the same as the key store file
// password
KeyManagerFactory kmf = KeyManagerFactory.getInstance(algorithm);
kmf.init(ks, keyStoreFilePassword.toCharArray());
Run Code Online (Sandbox Code Playgroud)
我使用以下方法生成自己的密钥库:
/usr/java/jdk1.6.0_25/bin/keytool -genkey -keystore SrvKeystore -keyalg RSA
一切都很好!!
但是我现在想使用comodo提供给我的官方证书(https://secure.comodo.com/)
他们显然提供3种文件类型:.csr,.crt和.key
请告知哪个文件应该指向keystore.file.path以及哪个指向keystore.file.password
也许我需要做别的事情?
Comodo以最友好的Web服务器格式(如Apache和nginx)为您提供证书和私钥.
有两种方法可以解决此问题:
(1)将证书链(.crt)和私钥(.key)导入jks或pkcs 12密钥库(使用keytool或openssl).
(2)使用java CertificateFactory读取cert和bouncycastle PEMReader以读取私钥,然后将其包装在您自己的密钥管理器中(您可以将其传递给SSLContext).
| 归档时间: |
|
| 查看次数: |
3549 次 |
| 最近记录: |