Interroger une carte à puce avec Java et un lecteur PC/SC

Utiliser la librairie smartcardio de java

La librairie smartcardio permet de comuniquer entre un lecteur pcsc et une application java.
Ceci peut ouvrir la voie à des applications sécurisées par carte à puce. Les cartes à puce permettent de stocker des clés cryptographiques de manière sûre.

Pour l’installation des drivers PC/SC direction cet article : http://oversimple.fr/espionner-une-transaction-avec-carte-a-puce/

Utilisation de la librairie dans eclipse

De base la librairie n’est pas accessible. Pour contourner ce problème, copier le code ci dessous dans une classe java :

/**
 * @param args
 */
public static void main(String[] args) {
	try {
		/* Affiche la liste des lecteurs PCSC */
		TerminalFactory factory = TerminalFactory.getDefault();
		List terminals = factory.terminals().list();
		System.out.println("Terminals: " + terminals);
 
		/* Selectionne le premier lecteur */
		CardTerminal terminal = terminals.get(0);
 
		/* Etablit la connection avec la carte */
		Card card = terminal.connect("*"); 
		/* '*' Laisse le programme choisir le mode de communication */
		System.out.println("card: " + card);
		CardChannel channel = card.getBasicChannel();
 
		// disconnect
		card.disconnect(false);
	} catch (CardException e) {
		e.printStackTrace();
	}
}

Vous devriez avoir l’erreur suivante.

Pour y parer, suivez les étapes décrites ci dessous :

On supprime alors la librairie java.

It’s OverSimple isn’t it?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *