如何使用 keytool 使用 SHA2 签名算法生成受信任的自签名证书?

How to generate trusted self signed certificate with SHA2 signing algorithm using keytool?

我正在尝试使用带自签名证书的 jetty http 服务器版本 8.1.8.v20121106 为我的应用程序建立安全连接。

我正在使用以下命令生成自签名证书,

  1. keytool -genkey -alias mykey -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -validity 365 -keypass password -keystore keystore.jks -storepass password

  2. keytool -export -alias mykey -file server.cer -keystore keystore.jks -storepass password

  3. keytool -import -alias mykey -file server.cer -keystore truststore.jks -storepass password

这样一共生成了3个文件(keystore.jks,server.cer,truststore.jks)

服务器启动后,我的浏览器出现以下错误。 站点的证书链 (net::ERR_CERT_AUTHORITY_INVALID) 存在问题。

谁能帮助我使用 keytool 生成受信任的自签名证书。

提前致谢。

是javajdk的问题。我已经使用 java 1.8 和 jdk1.7.0_79 验证了它对我有用。更改您的 java jdk 版本并验证。如需进一步说明,请参阅此 link。 https://bugs.eclipse.org/bugs/show_bug.cgi?id=398644