[英]How to add KeyStore file protected with password to zip in java
我创建了受密码保护的KeyStore文件
CertificateFactorycertFactory = CertificateFactory.getInstance("X.509");
InputStream in = new ByteArrayInputStream(certyfikat);
X509Certificate cert = (X509Certificate)
certFactory.generateCertificate(in);
KeyStore ks = KeyStore.getInstance("PKCS12");
ks.load(null,null);
ks.setCertificateEntry("alias", cert);
FileOutputStream fos = new FileOutputStream("test.pfx");
ks.store(fos, "yourPassword".toCharArray());
这是向KeyStore添加密码保护的正确方法吗?
我想在zip文件中返回它。 我尝试了ZipOutputStream和ZipEntry,但是使用ZipOutputStream.write()只能处理byte []。
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ZipOutputStream zos = new ZipOutputStream(baos);
ZipEntry entry = new ZipEntry("cert.pfx");
zos.putNextEntry(entry);
zos.write(ks???);
如何将KeyStore转换为byte []?
还有其他方法可以使用KeyStore创建zip吗?
也许应该以其他方式而不是使用KeyStore类创建.pfx文件?
使用ByteArrayOutputStream
代替FileOutputStream
应该可以。
更换
FileOutputStream fos = new FileOutputStream("test.pfx");
ks.store(fos, "yourPassword".toCharArray());
同
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ks.store(bos, "yourPassword".toCharArray());
byte keystore[] = bos.toByteArray();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.