小编vic*_*c99的帖子

如何使用自签名证书创建密钥库和信任库?

我们让 JAVA 服务器和客户端使用 SSL 通过网络进行通信。服务器和客户端使用证书相互验证。服务器和客户端使用的密钥库类型是 JKS。服务器和客户端加载他们的密钥库和信任库文件。密钥库和信任库文件名是:server.keystore、server.truststore、client.keystore 和 client.truststore。我使用自签名证书仅用于测试。

问题:

一季度。我想知道为什么我需要在步骤 6 中将服务器和客户端自己的证书添加到它们各自的信任库中。

Q2。我可以减少步骤来实现相同的目标吗?如果是,那么如何?

为服务器创建 RSA 密钥、自签名证书、密钥库和信任库的步骤

  1. 生成私有 RSA 密钥

    openssl genrsa -out diagserverCA.key 2048
    
    Run Code Online (Sandbox Code Playgroud)
  2. 创建 x509 证书

    openssl req -x509 -new -nodes -key diagserverCA.key \
                -sha256 -days 1024 -out diagserverCA.pem
    
    Run Code Online (Sandbox Code Playgroud)
  3. 从私钥和公共证书创建 PKCS12 密钥库。

    openssl pkcs12 -export -name server-cert \
                   -in diagserverCA.pem -inkey diagserverCA.key \
                   -out serverkeystore.p12
    
    Run Code Online (Sandbox Code Playgroud)
  4. 将 PKCS12 密钥库转换为 JKS 密钥库

    keytool -importkeystore -destkeystore server.keystore \
            -srckeystore serverkeystore.p12 -srcstoretype pkcs12 
            -alias server-cert
    
    Run Code Online (Sandbox Code Playgroud)
  5. 将客户端的证书导入服务器的信任库。

    keytool -import -alias client-cert \
            -file diagclientCA.pem …
    Run Code Online (Sandbox Code Playgroud)

ssl openssl

23
推荐指数
1
解决办法
6万
查看次数

标签 统计

openssl ×1

ssl ×1