私钥PEM标头

时间:2013-01-28 05:29:08

标签: ssl openssl ssl-certificate private-key

我有DER格式的私钥。我试图将其转换为PEM格式。转换时我做了

   -----BEGIN PRIVATE KEY-----

        Base64.encode(privateKey,.getEncoded());

   -----END PRIVATE KEY-----

但在某些例子中,我看到,在标题之后的行之下。

   Proc-Type: 4,ENCRYPTED
   DEK-Info: DES-EDE3-CBC,F2D4E6438DBD4EA8

他们有什么意义吗?在从DER转换为PEM时是否也应该添加它?

2 个答案:

答案 0 :(得分:1)

通常,保密私钥未加密在安全性方面被视为不良做法。

基本上,标题表示私钥base64数据使用密码加密。因此,任何尝试读取私钥的程序(例如Web服务器)都会知道私钥受密码保护,并且首先需要密码来解密私钥。

如果这些头不存在,程序将假定base64密钥数据是纯文本将直接使用它。

如果您不使用密码来保护pem格式的密钥,那么pem可能看起来像这样(没有标题):

  

-----开始RSA私钥----- MIICWwIBAAKBgQDL9R9pUyXOnHybNhm9FqhNjUX1W2HEt7bCGQIo0FvT6UyyL7TT   ----- END RSA私钥-----

答案 1 :(得分:0)

如果要加密PEM文件,这些标头很重要。 第一个告诉文件是否加密,第二个给出加密算法(如你所见)和初始向量。