Package es.gob.jmulticard
Class CryptoHelper.PaceChannelHelper
java.lang.Object
es.gob.jmulticard.CryptoHelper.PaceChannelHelper
- Direct Known Subclasses:
BcPaceChannelHelper
- Enclosing class:
CryptoHelper
Utilidades para el establecimiento de un canal PACE
(Password Authenticated Connection Establishment).
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final byte[]
Relleno para el CAN o la MRZ.protected final CryptoHelper
Utilidad para operaciones criptográficas.protected static final byte[]
Relleno para el kenc.protected static final byte[]
Relleno para el kmac.protected static final Logger
Logger
.protected static final byte[]
Relleno para el MAC.protected static final byte[]
Relleno para el MAC2.protected static final byte
Etiqueta de los datos de autenticación dinámica dentro de un comando General Autenticate.protected static final byte
Etiqueta del segundo TLV de los datos de autenticación dinámica dentro de un comando General Autenticate.protected static final byte
Etiqueta del tercer TLV de los datos de autenticación dinámica dentro de un comando General Autenticate.protected static final byte
Etiqueta del cuarto TLV de los datos de autenticación dinámica dentro de un comando General Autenticate. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static byte[]
Obtiene la representación de unBigInteger
como un array de octetos.abstract SecureMessaging
openPaceChannel
(byte cla, WirelessInitializer pi, ApduConnection conn) Abre un canal PACE.protected static byte[]
unwrapEcKey
(byte[] key) Obtiene la representación de una clave de curva elíptica como un array de octetos.
-
Field Details
-
LOGGER
Logger
. -
CAN_MRZ_PADDING
protected static final byte[] CAN_MRZ_PADDINGRelleno para el CAN o la MRZ. -
KENC_PADDING
protected static final byte[] KENC_PADDINGRelleno para el kenc. -
KMAC_PADDING
protected static final byte[] KMAC_PADDINGRelleno para el kmac. -
MAC_PADDING
protected static final byte[] MAC_PADDINGRelleno para el MAC. -
MAC2_PADDING
protected static final byte[] MAC2_PADDINGRelleno para el MAC2. -
TAG_DYNAMIC_AUTHENTICATION_DATA
protected static final byte TAG_DYNAMIC_AUTHENTICATION_DATAEtiqueta de los datos de autenticación dinámica dentro de un comando General Autenticate.- See Also:
-
TAG_GEN_AUTH_2
protected static final byte TAG_GEN_AUTH_2Etiqueta del segundo TLV de los datos de autenticación dinámica dentro de un comando General Autenticate.- See Also:
-
TAG_GEN_AUTH_3
protected static final byte TAG_GEN_AUTH_3Etiqueta del tercer TLV de los datos de autenticación dinámica dentro de un comando General Autenticate.- See Also:
-
TAG_GEN_AUTH_4
protected static final byte TAG_GEN_AUTH_4Etiqueta del cuarto TLV de los datos de autenticación dinámica dentro de un comando General Autenticate.- See Also:
-
cryptoHelper
Utilidad para operaciones criptográficas.
-
-
Constructor Details
-
PaceChannelHelper
Constructor- Parameters:
ch
- Utilidad para operaciones criptográficas.
-
-
Method Details
-
openPaceChannel
public abstract SecureMessaging openPaceChannel(byte cla, WirelessInitializer pi, ApduConnection conn) throws ApduConnectionException, IcaoException Abre un canal PACE.- Parameters:
cla
- Clase de APDU para los comandos de establecimiento de canal.pi
- Valor de inicialización del canal. Puede ser un CAN (Card Access Number) o una MRZ (Machine Readable Zone).conn
- Conexión hacia la tarjeta inteligente.- Returns:
- SecureMessaging Objeto para el envío de mensajes seguros a través de canal PACE.
- Throws:
ApduConnectionException
- Si hay problemas de conexión con la tarjeta.IcaoException
- Si hay problemas en la apertura del canal.
-
bigIntToByteArray
Obtiene la representación de unBigInteger
como un array de octetos.- Parameters:
bi
-BigInteger
a convertir.- Returns:
- Array de octetos que representa el
BigInteger
de entrada.
-
unwrapEcKey
Obtiene la representación de una clave de curva elíptica como un array de octetos.- Parameters:
key
- Clave de curva elíptica de entrada.- Returns:
- Array de octetos que representa la clave de curva elíptica de entrada.
- Throws:
TlvException
- Si hay problemas desempaquetando la clave como array de octetos.
-