Vetores de teste
Valide assinatura de requisição (ES256 e PS256) e HMAC de webhook offline, sem credencial.
Os valores abaixo são gerados e verificados pelo mesmo código que valida em
produção (internal/reqsign). Se a sua implementação reproduz estas
assinaturas, ela vai passar no gateway.
A chave privada PS256 publicada aqui existe só para você reproduzir o vetor. Ela nunca foi cadastrada em credencial nenhuma; não a use para nada além deste teste.
Assinatura de requisição
Os dois algoritmos assinam a mesma string canônica (LF entre linhas, sem newline no fim):
ES256
PS256
Chave pública (SPKI PEM)
JWS destacada (X-Request-Signature)
A assinatura ES256 tem 64 bytes (R||S, ieee-p1363). DER não confere.
Assinatura HMAC de webhook
Com authType: HMAC, cada entrega leva X-Signature = base64(HMAC_SHA256(secret, corpo_bruto)). Calcule sobre os bytes exatos recebidos — nunca sobre JSON reserializado.
Corpo bruto