2012-06-12 15 views
13

Obecnie mam plik .PEM zawierający tylko klucz prywatny. Muszę przekonwertować ten plik na plik .PKCS12. Obecnie próbuję użyć openssl, aby to osiągnąć i mam pewne problemy.Konwersja Openssl .PEM zawiera tylko klucz prywatny RSA do .PKCS12

Plik .pem Używam ma postać:

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

kilka kluczowych

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

użyć następującego polecenia openssl próbować przekonwertować ten plik .PEM w .PKCS12:

openssl pkcs12 -export -inkey file.pem wymeldowanie file.p12

Konsola następnie zawiesza się z komunikatem:

Loading 'ekranu' w stan losowej -done

Co robię źle?

Każda pomoc byłaby przydatna.

+0

Do tej pory zaakceptowałeś tylko jedną odpowiedź na każde z pytań i to była twoja odpowiedź! –

+0

Plik pkcs12 zwykle zawiera łańcuch certyfikatów oraz klucz prywatny dla certyfikatu listowego łańcucha. W najprostszej formie zawiera jeden samopodpisany certyfikat oraz powiązany klucz prywatny. Musisz utworzyć certyfikat z kluczem publicznym, a ten certyfikat musi zawierać pola, których oczekuje aplikacja zużywająca. –

Odpowiedz

25

Wpadłem na ten problem i rozwiązałem go, dodając opcję -nocerts po wyeksportowaniu. Zgaduję, że przyczyną "zamrożenia" jest to, że openssl prawdopodobnie próbuje odczytać dodatkowe wejście z konsoli.

openssl pkcs12 -export -nocerts -inkey your.private.key.pem -out your.private.key.p12 
+0

@ sliq..możesz rzucić okiem na moje pytanie? http://stackoverflow.com/questions/41149979/pem-key-generation-format-encoding-errors –

3

Chyba trzeba dostarczyć certyfikat, a także, nie tylko klucz prywatny:

openssl pkcs12 -export -inkey privatekey.pem -in certificate.cer wymeldowanie bothAsPKCS12.p12

+0

Prawda. Z mojego doświadczenia wynika, że ​​należy podać '-in' (np. .cer/.crt) i' -inkey' (np. .key). – aff

Powiązane problemy