自己修改的:好使,主要是有-keysize 1024 1、首先要用 KeyTool 工具来生成私匙库:(-alias别名 -validity 3650 表示10年有效) keytool -genkey -alias privatekey -keysize 1024 -keystore privateKeys.store -validity 3650 2、然后把私匙库内的证书导出到一个文件当中 keytool -export -alias privatekey -file certfile.cer -keystore privateKeys.store 3、然后再把这个证书文件导入到公匙库 keytool -import -alias publiccert -file certfile.cer -keystore publicCerts.store 原文链接:https://blog.csdn.net/wxsoxsok/article/details/134401959 命令整理 1、首先要用 KeyTool 工具来生成私匙库:(-alias别名 -validity 3650 表示10年有效) keytool -genkey -alias privateKey -keysize 1024 -keystore privateKeys.store -validity 3650 -storepass "pristore_qw_1234" -keypass "prikp_123456w" -dname "CN=qw, OU=zjqianwenkeji, O=qianwenkeji, L=WUXI, ST=JIANGSU, C=CN" 私钥库密码 pristore_qw_1234 私钥密码 prikp_123456w CN 名字与姓氏 OU 组织单位名称 O组织名称 L城市或区域名称 ST省/市/自治区名称 C双字母国家/地区代码 2、然后把私匙库内的证书导出到一个文件当中 keytool -export -alias privateKey -storepass "pristore_qw_1234" -file certfile.cer -keystore privateKeys.store --这里的alias值大小写有何关系?? storepass 私钥库密码(须与第一步的storepass一致) 3、然后再把这个证书文件导入到公匙库 keytool -import -alias publiccert -file certfile.cer -keystore publicCerts.store -storepass pubstore_qw_1234 storepass:公钥库密码 D:\Java\jdk1.8.0_221\bin>keytool -genkey -alias privatekey -keysize 1024 -keystore privateKeys.store -validity 3650 输入密钥库口令: 再次输入新口令: 您的名字与姓氏是什么? [Unknown]: yangys 您的组织单位名称是什么? [Unknown]: qianwen 您的组织名称是什么? [Unknown]: qianwen 您所在的城市或区域名称是什么? [Unknown]: beijing 您所在的省/市/自治区名称是什么? [Unknown]: beijing 该单位的双字母国家/地区代码是什么? [Unknown]: cn CN=yangys, OU=qianwen, O=qianwen, L=beijing, ST=beijing, C=cn是否正确? [否]: y 密钥库口令 123456q 密钥口令 123456w 输入的密钥口令 (如果和密钥库口令相同, 按回车): 再次输入新口令: Warning: JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore privateKeys.store -destkeystore privateKeys.store -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。 使用代码生成的publicstore,provicer xxx那个错误,应该是RSA导致的,使用命令行