Je parlais il y a quelques jours de la possibilité de lire une carte à puce avec un Mac. Et si on lisait la bande magnétique d’une carte bleue, cette fois ? C’est assez simple avec un petit peu de matériel…
Pour le matériel, il faut un lecteur de bandes magnétique. C’est une lapalissade, dit comme ça, mais c’est pourtant le plus simple. Il en existe un sur le marché qui marche bien, c’est celui de Square. Ou plus exactement qui marchait bien : les lecteurs récents chiffrent la communication.
Si vous trouvez sur eBay un vieux lecteur Square, ça va fonctionner, sinon on en trouve sur AlieExpress pour quelques dollars.
Le fonctionnement est simple : une tête de lecture va simplement lire la bande magnétique et transmettre les données au smartphone via son entrée micro. Si vous avez un Mac sorti après 2008, ça devrait fonctionner, parce que les lecteurs utilisent généralement une prise jack combo, et la majorité des Mac depuis cette époque est compatible. Le plus simple pour le vérifier est de brancher un kit mains-libres d’iPhone : si le micro fonctionne, c’est bon.
Ensuite, il suffit d’un petit programme, SWipe. Il faut installer QT s’il n’est pas déjà présent (brew install qt
si vous utilisez Homebrew), et ensuite une ligne pour compiler le programme.
qmake && make
Pour la lecture, c’est simple : vous branchez le lecteur, vous lancez le programme et vous faites glissez la carte dedans. Ensuite, il suffit d’un peu d’entraînement pour réussir le geste correctement.
Pour les amateurs, le programme lit par défaut la première piste, qui contient le numéro de la carte, mais il est possible de décaler le lecteur et donc de lire la seconde piste (plus complète) assez facilement, comme expliqué là.
Je n’ai pas essayé de lire ma carte bleue (enfin, si, mais elle est abîmée et donc en partie illisible) mais j’ai testé une autre carte : une carte Flying Blue. La carte en question stocke en effet son numéro de la même façon qu’une carte bleue, ce qui montre que le lecteur fonctionne.
Le programme permet de lire le contenu de pas mal de carte, il suffit d’une bande magnétique lisible.
J’ai testé aussi avec une carte UGC, mais les données ne sont pas codées de la même façon.
Ah mince, j’avais envie de me lancer pour lire le contenu de ma carte UGC justement. Bon ben tant pis ^^
En fait, tu peux lire les données, après, faut juste arriver à trouver comment c’est organisé dessus, c’est plus ça le souci : lire, c’est trivial.
La question intéréssante maintenant c’est de savoir si on peut écrire ces données sur une carte « vierge » ? Je suppose que c’est beaucoup complexe de copier la carte… Cryptage etc…
Copier la bande magnétique, c’est trivial, hein. Suffit d’inverser la tête de lecture et d’une carte vierge. Après, en France, ça sert à rien, à part payer aux autoroutes, seul endroit à ma connaissance ou la puce est pas utilisée.