Resigning iOS apps can often be a complex and daunting task, requiring intricate knowledge of Xcode, Fastlane, and coding skills. However, with Updraft, our tool for app distribution, the process has been revolutionized, offering simplicity and efficiency to developers, project managers or quality assurance employees of all seniority levels. In this blog, we'll explore how Updraft streamlines the iOS resigning process, making it accessible and straightforward for everyone.
Resigning a binary is essential to refresh the signature utilized for verifying the authenticity of the application. This process is crucial as it guarantees that the application remains untampered with and originates from a reliable and trustworthy origin.
There are multiple circumstances where resigning an iOS or Android binary becomes necessary, such as transitioning ownership of an application to a different developer account, refreshing an application following the expiration or revocation of a certificate, and modifying the app's name or bundle identifier.
Do you know the feeling? You're working with an external software development company to create your apps. Now, the app is ready, and it's time to submit it to TestFlight or your App Store Connect account for the first time. You're ready to upload the app, but there's a hurdle - you need to sign your app with the correct certificates and provisioning profiles. This ensures that Apple verifies you as the legitimate creator of the app. Certificates and provisioning profiles? Maybe you've never really heard of them before.
In the blog post iOS Code Signing, Development and Distribution Provisioning Profiles explained, Alain our iOS developer explains in detail how it all works. But if you don't have the time to acquire all that knowledge, don't worry. Just keep reading this blog post .
The easiest thing in the app development process would be to hand over the certificates and provisioning profiles to your external software developer to handle the iOS signing for you. And sure, you can do that. However, it's worth noting that Apple explicitly warns against this in their guidelines:
«Your Apple ID, authentication credentials, and related account information and materials (such as Apple Certificates used for distribution or submission to the App Store) are sensitive assets that confirm your identity. Keep your Apple ID and authentication credentials secure and do not share them with anyone.» (see Developer Apple)
So what now? You don't have the time, and there's nobody on your team who can or wants to delve into the topic? Well, here comes our app distribution tool Updraft, which handles the signing of your iOS app for you.
Before you are able to use Updraft to resign your .ipa file you need to prepare the following components:
Get your .ipa file: This is the iOS application package file that you want to resign. You can obtain this file from the developer or from your own source if you're resigning an app you've already downloaded.
Get access to the Apple Developer Account: You need to have access to an Apple Developer account. This can be an individual or an organizational account. It's required for generating provisioning profiles and certificates with which you are going to resign your .ipa file.
Provisioning Profile: A provisioning profile specifies which devices are allowed to run the app and must be signed by a certificate associated with your Apple Developer account. You need to create a new provisioning profile or have an existing one that matches the bundle identifier of the app you want to resign.
Distribution Certificate: You need a distribution certificate associated with your Apple Developer account. This certificate is used to sign the app. If you don't have one, you'll need to create it in the Apple Developer Portal.
Entitlements File (optional): If the app uses certain entitlements such as push notifications or in-app purchases, you may need to include an entitlements file.
Private Key (optional): If you're using a distribution certificate that is not associated with your Apple Developer account, you'll also need the private key associated with that certificate.
Once you have all these components, you can use them to re-sign the .ipa file using the Updraft resigning service.
With Updraft, you can easily resign your .ipa file without needing to install Xcode or other tools. Here's how to do it:
Upload the file you want to resign to Updraft.
Choose the resigning function. A new input window will appear.
Upload your provisioning profile.
Upload your distribution certificate.
If you use app entitlements in your app, upload this file as well.
If you use app extensions, you'll need to resign those too. You can upload the provisioning profile for each app extension.
Now you're ready to resign the file. Once the signing process is complete, Updraft will create a new app version and store it as a new entry in the app version history, where you can conveniently download it or upload it directly to the App Store (TestFlight) using the integrated App Store Connect integration. Generally, the resigning service of Updraft uses the codesigning tools to replace the existing signature of the .ipa file with your own signature (the provisioning profile and distribution certificate).
The iOS certificates and the provisioning profiles should be protected whenever possible and not fall into the hands of third parties, as they confirm the authority of developers or companies to Apple. That is why once the signing process is complete, all the associated files you uploaded will automatically be deleted.
With Updraft, whether you're a developer or a no-coder, you have the ability to easily resign your .ipa files. Neither do you need any coding skills nor do you need to install any tools on your computer. And the best part? It is as safe as it gets since all the files you use for signing are automatically deleted after the signing process.
And by the way, all the signing process takes place on servers in Switzerland. We're excited for you to use the service! Feel free to send us any questions at info@getupdraft.com or check out the documentation at docs.getupdraft.com. iOS app resigning has never been easier!