我制作 key 的步骤:
创建私钥
openssl genrsa -des3 -out client.key 2048
生成自签名证书
openssl req -key client.key -new -x509 -days 365 -out client.crt -subj "/C=xxx/ST=yyy/L=zzz/O=aaa/CN=localhost"
将 PEM 转换为 PKCS12
openssl pkcs12 -export -in client.crt -inkey client.key -out client.p12
使用 Java Keytool 将 PKCS12 openssl keystore 转换为 JKS keystore
keytool -importkeystore -destkeystore client_keystore.jks -deststoretype jks -deststorepass 1234567abc -srckeystore client.p12 -srcstoretype pkcs12 -srcstorepass 1234567abc
我收到错误:
keytool error: java.io.IOException: failed to decrypt safe contents entry:
javax.crypto.BadPaddingException: Given final block not properly padded
如何解决这个问题,我哪里错了?
最佳答案
-srcstorepass 1234567abc
您在创建 PKCS#12 文件时未指定密码。 你从哪里得到这个?
您可以使用 keytool -genkey
选项作为一行完成整个过程。
关于java - 如何使用 Java Keytool 将 PKCS12 openssl keystore 转换为 JKS keystore ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42577417/