Clonage d'authentification RFID avec une platine Arduino
La finalité de ce projet était de tester la fiabilité de la technologie RFID dans le cadre d'une authentification et de permettre au groupe d'étudiants d'étudier cette technologie ainsi que la programmation des cartes Arduino.
Ce projet avait 3 objectifs :
- Mise en place d’une authentification via RFID
- Lecture et émulation des signaux RFID
- Connexion à une session LINUX grâce à une platine ARDUINO
RFID : méthode pour mémoriser et récupérer des données à distance en utilisant des « radio-étiquettes »
ARDUINO : Circuit imprimé sur lequel se trouve un microcontrôleur
La carte Arduino est une carte électronique « clef en main », car c'est une plateforme de développement open-source et un environnement de développement multi-Os.
L'Arduino se programme avec un langage assez proche du C/C++ avec une API très simple d’utilisation et présente de nombreuses librairies disponibles.
La première partie consistait à écouter le signal émis par une carte RFID, expérience permettant de mieux appréhender le fonctionnement de la technologie RFID (codage Manchester). Pour cela il a été réalisé un petit circuit électronique permettant de traiter à l'oscilloscope le signal par un tag RFID.
La point suivant avait pour objectif d'émuler à partir de la carte Arduino le signal émis par une carte RFID connue en utilisant les sorties analogiques.
Une solution a été mise en place sur la platine Arduino avec un module d'enregistrement pour lire, stocker et émuler plusieurs cartes RFID sur la même carte.
Le montage final qui combine lecteur et émulateur avec écran LCD, permet grâce l'écran d'afficher un tag, d'en saisir un manuellement ou de réémettre un des tags précédemment enregistrés.
En conclusion, ce projet à permis au groupe d'élèves de maîtriser la technologie RFID et ses codages, mais aussi d'appréhender la programmation sur des cartes embarquées Arduino.
Ce projet met en évidence la vulnérabilité de la technologie RFID lorsqu'elle est utilisée à des fins d'authentification ou de sécurité sans des précautions particulières. Pour une ouverture de session sous Linux, il est recommandé par exemple de coupler une telle solution avec un code PIN.
Contact sur ce projet : D. Carsenat