JKS是Java Key Store
的缩写,是 Java 语言开发的一种密钥库格式,它包含了证书和私钥,可以用来加密、认证和签署数字信息。
$ uname -a
Linux yanlp 3.10.0-1160.92.1.el7.x86_64 #1 SMP Tue Jun 20 11:48:01 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
$ openssl genrsa -des3 -out private.key 2048
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,204D457B1A0C53AC
...
-----END RSA PRIVATE KEY-----
ds:X509Certificate
$ openssl req -new -x509 -key private.key -out ca.crt -days 3650
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-des3
选项生成的,你需要使用 OpenSSL 解密它们$ openssl rsa -in private.key -out decrypted_private.key
-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----
keytool
导入 RSA
私钥和 X.509
格式的 CA 证书,并生成 Java 密钥库(JKS)文件
RSA
私钥和 X.509
CA 证书合并到一个 PKCS#12
文件$ openssl pkcs12 -export -out combined.p12 -inkey decrypted_private.key -in ca.crt -name your_alias
keytool
命令创建一个 Java 密钥库,并将 PKCS#12
文件导入其中$ keytool -importkeystore -srckeystore combined.p12 -srcstoretype PKCS12 -destkeystore your_alias.jks