Une Révolution dans la Signature de Code d’Apple : la Solution en Rust

Dans le monde virtuel, la signature de code et la notarisation sont les gardiens qui attestent de l’authenticité et de la sécurité d’une application. Imaginez une carte d’identité numérique pour chaque logiciel — c’est à ce haut niveau d’importance que cela correspond.

À cette fin, j’ai développé une implémentation open source de ces mécanismes pour Apple, utilisant le langage de programmation Rust, au travers de la bibliothèque ‘apple-codesign’ et de son outil en ligne de commande ‘rcodesign’. Jusqu’à récemment, pour notariser une application, le recours à l’outil Transporter d’Apple était nécessaire. Capricieux dans son usage, cet outil injectait une dépendance extérieure indésirable dans le processus.

Cependant, lors de la WWDC 2022, Apple a présenté une API de Notarisation qui s’est révélée être la clé pour simplifier le processus de notarisation, en permettant son exécution depuis Linux. Ce clin d’œil m’a incité à travailler sur un client Rust pur pour cette API HTTP. Aujourd’hui, je suis ravi d’annoncer que cette fonctionnalité a été intégrée dans notre bibliothèque ‘apple-codesign’ grâce à la contribution décisive de Robin Lambertz, un contributeur actif sur GitHub.

Une Autonomie Accrue pour la Notarisation

Avec la version 0.17, ‘rcodesign’ acquiert la capacité de dialoguer directement avec l’API de Notarisation d’Apple, sans aucune dépendance à des logiciels tiers. En termes simples, c’est comme si désormais, pour obtenir la carte d’identité numérique d’une application Apple, il n’était plus nécessaire de passer par une agence tierce ; vous pouvez directement vous adresser à la mairie virtuelle.

Cette percée technique ouvre d’incroyables perspectives, car elle élimine la dépendance à une infrastructure macOS spécifique pour la signature et la notarisation de logiciels. Les barrières tombent, et désormais, des milliers d’entreprises et d’individus pourront déployer leurs logiciels Apple depuis n’importe quel système d’exploitation. La signature du code et la notarisation sont désormais réalisées à 100 % par du code Rust open source.

Pour ceux désireux de renforcer la sécurité de leurs créations logicielles Apple sans se cantonner à une seule plateforme, l’outil ‘rcodesign’ est maintenant disponible, prêt à l’emploi, et ne nécessite plus que vous opériez depuis un Mac. C’est une étape significative, marquant une avancée majeure dans l’univers de la cybersécurité pour les développeurs multiplateformes.

Je recommande vivement aux personnes concernées par cette avancée de consulter les notes de version et la documentation disponible. Les exécutables préconstruits pour les principales plateformes sont téléchargeables sur la page de la version 0.17, offrant une porte d’entrée vers une nouvelle ère d’indépendance dans le développement et la sécurisation de logiciels pour les produits Apple.