52 votes

Exemple de lecteur de carte à puce Blackberry

J'écris une application pour BlackBerry qui utilise un lecteur de carte à puce BlackBerry. Il n'y a pas beaucoup de documentation sur le sujet, donc j'aimerais vraiment que quelqu'un puisse me donner des exemples de départ.

Fondamentalement, il y a une clé privée RSA sur la carte plus un certificat (pour la clé publique appariée). J'aimerais pouvoir crypter/décrypter des données et également les signer. L'objectif final serait d'établir une connexion SSL mutuellement authentifiée en utilisant le certificat du client contenu dans la carte à puce.

Voici le code que j'ai réussi à mettre au point jusqu'à présent :

SmartCardReader btReader = null;
SmartCardReader[] readers = SmartCardReaderFactory.getInstalledReaders();
for (int i = 0; i < readers.length; i++) {
    SmartCardReader reader = readers[i];
    if (reader.getType().equalsIgnoreCase("bluetooth")) {
        btReader = reader;
        break;
    }
}

SmartCardReaderSession readerSession = reader.openSession();
CryptoSmartCard card = (CryptoSmartCard) readerSession.getSmartCard();
RSACryptoToken token = (RSACryptoToken) card.getCryptoToken("RSA");

Ce site token semble prometteur - il possède quelques méthodes intéressantes, mais avec des arguments "énigmatiques". Que faire ensuite ?

1voto

user1094607 Points 62

Je pense que c'est ce que vous recherchez :

http://code.google.com/p/seek-for-Android/wiki/BTPCSC

0voto

Taras Points 572

Vous devez implémenter les méthodes SmartCardSession, ainsi que les méthodes RSACryptoToken. Avec les méthodes SmartCardSession, vous serez en mesure de communiquer avec la carte à puce, et avec les méthodes RSACryptoToken, vous serez en mesure d'effectuer des opérations cryptographiques. Vous devez également lire le protocole APDU.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X