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 es.gob.jmulticard.card.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 es.gob.jmulticard.card.iso7816four.AbstractIso7816FourCard
getChallenge, readAllRecords, readBinaryComplete, selectFileByIdAndRead, selectFileByLocation, selectFileByLocationAndRead, selectFileByName, selectFileByName, setPublicKeyToVerificationMethods inherited from class es.gob.jmulticard.card.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.
-