Operaciones de transferencia electrónica de fondos.
Consulte la documentación técnica del HSM.
Funciones | |
Cadena | generateDUKPT (byte[] baKSI, byte[] baDID_CTR, int dwParam) throws TacException |
Genera una clave DUKPT dentro del HSM utilizando un KSI (Key Serial Identification), un DID (Device ID) y un CTR (Transaction Counter) del mismo KSN (Key Serial Number). | |
Cadena | generateDUKPTName (byte[] baKSI, byte[] baDID_CTR) throws TacException |
Genera el nombre del DUKPT a partir del KSI y el CTR introducidos. | |
Cadena | generateBDKName (byte[] baKSI) throws TacException |
Genera el nombre BDK a partir de un KSI (Key Serial Identification). | |
byte[] | translatePINBlock (String srcPEK, String dstPEK, int transBlockType, String PAN, byte[] inPINBlock) throws TacException |
Traduce un bloque PIN, descifrándolo con una clave y cifrándolo con otra. | |
byte[] | exportTR31 (String kbpk, String key, int usage, byte mode, byte export) throws TacException |
Exporta una clave en formato TR-31 según la norma ASC X9 TR 31-2018. | |
void | importTR31 (String kbpk, String key, int keyAttributes, byte[] keyBlock) throws TacException |
Importe una clave en formato TR-31 según la norma ASC X9 TR 31-2018. | |
String generateDUKPT | ( | byte[] | baKSI, |
byte[] | baDID_CTR, | ||
int | dwParam ) throws TacException |
Genera una clave DUKPT dentro del HSM utilizando un KSI (Key Serial Identification), un DID (Device ID) y un CTR (Transaction Counter) del mismo KSN (Key Serial Number).
baKSI | Buffer de tamaño TacNDJavaLib.MIN_KSI_LEN que contiene el KSI (primeros 05 bytes del KSN). | ||||||||||||||
baDID_CTR | Buffer de tamaño TacNDJavaLib.MIN_CTR_LEN que contiene el DID y el CTR (últimos 05 bytes del KSN). | ||||||||||||||
dwParam | Banderas de funcionamiento según la tabla siguiente.
|
TacException |
String generateDUKPTName | ( | byte[] | baKSI, |
byte[] | baDID_CTR ) throws TacException |
Genera el nombre del DUKPT a partir del KSI y el CTR introducidos.
baKSI | Buffer de tamaño TacNDJavaLib.MIN_KSI_LEN que contiene el KSI (primeros 05 bytes del KSN). |
baDID_CTR | Buffer de tamaño TacNDJavaLib.MIN_CTR_LEN que contiene el DID y el CTR (últimos 05 bytes del KSN). |
TacException |
String generateBDKName | ( | byte[] | baKSI | ) | throws TacException |
Genera el nombre BDK a partir de un KSI (Key Serial Identification).
baKSI | Buffer de tamaño TacNDJavaLib.MIN_KSI_LEN que contiene el KSI (primeros 05 bytes del KSN). |
TacException |
byte[] translatePINBlock | ( | String | srcPEK, |
String | dstPEK, | ||
int | transBlockType, | ||
String | PAN, | ||
byte[] | inPINBlock ) throws TacException |
Traduce un bloque PIN, descifrándolo con una clave y cifrándolo con otra.
El formato de bloque entrante se identifica automáticamente, y el formato de bloque saliente puede ser definido por el emisor de la llamada, siempre que el cambio de formato no sea de un PAN Unbound a un PAN Bound. Los formatos PAN Bound son aquellos que utilizan información PAN en su composición. Por tanto, es posible realizar tanto la traducción de claves como la traducción de formatos. El llamante puede realizar una validación forzada del formato indicando para el formato saliente, el mismo que está utilizando en el Bloque PIN entrante.
srcPEK | Identificador de la clave de descifrado dentro del HSM. | ||||||||||||
dstPEK | Identificador de la clave de cifrado dentro del HSM. | ||||||||||||
transBlockType | Identificador del formato del bloque de salida. Según la tabla siguiente.
| ||||||||||||
PAN | PAN (Número de cuenta principal). | ||||||||||||
inPINBlock | Entrada de bloque PIN. El búfer debe tener el tamaño de un PIN Block, TacNDJavaLib.DES_BLOCK (8 bytes). |
TacException |
byte[] exportTR31 | ( | String | kbpk, |
String | key, | ||
int | usage, | ||
byte | mode, | ||
byte | export ) throws TacException |
Exporta una clave en formato TR-31 según la norma ASC X9 TR 31-2018.
kbpk | Nombre de la clave KBPK (Key Block Protection Key) utilizada para derivar las claves de cifrado y autenticación. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
key | Nombre de la clave que se exportará del HSM. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
usage | Identificador de uso de clave, como se describe en ASC X9 TR 31-2018 Sección A.5.1 tabla 6. Se aceptan las siguientes opciones.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
mode | Identificador del modo de uso de la clave, como se describe en ASC X9 TR 31-2018 Sección A.5.3 tabla 8. Se aceptan las siguientes opciones.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
export | Identificador clave de exportabilidad, como se describe en ASC X9 TR 31-2018 Sección A.5.5 tabla 10. Se aceptan las siguientes opciones.
|
TacException |
Algoritmo KBPK | Método de exportación |
---|---|
3DES | 5.3.2.1 Método vinculante de derivación de claves - TDEA |
AES | 5.3.2.3 Método de vinculación de bloques de claves - AES |
void importTR31 | ( | String | kbpk, |
String | key, | ||
int | keyAttributes, | ||
byte[] | keyBlock ) throws TacException |
Importe una clave en formato TR-31 según la norma ASC X9 TR 31-2018.
kbpk | Nombre de la clave KBPK (Key Block Protection Key) utilizada para derivar las claves de cifrado y autenticación. |
key | Nombre de la clave que se importará en el HSM. |
keyAttributes | Parámetros adicionales de la clave. Consulte las opciones del método createKey(). |
keyBlock | bloque de teclas |
TacException |
Algoritmo KBPK | Método |
---|---|
3DES | 5.3.2.1 Método vinculante de derivación de claves - TDEA |
AES | 5.3.2.3 Método de vinculación de bloques de claves - AES |