Calcula HMAC-SHA256, HMAC-SHA512, HMAC-SHA384 e HMAC-SHA1 simultaneamente a partir de uma única entrada de mensagem e chave, para que você possa comparar as saídas ou escolher a adequada ao seu caso de uso.
Os HMACs são atualizados instantaneamente enquanto você digita — sem precisar pressionar botão. Útil para depurar assinaturas de API e verificar webhooks quando você precisa testar rapidamente diferentes combinações de chave ou mensagem.
Alterne entre a saída em hexadecimal minúsculo e Base64 com um clique. A maioria das APIs (AWS, Stripe, GitHub) usa hexadecimal; algumas usam Base64. Ambos os formatos representam o mesmo valor HMAC subjacente.
Todo o cálculo de HMAC usa a API Web Crypto do navegador — sua mensagem e chave secreta nunca saem do seu dispositivo. Seguro para calcular assinaturas de API com chaves de produção reais.
O HMAC (Hash-based Message Authentication Code) é um mecanismo para verificar tanto a integridade quanto a autenticidade de uma mensagem. Ele combina uma função de hash criptográfica (como SHA-256) com uma chave secreta, produzindo uma assinatura de tamanho fixo. Apenas quem tem a mesma chave secreta pode reproduzir o mesmo HMAC.
O HMAC-SHA256 é usado para assinar requisições de API (por exemplo, AWS Signature v4, webhooks do Stripe, webhooks do GitHub), verificar assinaturas JWT (HS256), autenticar conexões WebSocket e proteger cookies. É a variante de HMAC mais implantada.
Não. Um hash simples (como SHA-256) pode ser calculado por qualquer pessoa e não prova autenticidade. O HMAC exige uma chave secreta, então apenas as partes que compartilham a chave podem calcular ou verificar o código. Isso torna o HMAC adequado para autenticação, enquanto hashes simples são usados para integridade e somas de verificação.
Concatene os componentes que deseja assinar (método, caminho, carimbo de data/hora, hash do corpo etc.) em uma cadeia canônica e depois calcule o HMAC-SHA256 dessa cadeia com sua chave secreta de API. Inclua o valor hexadecimal ou Base64 resultante no cabeçalho Authorization. A maioria da documentação de API especifica o formato exato da cadeia canônica.