pinpad ipp320 cifradodukpt.pdf

31
Título: No.: EMV-ING-001 Versión: 2.0Mx Pinpad Ingenico Aplicación EMV para ECR Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 1 / 31 Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico. Pinpad Ingenico Aplicación EMV para ECR con DUKPT NOTA: El pinpad debe ser cargado con una versión 2.x para soporte de cifrado.

Upload: yanellyjm

Post on 07-Aug-2015

921 views

Category:

Documents


19 download

TRANSCRIPT

Page 1: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 1 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

Pinpad Ingenico

Aplicación EMV para ECR con DUKPT

NOTA: El pinpad debe ser cargado con una versión 2.x para soporte de cifrado.

Page 2: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 2 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

CONTENIDO

INTRODUCCIÓN Pág.

Aplicación EMV en pin pad 3 ___________________________________________________________ 1 Esquema propuesto

4

2 Formato de mensajes y campos de datos

5

3 Protocolo de comunicación

6

4 Flujo de mensajes

7

5 Descripción de mensajes 9

MENSAJE CF0 request 9

MENSAJE CF0 answer 10

MENSAJE CF1 request / CF1 answer 11

MENSAJE BIN request / BIN answer 12

MENSAJE IC0 (request) 13

MENSAJE IC0 (answer) 14

MENSAJE IC1 (request) 17

MENSAJE IC1 (answer) 18

MENSAJE DSP 19

MENSAJE RMV request / RMV answer 20

MENSAJE KBD request 21

MENSAJE KBD answer 22

MENSAJE LWK request / LWK answer 24

MENSAJE KEY request / MENSAJE KEY answer 25

MENSAJE TK0 request/ TK0 answer 26

MENSAJE IK0 request/ IK0 answer 27

MENSAJE LET request/ LET answer 28

Anexo A. Formato de datos para despliegue de imagen 29

Anexo B. Formato para carga de llave pública de EMV 30

Anexo C. Formato de bloque de datos en claro antes de cifrar 31

___________________________________________________________

Page 3: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 3 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

INTRODUCCIÓN ___________________________________________________________ Aplicación EMV en pinpad

Atendiendo las regulaciones de las marcas para agregar mayor seguridad a los procesos de pago con tarjetas y considerando que ya existe una gran cantidad de tarjetas hibridas que tienen la banda magnética tradicional y además un chip que cumple con los estándares EMV, se ha desarrollado la presente aplicación para pinpads de Ingenico. Este documento tiene como intención proponer una solución que pueda ser implementada para permitir a las cajas registradoras el procesamiento de tarjetas con chip EMV para realizar procesos de pago electrónico. Adicionalmente se ha integrado el soporte para el cifrado de datos sensitivos bajo un esquema DUKPT.

__________________________________________________________________

Page 4: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 4 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

1 Esquema propuesto El escenario propuesto para esta implementación es utilizar un pin pad Ingenico el cual funcione con una aplicación que interactúa con la caja registradora y que aparte realice todos los procesos EMV con la tarjeta chip o la lectura de tarjetas de banda magnética dependiendo de las características de la tarjeta. Este esquema permite que las cajas mantengan la funcionalidad tradicional pero que adicionalmente puedan procesar pagos con tarjetas con chip EMV.

Figura 1.1 Esquema pin pad – caja registradora

Page 5: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 5 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

2 Formato de mensajes y campos de datos Para validar la correcta transmisión de los mensajes en la línea de transmisión o el cable serial, se define una forma de encapsular cada mensaje de forma que pueda ser validado por el receptor del mismo. Una vez ensamblado cada mensaje, este antes de ser enviado se formateará de la siguiente manera:

(*) Se calcula incluyendo el ETX y excluyendo el STX. (**) El formato específico de cada campo que conforman los datos puede ser alguno de los siguientes

tipos definidos en la siguiente tabla:

Campo Longitud Formato Descripción Valor

STX 1 Byte Bin Inicio de mensaje 02h

Tipo Mensaje 3 Bytes AN identificador del mensaje “IC0”, “IC1”, …

Longitud 2 bytes Bin Longitud en bytes de los datos del mensaje.

00 9F

Datos Variable Bin** Información del mensaje. “Ins/Deslice Tarjeta”

ETX 1 Byte Bin Fin del mensaje 03h

LRC 1 Byte Bin Resultado de Longitudinal redundancy check (*).

Tipo Descripción / Ejemplos Relleno para valores menores a la longitud

máxima (padeo)

AN Alfanumérico: Caracteres ASCII imprimibles (sin bytes de control). Ejemplos: “IC0”, “DSP”, “Inserte tarjeta”

Espacios a la derecha o izquierda.

BCD Binario codificado en decimal: Valor numérico (solo dígitos decimales), cada par de dígitos conforman un byte. Ejemplos: 04 84, 00 00 00 12 00 00

Ceros a la izquierda

HEX Hexadecimal: Valor expresado en hexadecimal (0-F), dos dígitos conforman un byte. Ejemplos: E8 F3, 02 F4

Ceros a la izquierda

Bin Binario: Al menos se tiene un byte conformado por 8 bits donde cada bit activa o desactiva una función. El bit menos significativo de denota como b0 y el más significativo como b7. En algunos casos se usa el valor binario para configurar un parámetro con su equivalente decimal. Ejemplo: 03 (00000011: b0=1,b1=1, b2=b3=b4=b5=b6=b7=0) Ejemplo: 3C (60 decimal, para configurar un tiempo de 60 seg)

Ceros en el resto de bits

Page 6: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 6 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

3 Protocolo de comunicación De igual forma, para sincronizar los puertos de ambos dispositivos, se utilizará comunicación asíncrona para el intercambio de mensajes entre el pinpad y la caja con la siguiente configuración por default:

19200,N,8,1 Donde: Velocidad: 19200 bps Paridad: Ninguna Bits de datos: 8 Bits de parada: 1 Cada mensaje transmitido o recibido, además de cumplir con el formato definido en el punto 2 debe ser confirmada su recepción con un ACK (06h) cuando el LRC recibido coincide con el calculado por el dispositivo receptor o notificar el error en el LRC a través de un NAK (15h) para que se retransmita.

Page 7: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 7 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

4 Flujo de mensajes El flujo de intercambio de mensajes para el proceso de una transacción EMV con aprobación OFFLINE sería como sigue:

IC0

IC0

RMV

RMV

Page 8: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 8 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

El flujo de intercambio de mensajes para el proceso de una transacción EMV con aprobación ONLINE sería como sigue:

IC0

IC0

RMV

RMV

IC1 Request

IC1

AUTORIZACION DE HOST

( Espera respuesta )

Page 9: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 9 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

5 Descripción de mensajes MENSAJE CF0 request – Su función es enviar la configuración de parámetros en el pinpad para que

este quede operativo. Se utiliza cuando se instala el equipo o cuando se desea ajustar algún parámetro.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Currency code BCD(2) 08 40

2 Currency Symbol AN(3) “USD”

3 TAC Online HEX(5) D8 40 04 F8 00

4 TAC Denial HEX(5) 00 10 00 00 00

5 TAC Default HEX(5) D8 40 00 A8 00

6 Terminal capabilities* HEX(3) E0 F8 C0

7 Term.Add.Capabilities HEX(5) 60 00 F0 F0 40

8 Floor limit HEX(6) 00 00 00 01 00 00 (100.00)

9 Config options Bin(1) 1=Activado / 0=Desactivado b0: Fallback b1: Lector de banda. b2: Captura de numero de tarjeta por teclado b3: Valida número de cuenta capturada por teclado b4: Habilita DUKPT para captura de PIN b5: Habilita DES para cifrado (0=cifrado con 3DES) b6: Habilita DUKPT con cifrado 3DES para datos.

10 Timeout Fallback Bin(1) Máx. 255 Segundos para espera de fallback

11 Timeout Wait Insert Card Bin(1) Máx. 255 Segundos para esperar inserción de tarjeta

12 Timeout to capture Bin(1) Máx. 255 Segundos para captura de datos

13 Target % BCD(1) 00-99

14 Max. Target % BCD(1) 00-99

15 Treshold value BCD(6) 00 00 00 00 00 00

16 Debug control Bin(1) 00 Desactivada la función. FF Función activada

17 Busy Message AN(16) Texto a desplegar mientras se procesa una transacción

18 Request card Message AN(16) Texto a desplegar mientras se espera la inserción de tarjeta

19 PIN request Message AN(16) Mensaje a mostrar durante la captura de PIN.

20 Last PIN request Message AN(16) Mensaje a mostrar en último intento de captura de PIN.

21 Wrong PIN Message AN(32) Mensaje para mostrar con captura de PIN erróneo.

22 Retries before fallback Bin(1) Reintentos de lectura de chip antes de activar fallback.

23 RFU HEX(31) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

* El campo Terminal Capabilities se conserva solo por compatibilidad con versiones anteriores de software, su valor depende del kernel de EMV cargado en el pinpad.

Page 10: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 10 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

Ejemplo:

02 43 46 30 00 AF 08 40 4D 58 4E D8 40 04 F8 00 .CF0.¯.@MXNØ@.ø. 00 10 00 00 00 D8 40 00 A8 00 E0 F8 C0 60 00 F0 .....Ø@.¨.àøÀ`.ð F0 40 00 00 00 01 20 00 03 78 1E 1E 00 00 00 00 ð@.... ..x...... 00 00 00 00 FF 50 72 6F 63 65 73 61 6E 64 6F 20 ....ÿProcesando 2E 2E 2E 20 20 49 6E 73 65 72 74 65 20 54 61 72 ... Inserte Tar 6A 65 74 61 20 49 6E 67 72 65 73 65 20 50 49 4E jeta Ingrese PIN 20 20 20 20 20 55 6C 74 69 6D 6F 20 49 6E 74 65 Ultimo Inte 6E 74 6F 20 20 46 49 52 4D 2E 45 4C 45 43 54 52 nto FIRM.ELECTR 4F 4E 49 43 41 20 20 20 49 4E 43 4F 52 52 45 43 ONICA INCORREC 54 41 20 20 20 00 00 00 00 00 00 00 00 00 00 00 TA ........... 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 03 98 ......˜

MENSAJE CF0 answer - Devuelve el status de la configuración guardada en el pinpad

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status BCD(1) 00 Configuración grabada 01 Error en formato de mensaje CF0 02 Error al grabar configuración

2 Serial Number HEX(7) Número de serie del equipo

3 Appication name AN(20) Nombre de aplicativo

Ejemplo:

02 43 46 30 00 1C 00 01 01 77 70 07 95 62 50 50 .CF0.....wp.•bPP 5F 45 43 52 5F 45 4D 56 5F 30 31 2E 30 30 20 20 _ECR_EMV_01.00 20 20 03 80 ....

Page 11: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 11 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE CF1 request – Solicita la configuración del equipo (Este mensaje no envía ningún campo de datos hacia el pinpad).

Ejemplo:

02 43 46 31 00 00 03 37 .CF1.7

MENSAJE CF1 answer Devuelve el número de serie, Id de aplicativo y modelo del equipo. Para mensajería con datos cifrados, adicionalmente se incluye en esta respuesta un separador y los campos 4, 5, 6.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Serial Number HEX(7) Número de serie del equipo

2 Appication name AN(20) Nombre de aplicativo

3 Modelo AN(Var) Modelo del equipo

- Separador de campos Hex(1) Valor Fijo = 1C (hexadecimal)

4 Tabla de bines cargada AN(10) Retorna el Id y versión de la tabla de bines cargada, si nunca se ha cargado ninguna tabla se retorna con espacios. Si el cifrado DUKPT no está configurado o falta la carga de llave se omite este campo en la respuesta.

5 Configuración grabada HEX(1) Ultimo valor del campo “Config Options” recibido en el mensaje CF0 más reciente.

6 Status de carga de llaves

HEX(1) b6: Si es “1” este bit, la llave DUKPT para cifrado de datos ya fue cargada exitosamente

Ejemplo (sin cifrado DUKPT para datos activo): 02 43 46 31 00 21 01 01 77 70 07 95 62 50 50 5F .CF1.!..wp.•bPP_ 45 43 52 5F 45 4D 56 5F 30 31 2E 30 30 20 20 20 ECR_EMV_01.00 20 69 50 50 33 32 30 03 C3 iPP320.Ã Ejemplo (con cifrado DUKPT para datos activo): 02 43 46 31 00 2E 01 01 77 70 07 95 62 50 50 5F .CF1.!..wp.•bPP_ 45 43 52 5F 45 4D 56 5F 30 31 2E 30 30 20 20 20 ECR_EMV_01.00 20 69 50 50 33 32 30 1C 4C 4C 41 56 45 30 30 31 iPP320..LLAVE001 30 31 43 40 03 75 01C@..

Page 12: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 12 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE BIN request –Recupera el BIN de la tarjeta leído de banda o chip. Si es ingreso por chip se inicia solo la primera fase de EMV hasta obtener el dato requerido, sin completar ninguna transacción de EMV, por lo que es posible iniciar posteriormente una transacción de EMV sin retirar la tarjeta que continúa dentro del lector (por lo tanto no se debe enviar al pinpad el mensaje RMV, hasta que la transacción de EMV sea completada). Si solo se recupera el BIN y no se efectúa ninguna transacción, entonces el comando RMV si debe ser enviado para retirar la tarjeta.

Campo Descripción Long. Ejemplo

1 Prompt Message A32 Mensaje a mostrar en las primeras 2 líneas al inicio de la operación (en conjunto con el texto configurado para insertar tarjeta y monto de la transacción): “INGENICO DEMO EMV FULL 3070 “

2 Dígitos del bin (máximo 12 dígitos)

H2 08

Ejemplo:

02 42 49 4E 00 21 49 4E 47 45 4E 49 43 4F 20 20 .BIN.%INGENICO 20 44 45 4D 4F 20 20 45 4D 56 20 46 55 4C 4C 20 DEMO EMV FULL 33 30 37 30 20 20 08 03 0B 3070 ... MENSAJE BIN answer Devuelve los primeros dígitos del número de tarjeta recuperado de la banda deslizada o del chip de la tarjeta.

Campo Descripción Long. Ejemplo

1 Status de la operación BCD(1) 00 Sin error 01 Error de lectura de chip 02 Tarjeta retirada antes de concluir

transacción 03 Operación cancelada 04 Aviso de Fallback 05 Información recuperada por fallback activado 06 Información recuperada por banda

magnética 07 Error de lectura por banda magnética 08 Número de cuenta capturado por teclado 09 Error en número de cuenta por teclado 99 Error desconocido

2 Bin de tarjeta AN..12 35 34 38 32 33 34 30 33

Ejemplo:

02 42 49 4E 00 09 00 35 34 38 32 33 34 30 33 03 .BIN..54823403.. 40 A

NOTA: Para una tarjeta deslizada o digitada, la respuesta será similar a un mensaje ICO con toda la información (Track1 y Track2 en caso de deslizada) recuperada.

Page 13: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 13 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE IC0 (request) - Este mensaje indica al Pinpad que inicie una transacción. La respuesta a

este mensaje es obtenida hasta que se inserta/desliza la tarjeta a procesar(*) o se agota el timeout programado a través del mensaje CF0 de configuración para esperar la inserción de la tarjeta. Los datos proporcionados para el pinpad se indican en la siguiente tabla:

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Prompt Message AN(32) Mensaje a mostrar en las primeras 2 líneas al inicio de la operación (en conjunto con el texto configurado para insertar tarjeta y monto de la transacción): “INGENICO DEMO EMV FULL iPP320 “

2 Fecha-hora de transacción AAAAMMDDHHMMSS

BCD(7) 20 07 10 29 19 46 23

3 Monto de transacción BCD(6) 00 00 00 05 10 50 (510.50)

4 Monto adicional BCD(6) 00 00 00 04 80 00 (480.00)

5 Forzar en línea BCD(1) 00 Decisión del chip 01 Forzar en línea

6 Opciones de validación Bin(1) 1=Activado / 0=Desactivado b0: Para banda, solicitar y validar últimos 4 dígitos. b1: Para banda, solicitar PIN y generar PIN block

(se requieren llaves cargadas, de acuerdo a la configuración de cifrado establecida en el mensaje CF0)

b2: Capturar CVV2 (máximo 4 dígitos), no aplica si el ingreso de la tarjeta es por chip.

7 RFU HEX(31) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

8 TLV a solicitar (los dos primeros bytes de este campo es el tamaño de la lista)

Bin(Var.) 00 28 9F 39 5F 34 8A 5F 2A 82 84 95 9A 9C 9F 02 9F 03 9F 09 9F 10 9F 1A 9F 1E 9F 26 9F 27 9F 33 9F 34 9F 35 9F 36 9F 37 9F 41

(*)NOTA: En caso de que el mensaje IC0 sea precedido por un mensaje BIN, se omitirá una nueva lectura

de tarjeta para banda o teclado y se retornará la información de la tarjeta leída en el mensaje BIN. Para chip, se inicia una transacción de EMV completa.

Ejemplo:

02 49 43 30 00 7E 49 4E 47 45 4E 49 43 4F 20 20 .IC0.~INGENICO.. 20 44 45 4D 4F 20 20 45 4D 56 20 46 55 4C 4C 20 .DEMO..EMV.FULL. 33 30 37 30 20 20 20 07 10 30 00 03 57 00 00 00 iPP320...0..W... 05 10 50 00 00 00 04 80 00 01 00 00 00 00 00 00 ..P............. 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 28 9F 39 5F 34 ...........(.9_4 8A 5F 2A 82 84 95 9A 9C 9F 02 9F 03 9F 09 9F 10 ._*............. 9F 1A 9F 1E 9F 26 9F 27 9F 33 9F 34 9F 35 9F 36 .....&.'.3.4.5.6 9F 37 9F 41 03 50

Page 14: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 14 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE IC0 (answer) - Retorna información de la transacción iniciada (concluida si fue procesada offline, denegada, cancelada o si se produjo algún error)

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status de la operación BCD(1) 00 Sin error 01 Error de lectura de chip 02 Tarjeta retirada antes de concluir

transacción 03 Operación cancelada 04 Aviso de Fallback 05 Información recuperada por fallback activado 06 Información recuperada por banda

magnética 07 Error de lectura por banda magnética 08 Número de cuenta capturado por teclado 09 Error en número de cuenta por teclado 10 Error en validación con últimos 4 dígitos 11 Falta cargar llave para cifrado de PIN 12 No se capturó PIN 13 Error en modulo de seguridad 14 Tiempo de captura excedido 15 Error en longitud o formato de mensaje 99 Error desconocido

2 Información de criptograma

HEX(1) 80 ARQC generado

3 Valor del criptograma HEX(8) 04 FE AC 4F 37 0D 24 15

4 PAN HEX(10) 40 00 00 00 00 00 00 02 FF FF

5 Track2Data El primer byte es la longitud del Track2. Para cifrado *

(DUKPT) :

El primer byte indica la longitud real del Track2, El segundo byte contiene la longitud del CVV2 y el tercer byte la longitud del track 1.

HEX(21) 11 47 61 73 90 01 01 00 10 D1 01 22 01 11 43 87 80 89 FF FF FF Ejemplo con cifrado: 25 03 4B (25h=37 bytes de long. Track 2) (03h=03 bytes de long. CVV2) (4Bh=75 bytes de long. Track 1)

6 Cardholder name (chip)/ Track 1 Data (banda*) *El primer byte es la longitud SOLO para lectura por banda.

AN(81) 56 49 53 41 20 41 43 51 55 49 52 45 52 20 54 45 53 54 20 43 41 52 44 20 33 38 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

7 TVR HEX(5) 00 80 00 00 00

8 CVM Data Bin(1) b0 Firma autógrafa b1 PIN offline solicitado b2 PIN online solicitado

9 Pinblock generado / Autorización offline

HEX(8) [8 bytes de Pinblock]

Page 15: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 15 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

(primeros 6 bytes)

10 TLV recuperada Bin(Var.) 00 8C 9F 39 01 05 5F 34 01 01 5F 2ª 02 08 40 82 02 5C 00 84 07 A0 00 00 00 03 10 10 95 05 00 80 00 88 00 9A 03 07 10 30 9C 01 00 9F 02 06 00 00 00 09 90 50 9F 03 06 00 00 00 04 80 00 9F 09 02 00 84 9F 10 07 06 01 0A 03 A4 00 00 9F 1A 02 08 40 9F 1E 08 30 39 36 30 36 39 30 32 9F 26 08 D4 4F F8 72 D1 BD 7F 06 9F 27 01 80 9F 33 03 E0 F8 C0 9F 34 03 01 03 02 9F 35 01 22 9F 36 02 00 99 9F 37 04 B9 DD D4 E9 9F 41 04 00 00 00 01

11 KSN_PIN HEX(10) 10 00 00 00 00 00 00 00 00 1F KSN devuelto para cifrado de PIN, si no se cifra PIN online se retorna com ceros.

12 Status de datos cifrados Bin(1) b0 Track2 presente b1 Track1 presente b2 CVV2 presente

13 Contador de cifrados fallidos

HEX(3) 00 00 00

14 Contador real de cifrados

HEX(3) 00 00 29

15 KSN_datos*(DUKPT)

HEX(10) 10 00 00 00 00 00 00 00 00 2F KSN devuelto para cifrado de datos.

16 Datos cifrados*(DUKPT)

HEX(104) Bloque de datos cifrados correspondiente al track1 (solo banda), track2 y CVV2 (solo banda).

17 CRC32_Track2-CVV2 HEX(4) CRC32 calculado sobre la primer parte del bloque cifrado que comprende al track2 y al CVV2 (primeros 24 bytes). El bloque es representado en ASCII para el cálculo de CRC32.

18 CRC32-Track1 HEX(4) CRC32 calculado sobre la parte que contiene al track 1 cifrado (del byte 25 hasta el último byte del campo 16). El bloque es representado en ASCII para el cálculo de CRC32.

*(DUKPT) Cuando se activa el modo de cifrado de datos con DUKPT, los campos que contienen

información cifrada serán llenados y los campos de datos en claro se devuelven en ceros, excepto al retornar información adicional o para el retorno del PAN y nombre del tarjetahabiente. En caso de no habilitar el cifrado de datos serán los datos en claro los que son distintos a cero con la información de la tarjeta. En el anexo C se detalla la estructura de los datos en claro antes del cifrado, el bloque cifrado es retornado en el campo 16 de este mensaje.

Ejemplo: (Lectura de chip)

02 49 43 30 01 1E 00 40 E6 3B 38 19 D7 C6 1D 80 .IC0...@.;8..... 47 61 73 90 01 01 00 10 FF FF 11 47 61 73 90 01 Gas........Gas..

Page 16: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 16 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

01 00 10 D1 01 22 01 11 43 87 80 89 FF FF FF 56 ....."..C......V 49 53 41 20 41 43 51 55 49 52 45 52 20 54 45 53 ISA.ACQUIRER.TES 54 20 43 41 52 44 20 33 38 00 00 00 00 00 00 00 T.CARD.38....... 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 80 00 00 00 02 33 31 30 37 31 30 00 00 00 94 ......310710.... 9F 39 01 05 5F 34 01 01 8A 02 59 31 5F 2A 02 04 .9.._4....Y1_*.. 84 82 02 5C 00 84 07 A0 00 00 00 03 10 10 95 05 ...\............ 00 80 00 00 00 9A 03 07 10 31 9C 01 00 9F 02 06 .........1...... 00 00 00 00 05 00 9F 03 06 00 00 00 00 00 00 9F ................ 09 02 00 84 9F 10 07 06 01 0A 03 94 00 00 9F 1A ................ 02 04 84 9F 1E 08 30 39 36 30 36 39 30 32 9F 26 ......09606902.& 08 E6 3B 38 19 D7 C6 1D 80 9F 27 01 40 9F 33 03 ..;8......'[email protected]. E0 F8 C0 9F 34 03 01 03 02 9F 35 01 22 9F 36 02 ....4.....5.".6. 00 CF 9F 37 04 3F 67 B5 6B 9F 41 04 00 00 00 01 ...7.?g.k.A..... DF 31 01 01 03 44 .7.A..

Ejemplo: (Lectura de banda)

02 49 43 30 00 7A 06 00 00 00 00 00 00 00 00 00 .IC0.z.......... 54 82 34 03 20 68 95 87 FF FF 10 54 82 34 03 20 T.4..h.....T.4.. 68 95 87 D0 90 52 01 00 00 00 25 FF FF FF FF 4B h....R....%....K 42 35 34 33 32 33 34 30 33 32 30 36 38 39 35 36 B543234032068956 37 5E 47 4F 4E 5A 41 4C 45 5A 20 49 4E 54 45 52 7^GONZALEZ.INTER 49 41 4E 4F 2F 53 45 52 47 49 4F 5E 30 37 30 35 IANO/SERGIO^0705 32 30 31 30 30 30 30 30 30 30 30 30 30 30 30 30 2010000000000000 30 30 30 32 35 30 30 30 30 30 30 00 00 00 00 00 00025000000..... 03 1B ..

Ejemplo: (Lectura por teclado)

02 49 43 30 00 14 08 00 00 00 00 00 00 00 00 00 .IC0............ 40 00 00 00 00 00 00 02 FF FF 03 67 @..........g

Page 17: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 17 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE IC1 (request) - Envía información de la respuesta del host hacia el Pin pad en respuesta a las transacciones que son procesadas en línea y sólo es indispensable su envío para transacciones de chip que son procesadas en línea, si la operación de EMV es procesada fuera de línea no debe generarse.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status de comunicaciones

BCD(1) 00 Comunicación exitosa 01 Error de comunicaciones 02 Sin respuesta del host 03 Comunicación cancelada

2 Código de respuesta del host

AN(2) “00” Aprobada “XX” Rechazada

3 Código de aprobación AN(6) 41 31 32 33 34 35

4 Fecha – Hora transacción AAAAMMDDhhmmss

BCD(7) 20 07 10 18 19 35 12

5 RFU HEX(32) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

6 TLV con tags a solicitar y TLV (opcional) con información de scripts para entregar a la tarjeta

Bin(Var.) 00 09 9F 26 9F 27 95 9F 36 9F 41

Ejemplo:

02 49 43 31 00 3B 00 30 30 41 31 32 33 34 35 20 .IC1.;.00A12345. 07 10 18 19 35 12 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 09 9F 26 9F 27 95 9F 36 9F .........&.'.... 41 03 CC ...

Page 18: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 18 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE IC1 (answer) - Entrega resultado final de la transacción procesada en línea.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status de operación BCD(1) 00 Sin error

2 Criptograma final HEX(1) 40 Aprobada 00 Denegada FF Error en finalización de transacción o tarjeta removida antes de concluir.

3 Valor del criptograma final

HEX(8) 11 22 33 44 55 66 77 88

4 TVR HEX(5) 00 80 00 00 00

5 RFU HEX(32) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

6 TLV con información del resultado de la ejecución de scripts si fueron proporcionados previamente.

Bin(Var.) 00 28 5F 34 8A 5F 2A 82 84 95 9A 9C 9F 02 9F 03 9F 09 9F 10 9F 1A 9F 1E 9F 26 9F 27 9F 33 9F 34 9F 35 9F 36 9F 37 9F 41 9F 53

Ejemplo:

02 49 43 31 00 53 00 40 09 E8 68 CD 1B EE 1C 2A [email protected]....* 00 80 00 08 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 22 9F 26 08 09 E8 68 CD 1B EE ......&.&...h... 1C 2A 9F 27 01 40 95 05 00 80 00 08 00 9F 36 02 .*.'[email protected]. 00 9B 9F 41 04 00 00 00 01 03 D4 ...A.......

Page 19: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 19 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE DSP - El mensaje DSP solicita al pin pad desplegar mensaje en la pantalla o sustituir la

imagen de logo mostrada en estado de reposo en la pantalla del pinpad (aún cuando sea apagado el equipo, la nueva imagen recibida será grabada para ser utilizada hasta que se defina una nueva).

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Mensaje a desplegar AN(..32) “INGENICO iPP320DEMO EMV FULL ” El primer carácter opcionalmente puede ser:

• Un caracter de control (0x1X): Donde el nible X controla: b0: Limpia pantalla b1: Emisión de beep alto b2: Emisión de beep bajo

• Un especificador para despliegue gráfico (0xFF): Los bytes siguientes se tomará como la información de un BMP monocromático de 128 x 32 pixeles (512 bytes codificados). Ver anexo A para formato de imagen.

• Un especificador para despliegue gráfico del logo guardado (0xFE): NO SE REQUIEREN bytes adicionales debido a que se mostrará el gráfico almacenado por default o el último recibido.

Ejemplo (despliega cadena):

02 44 53 50 00 20 49 4E 47 45 4E 49 43 4F 20 20 .DSP..INGENICO.. 20 49 33 30 37 30 44 45 4D 4F 20 20 20 45 4D 56 .iPP320DEMO...EMV 20 20 46 55 4C 4C 03 69 ..FULL.i

Ejemplo (despliega logo guardado):

02 44 53 50 00 01 FE 03 BB .DSP.....

Page 20: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 20 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE RMV request - Solicitud para retiro de tarjeta. Es indispensable invocar esta función SIEMPRE que se detecte que se había insertado una tarjeta de chip para que la aplicación del pinpad cierre la sesión que se había iniciado para comunicarse con el chip.

Campo Descripción Tipo-

Long (bytes)

Ejemplo

1 Mensaje a desplegar AN(..32) “ REMOVE YOUR CARD” * Si el primer carácter es 0x1A, se limpia pantalla.

Ejemplo:

02 52 4D 56 00 1C 20 20 20 20 20 52 45 4D 4F 56 .RMV.......REMOV 45 20 20 20 20 20 20 20 20 59 4F 55 52 20 43 41 E........YOUR.CA 52 44 03 55 RD.U

MENSAJE RMV answer - Respuesta generada después del retiro de la tarjeta:

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status de retiro de tarjeta

BCD(1) 00 Tarjeta retirada al procesar comando 01 La tarjeta ya había sido removida (se

retorna de inmediato al detectar su ausencia)

Ejemplo:

02 52 4D 56 00 01 00 03 4B .RMV....K

Page 21: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 21 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE KBD request - Solicitud para captura en pinpad:

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Tipo AN(2) Tipo de captura: - AN Alfanumérica - NU Numérica - DH Fecha - KB Cualquier tecla - AM Captura de monto - MN Selección por menú - PW Captura con enmascaramiento

(utilizada para captura de claves).

2 Longitud Máx. BCD(1) Longitud máxima de captura, si es requerida para la edición. Para tipo DH, se tienen los valores de formato: 1: MMAA (para captura de fecha expirada en tarjetas) 2: DDMMAA 3: DDMMAAAA HHMM 4: HHMM

3 Longitud Mínima BCD(1) Longitud mínima de captura, si es requerida para la edición.

4 Líneas a mostrar BCD(1) Número de líneas para mostrar en la captura (si la captura implica una edición, se usará la siguiente línea para capturar). En el tipo MN, al menos se debe tener 2 líneas.

5 Línea(s) a mostrar para la captura.

AN(48…256)

- Para el tipo MN, la primer línea es el título del menú y las siguientes son las opciones a mostrar.

- Pueden proporcionarse hasta tres líneas de texto rellenas con espacios para mostrar en la captura. Cada línea es de 16 caracteres.

Page 22: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 22 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE KBD answer - Retorno con información capturada:

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status BCD(1) 00: Captura finalizada. 01: Error en mensaje de solicitud de captura. 03: Captura cancelada o finalizada por timeout. 15 Error en longitud o formato de mensaje

2 Datos de captura AN(Var.) Datos capturados: - AN: “Texto capturado” - UN/PW: “873” - DH: “0213” (MMAA, de acuerdo al

formato) - KB: <0x35> (Código ASCII de la tecla) - AM: “12500” (125.00) - MN: Opción seleccionada (0 es la primer

opción), únicamente si el status es 00.

Ejemplos de capturas

Alfanumérico

02 4B 42 44 00 25 41 4E 10 01 02 43 41 50 54 55 .KBD.%AN...CAPTU 52 41 20 44 41 54 4F 20 20 20 20 41 4C 46 41 4E RA DATO ALFAN 55 4D 45 52 49 43 4F 20 20 20 20 03 07 UMERICO .. 06 02 4B 42 44 00 11 00 41 42 43 31 32 33 20 31 ..KBD...ABC123 1 32 33 34 35 36 37 38 39 03 3E 23456789.>

Numéric:

06 02 4B 42 44 00 25 4E 55 10 01 02 43 41 50 54 ..KBD.%NU...CAPT 55 52 41 20 44 41 54 4F 20 20 20 20 4E 55 4D 45 URA DATO NUME 52 49 43 4F 20 20 20 20 20 20 20 20 03 19 RICO .. 06 02 4B 42 44 00 11 00 31 32 33 34 35 36 37 38 ..KBD...12345678 39 30 31 32 33 34 35 36 03 59 90123456.Y Fecha MM/AA 06 02 4B 42 44 00 25 44 48 01 01 02 43 41 50 54 ..KBD.%DH...CAPT 55 52 41 20 20 20 20 20 20 20 20 20 46 45 43 48 URA FECH 41 20 4D 4D 2F 41 41 20 20 20 20 20 03 63 A MM/AA .c 06 02 4B 42 44 00 05 00 30 39 30 38 03 4A ..KBD...0908.J

Page 23: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 23 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

Fecha DD/MM/AA 06 02 4B 42 44 00 25 44 48 02 01 02 43 41 50 54 ..KBD.%DH...CAPT 55 52 41 20 46 45 43 48 41 20 20 20 44 44 2F 4D URA FECHA DD/M 4D 2F 41 41 20 20 20 20 20 20 20 20 03 6F M/AA .o 06 02 4B 42 44 00 07 00 30 38 31 31 30 37 03 46 ..KBD...081107.F Fecha DD/MM/AA HH:MM 06 02 4B 42 44 00 25 44 48 03 01 02 43 41 50 54 ..KBD.%DH...CAPT 55 52 41 20 20 20 20 20 20 20 20 20 44 44 4D 4D URA DDMM 41 41 41 41 20 48 48 4D 4D 20 20 20 03 07 AAAA HHMM .. 06 02 4B 42 44 00 0D 00 31 32 31 31 32 30 30 39 ..KBD...12112009 31 32 35 38 03 45 1258.E Hora HH:MM 06 02 4B 42 44 00 15 44 48 04 01 01 43 41 50 54 ..KBD..DH...CAPT 55 52 41 20 48 4F 52 41 20 20 20 20 03 27 URA HORA .' 06 02 4B 42 44 00 05 00 31 34 32 38 03 44 ..KBD...1428.D Captura cualquier tecla 06 02 4B 42 44 00 25 4B 42 10 01 02 50 72 65 73 ..KBD.%KB...Pres 69 6F 6E 65 20 20 20 20 20 20 20 20 63 75 61 6C ione cual 71 75 69 65 72 20 74 65 63 6C 61 20 03 56 quier tecla .V 06 02 4B 42 44 00 02 00 41 03 0D ..KBD...A.. Captura de menú 06 02 4B 42 44 00 35 4D 4E 10 01 03 54 49 54 55 ..KBD.5MN...TITU 4C 4F 20 44 45 20 4D 45 4E 55 20 20 4F 70 63 69 LO DE MENU Opci 6F 6E 20 41 20 20 20 20 20 20 20 20 4F 70 63 69 on A Opci 6F 6E 20 42 20 20 20 20 20 20 20 20 03 64 on B .d 06 02 4B 42 44 00 02 00 01 03 4D ..KBD.....M Captura de password 06 02 4B 42 44 00 25 50 57 10 01 02 43 41 50 54 ..KBD.%PW...CAPT 55 52 41 20 44 41 54 4F 20 20 20 20 50 41 53 53 URA DATO PASS 57 4F 52 44 20 20 20 20 20 20 20 20 03 1E WORD .. 06 02 4B 42 44 00 11 00 31 32 33 34 35 36 37 38 ..KBD...12345678 39 31 32 33 34 35 36 37 03 5E 91234567.^

Page 24: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 24 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE LWK (request) – Efectúa la carga de una Workingkey para cifrado de PIN (se requiere

también la carga de una Masterkey). No aplica con DUKPT habilitado.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Llave para cifrado de PIN (Working Key) de 16 bytes para 3DES o de 8 bytes para DES.

HEX(8/16) B0 54 82 2F A3 3B 53 C2 3F D2 34 69 D3 C5 B1 A6

Ejemplo:

02 4C 57 4B 00 10 B0 54 82 2F A3 3B 53 C2 3F D2 .LWK........'... 34 69 D3 C5 B1 A6 03 B2

MENSAJE LWK (answer) - Mensaje de respuesta con el status de la carga de la Workingkey.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status BCD(1) 00 Sin error 15 Error en la longitud de llave recibida 17 Error en tipo de configuración de cifrado (ver “Config Options” en mensaje CF0. 99 Error desconocido al cargar la llave

Ejemplo:

02 4C 57 4B 00 01 00 03 52 .LWK...R

Page 25: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 25 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE KEY (request) – Efectúa la carga de una llave pública de EMV o el borrado de toda la lista

de llaves de acuerdo a la acción indicada. El número máximo de llaves que pueden ser cargadas es de 20.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Accion a realizar BCD(1) 00 Borrado de todas las llaves (acción requerida para iniciar la carga de una nueva lista).

01 Carga de llave especificada en el siguiente campo de este mensaje.

2 Llave a cargar de acuerdo al formato del anexo B. (Campo ausente si la acción corresponde a un borrado de llaves)

HEX(Var.) 07 00 00 00 03 A0 00 00 00 03 A5 6F …

3 CRC32 HEX(4) CRC32 del campo 02

Ejemplo (borrado de llaves):

02 4B 45 59 00 01 00 03 55 .KEY....U

Ejemplo (carga de llave):

02 4B 45 59 00 98 01 07 00 00 00 03 A0 00 00 00 .KEY.˜... ....¨Ÿ 03 A5 6F A6 DA 25 8C 8C A8 B4 04 27 D9 27 B4 A1 %¥o¦Ú%ŒŒ¨´.'Ù'´¡ EB 4D 7E A3 26 BB B1 2F 97 DE D7 0A E5 E4 48 0F ëM~£&»±/—Þ×.åäH. C9 C5 E8 A9 72 17 71 10 A1 CC 31 8D 06 D2 F8 F5 ÉÅè©r.q.¡Ì1..Òøõ C4 84 4A C5 FA 79 A4 DC 47 0B B1 1E D6 35 69 9C Ä„JÅúy¤ÜG.±.Ö5iœ 17 08 1B 90 F1 B9 84 F1 2E 92 C1 C5 29 27 6D 8A ....ñ¹„ñ.’ÁÅ)'mŠ F8 EC 7F 28 49 20 97 D8 CD 5B EC EA 16 FE 40 88 øì.(I —ØÍ[ìê.þ@ˆ F6 CF AB 4A 1B 42 32 8A 1B 99 6F 92 78 B0 B7 E3 öÏ«J.B2Š.™o’x°·ã 31 1C A5 EF 85 6C 2F 88 84 74 B8 36 12 A8 2E 4E 1.¥ï…l/ˆ„t¸6.¨.N 00 D0 CD 40 69 A6 78 31 40 43 3D 50 72 5F 03 F7 .ÐÍ@i¦x1@C=Pr_.÷

MENSAJE KEY (answer) - Mensaje de respuesta con el status de carga/borrado de llaves.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status BCD(1) 00 Sin error 01 Error en calculo de CRC32 15 Error en la longitud o formato de lista recibida 16 Lista de llaves llena 99 Error desconocido al cargar la llave

Ejemplo:

02 4B 45 59 00 01 00 03 55 .KEY....U

Page 26: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 26 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE TK0 (request) –Solicita una llave aleatoria (TK) la cuál será cifrada con la llave pública RSA precargada en el pinpad de 256 bytes de longitud, para que en un siguiente mensaje se efectúe la carga de la llave de inicialización para DUKPT. (Este mensaje no envía ningún campo de datos hacia el pinpad).

Ejemplo (Solicita llave TK cifrada):

02 54 4B 30 00 00 03 2C .TK0...,

MENSAJE TK0 (answer) –Retorna la llave aleatoria (TK) cifrada con RSA para enviar al host y solicitar la llave DUKPT de inicialización.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Llave TK cifrada con RSA

HEX(256) (… Bloque de 256 bytes cifrados …)

2 CRC32 del bloque anterior.

HEX(4) 3E 52 A0 B3

3 Checkvalue de llave TK HEX(3) D0 F5 C8

4 ID Llave cargada AN(8) “LLAVE001”

5 Version de llave cargada

AN(2) “01”

Ejemplo (llave TK cifrada con RSA):

02 54 4B 30 01 11 1B C5 8F EB 1D CA F3 CB 52 .TK0...Å�ë.ÊóËR DE 64 96 00 B6 C8 BE ED C6 9F B7 F7 F7 CF C0 DE Þd–.¶È¾íÆŸ·÷÷ÏÀÞ BC A3 76 C6 EB DA C7 1A FF 37 C1 FB 71 E1 E1 E2 ¼£vÆëÚÇ.ÿ7Áûqááâ 33 9C B8 D0 BF 7E 18 D0 C2 D5 F5 AD C4 AA 77 09 3œ¸Ð¿~.ÐÂÕõ-Īw. 5C 74 9B E2 1E D5 E2 B0 13 B8 DA 4F E6 DB 17 D5 \t›â.Õâ°.¸ÚOæÛ.Õ D6 DB 39 57 08 20 B7 0B 90 4E E1 64 10 B0 4B 78 ÖÛ9W. ·.�Nád.°Kx 31 3D 30 D0 17 39 62 F5 21 34 8C CE FE 29 00 B4 1=0Ð.9bõ!4ŒÎþ).´ E8 BF 89 BA 05 D4 7C F4 C0 91 16 D8 B5 8F 1F 58 迉º.Ô|ôÀ‘.ص�.X 63 70 96 52 79 D6 9B 72 F5 EF 39 D7 B3 F5 20 1F cp–RyÖ›rõï9׳õ . 14 5A E9 3B 6C 2F FA FC 45 73 A2 07 44 84 E0 9C .Zé;l/úüEs¢.D„àœ 9B F6 D1 AF 8D 5B 68 F6 9D B2 23 37 3E AB E5 E8 ›öѯ�[hö�²#7>«åè E9 99 CB D6 AA 28 A7 12 43 0D B0 B4 54 AF CC FB é™ËÖª(§.C.°´T¯Ìû BB E3 D2 7A AE EC 74 AC 46 56 EB F4 52 A5 4D ED »ãÒz®ìt¬FVëôR¥Mí 63 E0 06 E7 17 CC 1B C3 16 43 E3 19 91 12 B2 62 cà.ç.Ì.Ã.Cã.‘.²b 31 7C 50 65 90 E4 E0 4F 5C 94 87 03 D5 60 E6 6B 1|Pe�äàO\”‡.Õ`æk 69 0E 1C FD EC 40 61 C8 20 C2 20 28 BF B8 A1 60 i..ýì@aÈ Â (¿¸¡` 70 34 F7 3B 34 57 EB 56 61 95 69 06 C2 2D 4C 4C p4÷;4WëVa•i.Â-LL 41 56 45 30 30 31 30 31 03 67 AVE00101.g

Page 27: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 27 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE IK0 (request) –Inyecta la llave de inicialización para cifrado de datos con DUKPT recibida del host, la cual es cifrada con la llave TK anteriormente enviada, así como también se le proporciona al pinpad el KSN inicial.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Llave a inicializar cifrada con la llave TK

HEX(16) (… Bloque de 16 bytes cifrados …)

2 KSN Inicial HEX(10) 01 1F 12 00 00 00 00 00 00 01

3 CRC32 de la llave cifrada, calculado sobre la representación ASCII del campo 1.

HEX(4) 60 FE C8 EA

Ejemplo (Inicializa llave DUKPT para cifrado de datos):

02 49 4B 30 00 1E D5 07 03 B0 0C 0F 0A 03 A8 9F .IK0.... ....¨Ÿ 25 A5 6F A6 DA 25 01 1F 12 00 00 00 00 00 00 01 ...............¡ 60 FE C8 EA 03 F4 ......

MENSAJE IK0 (answer) –Retorna el status inicialización para cifrado de DUKPT.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status BCD(1) 00: Inicialización exitosa.

01: CRC32 incorrecto

13: Error en módulo de seguridad

15:Error en longitud o formato de mensaje

99: Error desconocido

Ejemplo (Status de inicialización):

02 49 4B 30 00 01 00 03 30 .IK0.....

Page 28: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 28 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

MENSAJE LET (request) – Efectúa la carga de una tabla de bines para no cifrar datos con las tarjetas comprendidas en esta tabla proporcionada por el host.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 ID de la tabla de bines AN(8) “TABLA001”

2 Version de la tabla de bines.

AN(2) “03”

3 Longitud usada del buffer cifrado

BCD(2) 00 48

4 Longitud real de la tabla de bines

BCD(2) 03 20

5 Bloque cifrado de la tabla de bines.

HEX(320) (Bloque de 320 bytes cifrado)

6 CRC32 del bloque cifrado para la tabla

HEX(4) CF 43 D4 B5

MENSAJE LET (answer) - Mensaje de respuesta con el status de la carga de la tabla de bines.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Status BCD(1) 00 Sin error 01 CRC32 Incorrecto 02 Error en el formato de la tabla 15 Error en la longitud de la tabla 99 Error desconocido al cargar la tabla.

Page 29: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 29 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

ANEXO A. Formato de datos para despliegue de imagen. La imagen monocromática que es desplegada por el pinpad corresponde a una matriz de 128x32 pixeles. Un píxel “encendido” se representa con el color negro de la imagen: 1 2 3 4 5 6 7 8 . . . 128

1 2 3 4 … 32

Cada grupo de 8 pixeles (mostrado el primero de ellos en color gris) representa los 8 bits de información de la imagen que puede codificarse en un arreglo de 16 bytes por cada línea; con un total de 32 líneas, el tamaño del arreglo es de 512 bytes. El primer byte de la figura corresponde al valor:

0 0 1 1 1 0 0 0 = 38h.

Si estos 3 pixeles fueran los únicos que son encendidos para toda la imagen, la matriz de datos completa de esta imagen es:

38 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 � Línea 1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 � Línea 2 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 � Línea 3 … 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 � Línea 32

Y estos son los 512 bytes de datos que forman parte del mensaje DSP que se envía al pinpad para su despliegue en pantalla.

Page 30: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 30 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

Anexo B. Formato para carga de llave pública para EMV La carga de una llave requiere el uso del siguiente formato.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Indice HEX(1) 07

2 Exponente HEX(4) 00 00 00 03

3 RID HEX(5) A0 00 00 00 03

4 Llave a cargar Bin(Var.) A89F25A56FA6DA258C8CA8B40427D927B4 A1EB4D7EA326BBB12F97DED70AE5E4480F C9C5E8A972177110A1CC318D06D2F8F5C4 844AC5FA79A4DC470BB11ED635699C1708 1B90F1B984F12E92C1C529276D8AF8EC7F 28492097D8CD5BECEA16FE4088F6CFAB4A 1B42328A1B996F9278B0B7E3311CA5EF85 6C2F888474B83612A82E4E00D0CD4069A6 783140433D50725F

Ejemplo:

0700000003A000000003A89F25A56FA6DA258C8CA8B40427D927B4A1EB4D7EA326BBB12F97DED70AE5E4480FC9C5E8A972177110A1CC318D06D2F8F5C4844AC5FA79A4DC470BB11ED635699C17081B90F1B984F12E92C1C529276D8AF8EC7F28492097D8CD5BECEA16FE4088F6CFAB4A1B42328A1B996F9278B0B7E3311CA5EF856C2F888474B83612A82E4E00D0CD4069A6783140433D50725F

Page 31: PinPad IPP320 CifradoDUKPT.pdf

Título: No.:

EMV-ING-001 Versión: 2.0Mx

Pinpad Ingenico Aplicación EMV para ECR

Fecha: 16-Ago-2012 Diseño de aplicación Pag.: 31 / 31

Documento 001 Este documento y la información contenida en él son propiedad de Ingenico. Prohibida su reproducción y difusión parcial o total, por cualquier medio sin autorización previa y por escrito de Ingenico.

Anexo C. Formato del bloque de datos en claro antes del cifrado: Los datos que no están presentes o no aplican por el tipo de ingreso, así como el padeo para llenar la longitud fija, serán llenados con F’s.

Campo Descripción Tipo- Long (bytes)

Ejemplo

1 Datos del Track 2 HEX(19) 52 23 33 45 34 43 50 04 D1 31 22 01 04 04 45 67 FF FF FF

2 CVV capturado (no

aplica para chip, donde se padea con FF’s).

HEX(5) 23 8F FF FF FF

3 Track 1 leido de la tarjeta de banda, si no está presente o la lectura no es por banda se establece en FF’s

HEX(80) 42 35 32 32 33 33 33 34 35 33 34 34 33 35 30 30 34 5E 31 33 31 32 32 30 31 30 34 30 34 34 35 36 37 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 FF FF FF FF