java - key 工具错误 : Failed to establish chain from reply

标签 java authentication ssl x509certificate keytool

我在从 CA 导入试用版 SSL 证书时遇到错误。以下是我创建 keystore 的步骤。如果我错了,请纠正我。提前致谢!

1.首先,我创建了一个 keystore 放在服务器上。

keytool -keystore server_keystore.jks -genkey -alias server -keyalg rsa -keysize 2048

2.创建 CSR。

keytool -keystore server_keystore.jks -certreq -alias server -keyalg rsa -file server.csr
  • 将 CSR 发送给 CA (Thawte) 并回复了三个试用证书,即 CA 根证书、CA 中间证书和试用 SSL。将其保存到文件扩展名为 .cer 的文本文件中。 (trial_ca_ssl.cer, trial_ca_root.cer, trial_ca_intermediate.cer)

3.尝试在 server_keystore.jks 中导入 trial_ca_ssl.cer 但我收到错误。

keytool -import -keystore server_keystore.jks -file trial_ca_ssl.cer -alias server

错误:

keytool error: java.lang.Exception: Failed to establish chain from reply

最佳答案

您应该将 trial_ca_ssl.cer 文本放在顶部 server.cer 之上。这将使两个证书的层次结构像这样。然后你应该导入它。

-----BEGIN CERTIFICATE----- MIIDSjCCAjKgAwIBAgIIEvabM2CgLZcwDQYJKoZIhvcNAQEFBQAwMzETMBEGA1UE AxMKV2FsdGVyIENBMTEPMA0GA1UEChMGV2FsdGVyMQswCQYDVQQGEwJTRTAeFw0w MzA5MjkwOTI2MzRaFw0wNDA5MjgwOTM2MzRaMDMxEzARBgNVBAMTCldhbHRlciBD QTExDzANBgNVBAoTBldhbHRlcjELMAkGA1UEBhMCU0UwggEgMA0GCSqGSIb3DQEB AQUAA4IBDQAwggEIAoIBAQC3hXksEud68WwPWWHLJQQkTCuX/K32KHPPn/uPUzab Cpc/FnaTmF9yEHmpFdAUr0v5ZPnxVQpcuwrDZc4YfaTLfyUHicQbkftsPAj/2hE4 UukS2j+nQQcJEnIY0vSZOAOLU3j4bf/RlS6Jl7TPFFfWTxuQF8AruQ+YhaE52JFi SapGGXKQJxhsvKT91rLaWSFWNMTTLSDPaBXYEYFuFhLNclDJWf4whfxHSHHkARB/ 3Z0XlT4sFj0fmqEQ6yQb6/WqMFK+1XAIBXZO2MXe26IigWkXw1GfkIx1+fbUPrzu 8EI2jb0TWl21j1+Mvh3APZtVj5FJNuZN9bgdbrq88hLXAgERo2QwYjAPBgNVHRMB Af8EBTADAQH/MA8GA1UdDwEB/wQFAwMHBgAwHQYDVR0OBBYEFNhHOtAwo8MOE/nI zzg9KFxCYs8YMB8GA1UdIwQYMBaAFNhHOtAwo8MOE/nIzzg9KFxCYs8YMA0GCSqG Sib3DQEBBQUAA4IBAQBHpvicbuJTACtpdwe6cF1nQ57FHnnYr+aAe+ZpH43R6R9d eMps02nFAMSs5o8sbPokrpwAtk2yYwCohEFDkZ5JPzIBkgNlNnVHNNRHQTRJ6v6Q F2MWUEPc1u5kxSjXEVMmZerG9oknMwpYFmkOnKF46vP3Njt/ExOeRAvCEQq2b8pz 2QGg8/IK6Omfi7IwxtVYUpgvhdcWekbFIlxkXZiEdlHNBIV1GzzPK1VEzg5kugD/ h6jeykrsKASx+55AkkBPt2kI+ZikVtp3SVhfZQMGY86c5QMQGlPWYNsr4ociyhfX I52Qby+/HNG1ijpx66Z30lUMmXTtWtL4Cu8s7UvC

-----END CERTIFICATE-----

-----BEGIN CERTIFICATE----- MIICxzCCAa+gAwIBAgIIBfqGjbQu14swDQYJKoZIhvcNAQEFBQAwMzETMBEGA1UE AxMKV2FsdGVyIENBMTEPMA0GA1UEChMGV2FsdGVyMQswCQYDVQQGEwJTRTAeFw0w MzA5MjkwOTMzMDFaFw0wNDAxMDcwOTQzMDFaMDQxETAPBgNVBAMTCER1ZGUgQ0Ex MRIwEAYDVQQKEwlEdWRlIEluYy4xCzAJBgNVBAYTAlNFMIGdMA0GCSqGSIb3DQEB AQUAA4GLADCBhwKBgQCM1hR/DYPXfKDa3oVJbppV4OcYtn2XP9W5Kc1d0+U4qLOm JsqIFHDWR07o1QFiPhc9z0UGtwYeE3CpQ8fG8zeur5e286PYptZIST77B9vOdQdl PA+dFKFIaEwdzcS7H3Lf38WTE4D1OnyRX5jsiUe+YIQRtjv/Bmem+kSR84G9TwIB EaNkMGIwDwYDVR0TAQH/BAUwAwEB/zAPBgNVHQ8BAf8EBQMDBwYAMB0GA1UdDgQW BBTDrXZGYXS9GyIUBOZrglhwNjjcnTAfBgNVHSMEGDAWgBTYRzrQMKPDDhP5yM84 PshcQmLPGDANBgkqhkiG9w0BAQUFAAOCAQEAdmTP1qVUcAKOf+/zvb2lcLKvFwKT 6KqDlO5NofjqCIfNgCjO2mO176cslnFIbEZQqgGIUnJ3AwfHKHj+U3kM3n5T29kF xiLKxIDfjsY6qC03KHeGAgxI92XZyPsO1is6Y6qUnAmiwhIp5HS6E0+xIP1shmtJ ZvqU8bueKUWSjx3JDzq+UNLX5pFkK0P0R90TCUEkBx1FNWqoWwb8zfAuO5zcNTEj 5E9esLjwxJQnIVPiA2l3FfZN9yomK+q7kTZJkX2kMx7G850lPR8CneXZT6bIOfck Dw3PqQiroMNx2+gzC/f/wTXsF92aujyG+IZx1FIcNg/MoHXBWG7T8YrjnQ==

-----END CERTIFICATE-----

有关详细信息,请阅读 EJBCA 的用户指南.

关于java - key 工具错误 : Failed to establish chain from reply,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17465108/

相关文章:

java - 如何查找 Java String 是否包含 X 或 Y 并包含 Z

java - 如何创建一个使用线程从下限到上限计数的程序?

node.js - 如何使用身份验证 token 来访问用户数据

php - 为什么在 220 2.0.0 Start TLS 之后不显示任何内容?

ssl - RSA 中的消息长度限制

java - 在 JKS 中存储 TrustedCertEntry 和 PrivateKeyEntry 的后果?

java - pdfbox 类转换异常

java - 如何从包含多个问题和选项以及信息的文本文件中读取单个问题?

c# - .NET core JWT授权失败?

android - Android 对 App Engine 服务器的请求失败 (401)