En fait, cela fonctionne plus comme SSL. Lors de la création d'un compte Apple, Apple génère une paire de clés publique / privée pour votre nom d'utilisateur. Il vous donne ensuite votre clé privée et garde votre public. (C'est pourquoi lorsque vous achetez pour la première fois ou lorsque vous restaurez votre iDevice, vous devez l'activer avec votre compte iTunes). Lors de l'activation, il transfère votre clé privée sur votre iDevice. Fondamentalement, ce qui se passe, c'est lorsque vous achetez une application (gratuite ou payante), Apple génère un en-tête de 4096 octets qui est chiffré avec votre clé publique.
Si vous avez une compréhension des clés publiques / privées, la clé publique peut chiffrer pour sa paire privée ... Par exemple, j'utiliserais une clé publique de serveur pour chiffrer les données à envoyer au serveur. Le serveur utiliserait alors sa clé privée pour la décrypter. Lorsqu'il veut renvoyer des données, il utilise ma clé publique pour crypter les données et j'utilise ma clé privée pour les décrypter! Les clés publiques peuvent uniquement chiffrer les données et ne peuvent pas déchiffrer et vice-versa pour les clés privées.
Lorsque vous téléchargez votre application, son en-tête est chiffré avec votre clé publique. Seule votre clé privée peut déchiffrer l'en-tête intégré à l'application. Ainsi, par exemple, si je copiais une IPA générée pour vous et la mettais sur mon iDevice (cela suppose que vous pouvez l'obtenir là-bas, iTunes refuserait de toute façon de la synchroniser), puis j'essayais de l'exécuter, elle planterait simplement car ma clé privée ne pourrait pas décrypter l'en-tête! Il est également intéressant de noter que le fichier IPA (un IPA est essentiellement un fichier zip qui a été renommé) n'a pas d'en-tête, si vous regardez le contenu d'un IPA, vous vous rendrez compte qu'il contient un fichier sans extension, Prenez l'application de Facebook par exemple, elle aurait un fichier nommé «Facebook». Il s'agit du binaire de l'application, et c'est le fichier qui contient l'en-tête chiffré.
Oui, comme indiqué ci-dessus, vos applications continueront de fonctionner tant que vous vous souviendrez de votre identifiant Apple, car l'iDevice (et iTunes) ne vérifie AUCUNE signature avec iTunes quoi qu'il en soit! Cela signifie que vous pouvez installer des applications supprimées et également synchroniser des IPA plus anciennes avec votre appareil tant qu'elles sont à vous et que vous avez toujours l'IPA indéfiniment!