У меня есть один файл .key, из которого я создал файл .csr, который использовал для покупки сертификата подписи кода GoDaddy. От GoDaddy я получил один файл .spc.
Я экспортировал файл spc в pem с помощью следующей команды:
openssl pkcs7 -inform DER -in mycert.spc -print_certs -out certs.pem
Затем я открыл файл certs.pem и скопировал первые два сертификата в файл с именем cert-chain.crt, а последний (мой) - в файл с именем server.crt.
Я попытался подписать файл вот такой командой:
openssl smime -sign -in a.mobileconfig -out signed_a.mobileconfig -signer cert/server.crt -inkey cert/ios_apn.key -certfile cert/cert-chain.crt -outform der -nodetach
Но вот что у меня есть:
unable to load certificate
11911:error:0906D06C:PEM routines:PEM_read_bio:no start line:/SourceCache/OpenSSL098/OpenSSL098-41/src/crypto/pem/pem_lib.c:648:Expecting: TRUSTED CERTIFICATE
Что я делаю неправильно? Как мне обычно подписывать файл a.mobileconfig предоставленным файлом SPC?