Nous avons des portes verrouillées par RFID à l’université. Comment puis-je faire en sorte que mon téléphone Android émule ma carte d’étudiant et ouvrir les portes verrouillées par RFID avec elle ?


Cela dépend.

TLDR - pas vraiment non, trop compliqué techniquement, commercialement et au niveau de la sécurité.


Cependant, supposons que vous vouliez l'envisager...

La première chose est de savoir de quel type de RFID il s'agit. Il en existe généralement 3 types et normalement, seuls deux d'entre eux sont utilisés dans les systèmes de contrôle d'accès physique. Ils sont nommés de manière imagée basse fréquence et haute fréquence : donc LF et HF. L'UHF (ultra) existe mais est utilisée pour l'identification d'articles à longue portée pour la logistique et le commerce de détail et non pour le contrôle d'accès.

Alors comment le savoir ? Prenez votre téléphone Android NFC et téléchargez l'appli NXP NFC Tag writer, et utilisez-la pour essayer de lire la carte d'identité que vous utilisez sur les lecteurs pour accéder à l'université.

Si l'appli répond et donne la moindre information, (elle donnera au moins l'Id unique de la carte - UID). Alors il s'agit d'une carte HF. Si vous n'avez pas de chance, alors c'est une carte LF et elles ne fonctionnent pas avec les téléphones NFC, en raison de la physique de l'induction du courant électromagnétique et de la taille de la bobine yada, yada.

Donc, en supposant que c'est une carte HF, l'appli vous donnera des informations sur le fabricant de la carte et quelques données de base sur la façon dont elle est formatée.

Certaines fois, le système de contrôle d'accès utilise simplement l'UID de la carte pour vous authentifier. Auquel cas, il serait assez simple de créer une application HCE qui " usurperait " n'importe quel UID que vous voulez. Il serait donc possible dans ce cas de prendre l'UID de votre application de lecture de carte et d'essayer. **Disclaimer** Je ne préconise pas du tout cela - si cela fonctionne alors vous contournez les contrôles de sécurité établis par l'institution et vous seriez probablement en violation des termes et conditions que vous avez acceptés lors de l'obtention de la carte.

Si la sécurité est plus forte et que l'authentification utilise réellement les données de la carte pour vous authentifier plutôt que d'utiliser le simple UID de la carte comme référence, alors, (si hypothétiquement vous deviez le faire - ce que je ne recommande pas bien sûr) vous devrez comprendre la disposition des données - et si elles ont été correctement mises en œuvre, alors elles seront également cryptées. Auquel cas vous devrez comprendre le schéma de cryptage et d'authentification, la disposition des données et le protocole d'échange de données, puis les mettre en œuvre dans une application Android.

Tout cela est possible bien sûr, et comme d'autres intervenants l'ont laissé entendre, le logiciel peut devenir un peu " poilu ", surtout si vous essayez de mettre en œuvre des protocoles propriétaires, comme Mifare Classic de NXP ou iClass de HID. Non seulement c'est un code très délicat, mais vous enfreindriez les droits d'auteur pour le faire et vous ne trouveriez probablement pas non plus une bonne spécification pour eux !

.