Contexte et enjeux
Google Play Store a récemment refusé d’accepter les requêtes provenant d’AuroraStore, client tiers non officiel. Cette décision impacte directement les utilisateurs de GrapheneOS, système d’exploitation Android conçu sans services Google et qui dépend d’AuroraStore pour installer les applications du Play Store. L’incident a été signalé dans le suivi de projet GitLab d’AuroraStore (work item #1566) et soulève des questions de compatibilité et de continuité d’usage pour une communauté qui privilégie la confidentialité.
Architecture d’AuroraStore
AuroraStore fonctionne comme un wrapper autour de l’API officielle du Play Store. Le code source, disponible sur GitLab, utilise la bibliothèque GooglePlayAPI pour générer des jetons d’authentification à partir d’un compte Google. Le client se présente ensuite aux serveurs de Google avec un User‑Agent et un certificat TLS standard, comme le montre l’extrait d’installation du README :
git clone https://gitlab.com/AuroraOSS/AuroraStore.git
cd AuroraStore
./gradlew assembleReleaseLe binaire ainsi produit s’exécute sur tout appareil Android, y compris les builds AOSP dépourvus de Play Services. Le processus d’obtention du token repose sur un échange OAuth2 où le client transmet les informations d’identification du compte, puis stocke le token dans un cache chiffré.
Mécanisme de blocage du Play Store
Google a introduit, depuis plusieurs mois, une vérification côté serveur qui compare le client‑id et le fingerprint du certificat présenté. AuroraStore, n’étant pas répertorié comme client officiel, se voit renvoyer un code d’erreur HTTP 403 « Forbidden ». Le blocage s’applique dès la première requête d’authentification, empêchant la génération du token et, par conséquent, l’accès aux métadonnées d’applications. Le serveur utilise également des listes noires d’IP et de signatures d’applications détectées comme non conformes aux conditions d’utilisation de Google.
Conséquences pour les utilisateurs de GrapheneOS
Sans Play Services, les utilisateurs de GrapheneOS ne peuvent pas recourir à l’application Play Store native. La perte d’AuroraStore signifie qu’ils doivent recourir à des méthodes alternatives : sideload manuel d’APK, utilisation de dépôts F-Droid ou compilation depuis le code source. Chaque alternative introduit un risque supplémentaire : les APK non vérifiés peuvent contenir des malwares, et le processus de sideload requiert l’activation de l’option « Installation d’applications provenant de sources inconnues », ce qui affaiblit la chaîne de confiance du système.
Le blocage expose également une faiblesse structurelle : la dépendance à un service propriétaire pour la distribution d’applications crée un point de défaillance unique. Les développeurs d’AuroraStore devront soit négocier une reconnaissance officielle auprès de Google, soit réviser leur architecture pour contourner les contrôles, par exemple en implémentant un proxy qui reproduit les signatures attendues. En l’état, les utilisateurs de GrapheneOS restent limités à un catalogue réduit, ce qui peut freiner l’adoption du système pour des usages quotidiens.