morekits.com
ConteúdoNEWImagensNEWTempoHOTFinançasHOTWeb e DevUtilitários
morekits.com

Ferramentas online gratuitas com privacidade em primeiro lugar para conteúdo, tempo, finanças e tarefas web. Rápidas, seguras e 100% no navegador.

Categorias

ConteúdoImagensTempoFinançasWeb e DevUtilitáriosReferências

Ferramentas Populares

Comparação de TextoCalculadora de Juros CompostosConversor de TempoRelógio MundialCalculadora de Pré-pagamentoNúmero (Valor) para Extenso ChinêsGerador de QR Code WiFiMarca d'água de imagemTaxa LPRCódigos de PaísCódigos de Moeda

Mais

TutoriaisTodas as ferramentasEtiquetasRegistro de Alterações

© 2026 morekits.com. All rights reserved.

SobreLegal e termosContato
  1. Tutoriais
  2. Como calcular assinaturas HMAC
Web e Dev

Como calcular assinaturas HMAC

Assine requisições de API com segredo compartilhado, depure payloads de webhook e verifique assinaturas ao estilo Stripe/GitHub/AWS com o algoritmo HMAC e formato de digest corretos.

Equipe MoreKits
2026-01-12
3 minutos de leitura
Como calcular assinaturas HMAC
Ferramentas relacionadas

Mais utilitários que combinam com este guia:

  • HMAC
  • Resumo (Hash)
  • Assinatura de Parâmetro
  • Codec
  • Escape de Texto
  • Análise de URL

Por que isso importa

Webhooks são como a nuvem fala de volta. Stripe avisa quando um pagamento cai; GitHub quando sai um release. Para provar autenticidade, o remetente envia uma assinatura HMAC sobre o corpo com um segredo compartilhado. Se seu verificador rejeita tudo, você não sabe se o segredo, o algoritmo ou um proxy alterando o corpo está errado. Uma ferramenta HMAC lado a lado com pré-visualização do input reduz o ciclo de depuração de horas para minutos.

Três cenários reais

Dev backend
Verificar assinatura de webhook Stripe localmente

Cole payload, segredo e timestamp; calcule HMAC-SHA-256; compare com o cabeçalho Stripe-Signature.

Handler de webhook entrega

Engenheiro de integrações
Assinar saída para API parceira

Monte a string canônica, assine HMAC com o segredo compartilhado, anexe como cabeçalho.

Chamada aceita

Auditor de segurança
Reproduzir assinatura esperada para amostra conhecida

Use inputs de exemplo do fornecedor; se não bater, a doc pode estar errada.

Docs confirmadas

Passo a passo

Abra o gerador HMAC.

  1. 1

    Cole a mensagem

    Os bytes exatos assinados — normalmente o corpo HTTP bruto. Atenção a diferenças de espaço em branco.

  2. 2

    Cole a chave secreta

    Strings são UTF-8 por padrão. Ative “segredo é hex” ou “segredo é Base64” se o fornecedor distribuir chaves binárias.

  3. 3

    Escolha o hash

    SHA-256 é o padrão moderno; SHA-1 ainda aparece em sistemas antigos; SHA-512 é raro mas suportado.

  4. 4

    Escolha o formato de saída

    Hex minúsculo é comum em cabeçalhos. Base64 é exigido em AWS Sig V4 e algumas APIs.

  5. 5

    Compare com a assinatura recebida

    Cole o valor do cabeçalho. A ferramenta destaca coincidências e divergências caractere a caractere.

Reproduzir assinatura ao estilo documentação Stripe

Entradas

Message:  t=1731234567.{"id":"evt_123","type":"payment_intent.succeeded"}
Secret:   whsec_abc123xyz
Algorithm: SHA-256

HMAC-SHA-256 hex

4ed7a40c1e1f9c0bba9d7c1f24eb44a3f0bd06d0c81bd5d4a7f6cf52a6f00f1e
Ferramenta HMAC com mensagem, segredo, seletor de algoritmo e verificador de saída
Recomputação da assinatura em tempo real conforme você ajusta entradas.

Dicas avançadas

  • Diff no corpo antes de assinar. Muitas falhas vêm de proxy adicionando newline final. A assinatura é sobre os bytes exatos — um \n a mais importa.
  • Use comparação em tempo constante no servidor. Isso é papel do seu código, não só da ferramenta no navegador.
  • Rotacione segredos sem downtime aceitando duas chaves válidas por um período. A ferramenta ajuda a conferir ambas antes de desativar a antiga.
  • Documente a string canônica. AWS Sig V4 concatena método, caminho, cabeçalhos e hash do corpo; reproduza manualmente uma vez para validar a fórmula.

Armadilhas comuns

Erro comum

Diferença de uma newline final

O corpo no seu IDE tem \n final; o enviado pela rede não. Remova espaços conforme o verificador — mas exatamente como ele faz.

Erro comum

Segredo interpretado com encoding errado

Alguns enviam chaves como Base64; o HMAC usa os bytes decodificados, não os caracteres ASCII. Ajuste o toggle do encoding à doc do fornecedor.

Erro comum

BOM UTF-8 escondido no payload

A sequência inicial EF BB BF muda o hash. Use visualizador hex se assinaturas falharem “sem motivo”.

Quando esta não é a ferramenta certa

  • Assinaturas de chave pública (RSA, ECDSA, Ed25519) — outro fluxo. Veja Como verificar assinaturas digitais online.
  • Criptografia simétrica — HMAC autentica, não cifra. Para confidencialidade + autenticidade, AES-GCM.
  • Hash de senha — nunca use HMAC para armazenar senhas. Use KDF lenta.

FAQ

E se minha chave for menor que o bloco?

O HMAC trata internamente. Não precisa pad manual.

Assino antes ou depois de formatar JSON?

Sempre depois da forma canônica estar fixa. Reformatar depois quebra a assinatura.

Algo vai para um servidor?

Não. O HMAC é calculado no navegador via WebCrypto.

Próximos passos

  1. Faça hash do corpo separadamente com o gerador de hash quando o protocolo pedir body_hash antes do HMAC.
  2. Monte assinatura completa da requisição com a ferramenta Assinatura de parâmetros.
  3. Decodifique JWTs relacionados com Codificar/decodificar — JWTs HS usam HMAC.

Pronto para experimentar?

Vá direto para a ferramenta e veja-a em ação.