【发布时间】:2021-12-29 09:44:52
【问题描述】:
我需要在上传文件时检查文件是否为Java中的pkcs#8 DER格式,我想也许可以使用PKCS8EncodedKeySpec和getFormat()。
class FileFormatePkcs8{
public static void main(String[] args) {
String filename = args[0];
try {
File f = new File(filename);
byte[] encodedKey = new byte[(int)f.length()];
PKCS8EncodedKeySpec pkcs8Key = new PKCS8EncodedKeySpec(encodedKey);
if(pkcs8Key.getFormat().equals("PKCS#8")) {
System.out.println("It's pkcs8.");
}
else {
System.out.println("It's not pkcs8.");
}
}
catch (Exception ex) {
System.out.println("exception:"+ex.getMessage());
}
}
}
所有输入的文件都会得到“这是 pkcs8”。结果。我意识到“PKCS8EncodedKeySpec”将创建 pkcs#8 密钥,但我不知道使用哪个类来替换它。
注意:PKCS#8 和 DER 都需要检查,所以我认为 org.bouncycastle.openssl.PEMParser 可以忽略。还是我走错了路?
【问题讨论】: