Use o corpo original
Não formate o JSON nem remova espaços antes de assinar. Uma quebra de linha, um BOM ou outra representação Unicode altera os bytes recebidos.
- Use Hex ou Base64 para bytes que os campos de texto não conseguem preservar.
Hash & Crypto Helpers
Defina as codificações separadamente e gere um resumo ou verifique diretamente o valor esperado.
Mensagem e chave ficam na memória desta página; não são enviadas nem salvas no armazenamento do navegador.
Sem remover espaços ou normalizar. Chaves com várias linhas em Hex/Base64; resumo completo sem prefixo de cabeçalho.
Mensagem: 1.000.000 unidades UTF-16 e bytes. Chave: 4.096 unidades UTF-16, não vazia.
Informe uma chave e gere ou verifique. A mensagem pode estar vazia.
O Gerador HMAC ajuda a investigar assinaturas de API que não batem com o servidor. Comece pelo corpo original e pela representação da chave secreta, pois caracteres iguais podem representar bytes diferentes.
Este gerador de HMAC usa HMAC SHA256 por padrão e também oferece SHA-512 e SHA-1. Para verificar uma assinatura de webhook, prepare antes a sequência exata exigida pelo provedor.
O Gerador HMAC separa a codificação da chave da codificação da mensagem. O texto 6162 ocupa quatro bytes, enquanto Hex 6162 representa dois. Essa diferença basta para alterar o resultado com uma chave aparentemente igual.
A operação usa a mensagem e a chave atuais e aceita uma referência em formato independente. Erros de formato e de tamanho são separados de um resumo completo que simplesmente não corresponde.
Não formate o JSON nem remova espaços antes de assinar. Uma quebra de linha, um BOM ou outra representação Unicode altera os bytes recebidos.
UTF-8 usa o texto literal, Hex decodifica pares de dígitos e Base64 usa o alfabeto padrão. A chave fica oculta inicialmente.
A saída e o resumo esperado têm seletores próprios. As operações são manuais; qualquer edição invalida a cópia do resultado anterior.
SHA-256 produz 32 bytes, SHA-512 produz 64 e SHA-1 produz 20. Selecione o algoritmo indicado pela integração. SHA-1 fica disponível para compatibilidade com sistemas existentes.
Mensagem e chave aceitam UTF-8, Hex e Base64 padrão. Saída e referência podem usar Hex ou Base64, sem precisar combinar entre si. Maiúsculas e minúsculas equivalem em Hex, mas são distintas em Base64.
Web Crypto calcula e verifica o HMAC. Uma correspondência confirma os bytes e a chave fornecidos; ela não verifica horário, expiração ou repetição de uma requisição capturada anteriormente.
Informe a mensagem e a chave, mantenha SHA-256 e escolha a codificação de cada entrada. Gere o resultado em Hex ou Base64. O Gerador HMAC inclui um exemplo RFC com valor esperado para você conferir o fluxo antes de usar seus próprios dados.
Use o algoritmo definido na documentação da API. SHA-256 é o padrão da página; SHA-512 e SHA-1 estão disponíveis quando a integração exige. Trocar o algoritmo também muda o tamanho da referência necessária.
Obtenha o corpo original e a assinatura recebida, extraia o resumo do cabeçalho e prepare a sequência assinada conforme o provedor. Verifique usando a mesma chave. O aplicativo ainda precisa validar horários, validade e repetição de requisições.
Confira se a chave é texto literal, bytes em Hex ou Base64. Depois confira a representação da assinatura recebida. A saída do cálculo pode ser Hex e a referência Base64, pois a comparação é entre os bytes decodificados.
Em erros de autenticação da Shopee ou de outra API, confira a montagem da sequência assinada: caminho, identificadores e timestamp podem fazer parte dela. Compare essa sequência, a chave e o algoritmo com a documentação. A página não monta nem envia a requisição da plataforma.
Ainda tem uma dúvida?
Use o Gerador HMAC com o exemplo RFC, verifique o resumo e altere um caractere da mensagem para observar a diferença.
Defina as codificações separadamente e gere um resumo ou verifique diretamente o valor esperado.