API: Métodos relacionados con la encriptación / desencriptación

Última actualización: 05 abril 2021

Nota: Para acceder a estos métodos es necesario tener un token de acceso (access_token) obtenido mediante una petición de autorización con un scope de tipo client y un grant_type de tipo client_credentials, para lo que hay que seguir los pasos indicados en la sección Autenticación del sistema Cliente de la documentación.

Solicitud de Encriptación / Desencriptación

Permite encriptar / desencriptar mediante RSA los bytes indicados, usando un certificado asociado a un sistema cliente o grupo.

Uso del servicio

Método: POST URL: {viafirma_fortress_url}/api/v1/encrypt

Donde:

Además, en la cabecera HTTP de la petición POST debe incluirse el token de acceso (access_token) de la siguiente forma:

Authorization: Bearer {access_token}

Ejemplo:

Método: POST
URL: {viafirma_fortress_url}/api/v1/encrypt
Header de la petición: Authorization: Bearer 0b79bab50daca910b000d4f1a2b675d604257e42

Parámetros del servicio

Los parámetros que se reciben (en formato application/json) tienen la siguiente forma:

{
  "certificateCode": "580fe337eba1483683290cbbf94982a3",
  "mode": "ENCRYPT",
  "bytesB64": "dGVzdA=="
}

Donde:

Parámetro Tipo Descripción
certificateCode string Código del certificado de sistema cliente o grupo a usar en la encriptación / desencriptación. Para la encriptación se usará la clave pública del certificado mientras que para la desencriptación se usa la clave privada.
mode string Indica si se trata de una operación de encriptado o desencriptado, los valores posibles son ENCRYPT, DECRYPT.
bytesB64 string Contenido a encriptar / desencriptar en formato Base64.

Respuesta del servicio

La respuesta de este servicio vendrá dada (en formato application/json) de la siguiente forma:

{
  "bytesB64": "ggj5mRTVh3FKAz4wf2EmaX7Zfr...=="
}

Donde:

Parámetro Tipo Descripción
bytesB64 string Resultado de la encriptación / desencriptación en formato Base64.

Errores del servicio

Los errores devueltos por el servicio (devueltos en formato application/json) tienen el siguiente formato:

{
  "error": "error_code",
  "error_description": "error_description"
}

Donde:

Parámetro Tipo Descripción
error string Código del error
error_description string Descripción del error

Posibles errores:

Código de error Error
invalid_request Petición incorrecta. Alguno de los parámetros de entrada no es correcto. (HTTP Status: 400)
invalid_token El access_token utilizado no es correcto (HTTP Status: 401)
certificate_not_found El certificado especificado no es correcto o no está activo (HTTP Status: 404)

results matching ""

    No results matching ""