Ir al contenido

Pix

Las API del módulo Pix están diseñadas para utilizar las funcionalidades de firma, verificación, envío y recepción de solicitudes HTTP de Pix.

Red

El HSM no accede directamente a los servidores Pix/DICT, sino que se sitúa en la red para ser utilizado por los servidores internos del PSP.

---
title: Diagrama físico de rede
---

%%{ init: { 'flowchart': { 'curve': 'basis' } } }%%
flowchart LR
    psp[Aplicação PSP]
    hsm[HSM fa:key]
    fw[Firewall]
    rsfn{{RSFN}}
    spi["SPI (Pix/Dict)"]

    subgraph redepsp [Rede PSP]
      hsm <--> psp
      psp <--> fw
    end
    fw <--> rsfn
    rsfn <--> spi

Firma y verificación

Las API de firma y verificación Pix se basan en la norma ISO 20.022, y las API DICT siguen el formato XMLDSig, ambos definidos por SPI en el documento "Anexo IV - Manual de seguridad".

Las funciones API para su uso con la firma Pix y DICT requieren el almacenamiento interno en el HSM de los certificados digitales para la firma digital y la cadena de confianza completa de los certificados para la verificación.

Para escribir un certificado digital (o un archivo) en el HSM, utilice la consola de gestión remota o la API DWriteFile().

El certificado digital para la firma debe estar codificado en formato binario ASN1 DER y seguir también el estándar X.509. El archivo que contiene la cadena de confianza para verificar la firma digital debe estar codificado en formato PKCS#7 (Public Key Cryptography Standard #7 - Cryptographic Message Syntax Standard).

Las funciones de firma y validación de JWS Pix siguen el RFC 7515 y la documentación de SPI.

Peticiones HTTP

Las API de solicitud HTTP de Pix proporcionan una comunicación HTTP segura con los servidores Pix o DICT, utilizando las claves y certificados protegidos por el HSM.

Las funciones de comunicación segura del estándar Pix que siguen las definiciones descritas en los siguientes documentos: "Anexo IV - Manual de Seguridad", "Especificaciones técnicas y de negocio del ecosistema brasileño de pagos instantáneos" y "Anexo III - Manual de Interfaces de Comunicación" definidos en el SPI.

Operación

La conexión segura se realiza entre el servidor PSP y el servidor Pix/DICT, el HSM sólo se utiliza para utilizar objetos PSP y claves privadas.

El acceso al HSM sólo se produce durante el handshake TLS. Una vez cerrado el túnel, la comunicación sólo se mantiene entre el servidor PSP y el servidor Pix/DICT.

---
title: Visão geral handshake TLS utilizando o HSM
---

%%{ init: { 'flowchart': { 'curve': 'basis' }} }%%
sequenceDiagram
    participant hsm as HSM
    participant psp as PSP
    participant spi as SPI (Pix/Dict)

    Note over hsm: certificado TLS
    psp ->> spi: Inicia handshake TLS
    spi ->> psp: Requisita<br>credenciais do PSP
    psp ->> psp: Autentica SPI
    psp ->> hsm: Requisita informações<br>de autenticação
    hsm ->> hsm: Gera assinatura<br>para autenticação TLS
    destroy hsm
    hsm ->> psp: Envia assinatura
    psp ->> spi: Envia dados<br>de autenticação
    spi ->> spi: Autentica PSP
    loop Canal TLS
        %% necessário manter o espaço após o spi: (ou usar um text)
        psp-->spi: 
        psp ->> spi: Requisição<br>Pix/Dict
        spi ->> psp: Resposta
    end

Una conexión HTTP se asocia con el manejador de sesión del HSM que se utilizó para abrir la sesión HTTP. Esto permite mantener la asociación y el acceso a los objetos de conexión (clave privada, certificado y cadena de certificados) dentro del HSM.

---
title: Handle de sessão do HSM
---

%%{ init: { 'flowchart': { 'curve': 'basis' } } }%%
flowchart TB
    hsm[Sessão HSM]
    http[Sessão HTTP]
    %% necessário manter os espaços após o subpgraph (ou usar um text)
    subgraph  
      hsm
      http
    end
  • La sesión HTTP sólo se abre en las llamadas de petición HTTP de Pix.
  • La sesión HTTP se cierra cuando su respectiva sesión HSM se cierra físicamente (cierre de sesión con caché desactivada o configurada explícitamente para cerrar físicamente la sesión).
  • Una sesión cerrada (sin definición explícita de cierre físico y sin caché desactivada) no cierra la sesión HTTP asociada porque no hay cierre físico de la sesión.
  • La sesión HTTP se reutiliza en llamadas HTTP posteriores, independientemente del tipo de operación HTTP (POST, GET, DELETE o PUT) utilizada.
  • La sesión HTTP no se reutiliza cuando se cambian los parámetros de conexión (IP, puerto).

Por ejemplo: supongamos que se realiza una operación POST, la sesión HTTP se mantiene abierta dentro del manejador de sesión de HSM. Al cerrar la sesión de HSM (sin desactivar la caché de sesión), la sesión se almacena en la caché de sesión junto con la sesión HTTP. Si se solicita una nueva sesión, se devolverá la sesión almacenada en caché. Al reutilizar el manejador de sesión de HSM para una operación GET, la sesión HTTP se reutiliza porque se almacenó en el manejador de sesión de HSM.

JWS

El módulo Pix proporciona APIs para ayudarle a utilizar el código QR dinámico Pix. Hay APIs disponibles para firmar y comprobar JWS (JSON Web Signature).