Detección de ataques de presentación para documentos

Diagnóstico de Soporte de Documento (Document Pad Diagnostic)

Servicio que permite comprobar si el soporte de un documento de identidad es genuino o no mediante la verificación de su imagen, con el fin de detectar ataques de presentación dirigidos al robo de identidad.

El resultado de la validación puede devolver los siguientes valores:

  • Credible (Creíble): el documento es genuino.

  • Doubtful (Dudoso): no se puede asegurar si el documento es genuino.

  • Spoof (Falsificación): el documento parece no ser genuino.

  • Error (Error): el proceso de validación encontró un error.

El resultado se proporciona en el campo decision de la respuesta del servicio, junto con el campo reason que especifica la causa para las validaciones no satisfactorias. Esta API permite el proceso de validación morfológica de documentos de identidad.


Autorizaciones

Todas las llamadas a los endpoints deben incluir las siguientes claves en el encabezado de la solicitud:

Clave

Valor

Requerido

x-api-key

[Autorización de acceso a la API]

app-name

[Identificador de la aplicación]

**

** Si la solicitud se realiza directamente desde una aplicación móvil, el encabezado app-name es obligatorio; de lo contrario, este encabezado es opcional.

Si no se incluyen las claves requeridas mencionadas anteriormente, todos los endpoints devolverán uno de los siguientes códigos de respuesta:

Código de Respuesta (serviceResultCode)

Descripción

401

"message": "Unauthorized"


Endpoint

Método: POST

bash


Requisitos

Mínimos

  • Imágenes en alta definición (HD), resolución mínima: 720px.

  • Píxeles que muestren el fondo alrededor del documento de al menos el 5% de su ancho.

  • Nivel de compresión mínimo: JPEG 70.

  • El texto del documento debe ser legible por un OCR.

Recomendados

  • Imágenes en FullHD, resolución mínima: 1080px.

  • Documento centrado en la imagen y ocupando más del 5% del mismo.

  • Sin compresión, con formatos como PNG.

  • Una foto bien iluminada, sin desenfoques o destellos de luz.


Solicitud (Request)

Solicitud de validación morfológica:

Parámetros de la solicitud:

Campo

Tipo

Requerido

Descripción

frontSideImage

Base64

Imagen codificada en Base64 del anverso del documento a validar

backSideImage

Base64

Imagen codificada en Base64 del reverso del documento a validar

face

Base64

No

Imagen codificada en Base64 del rostro de la persona a validar

tokenized

Boolean

Define si las imágenes se envían en formato tokenizado o en formato plano (abierto)

countryCode

String

Código ISO Alpha-3 del país emisor del documento de identidad, ej. ESP

idType

String

Tipo de documento a validar. Valores posibles: PASSPORT, ID_CARD, RESIDENCE_PERMIT, DRIVERS_LICENSE, DRIVING_LICENSE, VISA

Ejemplo de solicitud:

bash


Respuesta (Response)

Respuesta de datos de validación morfológica:

Las solicitudes exitosas devuelven un código de estado HTTP 200 OK acompañado de un objeto JSON que contiene la información descrita en la siguiente tabla:

Campos de la respuesta:

Campo

Tipo

Descripción

serviceTransactionId

String

Identificador de transacción asociado a la solicitud procesada por la API

serviceResultCode

Integer

Código que indica el resultado general de la ejecución del servicio

serviceResultLog

String

Descripción del resultado de la ejecución

timestamp

String

Marca de tiempo (UTC) de la respuesta en el formato: YYYY-MM-DDThh:mm.SSSZ

serviceResult

String (JSON)

Objeto JSON con el resultado de la validación (Tabla: Resultado de Validación)

serviceDocumentData

String (JSON)

Diccionario con los datos extraídos por OCR del documento de identidad

serviceTime

String

Tiempo de procesamiento en milisegundos

Ejemplo de respuesta:

200 OK

Content-Type: application/json

json


Tablas

Tabla: Resultado de Validación (Validation Result)

decision (decisión)

Descripción

Credible

El documento es genuino

Doubtful

No se puede asegurar si el documento es genuino

Spoof

El documento parece no ser genuino

Error

El proceso de validación encontró un error

Tabla: Posibles Motivos de Rechazo en la Validación (Possible Validation Rejection Reasons)

reason (motivo)

Descripción en Español

Screen_Replay_Attack

Un atacante presenta una imagen o video de un documento frente a la cámara (Ataque de Reproducción en Pantalla)

Black_and_White_Printed_Copy_Attack

Detección de documentos impresos en papel en escala de grises o blanco y negro (Ataque de Copia Impresa en B/N)

Photo_Replacement_Attack

La región de datos parece genuina pero la región del retrato tiene una fotografía impresa sobrepuesta. No detecta manipulaciones digitales. (Ataque de Sustitución de Foto)

SECURITY_PHOTO_CHECK

La foto de retrato en el documento de identidad está manipulada (Verificación de Seguridad de Foto)

SECURITY_DATA_CHECK

Los datos en el documento muestran alteraciones en su contenido (Verificación de Seguridad de Datos)

SECURITY_OCR_CHECK

La comparación de datos comunes entre el anverso y el reverso del documento de identidad falla (Verificación de Seguridad OCR)

NOT_PROCESSED_OCR

No se pudieron extraer datos OCR del documento de identidad (OCR No Procesado)

NOT_PROCESSED_PHOTO_CHECK

No se pudo realizar la verificación de la foto de retrato del documento de identidad (Verificación de Foto No Procesada)

NOT_PROCESSED_DATA_CHECK

No se pudo realizar la verificación de los valores de los campos del documento de identidad (Verificación de Datos No Procesada)


Códigos de Error

Para los casos de errores de validación en los parámetros de entrada, se obtendrá una respuesta de acuerdo con RFC 9457 Problem Details (Detalles del Problema).

Ejemplo de respuesta por parámetro requerido faltante:

Código HTTP: 400 Content-Type: application/json Cuerpo:

json

Ejemplo de respuesta por fallo de comunicación con servicio externo:

Código HTTP: 502 Content-Type: application/json Cuerpo:

json

Ejemplo de respuesta por tiempo de espera agotado (timeout):

Código HTTP: 504 Content-Type: application/json Cuerpo:

json

Last updated