Certificates, App IDs, and the Arithmetic of Free Signing

In iloader, certificates and App IDs are not background records that only developers need to see; they are account resources that can decide whether an otherwise ready install can continue. This chapter explains what the developer-session views expose, how listing differs from revoking or deleting, and what happens when a certificate limit interrupts an installation. The useful judgment is not a universal quota formula—Apple's live services own that policy—but a way to read the information iloader shows and recognize when an install has become an account-maintenance decision.

The developer session exposes an account resource surface

A sideloaded app needs more than a local IPA and a connected phone. The Apple account behind iloader's developer session has resources that the native sideloading path may need to inspect or consume. The repository treats development certificates and App IDs as separate resource types. It gives each a management view because a person trying to install an app may need to understand existing account state, not just submit another package and hope the service accepts it.

A development certificate is shown with identifying metadata such as its name, serial number, machine name, and machine ID. iloader can request the certificate list from the developer session and can ask the service to revoke a certificate by serial number. The serial number is the key used for the revocation action; the display name is useful for recognition, but it is not the operation's identifier. That distinction matters when several certificates have similar names or were created from different machines.

The App ID view exposes a different shape of state. iloader receives App IDs together with an identifier, name, features, expiration information, and maximum and available quantities. The interface shows the name, expiration, ID, identifier, and an availability count such as available out of maximum. A missing expiration is rendered as “Never.” These fields let the user see that account capacity is finite or time-bound in the service response, while keeping the precise policy in the service that supplies the response.

The two views answer different questions. The certificate list asks which development certificates exist and which one might be revoked. The App ID view asks which application identifiers exist and how much reported capacity remains. Neither view is a local inventory of files on the computer. The data comes through the developer session, which means the device and the IPA can be perfectly healthy while the account-side response still prevents installation.

The relationship can be represented as a resource model:

classDiagram class AppleAccount class DeveloperSession class DevelopmentCertificate class AppID class InstallOperation AppleAccount --> DeveloperSession : creates authenticated session DeveloperSession --> DevelopmentCertificate : lists and can revoke DeveloperSession --> AppID : lists and can delete DevelopmentCertificate --> InstallOperation : limit can interrupt AppID --> InstallOperation : availability can constrain InstallOperation --> DeveloperSession : uses account-backed sideloader