Résumé

  • La FAQ de Chromium montrait une chaîne Chrome portant ensemble Mozilla/5.0, AppleWebKit, Chrome et Safari. Elle racontait que des tests de sites lisaient mal cette chaîne et rejetaient parfois Chrome comme navigateur non pris en charge.
  • Chrome a modifié des éléments en 2011 pour suivre d’autres navigateurs. À partir de Chrome 110, en 2023, la version Android et le modèle de l’appareil ont progressivement pris des valeurs fixes, tandis que les anciens marqueurs restaient dans le format.

Quatre noms sur la même étiquette

La FAQ de compatibilité de Chromium donnait un exemple étonnant : une seule chaîne Chrome commençait par Mozilla/5.0, passait par AppleWebKit et Chrome/2.0.167.0, puis finissait sur Safari/525.13. Les sites ne voyaient pas quatre navigateurs. Ils voyaient une suite de mots à laquelle leurs scripts avaient associé des décisions. Chromium relevait que les contrôles côté serveur ou JavaScript reconnaissaient souvent mal Chrome ; certains sites annonçaient même qu’il n’était pas pris en charge. La solution proposée était de vérifier les capacités réelles du navigateur.

Le raccourci était tentant pour les éditeurs de sites. Lire un nom demandait moins de travail que tester chaque fonction. Mais une fois les embranchements installés, chaque mot de la chaîne pouvait déterminer la page reçue. La déclaration d’identité s’est changée en règle de distribution du contenu.

Une langue fausse supprimée, les vieux noms conservés

Le 31 mars 2011, Chromium comparait les chaînes de Chrome 10 et 11. L’équipe retirait U, vestige d’une époque où la puissance du chiffrement dépendait des règles d’exportation, ainsi que le paramètre de langue. Ce dernier disait toujours en-US à cause d’un défaut de Chrome, quelle que soit la langue souhaitée par l’utilisateur ; le site devait consulter Accept-Language. Des éléments Windows changeaient aussi. Chromium expliquait suivre rapidement Firefox 4, car les sites utilisaient des analyseurs communs pour plusieurs navigateurs. Ses propres sites avaient déjà souffert des nouveaux découpages.

Les exemples conservaient pourtant Mozilla/5.0, AppleWebKit, Chrome et Safari. En 2022, la RFC 9110 définissait encore User-Agent comme une suite d’identifiants de produits et de commentaires, utile aux contournements d’incompatibilité et aux statistiques. Elle demandait de limiter les détails inutiles, capables de faciliter l’empreinte numérique, et déconseillait d’emprunter les noms d’autres produits pour annoncer une compatibilité. Le texte décrivait la fonction du champ. Les exemples de Chromium montraient le poids du code des sites déjà en place.

Les détails ont disparu, la forme a tenu

L’avis de réduction publié en 2023 par Chrome annonçait le remplacement progressif de la version Android et du modèle du téléphone à partir de Chrome 110. Un appareil sous Android 13 pouvait apparaître sous la valeur fixe Android 10, avec le modèle K. Chrome voulait réduire le pistage passif d’un site à l’autre. Dans les exemples avant et après, la structure restait : Mozilla/5.0, AppleWebKit, Chrome, Safari.

L’étiquette avait ainsi deux emplois qui tiraient dans des directions opposées. Elle révélait des détails du téléphone, tout en servant de mot de passe officieux aux embranchements des sites. Chrome a retiré une partie des premiers sans briser les seconds. Une mesure datée des décisions prises par les sites et de l’empreinte des appareils préciserait les effets réels. Les documents originaux montrent déjà pourquoi ces vieux mots résistaient à la réforme.

Sources