Search code examples
iosmacoscode-signing-certificate

What is this generic apple development certificate? What happens if expires?


this certificate is not present in my keychain (at least, so it seems to me).

  • I think it is just something used in development, on local machine, but since it is "generic" I'm confused.
  • I am distributing the app via private web site, I'm just afraid expiring could affect users somehow, a simple "development certificate" is not a profile, and it should be used only on a Mac for developing.
  • how can I discover what happens when it expires?

my app is present both on iOS and Macos

to be clear, I know it is not a "Mac certificate".

someone can help me?

here an image

enter image description here


Solution

  • Distribution cert is what you use to sign an app for production in most cases. Development cert is used for building/developing apps and testing.

    First check which cert is being used to sign your ipa

    1. Unzips the ipa which creates a Payload folder unzip -q <your_app>.ipa
    2. Extract contents of the embeded profile to a plist file security cms -D -i Payload/<your_app>.app/embedded.mobileprovision > <your_app>.plist
    3. Get the name of the cert being used /usr/libexec/PlistBuddy -c "print Name" <your_app>.plist
    4. Can also get the expiration date /usr/libexec/PlistBuddy -c "print ExpirationDate" <your_app>.plist

    Depending on the outcome of above, can decide whether the Development cert is needed or not.

    how can I discover what happens when it expires?

    You would need to re-sign your ipa if this happens