2016-06-29 13 views
1

У меня есть закрытый ключ в формате PKCS # 8. Я вижу следующий стиль теги:Как преобразовать закрытый ключ в формате PKCS # 8 в формат PKCS # 1 с M2Crypto

-----BEGIN PRIVATE KEY----- 
    xxxx 
    -----END PRIVATE KEY----- 

Я хочу, чтобы преобразовать его в формат PKCS # 1 с тегами, как это:

-----BEGIN RSA PRIVATE KEY----- 
    xxxxxx 
    -----END RSA PRIVATE KEY----- 

Есть ли способ сделать это с помощью M2Crypto?

Если я использую команду OpenSSL, чтобы сделать преобразование:

openssl rsa -in originalkey.pem -out newkey.pem 

Я получаю сообщение об ошибке:

unable to load Private Key 
    3071661804:error:0D078079:asn1 encoding routines:ASN1_ITEM_EX_D2I:field missing:tasn_dec.c:501:Field=d, Type=RSA 
    3071661804:error:04093004:rsa routines:OLD_RSA_PRIV_DECODE:RSA lib:rsa_ameth.c:115: 
    3071661804:error:0606F091:digital envelope routines:EVP_PKCS82PKEY:private key decode error:evp_pkey.c:95: 
    3071661804:error:0907B00D:PEM routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:132: 

Любая идея, что означает, что ошибка?

ответ

0

openssl pkcs8 -nocrypt -in pkcs8.pem -out pkcs1.pem