Class SmartCafePkcs15Applet
java.lang.Object
es.gob.jmulticard.card.AbstractSmartCard
es.gob.jmulticard.card.iso7816four.AbstractIso7816FourCard
es.gob.jmulticard.card.gide.smartcafe.SmartCafePkcs15Applet
- All Implemented Interfaces:
Card, CryptoCard
Tarjeta G&D SmartCafe con Applet PKCS#15.
- Author:
- Vicente Ortiz, Tomás García-Merás.
-
Field Summary
Fields inherited from class AbstractSmartCard
DEBUG -
Constructor Summary
ConstructorsConstructorDescriptionSmartCafePkcs15Applet(ApduConnection conn, CryptoHelper cryptoHlpr) Construye un objeto que representa una tarjeta G&D SmartCafe con el Applet PKCS#15 de AET.SmartCafePkcs15Applet(ApduConnection conn, CryptoHelper cryptoHlpr, boolean failIfNoCerts) Construye un objeto que representa una tarjeta G&D SmartCafe con el Applet PKCS#15 de AET. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidconnect(ApduConnection conn) Conecta con el lector del sistema que tenga una tarjeta insertada.String[]Obtiene los alias de los certificados de la tarjeta.Obtiene el nombre de la tarjeta.getCertificate(String alias) Obtiene el certificado correspondiente al alias proporcionado.getPrivateKey(String alias) Obtiene una referencia a la clave privada correspondiente al alias proporcionado.intselectFileById(byte[] id) Selecciona un fichero (DF o EF).protected voidSelecciona el fichero maestro (directorio raíz de la tarjeta).voidEstablece elCallbackHandler.voidEstablece elPasswordCallbackpara el PIN de la tarjeta.byte[]sign(byte[] data, String algorithm, PrivateKeyReference keyRef) Realiza una firma electrónica.toString()voidVerifica el PIN de la tarjeta.Methods inherited from class AbstractIso7816FourCard
getChallenge, readAllRecords, readBinaryComplete, selectFileByIdAndRead, selectFileByLocation, selectFileByLocationAndRead, selectFileByName, selectFileByName, setPublicKeyToVerificationMethods inherited from class AbstractSmartCard
getCla, getConnection, sendArbitraryApdu, setConnection
-
Constructor Details
-
SmartCafePkcs15Applet
Construye un objeto que representa una tarjeta G&D SmartCafe con el Applet PKCS#15 de AET.- Parameters:
conn- Conexión con la tarjeta.cryptoHlpr- Funcionalidades criptográficas de utilidad que pueden variar entre máquinas virtuales.- Throws:
IOException- Si hay errores de entrada / salida.
-
SmartCafePkcs15Applet
public SmartCafePkcs15Applet(ApduConnection conn, CryptoHelper cryptoHlpr, boolean failIfNoCerts) throws IOException Construye un objeto que representa una tarjeta G&D SmartCafe con el Applet PKCS#15 de AET.- Parameters:
conn- Conexión con la tarjeta.cryptoHlpr- Funcionalidades criptográficas de utilidad que pueden variar entre máquinas virtuales.failIfNoCerts- Si se establece atruey la tarjeta no contiene ningun par certificado + clave privada la inicialización falla con unIOException, si se establece afalse, la inicialización se completa haya o no haya claves y certificados.- Throws:
IOException- Si hay errores de entrada / salida.
-
-
Method Details
-
setPasswordCallback
Establece elPasswordCallbackpara el PIN de la tarjeta.- Parameters:
pwc-PasswordCallbackpara el PIN de la tarjeta.
-
setCallbackHandler
Establece elCallbackHandler.- Parameters:
callh-CallbackHandlera establecer.
-
connect
Conecta con el lector del sistema que tenga una tarjeta insertada.- Parameters:
conn- Conexión hacia la tarjeta.- Throws:
IOException- Cuando hay errores de entrada / salida.
-
getCardName
Description copied from class:AbstractSmartCardObtiene el nombre de la tarjeta.- Specified by:
getCardNamein classAbstractSmartCard- Returns:
- Nombre de la tarjeta
-
getAliases
Description copied from interface:CryptoCardObtiene los alias de los certificados de la tarjeta.- Specified by:
getAliasesin interfaceCryptoCard- Returns:
- Array con los alias de los certificados de la tarjeta
-
getCertificate
Description copied from interface:CryptoCardObtiene el certificado correspondiente al alias proporcionado.- Specified by:
getCertificatein interfaceCryptoCard- Parameters:
alias- Alias del certificado.- Returns:
- Certificado correspondiente al alias proporcionado o
nullsi no existe ningún certificado con ese alias.
-
selectMasterFile
Description copied from class:AbstractIso7816FourCardSelecciona el fichero maestro (directorio raíz de la tarjeta).- Specified by:
selectMasterFilein classAbstractIso7816FourCard- Throws:
ApduConnectionException- Si hay problemas en el envío de la APDU.Iso7816FourCardException- Si no se puede seleccionar el fichero maestro por cualquier otra causa.
-
toString
-
selectFileById
Selecciona un fichero (DF o EF).- Overrides:
selectFileByIdin classAbstractIso7816FourCard- Parameters:
id- Identificador del fichero a seleccionar.- Returns:
- Tamaño del fichero seleccionado.
- Throws:
ApduConnectionException- Si hay problemas en el envío de la APDU.Iso7816FourCardException- Si falla la selección de fichero.
-
verifyPin
Description copied from class:AbstractIso7816FourCardVerifica el PIN de la tarjeta. El método reintenta hasta que se introduce el PIN correctamente, se bloquea la tarjeta por exceso de intentos de introducción de PIN o se recibe una excepción (derivada deRuntimeExceptiono unaApduConnectionException.- Specified by:
verifyPinin classAbstractIso7816FourCard- Parameters:
psc- PIN de la tarjeta.- Throws:
ApduConnectionException- Cuando ocurre un error en la comunicación con la tarjeta.PinException- Si el PIN proporcionado en la PasswordCallback es incorrecto y no estaba habilitado el reintento automático
-
getPrivateKey
Description copied from interface:CryptoCardObtiene una referencia a la clave privada correspondiente al alias proporcionado.- Specified by:
getPrivateKeyin interfaceCryptoCard- Parameters:
alias- Alias del certificado- Returns:
- Referencia a la clave privada correspondiente al alias proporcionado o
nullsi no existe ninguna clave privada con ese alias
-
sign
public byte[] sign(byte[] data, String algorithm, PrivateKeyReference keyRef) throws CryptoCardException, PinException Description copied from interface:CryptoCardRealiza una firma electrónica.- Specified by:
signin interfaceCryptoCard- Parameters:
data- Datos a firmar.algorithm- Algoritmo de firma.keyRef- Referencia a la clave privada de firma.- Returns:
- Datos firmados (PKCS#1 v1.5).
- Throws:
CryptoCardException- Si ocurre algún problema durante la firma.PinException- Si el PIN proporcionado es incorrecto o no es posible obtenerlo.
-