ioscertificateipapemmobileprovision

how to create certificates, keys, .pem and .p12 file without using mac to create an ipa?


I'm building a hybrid mobile application which is almost completed and working on testing phase.

My app is working fine on android devices but i need to test my app on IOS device. I have a Linux system on which i have done all the development. To create IPA i required x code but i don't have a Mac book.

I googled that how to create IPA online and i got the solution to create IPA and APK on build.phonegap.com but it creates APK only. For IPA it required Some IPA key, certificates, .pem and .p12 file.

Can anybody suggest how to create all these certificates without x code?


Solution

  • This thing will work if you want to generate certificates for creating IPA.

    Using a command line window:

    1. cd C:\OpenSSL-Win32\bin (or path to where you installed SSL)

    if you are a linux user then open terminal with sudo su and start from step 2

    1. openssl genrsa -out ios_distribution.key 2048
    2. openssl req -new -key ios_distribution.key -out CertificateSigningRequest.certSigningRequest -subj /emailAddress=YOUEMAILADDRESS, CN=YOUR NAME, C=COUNTRYCODE
    3. Go to https://developer.apple.com/ios/manage/certificates/team/distribute.action218 and sign in. Go to “certificates” under iOS.
    4. Under the Certificates menu on the left, click “All”, and then the “+” button aka: Add
    5. Pick either a Development “iOS App Development” or a Production “App Store and Ad Hoc” certificate. Note: You will need to go through the process twice to have a development and a production version of the app.
    6. Download the “Wordwide Developer Relations Certificate Authority” (AppleWWDRCA.cer) file from the same page
    7. Click Continue until you get to the “Generate your certificate” screen. Upload the .certSigningRequest file you created earlier and click generate. Download the generated ios_development.cer file.
    8. Create a Provisioning Profile by clicking on “All” under “Provisioning Profiles” on the left menu, and then clicking the “+” symbol, aka: add.
    9. Again, you will need to create both Development and a Distribution (App Store) versions.
    10. Create the Provisioning Profile for the App using the new .cer file (ios_development.cer)
    11. Download the .mobileprovision file
    12. In Command Prompt: openssl x509 -in ios_distribution.cer -inform DER -out ios_distribution.pem -outform PEM
    13. openssl pkcs12 -export -inkey ios_distribution.key -in ios_distribution.pem -out ios_distribution.p12 -passout pass:PASSWORD
    14. .key, .pem, and .p12 files will be generated