2010-03-31 11 views
52

Estoy escribiendo una aplicación para BlackBerry que utiliza un lector de tarjetas inteligentes BlackBerry. No hay mucha documentación sobre el tema, por lo que realmente me gustaría que alguien me diera ejemplos iniciales.Ejemplo de lector de tarjetas inteligentes Blackberry

Básicamente, hay una clave privada RSA en la tarjeta más un certificado (para la clave pública emparejada). Me gustaría poder encriptar/descifrar datos y también firmarlos. El objetivo final sería establecer una conexión SSL mutuamente autenticada utilizando el certificado del cliente contenido en la tarjeta inteligente.

Aquí está el código logré llegar a la medida:

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"); 

Este token parece prometedor - tiene algunos métodos agradables, pero con argumentos "crípticos". ¿Qué hacer después?

+2

¿Has visto esta guía? : [Guía de desarrollo del controlador de tarjeta inteligente criptográfica] (http://docs.blackberry.com/en/developers/deliverables/1127/BlackBerry%20JDE%20Cryptographic%20Smart%20Card%20Driver%20Development%20Guide.pdf) –

+2

¿Podría explicarlo? más claramente, ¿qué quieres que haga ese código y cómo está fallando? –

+2

¿Ha habido algún desarrollo en esto? Siento que probablemente lo descubriste después de más de un año y medio. Podría estar equivocado, pero si lo hiciera, publique su respuesta y elimine esto de la lista sin respuesta. – Jon

Respuesta

0

deberá implementar métodos SmartCardSession, también implementar métodos RSACryptoToken. Con los métodos de SmartCardSession, podrá comunicarse con la tarjeta inteligente y, con los métodos de RSACryptoToken, podrá realizar operaciones de cifrado. También debe leer sobre el protocolo APDU.

Cuestiones relacionadas