que estaba teniendo este problema, así, resulta que por alguna razón mi clave privada no coincide con el que está asociado con el aps_developer_identity .cer tuve ...
Terminé borrando todos todos mis claves públicas y privadas de mi elemento de llavero 'inicio de sesión', luego comencé todo el proceso otra vez (Genere la solicitud) ... Envié el nuevo archivo de solicitud en el portal del programa y generó un nuevo certificado, descargado e instalado haciendo doble clic en él (developer_identity.cer). Luego, reinicié los perfiles de aprovisionamiento para usar los nuevos certificados SSL Push, los descargué y los instalé haciendo doble clic (aps_developer_identity.cer). Finalmente, restablecí el perfil de provisión y descargué el nuevo. Limpié el anterior en el Organizador de Xcode e instalé el nuevo. Por último, he exportado mi llave 'privado' como key.p12 y mi aps_developer_identity.cer como apsdi.p12, y encontré los siguientes comandos en contra de ellos:
openssl pkcs12 -clcerts -nokeys -out apsdi.pem -in apsdi.p12
openssl pkcs12 -nocerts -out key.pem -in key.p12
Si estás bien utilizando una frase de contraseña (recomendado para la producción):
cat apsdi.pem key.pem > cert.pem
Si desea utilizar una frase de contraseña 'en blanco', que necesita para desencriptar la clave privada en primer lugar, utilizando la contraseña que especificó al convertir a formato PEM:
openssl rsa -in key.pem -out key.unencrypted.pem
Y luego gato el certificado y la clave sin cifrar en apns.pem (o cualquier nombre de archivo que ha elegido):
cat apsdi.pem key.unencrypted.pem > apns.pem
Es muy importante que exporte su certificado aps_developer_identity, no su certificado developer_identity como APSDI. pem.
Si puede expandir sus entradas de developer_identity.cer y aps_developer_identity.cer en Keychain Access, y verá una clave 'privada' cuando lo haga, todo debería funcionar.
Estoy pasando esa línea ahora, así que supongo que lo arregló, ¡Gracias! –
resulta que no era (todo) ahora lo consigo. Advertencia: stream_socket_client(): no se puede establecer el archivo de cadena de cert local '/Users/jamey/Sites/cert.pem '; Verifique que su configuración cafble/capath incluya detalles de su certificado y su emisor en /Users/jamey/Sites/providerService.php en la línea 29 –
¿Está utilizando un certificado autofirmado? –