【发布时间】:2015-03-19 19:19:26
【问题描述】:
我会将 X509Certificate 转换为 byte[] 或 String,然后从 byte 获取 X509Certificate。 我用过这段代码
X509Certificate x509cert=Helper.saveCertificate(workgroupId, serialNumber);
//x509 to byte[]
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutput out = new ObjectOutputStream(bos);
out.writeObject(x509cert);
CertificateSerialization certificateSerialization=new CertificateSerialization();
certificateSerialization.setCertificateByte(bos.toByteArray());
bos.close();
return handleResult(certificateSerialization);
并通过这种方法恢复:
byte[] x509cert=certificateSerialization.getCertificateByte();
//from byte to x509
ByteArrayInputStream bis = new ByteArrayInputStream(x509cert);
ObjectInput in = new ObjectInputStream(bis);
X509Certificate cert = (X509Certificate) in.readObject();
bis.close();
response.setResult(cert);
但是当我分析返回的 x509 时,这与原始证书不同。你认为有错误吗? 提前致谢
【问题讨论】:
标签: java string certificate bytearray x509certificate