To send Push notification to an application/device couple you need an unique device token (see the ObjectiveC demo) and a certificate. The device token is generated by Apple from Device ID and Application ID, so this is unique per device and per application.
Generate a Push Certificate
To generate a certificate on a Mac OS X:
Log-in to the iPhone Developer Program Portal
Choose App IDs from the menu on the right (or click here)
Create an App ID without a wildcard. For example
Click the Configure link next to this App ID and then click on the button to start the wizard to generate a new Development Push SSL Certificate (Apple Documentation: Creating the SSL Certificate and Keys)
Download this certificate and double click on
aps_developer_identity.certo import it into your Keychain
Launch Keychain Assistant (located in Application, Utilities or search for it with Spotlight) and click on My Certificates on the left
Expand Apple Development Push Services and select Apple Development Push Services AND your private key (just under Apple Development Push Services)
Right-click and choose "Export 2 elements..." and save as
server_certificates_bundle_sandbox.p12(don't type a password).
Open Terminal and change directory to location used to save
server_certificates_bundle_sandbox.p12and 1. convert the PKCS12 certificate bundle into PEM format using this command (press enter when asked for Import Password):
openssl pkcs12 -in server_certificates_bundle_sandbox.p12 -out server_certificates_bundle_sandbox.pem -nodes -clcerts
Now you can use this PEM file as your certificate in ApnsPHP!
Verify peer using Entrust Root Certification Authority
Download the Entrust Root Authority certificate directly from Entrust Inc. website:
- Navigate to https://www.entrust.com/get-support/ssl-certificate-support/root-certificate-downloads/
- Download the Entrust CA (2048) file (entrust_2048_ca.cer) https://www.entrust.com/root-certificates/entrust_2048_ca.cer
wget https://www.entrust.com/root-certificates/entrust_2048_ca.cer -O - > entrust_root_certification_authority.pem
Otherwise (for use only in a Mac OS X environment), export the Entrust Root Authority certificate:
- Launch Keychain Assistant (located in Application, Utilities or search for it with Spotlight) and click on System Root Certificate on top-left and Certificates on the bottom-left
- Right-click on Entrust Root Certification Authority and export with
entrust_root_certification_authority.pemfile name and choose as document format Privacy Enhanced Mail (.pem). Now you can use this PEM file as Entrust Root Certification Authority in ApnsPHP to verify Apple Peer!