我通过Java keytool命令创建了一个自定义SSL证书,以便测试来自我的Codename one应用程序和我的HTTPS REST Web服务的连接。
这是完整的命令:
keytool -genkey -alias my_alias -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650
当应用程序(在模拟器上运行)尝试与Web服务交互时,它会返回以下异常:
javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到所请求目标的有效证书路径
我看了here 我理解一个真正的移动设备可以添加自定义证书。 我的问题是:使用模拟器,我该怎么办?我怎样才能使用我的“自制”证书?
答案 0 :(得分:1)
真的没有理由再这样做了。你可以,但如果你只是不想支付证书,你可以使用“让加密”,它会起作用:http://letsencrypt.org/
请注意,它需要最新版本的JDK 8(我认为128或更新)。
SSL仅适用于适当的域,而不适用于IP地址等。