如何在 java 中使用充气城堡以 ASN1 格式导出 X509Certificate?
How can I export X509Certificate in ASN1 format using bouncy castle in java?
如何以 ASN.1 格式导出 X509Certificate
?
我找到了如何使用 .cer
扩展名导出到 DER 和 PEM,但我找不到如何导出到 ASN.1格式。谁能帮帮我?
这是我的 PEM:
JcaPEMWriter pemWrt = new JcaPEMWriter(new FileWriter(path + ".cer"))
X509Certificate certificate = (X509Certificate) keyStore.getCertificate(loadCertificate);
pemWrt.writeObject(certificate);
pemWrt.flush();
pemWrt.close();
这是我的 DER:
X509Certificate certificate = (X509Certificate) keyStore.getCertificate(loadCertificate);
FileOutputStream fileWrite = new FileOutputStream(new File(path + ".cer"));
fileWrite.write(certificate.getEncoded());
fileWrite.flush();
fileWrite.close();
首先,请记住 ASN.1 本身并不是一种格式 ,它是一种 description language that defines a structure, and PEM is just one way to format these defined structure. (Many cryptography standards use ASN.1 to define their data structures, and PEM or DER (Distinguished Encoding Rules) 序列化这些结构。)
因此,PEM 和 DER 只是两种不同的写入信息的方式,这些信息由 ASN.1 定义。您可以将某些内容导出到 PEM 或 DER,但没有 "export to ASN.1 format" 这样的东西(因为 ASN.1 不是一种格式)。
.cer
扩展名只是数字证书的文件扩展名,但是这个证书可以是PEM或者DER(没关系,扩展名不会改变)。
因此,当您使用 JcaPEMWriter
时,您 已经 创建了 PEM 格式的文件。当您使用 certificate.getEncoded()
时,您 已经 以 DER 格式写入字节。
这是一个很老的问题,但我发现下面的 OpenSSL 命令将 Cert DER/PEM 格式的数据隐藏到 ASN1 中。
openssl asn1parse -in Cerificate.pem -inform PEM
希望这对以后的人有所帮助。
如何以 ASN.1 格式导出 X509Certificate
?
我找到了如何使用 .cer
扩展名导出到 DER 和 PEM,但我找不到如何导出到 ASN.1格式。谁能帮帮我?
这是我的 PEM:
JcaPEMWriter pemWrt = new JcaPEMWriter(new FileWriter(path + ".cer"))
X509Certificate certificate = (X509Certificate) keyStore.getCertificate(loadCertificate);
pemWrt.writeObject(certificate);
pemWrt.flush();
pemWrt.close();
这是我的 DER:
X509Certificate certificate = (X509Certificate) keyStore.getCertificate(loadCertificate);
FileOutputStream fileWrite = new FileOutputStream(new File(path + ".cer"));
fileWrite.write(certificate.getEncoded());
fileWrite.flush();
fileWrite.close();
首先,请记住 ASN.1 本身并不是一种格式 ,它是一种 description language that defines a structure, and PEM is just one way to format these defined structure. (Many cryptography standards use ASN.1 to define their data structures, and PEM or DER (Distinguished Encoding Rules) 序列化这些结构。)
因此,PEM 和 DER 只是两种不同的写入信息的方式,这些信息由 ASN.1 定义。您可以将某些内容导出到 PEM 或 DER,但没有 "export to ASN.1 format" 这样的东西(因为 ASN.1 不是一种格式)。
.cer
扩展名只是数字证书的文件扩展名,但是这个证书可以是PEM或者DER(没关系,扩展名不会改变)。
因此,当您使用 JcaPEMWriter
时,您 已经 创建了 PEM 格式的文件。当您使用 certificate.getEncoded()
时,您 已经 以 DER 格式写入字节。
这是一个很老的问题,但我发现下面的 OpenSSL 命令将 Cert DER/PEM 格式的数据隐藏到 ASN1 中。
openssl asn1parse -in Cerificate.pem -inform PEM
希望这对以后的人有所帮助。