Difference between revisions of "Contrôle d'Accès Contactless JavaCard"
(→Liens) |
(→Détail) |
||
Line 18: | Line 18: | ||
==Détail== |
==Détail== |
||
+ | ===Environnement de développement=== |
||
+ | |||
+ | [http://www.oracle.com/technetwork/java/javacard/downloads/index.html Java Card Development kit 2.2.2] (librairies pour developper une application javacard et pour un client + outils de simulation de carte) |
||
+ | eclipse |
||
+ | [http://sourceforge.net/projects/eclipse-jcde/ plugin d'integration eclipse-JCDE-0.1] |
||
+ | |||
+ | ===Installation=== |
||
+ | |||
+ | '''Java Card Development kit 2.2.2''' |
||
+ | * ajouter la variable d'environnement JC_HOME et l'ajouter au path. |
||
+ | * Attention! si vous etes sous windows, que vous voulez utiliser l'outil apdutool, et que votre JAVA_HOME ou JC_HOME contient des espaces il faut modifier le script Apdutool.bat -> remplacer %JAVA(JC)_HOME% par "c:..." |
||
+ | |||
+ | '''Plugin eclipse''' |
||
+ | *désarchiver l'archive et placer le contenu du dossier plugin dans le dossier plugin d'eclipse |
||
+ | |||
+ | ===Création d'un projet java card sous eclipse=== |
||
+ | |||
+ | *file->new->other->Javacard->javacard project |
||
+ | *clique droit sur le projet -> new -> other -> javacard applet |
||
+ | *clique droit sur le package -> java card tools -> set package AID |
||
==Lecture== |
==Lecture== |
Revision as of 15:57, 15 April 2011
- UE/Module: Projet M2M M2PGI
- Enseignants: Didier Donsez
- Etudiants M2PGI: Matthieu Godet (chef de projet), Etienne Gosset.
Description
Le projet Contrôle d’accès Javacard contacless (NFC) est un service de contrôle d'accès et de pointage dans des batiments. Ce système utilise des cartes à puce JavaCard ou BasicCard sans contact (ISO14443) ou avec contact (ISO7816), des étiquettes NFC ou bien des iButtons. Chaque carte contient un trousseau de clés confiées à un porteur. Une clé autorise l'ouverture (ou la sortie) d'un point d'accès (porte, tourniquet, ...) à des dates ou périodes définies. Chaque clé est signée (digitalement) par le gestionnaire du batiment permettant une vérification offline.A la présentation de la carte, la serrure interroge la carte pour lui demander la (ou les) clés qui la concerne, vérifie la signature digitale de la clé, et déclenche l'ouverture de la porte (par exemple, alimentation électrique de la gâche électrique, ...) si la date courante est dans la période autorisée définie pour la clé.
Le système devra supporte les attaques suivantes:
- rejeu (replay) d'un échange contre la serrure (Man in the Middle).
- confidentialité : la serrure ne peut interroger que les clés qui la concerne.
- autres à définir
Equipement
Détail
Environnement de développement
Java Card Development kit 2.2.2 (librairies pour developper une application javacard et pour un client + outils de simulation de carte) eclipse plugin d'integration eclipse-JCDE-0.1
Installation
Java Card Development kit 2.2.2
- ajouter la variable d'environnement JC_HOME et l'ajouter au path.
- Attention! si vous etes sous windows, que vous voulez utiliser l'outil apdutool, et que votre JAVA_HOME ou JC_HOME contient des espaces il faut modifier le script Apdutool.bat -> remplacer %JAVA(JC)_HOME% par "c:..."
Plugin eclipse
- désarchiver l'archive et placer le contenu du dossier plugin dans le dossier plugin d'eclipse
Création d'un projet java card sous eclipse
- file->new->other->Javacard->javacard project
- clique droit sur le projet -> new -> other -> javacard applet
- clique droit sur le package -> java card tools -> set package AID
Lecture
Introduction à la Sécurité
JCE (Java Cryptography Extension)
- http://membres-liglab.imag.fr/donsez/cours/jce.pdf
- http://membres-liglab.imag.fr/donsez/cours/tpjce.zip
Cartes à microprocesseur
API javax.smartcardio (avec des lecteurs PCSC)
API Java Security
Bruce Schneier, Applied Cryptography, Second Edition (en francais Éditeur : Vuibert, 2001, ISBN: 2711786765) site, code source
Liens
Equipe
- Matthieu Godet (chef de projet)
- Etienne Gosset