Un satellite GPS émet avec environ la puissance d'une ampoule domestique, à vingt mille kilomètres de distance. Au moment où le signal atteint la Terre, il se situe à environ 50 dB sous le plancher de bruit thermique — cent mille fois plus faible que le bruit ambiant —, ce qui le rend apparemment impossible à recevoir, et un système de navigation utilisable par tous n'aurait pas dû fonctionner. Pourtant, les signaux sont partout autour de nous, par tous les temps et à toute altitude, et une application de cartes fonctionne encore pendant un vol.

Le GPS résout ce problème par une astuce. Chaque satellite mélange son lent flux de données à 50 bit/s dans un code C/A pseudo-aléatoire rapide répété mille fois par seconde, et le récepteur connaît déjà ce code : le tableau 3-I de la spécification publique IS-GPS-200L énumère la séquence de chips de chaque satellite. Générer des répliques locales et les corréler avec le bruit entrant fait s'annuler en moyenne le bruit aléatoire tandis que le vrai signal s'accumule, extrayant le murmure du bruit de fond. Différents satellites utilisent différents codes — accès multiple par répartition en code —, ce qui permet à une trentaine d'entre eux de partager une même bande.

Parce que le code civil est public et que les satellites se contentent de diffuser, en émission sans retour, personne ne peut facturer l'accès, révoquer un auditeur, ni même savoir que quelqu'un écoute. Cette combinaison — un murmure physiquement réceptible sans péage — est ce qui a permis au code C/A, conçu comme un tremplin à faible résolution pour les récepteurs militaires, de devenir la base de la plupart des GPS civils ; le code militaire P, plus précis, n'est protégé que par le secret de sa séquence, non par l'économie.

Publier le code civil : tout récepteur peut extraire le murmure du bruit par corrélation, gratuitement

Corréler le bruit reçu avec une réplique locale du code connu fait s'annuler en moyenne le bruit tandis que le signal s'accumule, faisant passer une émission située 50 dB sous le bruit à l'audibilité.

La spécification est publique : IS-GPS-200L énumère la séquence de chips C/A de chaque satellite, si bien que construire un récepteur ne nécessite ni rétro-ingénierie, ni licence, ni paiement.

Une diffusion en émission sans retour n'a aucun point de mesure — pas d'abonnement, pas d'autorisation, aucun moyen de savoir qui écoute —, donc il n'existe aucun péage où l'adoption pourrait être arrêtée.

Le lent débit de données de 50 bit/s sous un code à 1 million de chips/s maintient la séquence connue stable assez longtemps pour s'y verrouiller, ce qui permet à un canal civil faible de porter un message de navigation utilisable.

Un format ouvert s'amplifie lorsque la clé est un savoir publié plutôt qu'une autorisation : sans péage et sans licence, chaque fabricant peut s'y conformer, et la norme devient une infrastructure.

Le signal ouvert a fait du GPS l'utilitaire de positionnement par défaut : une trentaine de satellites desservent la planète entière, et l'article note que plus de la moitié de la population mondiale n'a jamais vécu sans lui. La spécification d'interface est restée publique — le tableau 3-I d'IS-GPS-200L énumère toujours le code de chaque satellite —, si bien que des récepteurs ont toujours pu être construits de zéro. Des amateurs le font désormais exactement ainsi : la série de récepteurs GPS définis par logiciel de Phillip Tennen a recueilli 552 points et 128 commentaires sur Hacker News en avril 2024, traitant le GPS comme une diffusion publique que chacun peut écouter.

VÉRIFIEZ LES SOURCES

Les sources

  1. Building a GPS Receiver, Part 1: Hearing Whispers axleos.com · axleos.com ·
  2. Building a GPS Receiver, Part 1: Hearing Whispers (Hacker News discussion) Hacker News · news.ycombinator.com ·