CIRCUITO
CARIOCA TI · DOCUMENTAÇÃO
♙
Ferramenta para desenvolvimento

Gerador e Verificador de Hash

Gere e valide SHA-2, SHA-3, HMAC e digests legados para integridade e interoperabilidade.

SHA-256SHA-512SHA-3HMACMD5SHA-1

Ferramenta de Hash / HMAC

Gere um digest hexadecimal ou compare um digest existente usando o algoritmo selecionado.

Os bytes exatos importam: maiúsculas, espaços e quebras de linha alteram o digest.
Obrigatória somente quando HMAC estiver ativo. Evite usar segredos de produção em ferramentas web de terceiros.
HASH

Hash não é criptografia

Um hash criptográfico transforma uma entrada arbitrária em um digest de tamanho fixo. Ele é projetado como transformação de mão única: não existe uma chave de descriptografia capaz de recuperar a entrada original a partir do digest.

SHA-2 / SHA-3

Prefira algoritmos modernos para novos usos de integridade

SHA-256 e SHA-512 pertencem à família SHA-2, enquanto SHA3-256 e SHA3-512 pertencem à SHA-3. As duas famílias são escolhas modernas adequadas para hashing criptográfico quando o protocolo e a implementação ao redor também são apropriados.

HMAC

HMAC adiciona autenticação com um segredo compartilhado

HMAC combina uma função de hash criptográfico com uma chave secreta. Ele é usado quando apenas integridade não basta e o destinatário também precisa de evidência de que a mensagem foi produzida por alguém que conhece o segredo compartilhado.

LEGADO

MD5 e SHA-1 permanecem apenas para compatibilidade

MD5 e SHA-1 estão disponíveis aqui para reproduzir ou verificar valores encontrados em sistemas legados. Eles não devem ser escolhidos para novas aplicações que dependam de resistência a colisões.

SENHAS

Hashes puros não são funções para armazenamento de senhas

Senhas devem ser armazenadas com uma função específica de password hashing deliberadamente custosa, como Argon2id ou bcrypt por meio de password_hash() no PHP. SHA-256, SHA-512 e SHA-3 são hashes rápidos de uso geral e não substituem um esquema adequado de armazenamento de senhas.

ENTRADA EXATA

Um caractere invisível muda o resultado

O hashing opera sobre bytes. Um espaço no final, uma quebra de linha, codificação de caracteres diferente ou mudança entre maiúsculas e minúsculas produz outro digest. Ao comparar valores entre sistemas, confirme exatamente quais dados cada lado processa.

FAQ

Perguntas frequentes

Qual é a diferença entre hash e HMAC?+

O hash depende apenas da mensagem. O HMAC também depende de uma chave secreta compartilhada, oferecendo autenticação da mensagem além da verificação de integridade.

Devo escolher SHA-256 ou SHA-512?+

Ambos pertencem à família SHA-2 e continuam sendo funções hash modernas adequadas. A escolha normalmente depende do protocolo, interoperabilidade, desempenho e tamanho de digest necessário.

SHA-3 é melhor que SHA-2?+

SHA-3 é um projeto padronizado diferente, não uma substituição obrigatória do SHA-2. SHA-2 continua amplamente utilizado e aprovado para aplicações modernas.

Por que MD5 e SHA-1 ainda aparecem?+

Sistemas legados, checksums antigos e protocolos ainda podem apresentar esses digests. Eles são mantidos para compatibilidade e verificação, não como recomendação para novos usos resistentes a colisões.

Posso armazenar senha usando SHA-256?+

Não. Use uma função de password hashing como Argon2id ou bcrypt através de password_hash(). Hashes rápidos de uso geral não são adequados isoladamente para armazenamento de senhas.

Por que uma quebra de linha muda o hash?+

Porque hashes operam sobre a sequência exata de bytes. Uma quebra de linha é um dado adicional de entrada e, portanto, altera o digest.

Maiúsculas e minúsculas importam ao conferir um hash hexadecimal?+

Não. Texto hexadecimal em maiúsculas ou minúsculas pode representar os mesmos bytes. Esta ferramenta normaliza a caixa antes da comparação em tempo constante.

HMAC esconde a mensagem?+

Não. HMAC autentica a mensagem; ele não a criptografa. Confidencialidade exige um mecanismo de criptografia.