Class CardOS
java.lang.Object
es.gob.jmulticard.card.AbstractSmartCard
es.gob.jmulticard.card.iso7816four.AbstractIso7816FourCard
es.gob.jmulticard.card.cardos.CardOS
- All Implemented Interfaces:
Card, CryptoCard
Tarjeta Atos / Siemens CardOS.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Atrprivate static final byte[]private static final Map<String, X509Certificate> private static final byteprivate final CryptoHelperManejador de funciones criptográficas.private static final Loggerprivate static final byte[]Fields inherited from class AbstractSmartCard
DEBUG -
Constructor Summary
ConstructorsConstructorDescriptionCardOS(ApduConnection conn, CryptoHelper cryptoHlpr) Construye un objeto que representa una tarjeta Atos / Siemens CardOS. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidconnect(ApduConnection conn) Conecta con el lector del sistema que tenga una CardOS 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.private voidprotected voidSelecciona el fichero maestro (directorio raíz de la tarjeta).byte[]sign(byte[] data, String algorithm, PrivateKeyReference keyRef) Realiza una firma electrónica.toString()voidverifyPin(PasswordCallback pinPc) Verifica el PIN de la tarjeta.Methods inherited from class AbstractIso7816FourCard
getChallenge, readAllRecords, readBinaryComplete, selectFileById, selectFileByIdAndRead, selectFileByLocation, selectFileByLocationAndRead, selectFileByName, selectFileByName, setPublicKeyToVerificationMethods inherited from class AbstractSmartCard
getCla, getConnection, sendArbitraryApdu, setConnection
-
Field Details
-
ATR_MASK
private static final byte[] ATR_MASK -
ATR
-
PKCS15_NAME
private static final byte[] PKCS15_NAME -
CLA
private static final byte CLA- See Also:
-
LOGGER
-
CERTIFICATES_BY_ALIAS
-
cryptoHelper
Manejador de funciones criptográficas.
-
-
Constructor Details
-
CardOS
public CardOS(ApduConnection conn, CryptoHelper cryptoHlpr) throws Iso7816FourCardException, IOException Construye un objeto que representa una tarjeta Atos / Siemens CardOS.- Parameters:
conn- Conexión con la tarjeta.cryptoHlpr- Manejador de funciones criptográficas.- Throws:
Iso7816FourCardException- Cuando hay errores relativos a la ISO-7816-4.IOException- Si hay errores de entrada / salida.
-
-
Method Details
-
connect
Conecta con el lector del sistema que tenga una CardOS insertada.- Parameters:
conn- Conexión hacia la tarjeta.- Throws:
IOException- Cuando hay errores de entrada / salida.
-
preloadCertificates
private void preloadCertificates() throws FileNotFoundException, Iso7816FourCardException, IOException, Asn1Exception, TlvException -
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
protected void selectMasterFile() throws ApduConnectionException, FileNotFoundException, Iso7816FourCardExceptionDescription 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.FileNotFoundException- Si no se encuentra el MF.Iso7816FourCardException- Si no se puede seleccionar el fichero maestro por cualquier otra causa.
-
toString
-
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
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).
-
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:
pinPc- PIN de la tarjeta.
-