Не удалось загрузить файл закрытого ключа сертификата клиента

Я не могу создать файлы сертификатов Apple Push Notification. Когда я тестирую файлы .pem, я получаю сообщение об ошибке.

openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert pushapp_cert_dev.pem -key pushapp_key_dev.pem

выдаст ошибку:

unable to load client certificate private key file 140735327015760:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:703:Expecting: ANY PRIVATE KEY

Я следую этим инструкциям: https://github.com/raix/push/wiki/iOS-Micro-Walkthrough

pushapp_cert_dev.pem

-----BEGIN CERTIFICATE-----
MIIFiTCCBHGgAw...ff6eVQDZV4=
-----END CERTIFICATE-----

pushapp_key_dev.pem

Bag Attributes
    friendlyName: pushApp
    localKeyID: EB 91 B3 CD A0 F5 9A 56 46 96 43 24 C8 B0 A7 56 62 01 9E 2C 
Key Attributes: <No Attributes>

Оба файла находятся в одном месте.


person Mika    schedule 19.01.2015    source источник
comment
содержит ли ваш push_key_dev раздел, похожий на -----BEGIN RSA PRIVATE KEY-----?   -  person Tarang    schedule 19.01.2015
comment
@Акшат, нет. Это все содержимое файла pushapp_key_dev.pem Bag Attributes friendlyName: pushApp localKeyID: EB 91 B3 CD A0 F5 9A 56 46 96 43 24 C8 B0 A7 56 62 01 9E 2C Key Attributes: <No Attributes>   -  person Mika    schedule 19.01.2015
comment
Похоже, этот ключ неправильно преобразовался из p12, если это все, что в нем есть, то в нем много чего не хватает.   -  person Tarang    schedule 20.01.2015
comment
Это команда, которую я использовал для создания файла pushapp_key_dev.pem openssl pkcs12 -nocerts -out pushapp_key_dev.pem -in pushapp_key_dev.p12. Я просто следовал приведенным выше инструкциям.   -  person Mika    schedule 20.01.2015
comment
Я понял. Когда я создал файл .pem, меня попросили ввести кодовую фразу, но я этого не сделал. По-видимому, требуется парольная фраза длиной не менее 4 символов. Однако я получил еще одну ошибку, когда пытался проверить файлы .pem. Verify return code: 20 (unable to get local issuer certificate)   -  person Mika    schedule 20.01.2015


Ответы (1)


Когда я создал файл .pem, мне просто нужно было ввести кодовую фразу (минимум 4 символа) при появлении запроса. Во-первых, я просто пропустил его, потому что не хотел создавать кодовую фразу. Он не выдает никаких ошибок или иным образом не сообщает, что требуется парольная фраза, и фактически создает нерабочий файл .pem.

person Mika    schedule 20.01.2015