我正在尝试从pkcs12(.p12)文件加载KeyStore,但是当我调用KeyStore.load(流,密码)时,JVM会抛出一个RuntimeExcepction:创建Key时出错,我可以在pkcs12上写,我甚至可以在导航器上导入它,但我无法在我的代码中读取它 .
将KeyStore保存在磁盘上的代码:
public static void gerarPkcs12(PrivateKey chavePrivada, X509Certificate certificado, String caminhoPkcs12,
String alias, char[] senha) {
try {
KeyStore repositorio = KeyStore.getInstance("PKCS12", "BC");
repositorio.load(null, senha);
Certificate[] chain = {certificado};
repositorio.setKeyEntry(alias, chavePrivada, senha, chain);
FileOutputStream fos = new FileOutputStream(caminhoPkcs12);
repositorio.store(fos, senha);
} catch(KeyStoreException | IOException | NoSuchAlgorithmException | CertificateException | NoSuchProviderException ex) {
System.out.println(ex.getMessage());
}<