Gerador de Assinatura de API
Gere uma assinatura HMAC-SHA256 a partir de uma mensagem e de uma chave secreta — o padrão de assinatura de string canônica usado por esquemas de autenticação de requisições de API do tipo AWS e genéricos. Saída em hex ou Base64.
Entrada
Saída
HMAC-SHA256 da mensagem acima, autenticada com sua chave secreta.
Guias
O que esta ferramenta faz?
Ela calcula uma assinatura HMAC-SHA256 a partir de uma mensagem (uma "string para assinar") e de uma chave secreta, e exibe o resultado como hex ou Base64 — exatamente o bloco de construção por trás do AWS Signature V4, de muitos esquemas de verificação de webhook e da maioria dos sistemas caseiros de autenticação de "assine suas requisições de API".
O que é assinatura HMAC, e por que isso importa?
HMAC (Hash-based Message Authentication Code, Código de Autenticação de Mensagem Baseado em Hash) combina uma função de hash criptográfica — aqui, SHA-256 — com uma chave secreta, de modo que apenas alguém que conheça a chave possa produzir uma assinatura válida para uma determinada mensagem, e qualquer pessoa com a chave possa verificar uma. As APIs usam isso para provar duas coisas ao mesmo tempo: que uma requisição realmente veio de um detentor da chave secreta e que seu conteúdo não foi alterado em trânsito. Ao contrário do SHA-256 puro, apenas aplicar hash à mensagem permitiria que qualquer pessoa recalculasse o mesmo hash — é a chave secreta que a torna infalsificável.
O fluxo típico: construa uma string canônica com as partes da requisição que importam (método HTTP, caminho, cabeçalhos, timestamp, corpo — a receita exata varia conforme o provedor), assine essa string com HMAC usando seu segredo de API e envie a assinatura resultante junto com a requisição, geralmente em um cabeçalho. O servidor receptor reconstrói a mesma string canônica, assina-a com a chave que tem em arquivo e verifica se as duas assinaturas coincidem.
Como usar
- Cole a string exata que você precisa assinar em String para assinar — pode ser uma mensagem bruta ou uma string canônica de requisição construída segundo a especificação do seu provedor de API (método, caminho, cabeçalhos, timestamp, corpo, unidos na ordem exigida).
- Digite sua Chave secreta.
- Escolha Hex ou Base64 para a saída — verifique na documentação do seu provedor de API qual deles ele espera.
- Copie a Assinatura e envie-a junto com a sua requisição, normalmente em um cabeçalho
Authorizationou de assinatura personalizada.
A assinatura é atualizada automaticamente enquanto você digita.
Perguntas frequentes
Isso corresponde exatamente ao AWS Signature V4 ou ao esquema de um fornecedor específico? Esta ferramenta calcula o primitivo HMAC-SHA256 genérico sobre o qual esses esquemas são construídos, não uma implementação completa específica de fornecedor (o AWS SigV4, por exemplo, acrescenta várias rodadas de derivação de chave e um formato de requisição canônica muito particular sobre o HMAC-SHA256). Se o seu provedor fornecer uma string canônica para assinar, cole-a aqui e o HMAC resultante será correto; se ele exigir chaves derivadas/encadeadas (como a cadeia de chaves de assinatura do SigV4), você precisará executar essas etapas de derivação antes do HMAC final.
Por que apenas SHA-256? SHA-256 é a função de hash que quase todos os esquemas modernos de assinatura de API padronizam — é um padrão forte e bem testado, sem ataques práticos conhecidos. Esquemas mais antigos baseados em SHA-1 estão sendo descontinuados em toda a indústria, por isso esta ferramenta não os oferece.
Hex ou Base64 — qual devo usar? Qualquer um que a sua API esperar. Ambos codificam a assinatura idêntica de 32 bytes; o hex é duas vezes mais longo, porém mais fácil de conferir visualmente; o Base64 é mais compacto. Verifique a documentação do seu provedor.
Posso usar isso para verificar uma assinatura que recebi? Sim — assine a mesma mensagem com a mesma chave secreta e compare o resultado (caractere por caractere) com a assinatura que você recebeu. Uma divergência significa que a mensagem ou a chave não correspondem às que o remetente usou.
Privacidade
Quando usado no navegador, tudo — inclusive sua chave secreta — é calculado localmente em JavaScript e nunca é transmitido ou registrado. Se você chamar esta ferramenta pela API, sua mensagem e chave serão processadas apenas para aquela única requisição e não serão registradas ou armazenadas no servidor; ainda assim, trate qualquer segredo de API que você colar aqui (no navegador ou na API) como sensível e evite reutilizar chaves de produção em ambientes compartilhados ou registrados sempre que puder.
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/api-signature-generator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"message": "message",
"secretKey": "key",
"outputFormat": "hex"
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `api-signature-generator` tool (API Signature Generator) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.