因为 pem 只是 der 的 base64 编码。为什么在从一种编码转换为另一种编码时需要密码?如果我用java中的字节数组中的代码读取证书(删除了封装边界)并将该字节数组写入文件,那不是der文件吗?我试过了,但没有用。
我正在使用带有 aes256 的 pkcs8 密码保护密钥
因为 pem 只是 der 的 base64 编码。为什么在从一种编码转换为另一种编码时需要密码?如果我用java中的字节数组中的代码读取证书(删除了封装边界)并将该字节数组写入文件,那不是der文件吗?我试过了,但没有用。
我正在使用带有 aes256 的 pkcs8 密码保护密钥
转换不起作用的答案可能是因为 DER 编码文件包含内部和外部 PKCS#8 结构。内部结构定义了被包装的密钥以及被包装的密钥本身;这是被加密的部分。
外部结构定义了用于派生包装密钥和包装算法的协议。如果您有这种 PEM 格式的结构,则很可能 PEM 标题行定义了算法,并且 base 64 编码结构仅包含内部 PKCS#8 结构上的密文。
不过,只要不更改加密格式和盐,应该可以保持内部结构完好无损。如果要求输入密码,可能有两个原因: