Lire son passe Navigo

Sait-on réellement ce qu’il y a dans le passe Navigo utilisé par les franciliens pour leurs déplacements de tous les jours ? Tentons d’en extraire quelques informations …

Carte métro parisien rock

C’est la fin du confinement, la réduction du télétravail, le jour de la reprise sur site où l’on retrouve ce bon vieux RER 🚂 pour aller à la capitale 🗼. Oui mais en voulant réactiver le fameux sésame à carte à puce après un an de pause, le guichet automatique refuse de lire mon passe Navigo 💳. Un argument suffisant pour se lancer le projet de lire par nous même les informations contenues dans cette carte 🕵️.

Guichet automatique

Pas toujours clairs les messages d’erreur …

Tourniquet

Matériel

J’ai utilisé pour cette expérience un lecteur abordable (environ 30€) et multiplateforme: le SCR3500 de Identiv. Il ne sait pas lire le sans contact mais uniquement les cartes à puces comme les cartes bleues, la carte Vitale, ou encore la carte Navigo.

Lecteur de carte à puce

Logiciel

Côté logiciel, après avoir téléchargé et installé les drivers du lecteur, j’ai découvert le logiciel Cardpeek (dépôt GitHub) qui lit nombre de formats de cartes.

Compilation / exécution

Sous MacOS Catalina, après avoir récupéré le dépôt git, j’ai rencontré quelques petites erreurs à la compilation:

  • La commande aclocal n’était pas disponible, mais elle est installable avec homebrew et le paquet automake.
  • openssl était nécessaire mais le chemin doit être passé explicitement dans le configure.
  • Xcode doit être installé car le programme a besoin de certains frameworks. Malheureusement Xcode n’est plus installable directement avec l’appStore (il nécessite une version plus récente de MacOS). Il faut trouver une version plus ancienne. La dernière compatible Catalina est Xcode 12.4 (10Go) téléchargable à partir du site développeurs d’Apple. L’identification avec un compte développeur Apple (gratuit) est requise.
git clone https://github.com/L1L1/cardpeek
cd cardpeek
brew install automake openssl
autoreconf --install
./configure --with-openssl=/usr/local/opt/openssl
make
./cardpeek

Sous Debian et ses dérivées, il existe un paquet cardpeek directement installable via apt.

Malheureusement VirtualBox ne m’a pas permis de monter le périphérique USB dans ma VM Linux 🤷‍♂️ …

La version Windows précompilée est téléchargeable sur le site du développeur (non testé).

Lecture

Au premier écran, on sélectionne notre lecteur de carte qui est bien reconnu

Cardpeek - Choix du lecteur

On choisit Calypso, qui est le standard utilisé avec Navigo (mais également avec MOBIB en Belgique, avec KorriGo en Bretagne…)

Cardpeek - Choix du protocole

Et enfin la lecture des informations contenues. J’ai volontairement caché certaines infos personnelles ou que je n’ai pas réussi moi même à décrypter.

Cardpeek - Lecture des informations

Et voilà, nous avons extrait des données (pas dit que ce soit exhaustif). Outre le card number (qui est également sérigraphié sur la carte elle même), on retrouve quelques infos comme le pays, le nom du réseau, le statut de la carte. On remarque surtout que les 3 dernières validations en gare ont été enregistrées et je retrouve bien là mes dernières aventures souterraines d’avant confinement 🔒. Pas de mention du nom du titulaire de la carte mais il est déjà imprimé sur la carte, avec sa trombine.

Ça n’a pas résolu mon problème initial avec le guichet automatique mais au moins je sais que ma carte est techniquement lisible.

C’est tout pour aujourd’hui. Sur ce, bon voyage sur le réseau transilien 🛤️🚧🤠

Ressources

comments powered by Disqus