NET API
HSM Dinamo
Cargando...
Buscando...
No se han encontrado entradas
Pix

Descripción detallada

Operaciones destinadas al Pix del SPI (Sistema de Pago Instantáneo).

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] 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
credenciais do PSP psp ->> psp: Autentica SPI psp ->> hsm: Requisita informações
de autenticação hsm ->> hsm: Gera assinatura
para autenticação TLS destroy hsm hsm ->> psp: Envia assinatura psp ->> spi: Envia dados
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
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

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 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. Cuando se solicita una nueva sesión, se devuelve la sesión almacenada en caché. Cuando se reutiliza 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.

Buenas prácticas

General

  1. Reutilice las sesiones (benefíciese de la caché de sesión). Utilice la caché de sesiones del HSM y gane rendimiento reutilizando las sesiones HSM y HTTP. En este caso se recomienda abrir una sesión, realizar las operaciones que se deseen y luego cerrarla, lo que permite reutilizar la sesión rápidamente, reduciendo así el tiempo de inactividad.
  2. Garantizar el cierre de las sesiones. El cierre de sesiones garantiza la liberación del recurso, tanto en el HSM como en el cliente. Asegúrese de que las sesiones se cierran incluso para operaciones con un código de retorno distinto de éxito.
  3. Utilice sesiones concurrentes. El uso de sesiones concurrentes/paralelas con el HSM ayuda a extraer el máximo rendimiento. Debe prestarse atención al uso de demasiadas sesiones con HSM, para no provocar un uso innecesario de recursos. La curva de rendimiento tiende a subir y a encontrar una meseta.

Peticiones HTTP Pix

  1. Definir un intervalo de recarga de objetos de conexión. Puede optimizar el número de veces que se cargan las claves y objetos HSM definiendo un intervalo de recarga para los objetos HSM. Dado que la actualización de claves/certificados/cadenas de la institución se realiza con poca frecuencia y de forma programada, resulta ventajoso definir un intervalo de recarga para estos objetos. Preste atención a los tiempos de espera de los activos de red que sean inferiores a este valor para evitar desconexiones prematuras y errores innecesarios. Vea más detalles y cómo configurarlo aquí.

Ajustes importantes

General
  1. Configure los tiempos de espera de conexión del HSM. Si no se establece el tiempo de espera del HSM, el valor predeterminado es el del sistema operativo. En caso de fallo de la conexión, la aplicación puede esperar demasiado tiempo. Es importante configurar SIEMPRE los tiempos de espera de envío y recepción de HSM. Aquí encontrará otros parámetros de conexión.
Peticiones HTTP Pix
  1. Define los tiempos de espera de las operaciones HTTP. Cuando no se define, el tiempo de espera de la operación HTTP por defecto es ilimitado. En caso de fallo de la conexión HTTP, la aplicación puede quedar en espera indefinidamente. Es importante definir SIEMPRE el tiempo de espera en las llamadas a peticiones HTTP.

Funciones

byte[] SignPIX (cadena KeyId, cadena CertId, int Flags, byte[] byUnsignedPIXEnvelope)
 Firma digitalmente un XML en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
byte[] SignPIX (cadena KeyId, cadena CertId, byte[] byUnsignedPIXEnvelope)
 Firma digitalmente un XML en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
bool VerifyPIX (cadena ChainId, cadena CRL, cadena SignedPIXEnvelope)
 Comprueba la firma de un documento XML firmado digitalmente en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
byte[] SignPIXDict (cadena KeyId, cadena CertId, int Flags, byte[] byUnsignedDictEnvelope)
 Firma digitalmente un XML en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).
 
byte[] SignPIXDict (cadena KeyId, cadena CertId, byte[] byUnsignedDictEnvelope)
 Firma digitalmente un XML en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).
 
bool VerifyPIX (cadena ChainId, cadena CRL, int Flags, byte[] SignedPIXEnvelope)
 Comprueba la firma de un documento XML firmado digitalmente en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
bool VerifyPIX (cadena ChainId, cadena CRL, byte[] SignedPIXEnvelope)
 Comprueba la firma de un documento XML firmado digitalmente en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
bool VerifyPIXDict (cadena ChainId, cadena CRL, int Flags, byte[] SignedDictEnvelope)
 Comprueba la firma de un documento XML firmado digitalmente en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).
 
bool VerifyPIXDict (cadena ChainId, cadena CRL, byte[] SignedDictEnvelope)
 Comprueba la firma de un documento XML firmado digitalmente en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).
 
byte[] SignPIXJWS (cadena KeyId, byte[] byHeader, byte[] byPayload)
 Realiza una firma JWS RFC 7515 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
cadena SignPIXJWS (cadena KeyId, cadena Header, cadena Payload)
 Realiza una firma JWS RFC 7515 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
JwsComponents CheckPIXJWS (cadena Chain, cadena CRL, byte[] byJWS, Int32 flags)
 Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
JwsComponents CheckPIXJWS (cadena Chain, cadena CRL, cadena JWS, Int32 flags)
 Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
bool CheckPIXJWS (cadena Chain, cadena CRL, byte[] byJWS)
 Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
bool CheckPIXJWS (cadena Chain, cadena CRL, cadena JWS)
 Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
PIXResponse postPIX (string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, byte[] RequestData, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
 Realiza una petición HTTP POST segura siguiendo el estándar PIX definido en SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP inicial básica.
 
PIXResponse postPIX (string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, byte[] RequestData, Int32 TimeOut, Int32 Param)
 Realiza una petición HTTP POST segura siguiendo el estándar PIX definido en SPI (Sistema de Pago Instantáneo).
 
PIXResponse putPIX (string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, byte[] RequestData, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
 Realiza una petición HTTP PUT segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP básica inicial.
 
PIXResponse putPIX (string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, byte[] RequestData, Int32 TimeOut, Int32 Param)
 Realiza una petición HTTP PUT segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
PIXResponse getPIX (string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
 Realiza una petición HTTP GET segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP básica inicial.
 
PIXResponse getPIX (cadena KeyId, cadena CertId, cadena PIXCertChainId, cadena URL, cadena[] RequestHeaderList, Int32 TimeOut, Int32 Param)
 Realiza una petición HTTP GET segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
PIXResponse deletePIX (string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, Int32 TimeOut, bool UseGzip, bool VerifyHostName)
 Realiza una petición HTTP DELETE segura siguiendo el estándar PIX definido en SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP básica inicial.
 
PIXResponse deletePIX (string KeyId, string CertId, string PIXCertChainId, string URL, string[] RequestHeaderList, Int32 TimeOut, Int32 Param)
 Realiza una petición segura HTTP DELETE siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).
 
DinamoApi.PIXHTTPReqDetails getPIXHTTPReqDetails ()
 Recupera los detalles de la última petición PIX HTTP (POST, GET...) realizada en esta sesión. Esta operación debe llamarse inmediatamente después de llamar a la API de peticiones PIX. Debe llamarse utilizando la misma sesión. No realice otras operaciones entre estas llamadas.
 
Int64 getPIXHTTPReqCode ()
 Recupera el código de retorno de la última petición PIX HTTP (POST, GET...) realizada en esta sesión. Esta operación debe llamarse inmediatamente después de llamar a la API de petición PIX. Debe llamarse utilizando la misma sesión. No realice ninguna otra operación entre estas llamadas.
 

Funciones

SignPIX() [1/2]

byte[] SignPIX ( cadena KeyId,
cadena CertId,
int Banderas,
byte[] byUnsignedPIXEnvelope )
en línea

Firma digitalmente un XML en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
KeyIdNombre de la clave privada utilizada para la firma. Correspondiente a un certificado CPIA.
CertIdNombre del certificado digital utilizado para la firma. Certificado digital del PSP registrado en SPI para la firma, también conocido como CPIA o CERTPIA.
BanderasOpciones de suscripción. Pase 0. Si necesita opciones adicionales, se aceptan los siguientes valores.
Valor Significado
DinamoAPI.PIX_SIGN_RNS Permite el uso de espacios de nombres relativos.
Parámetros
byUnsignedPIXEnvelopeParámetro que contiene el XML que se va a firmar.
Devolución
El documento XML firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de firma

Recomendamos utilizar la etiqueta de firma con el cierre completo, como se ve a continuación, por razones de rendimiento.

<Sgntr></Sgntr>

También se acepta la etiqueta con un cierre simple, véase más abajo.

<Sgntr/>
Ejemplos
sign_verify_pix.cs.

SignPIX() [2/2]

byte[] SignPIX ( cadena KeyId,
cadena CertId,
byte[] byUnsignedPIXEnvelope )
en línea

Firma digitalmente un XML en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
KeyIdNombre de la clave privada utilizada para la firma. Correspondiente a un certificado CPIA.
CertIdNombre del certificado digital utilizado para la firma. Certificado digital del PSP registrado en SPI para la firma, también conocido como CPIA o CERTPIA.
byUnsignedPIXEnvelopeParámetro que contiene el XML que se va a firmar.
Devolución
El documento XML firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de firma

Recomendamos utilizar la etiqueta de firma con el cierre completo, como se ve a continuación, por razones de rendimiento.

<Sgntr></Sgntr>

También se acepta la etiqueta con un cierre simple, véase más abajo.

<Sgntr/>

VerificarPIX() [1/3]

bool VerificarPIX ( cadena ChainId,
cadena CRL,
cadena SignedPIXEnvelope )
en línea

Comprueba la firma de un documento XML firmado digitalmente en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
ChainIdNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
SobrePIXFirmadoXML firmado digitalmente
Devolución
Verdadero si la comprobación se realiza correctamente.
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
sign_verify_pix.cs.

SignPIXDict() [1/2]

byte[] SignPIXDict ( cadena KeyId,
cadena CertId,
int Banderas,
byte[] byUnsignedDictEnvelope )
en línea

Firma digitalmente un XML en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
KeyIdNombre de la clave privada utilizada para la firma. Correspondiente a un certificado CPIA.
CertIdNombre del certificado digital utilizado para la firma. Certificado digital del PSP registrado en SPI para la firma, también conocido como CPIA o CERTPIA.
BanderasReservado para uso futuro (debe ser 0).
byUnsignedDictEnvelopeParámetro que contiene el XML que se va a firmar.
Devolución
El documento XML firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de firma

No incluya la etiqueta de firma, se añadirá automáticamente.

SignPIXDict() [2/2]

byte[] SignPIXDict ( cadena KeyId,
cadena CertId,
byte[] byUnsignedDictEnvelope )
en línea

Firma digitalmente un XML en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
KeyIdNombre de la clave privada utilizada para la firma. Correspondiente a un certificado CPIA.
CertIdNombre del certificado digital utilizado para la firma. Certificado digital del PSP registrado en SPI para la firma, también conocido como CPIA o CERTPIA.
byUnsignedDictEnvelopeParámetro que contiene el XML que se va a firmar.
Devolución
El documento XML firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de firma

No incluya la etiqueta de firma, se añadirá automáticamente.

VerificarPIX() [2/3]

bool VerificarPIX ( cadena ChainId,
cadena CRL,
int Banderas,
byte[] SignedPIXEnvelope )
en línea

Comprueba la firma de un documento XML firmado digitalmente en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
ChainIdNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
BanderasReservado para uso futuro (debe ser 0).
SobrePIXFirmadoXML firmado digitalmente
Devolución
Verdadero si la comprobación se realiza correctamente.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

VerificarPIX() [3/3]

bool VerificarPIX ( cadena ChainId,
cadena CRL,
byte[] SignedPIXEnvelope )
en línea

Comprueba la firma de un documento XML firmado digitalmente en formato ISO 20.022 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
ChainIdNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
SobrePIXFirmadoXML firmado digitalmente
Devolución
Verdadero si la comprobación se realiza correctamente.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

VerificarPIXDict() [1/2]

bool VerificarPIXDict ( cadena ChainId,
cadena CRL,
int Banderas,
byte[] SignedDictEnvelope )
en línea

Comprueba la firma de un documento XML firmado digitalmente en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
ChainIdNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
BanderasReservado para uso futuro (debe ser 0).
SignedDictEnvelopeXML firmado digitalmente
Devolución
Verdadero si la comprobación se realiza correctamente.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

VerificarPIXDict() [2/2]

bool VerificarPIXDict ( cadena ChainId,
cadena CRL,
byte[] SignedDictEnvelope )
en línea

Comprueba la firma de un documento XML firmado digitalmente en formato XMLDSig siguiendo el estándar DICT definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
ChainIdNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
SignedDictEnvelopeXML firmado digitalmente
Devolución
Verdadero si la comprobación se realiza correctamente.
Excepciones
DinamoExceptionLanza una excepción en caso de error.

SignPIXJWS() [1/2]

byte[] SignPIXJWS ( cadena KeyId,
byte[] byHeader,
byte[] byPayload )
en línea

Realiza una firma JWS RFC 7515 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
KeyIdNombre de la clave privada utilizada para firmar. Como se define en el manual de seguridad PIX
byHeaderCabecera JWS para la firma. Al menos el parámetro de cabecera alg debe ser informado. Valores aceptados para alg.
Valor Significado
RS256 RSA 2048 PKCS#1v5
RS384 RSA 3072 PKCS#1v5
RS512 RSA 4096 PKCS#1v5
PS256 RSA 2048 PSS
PS384 RSA 3072 PSS
PS512 RSA 4096 PSS
ES256 ECC SECP256R1
ES384 ECC SECP384R1
ES512 ECC SECP521R1
byPayloadCarga útil JWS para la suscripción.
Devolución
JWS firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de firma

Utiliza el formato Compact Serialisation descrito en la Sección-3.1 del RFC 7515.

Ejemplos
sign_check_jws.cs.

SignPIXJWS() [2/2]

cadena SignPIXJWS ( cadena KeyId,
cadena Cabecera,
cadena Carga útil )
en línea

Realiza una firma JWS RFC 7515 siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
KeyIdNombre de la clave privada utilizada para firmar. Como se define en el manual de seguridad PIX
CabeceraCabecera JWS para la firma. Al menos el parámetro de cabecera alg debe ser informado. Valores aceptados para alg.
Valor Significado
RS256 RSA 2048 PKCS#1v5
RS384 RSA 3072 PKCS#1v5
RS512 RSA 4096 PKCS#1v5
PS256 RSA 2048 PSS
PS384 RSA 3072 PSS
PS512 RSA 4096 PSS
ES256 ECC SECP256R1
ES384 ECC SECP384R1
ES512 ECC SECP521R1
Carga útilCarga útil JWS para la suscripción.
Devolución
JWS firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de firma

Utiliza el formato Compact Serialisation descrito en la Sección-3.1 del RFC 7515.

ComprobarPIXJWS() [1/4]

JwsComponentes CheckPIXJWS ( cadena Cadena,
cadena CRL,
byte[] byJWS,
Int32 banderas )
en línea

Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
CadenaNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
byJWSJWS firmado.
banderasComprueba las opciones. Debería ser 0.
Devolución
Clase JwsComponents que contendrá el código de retorno, la Cabecera y la Carga útil del mensaje firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de verificación
Ejemplos
sign_check_jws.cs.

ComprobarPIXJWS() [2/4]

JwsComponentes CheckPIXJWS ( cadena Cadena,
cadena CRL,
cadena JWS,
Int32 banderas )
en línea

Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
CadenaNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
JWSJWS firmado.
banderasComprueba las opciones. Debería ser 0.
Devolución
Clase JwsComponents que contendrá el código de retorno, la Cabecera y la Carga útil del mensaje firmado.
Excepciones
DinamoExceptionLanza una excepción en caso de error de verificación

ComprobarPIXJWS() [3/4]

bool CheckPIXJWS ( cadena Cadena,
cadena CRL,
byte[] byJWS )
en línea

Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
CadenaNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
byJWSJWS firmado.
Devolución
Verdadero si la comprobación se realiza correctamente.
Excepciones
DinamoExceptionLanza una excepción en caso de error de verificación

ComprobarPIXJWS() [4/4]

bool CheckPIXJWS ( cadena Cadena,
cadena CRL,
cadena JWS )
en línea

Valida un RFC 7515 firmado por JWS siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Parámetros
CadenaNombre de la cadena PKCS#7 (almacenada internamente en el HSM) del certificado utilizado en la firma. La cadena debe estar completa, desde la CA raíz hasta el certificado real utilizado en la firma. Este formato es necesario porque el mensaje Pix XML no contiene el certificado utilizado en la firma. Opcionalmente, sólo se puede pasar el certificado X.509 utilizado para la firma en lugar de la cadena completa. A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas. Es importante tener en cuenta que, en el caso de un objeto PKCS#7 de HSM que contenga varias cadenas, la presencia de un certificado caducado en cualquiera de las cadenas generará un código de retorno de firma válido con un certificado caducado (código distinto de cero) en la verificación, aunque la firma se haya realizado con un certificado de una cadena no caducada; depende de la aplicación tratar esto correctamente de acuerdo con la política local.
CRLNombre de la lista de revocación de certificados (CRL) -almacenada internamente en el HSM- en la que se verificará el certificado digital. Es posible pasar NULL indicando que no hay CRL que comprobar.
JWSJWS firmado.
Devolución
Verdadero si la comprobación se realiza correctamente.
Excepciones
DinamoExceptionLanza una excepción en caso de error de verificación

postPIX() [1/2]

PIXResponse postPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
byte[] SolicitarDatos,
Int32 TimeOut,
bool UseGzip,
bool VerifyHostName )
en línea

Realiza una petición HTTP POST segura siguiendo el estándar PIX definido en SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP inicial básica.

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.
La cabecera inicial estándar incluye Host, User-Agent y Content-Length.
SolicitarDatosDatos enviados en la solicitud.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
UseGzipComprime automáticamente los datos de la solicitud. Incluye automáticamente las cabeceras necesarias (Content-Encoding y Accept-Encoding).
VerifyHostNameComprueba el certificado con el nombre del host.
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

Ejemplos
basic_post_put_get_delete_pix.cs y post_put_get_delete_pix.cs.

postPIX() [2/2]

PIXResponse postPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
byte[] SolicitarDatos,
Int32 TimeOut,
Int32 Parámetro )
en línea

Realiza una petición HTTP POST segura siguiendo el estándar PIX definido en SPI (Sistema de Pago Instantáneo).

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.
La cabecera inicial estándar incluye Host, User-Agent, Accept, Accept-Encoding, Content-Type, Expect y Content-Length.
SolicitarDatosDatos enviados en la solicitud.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
Param
Valor Significado
0 Opción por defecto. No comprueba el certificado con el nombre de host.
DinamoApi.PIX_VERIFY_HOST_NAME Comprueba el certificado con el nombre del host.
DinamoApi.PIX_BASIC_HTTP_HEADER Utiliza la cabecera HTTP inicial básica. Incluye Host, User-Agent y Content-Length.
DinamoApi.PIX_GZIP Comprime automáticamente los datos de la solicitud. Incluye automáticamente las cabeceras necesarias (Content-Encoding y Accept-Encoding).
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

putPIX() [1/2]

PIXResponse putPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
byte[] SolicitarDatos,
Int32 TimeOut,
bool UseGzip,
bool VerifyHostName )
en línea

Realiza una petición HTTP PUT segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP básica inicial.

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.

La cabecera inicial estándar incluye Host, User-Agent y Content-Length.
SolicitarDatosDatos enviados en la solicitud.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
UseGzipComprime automáticamente los datos de la solicitud. Incluye automáticamente las cabeceras necesarias (Content-Encoding y Accept-Encoding).
VerifyHostNameComprueba el certificado con el nombre del host.
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

Ejemplos
basic_post_put_get_delete_pix.cs y post_put_get_delete_pix.cs.

putPIX() [2/2]

PIXResponse putPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
byte[] SolicitarDatos,
Int32 TimeOut,
Int32 Parámetro )
en línea

Realiza una petición HTTP PUT segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.

La cabecera inicial estándar incluye Host, User-Agent, Accept, Accept-Encoding, Expect y Content-Length.
SolicitarDatosDatos enviados en la solicitud.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
Param
Valor Significado
0 Opción por defecto. No comprueba el certificado con el nombre de host.
DinamoApi.PIX_VERIFY_HOST_NAME Comprueba el certificado con el nombre del host.
DinamoApi.PIX_BASIC_HTTP_HEADER Utiliza la cabecera HTTP inicial básica. Incluye Host, User-Agent y Content-Length.
DinamoApi.PIX_GZIP Comprime automáticamente los datos de la solicitud. Incluye automáticamente las cabeceras necesarias (Content-Encoding y Accept-Encoding).
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

getPIX() [1/2]

PIXResponse getPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
Int32 TimeOut,
bool UseGzip,
bool VerifyHostName )
en línea

Realiza una petición HTTP GET segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP básica inicial.

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.

La cabecera inicial por defecto incluye Host y User-Agent.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
UseGzipIncluye la cabecera Accept-Encoding: gzip si la cabecera básica está activada.
VerifyHostNameComprueba el certificado con el nombre del host.
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

Ejemplos
basic_post_put_get_delete_pix.cs y post_put_get_delete_pix.cs.

getPIX() [2/2]

PIXResponse getPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
Int32 TimeOut,
Int32 Parámetro )
en línea

Realiza una petición HTTP GET segura siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.

La cabecera inicial estándar incluye Host, User-Agent, Accept, Accept-Encoding.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
Param
Valor Significado
0 Opción por defecto.No comprueba el certificado con el nombre del host.
DinamoApi.PIX_VERIFY_HOST_NAME Comprueba el certificado con el nombre del host.
DinamoApi.PIX_BASIC_HTTP_HEADER Utiliza la cabecera HTTP inicial básica. Incluye Host y User-Agent.
DinamoApi.PIX_GZIP Incluye la cabecera Accept-Encoding: gzip si la cabecera básica está activada.
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

deletePIX() [1/2]

PIXResponse borrarPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
Int32 TimeOut,
bool UseGzip,
bool VerifyHostName )
en línea

Realiza una petición HTTP DELETE segura siguiendo el estándar PIX definido en SPI (Sistema de Pago Instantáneo). Utiliza la cabecera HTTP básica inicial.

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.

La cabecera inicial por defecto incluye Host y User-Agent.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
UseGzipIncluye la cabecera Accept-Encoding: gzip si la cabecera básica está activada.
VerifyHostNameComprueba el certificado con el nombre del host.
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

Ejemplos
basic_post_put_get_delete_pix.cs y post_put_get_delete_pix.cs.

deletePIX() [2/2]

PIXResponse borrarPIX ( cadena KeyId,
cadena CertId,
cadena PIXCertChainId,
cadena URL,
cadena[] RequestHeaderList,
Int32 TimeOut,
Int32 Parámetro )
en línea

Realiza una petición segura HTTP DELETE siguiendo el estándar PIX definido en el SPI (Sistema de Pago Instantáneo).

Observación
Configure el tiempo de espera. Consulte más detalles en la sección Buenas prácticas.
Parámetros
KeyIdNombre de la clave privada utilizada para cerrar el túnel. Corresponde a un certificado CPIC.
CertIdNombre del certificado utilizado para cerrar el túnel. Certificado digital del PSP registrado en el SPI para la conexión, también conocido como CPIC o CERTPIC.
PIXCertChainIdNombre de la cadena PKCS#7 utilizada para comprobar el servidor PIX (ICOM o DICT). A partir de la versión 5.0.23 del firmware del HSM, es posible utilizar un objeto PKCS#7 que contenga varias cadenas.
URLURL del servidor PIX (ICOM o DICT).
RequestHeaderListLíneas que contienen las cabeceras HTTP personalizadas que se utilizarán en la petición. Se puede pasar null si se desea utilizar la cabecera por defecto sin cambios.
Esta opción sobrescribirá las cabeceras por defecto si se solapan.
Para eliminar una cabecera, pase el nombre de la cabecera sin un valor (p. ej. Acepta:).
Para incluir una cabecera sin contenido, utilice ; en lugar de : (Ej. Acepta;).
NO utilice terminadores CRLF en las cabeceras. Pasar estos terminadores puede causar un comportamiento no deseado. El formateo se realizará internamente.
Esta opción no puede utilizarse para modificar la primera línea de la petición (por ejemplo, POST, PUT, GET, DELETE), que no es una cabecera. Debe utilizarse la API correspondiente, descrita en este manual.

La cabecera inicial estándar incluye Host, User-Agent, Accept, Accept-Encoding.
TimeOutTiempo de espera de la operación en milisegundos. Puede establecerse en 0 para que no haya tiempo de espera.
Param
Valor Significado
0 Opción por defecto.No comprueba el certificado con el nombre del host.
DinamoApi.PIX_VERIFY_HOST_NAME Comprueba el certificado con el nombre del host.
DinamoApi.PIX_BASIC_HTTP_HEADER Utiliza la cabecera HTTP inicial básica. Incluye Host y User-Agent.
DinamoApi.PIX_GZIP Incluye la cabecera Accept-Encoding: gzip si la cabecera básica está activada.
Devolución
La respuesta a la solicitud.
Excepciones
DinamoExceptionLanza una excepción en caso de error en la solicitud

Ejecuta una petición segura siguiendo el estándar PIX definido en el SPI en los 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.
El túnel negociado es TLS versión 1.2 con autenticación mutua, utilizando el protocolo HTTP versión 1.1 con un Cipher Suite mínimo de ECDHE-RSA-AES-128-GCM-SHA256.

Esta API descomprimirá automáticamente una respuesta que venga comprimida en el estándar gzip. Si decide comprimir los datos de envío, la persona que llame a la API deberá hacerlo en formato gzip.

Esta solicitud utiliza por defecto las siguientes cabeceras.
"Accept-Encoding: gzip"
"User-Agent: DNLC/0.0.0.0", donde 0.0.0.0 es la versión de la biblioteca cliente HSM utilizada.

La validación del certificado con el nombre de host se realiza comprobando que el campo Common Name o Subject Alternate Name del certificado coincide con el nombre de host de la URL pasada como parámetro.

Al realizar una petición HTTP, se efectúan 2 operaciones, una para utilizar los objetos HSM (clave privada, certificado y cadena, utilizados para autenticar el túnel) y otra para abrir la sesión HTTP con el servidor HTTP.
Para optimizar los recursos, la sesión con el servidor HTTP se mantiene abierta y se almacena en caché; del mismo modo, la sesión con el HSM se almacena en caché por defecto (la sesión del HSM puede configurarse opcionalmente para que no se almacene en caché).
La sesión HTTP está asociada a la sesión abierta con el HSM, lo que significa que para reutilizar una sesión HTTP se debe utilizar la misma sesión HSM que la utilizada previamente para abrir la sesión HTTP.
La sesión HTTP se cierra físicamente cuando se cierra físicamente la sesión con el HSM.
La sesión con el HSM y la sesión HTTP tienen afinidad de hilo-sesión y no pueden ser utilizadas simultáneamente por varios hilos.

El sondeo largo se ajusta configurando el tiempo de espera de la operación HTTP (POST/GET/DELETE) según la configuración del servidor HTTP.

getPIXHTTPReqDetails()

DinamoApi.PIXHTTPReqDetails getPIXHTTPReqDetails ( )
en línea

Recupera los detalles de la última petición PIX HTTP (POST, GET...) realizada en esta sesión. Esta operación debe llamarse inmediatamente después de llamar a la API de peticiones PIX. Debe llamarse utilizando la misma sesión. No realice otras operaciones entre estas llamadas.

Devolución
Detalles de la última petición HTTP de PIX para esta sesión.
Excepciones
DinamoExceptionLanza una excepción en caso de error.
Ejemplos
post_put_get_delete_pix.cs.

getPIXHTTPReqCode()

Int64 getPIXHTTPReqCode ( )
en línea

Recupera el código de retorno de la última petición PIX HTTP (POST, GET...) realizada en esta sesión. Esta operación debe llamarse inmediatamente después de llamar a la API de petición PIX. Debe llamarse utilizando la misma sesión. No realice ninguna otra operación entre estas llamadas.

Devolución
Código de retorno HTTP.
Excepciones
DinamoExceptionLanza una excepción en caso de error.