Skip to content

Gerador de Hash SHA-3 (Keccak SHA3-256)

Gere hashes SHA-3 online gratuitamente. Construção sponge NIST FIPS 202 — o padrão pós-SHA-2. Saída SHA3-256 em 64 hex. Somente no navegador via js-sha3 carregado sob demanda; zero uploads.

Sem rastreamento Roda no navegador Grátis
O hashing SHA-3 é executado no seu navegador via biblioteca js-sha3. Nenhum dado é transmitido a qualquer servidor.
Algoritmo
Revisado para correção de SHA3-256 contra vetores de teste NIST FIPS 202 CAVP; distinção de preenchimento Keccak vs. SHA-3 verificada — Go Tools Engineering Team · May 28, 2026

O que é SHA-3?

SHA-3 (Secure Hash Algorithm 3) é a terceira geração do Padrão de Hash Seguro do NIST, padronizado no FIPS 202 em agosto de 2015. Ao contrário de SHA-1 e SHA-2, que são baseados na construção Merkle-Damgård, SHA-3 usa um design radicalmente diferente chamado construção sponge — uma escolha que o NIST fez deliberadamente para garantir que uma quebra criptanalítica no SHA-2 não comprometesse automaticamente o SHA-3.

A competição SHA-3 do NIST (2007–2012): O NIST solicitou submissões públicas em todo o mundo em 2007. Após três rodadas de avaliação, 64 candidatos foram reduzidos a cinco finalistas: BLAKE, Grøstl, JH, Keccak e Skein. Em outubro de 2012, Keccak — projetado por Guido Bertoni, Joan Daemen, Michaël Peeters e Gilles Van Assche da STMicroelectronics e NXP Semiconductors — foi selecionado como vencedor. Todos os cinco finalistas foram considerados seguros; o design único baseado em sponge do Keccak lhe deu a diversidade estrutural que o NIST priorizou.

A construção sponge: SHA-3 absorve a entrada em um estado de 1600 bits (a permutação Keccak-f[1600]) na fase de absorção, depois extrai bits de saída do estado na fase de extração. Para SHA3-256, a divisão taxa/capacidade é 1088/512 bits. Como apenas 256 dos 1600 bits de estado interno aparecem na saída, um atacante não pode reconstruir o estado completo a partir do hash — tornando ataques de extensão de comprimento estruturalmente impossíveis. Isso contrasta com SHA-256, onde o estado interno completo é exposto na saída, exigindo HMAC para prevenir extensão de comprimento.

SHA-3 vs. Keccak — a diferença de preenchimento: O NIST modificou a submissão original do Keccak alterando o preenchimento de separação de domínio de 0x01 para 0x06. Isso significa que NIST SHA3-256 e Keccak-256 original produzem saídas hex de 64 caracteres diferentes para cada entrada. Esta não é uma preocupação teórica — é por isso que o keccak256 do Ethereum (congelado antes da finalização do FIPS 202) difere da saída SHA3-256 desta ferramenta para a mesma string. Nunca use esta ferramenta para replicar derivação de endereço Ethereum.

FIPS 202 define quatro variantes SHA-3: SHA3-224 (56 hex), SHA3-256 (64 hex), SHA3-384 (96 hex), SHA3-512 (128 hex). Esta ferramenta implementa SHA3-256, a variante mais comum e a mais diretamente comparável ao SHA-256.

Nota sobre a biblioteca: SHA-3 ainda não está na especificação da Web Crypto API do navegador (crypto.subtle suporta apenas SHA-1, SHA-256, SHA-384, SHA-512). Esta ferramenta carrega sob demanda a biblioteca JavaScript js-sha3 (~10 KB comprimido) no primeiro uso. Após esse único download, todo o processamento é executado localmente no seu navegador — nenhum dado de entrada é transmitido.

Quando usar SHA-3: novos protocolos que requerem diversidade estrutural em relação ao SHA-2; MACs com chave sem o wrapper HMAC (KMAC128/256 por NIST SP 800-185); cobertura pós-quântica como backup de SHA-2; conformidade com sistemas que exigem FIPS 202. Quando usar SHA-256: suporte universal de biblioteca, aceleração de hardware (extensões SHA-NI), compatibilidade com protocolo existente e a maioria dos casos de uso diários de integridade onde SHA-256 já é o padrão estabelecido.

// SHA-3 (NIST FIPS 202 SHA3-256) using js-sha3 library
import { sha3_256 } from 'js-sha3';

const hash = sha3_256('Hello, World!');
// → '882f4b6991a775295186a4e3cc5ece9fc0b618c8c3e7a7beafdd0f56f13ae43b'

// Note: this differs from Ethereum's keccak256 for the same input:
// keccak256('Hello, World!') = 'acaf3289d7b601cbd114fb36c4d29c85bbfd5e133f14cb355c3fd8d99367964f'
// The difference is the padding byte: 0x06 (SHA-3) vs 0x01 (original Keccak)

Exemplos de SHA-3

Verificar vetor de teste NIST FIPS 202

abc
3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532

SHA3-256("abc") = 3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532 — este é o vetor de teste oficial NIST FIPS 202. Cole "abc" na ferramenta e confirme esta saída exata para verificar que você está calculando NIST SHA-3 (não Keccak original). Este único teste distingue uma implementação SHA-3 compatível com FIPS de uma que usa o byte de preenchimento Keccak mais antigo.

Distinção Keccak vs SHA-3 — mesma entrada, saída diferente

Hello

SHA3-256("Hello") desta ferramenta (NIST FIPS 202) = 8ca66ee6b2fe4bb928a8e3cd2f508de4119c0895f22df86f0ab7e30e487e4500. O keccak256("Hello") do Ethereum = 06b3dfaec148fb1bb2b066f10ec285e7c9bf402ab32aa78a5d38e34566810cd2. Mesma entrada, saídas hex de 64 caracteres diferentes. A diferença é o sufixo de preenchimento: NIST SHA-3 usa 0x06 enquanto Keccak original (o que o Ethereum congelou em 2013) usa 0x01. O Ethereum é anterior à padronização do NIST em 2015 e se separou permanentemente da variante FIPS 202.

Hash de arquivo pós-quântico

NIST SP 800-57 Part 1 Rev 5 — Recommendation for Key Management

SHA3-256 fornece resistência a pré-imagem de 128 bits contra o algoritmo de Grover em um computador quântico — o mesmo nível de segurança efetivo que SHA-256 contra ataque quântico. Para dados que devem permanecer à prova de adulteração além de 2050, usar SHA-3 ao lado de SHA-256 fornece defesa em profundidade: se uma quebra for encontrada na construção de um algoritmo (Merkle-Damgård para SHA-2; sponge Keccak para SHA-3), o outro permanece seguro. Veja também Gerador SHA-256 para o lado SHA-2 deste hedge.

Autenticação com chave HMAC-SHA3-256

POST /api/ledger
{"amount":250000,"from":"acct-A","to":"acct-B"}

HMAC-SHA3-256 é uma alternativa moderna ao HMAC-SHA-256 para autenticação de mensagem com chave. Como a construção sponge do SHA-3 é nativamente resistente a ataques de extensão de comprimento (a fase de extração descarta o estado interno), um MAC com chave SHA3-256 simples (KMAC, definido em NIST SP 800-185) também é seguro — ao contrário do SHA-256 bruto, que requer o wrapper HMAC para se defender contra extensão de comprimento. Para novas APIs de alta confiabilidade e sistemas financeiros, HMAC-SHA3-256 (ou KMAC128) fornece garantias arquiteturais mais fortes que HMAC-SHA-256.

Como Gerar Hashes SHA-3

  1. 1

    Cole texto no campo de entrada

    Selecione a aba Texto e digite ou cole qualquer string. O hash SHA3-256 é atualizado ao vivo conforme você digita. No primeiro uso, a biblioteca js-sha3 (~10 KB) é buscada e armazenada em cache — você pode notar um breve atraso no primeiro hash; todos os hashes subsequentes são instantâneos. O algoritmo já está definido para SHA-3 (NIST FIPS 202 SHA3-256).

  2. 2

    Copie a saída hex de 64 caracteres

    Clique no botão Copiar ao lado do resultado do hash. A string hex minúscula de 64 caracteres é copiada para a sua área de transferência. Use o botão Maiúsculas se o seu sistema de destino exigir maiúsculas. Esta saída corresponde ao que qualquer implementação SHA3-256 compatível com FIPS 202 produz — mas note que difere do keccak256 do Ethereum para a mesma entrada.

  3. 3

    Verifique com a aba Comparar

    Mude para a aba Comparar e cole dois hashes SHA3-256 lado a lado. A ferramenta usa comparação em tempo constante para relatar correspondência ou não correspondência sem vazar informações de temporização. Útil para verificar vetores de teste NIST CAVP, verificar manifestos de arquivos ou confirmar que duas implementações SHA3-256 produzem saída idêntica.

Detalhes Técnicos

Algoritmo: construção sponge Keccak-f[1600]
SHA3-256 aplica a permutação Keccak-f[1600] (24 rodadas de operações theta, rho, pi, chi, iota em um array de estado 5×5×64) em uma construção sponge com taxa=1088 bits e capacidade=512 bits. A entrada é absorvida em blocos de 136 bytes (1088 bits); 256 bits de saída são extraídos. O separador de domínio FIPS 202 acrescenta 0x06 antes do preenchimento. Implementação: NIST FIPS 202 (2015) seção 6.
Saída: SHA3-256 por padrão, 64 hex (FIPS 202 também define 224/384/512)
Esta ferramenta gera SHA3-256: sempre exatamente 64 caracteres hexadecimais (256 bits = 32 bytes). O NIST FIPS 202 também padroniza SHA3-224 (56 chars), SHA3-384 (96 chars) e SHA3-512 (128 chars) — todos usando a mesma permutação Keccak-f[1600] com diferentes divisões de taxa/capacidade. O comprimento de saída é fixo independentemente do tamanho da entrada.
Desempenho: js-sha3 carregado sob demanda (~10 KB); ~150–400 MB/s no navegador
Ao contrário das rotas SHA-2 (que usam a Web Crypto API nativa do navegador), SHA-3 não está na especificação Web Crypto. Esta ferramenta carrega a biblioteca js-sha3 (~10 KB comprimido) no primeiro uso, depois a armazena em cache. Taxa de transferência típica: 150–400 MB/s em JavaScript, versus 400–700 MB/s para SHA-256 via Web Crypto. Para hashing de texto (kilobytes) a diferença é imperceptível.
Padrões: NIST FIPS 202 (2015), NIST SP 800-185 (KMAC), NIST IR 8105
Padronizado em FIPS 202 (agosto de 2015). NIST SP 800-185 (2016) define KMAC128 e KMAC256 — funções MAC com chave baseadas em SHA-3 que são nativamente imunes à extensão de comprimento sem o wrapper HMAC. NIST IR 8105 recomenda variantes SHA-3 para margem de segurança pós-quântica. Atualmente aprovado para todos os níveis de força de segurança até 2030 e além.

Boas Práticas

Não confunda SHA3-256 com keccak256 do Ethereum
Eles são algoritmos diferentes com saídas diferentes para cada entrada. Esta ferramenta calcula NIST FIPS 202 SHA3-256 (byte de preenchimento 0x06). O keccak256 do Ethereum usa o preenchimento Keccak original (0x01). Se você está calculando hashes de endereço Ethereum, slots de armazenamento EVM ou resultados de keccak256() do Solidity, você precisa de uma ferramenta específica para keccak256 — esta ferramenta dará respostas erradas para esses casos de uso.
Use SHA-3 como complemento ao SHA-256, não como substituto
SHA-3 e SHA-2 usam designs estruturalmente diferentes (sponge vs. Merkle-Damgård). Um manifesto de hash duplo (SHA-256 + SHA3-256) fornece defesa em profundidade: se uma quebra criptanalítica for algum dia encontrada na construção de uma família, a outra permanece segura. Para dados de arquivo de longo prazo e registros governamentais, o NIST recomenda considerar esta abordagem de algoritmo duplo. Para uso diário, SHA-256 sozinho permanece perfeitamente adequado.
Prefira KMAC ao HMAC-SHA3-256 para novos designs de MAC com chave
NIST SP 800-185 define KMAC128 e KMAC256 — MACs com chave de propósito específico baseados em SHA-3. Como a construção sponge é nativamente imune à extensão de comprimento, KMAC não precisa do wrapper de hash duplo que o HMAC requer para segurança. Para novos protocolos que têm flexibilidade na escolha do algoritmo MAC, KMAC128 (segurança de 128 bits) ou KMAC256 (segurança de 256 bits) são mais limpos e ligeiramente mais eficientes que HMAC-SHA3-256.
Use comparação em tempo constante ao verificar hashes SHA-3 no código
Ao comparar dois hashes SHA3-256 no código, sempre use uma função de igualdade em tempo constante: Node.js crypto.timingSafeEqual(), Python hmac.compare_digest(), Go subtle.ConstantTimeCompare(). Igualdade de string ingênua (=== ou ==) vaza informações de temporização que podem permitir que um atacante reconstrua o hash esperado byte a byte. Isso se aplica igualmente ao SHA-3 e a todas as outras funções de hash. A aba Comparar desta ferramenta já usa comparação em tempo constante.

Perguntas Frequentes sobre SHA-3

SHA-3 é o mesmo que Keccak?
Próximo, mas não idêntico. SHA-3 é baseado no algoritmo Keccak, que venceu a competição SHA-3 do NIST de 2007-2012, mas o NIST alterou a regra de preenchimento durante a padronização. Keccak original acrescenta um byte de sufixo 0x01 antes do preenchimento; NIST SHA-3 (FIPS 202, 2015) acrescenta 0x06. Esta diferença de um único byte significa que SHA3-256 e Keccak-256 produzem saídas de 64 caracteres diferentes para cada entrada. Os algoritmos são estruturalmente idênticos em tudo mais — mesma permutação Keccak-f[1600], mesma construção sponge. Quando alguém diz "Keccak" no contexto do Ethereum/blockchain, quase sempre se referem à variante pré-FIPS original, não ao NIST SHA-3.
Por que o Ethereum usa keccak256, não SHA-3?
O Ethereum foi projetado em 2013–2014 e lançado em 2015 — antes do NIST finalizar SHA-3 em agosto de 2015. Quando o protocolo do Ethereum foi congelado, a implementação de referência original da equipe Keccak era o padrão. O NIST então mudou o preenchimento durante a padronização, mas o Ethereum não poderia retroativamente adotar a variante FIPS 202 sem quebrar o consenso (todos os nós devem calcular hashes idênticos). O resultado é uma bifurcação permanente: o keccak256 do Ethereum usa o preenchimento Keccak original (0x01), enquanto o SHA3-256 desta ferramenta usa o preenchimento NIST FIPS 202 (0x06). Mesmo algoritmo estrutural, saídas diferentes. Nunca use esta ferramenta para replicar derivação de endereço Ethereum ou keccak256 do EVM — você obterá resultados errados.
O que é a construção sponge?
A construção sponge é a alternativa do SHA-3 ao encadeamento Merkle-Damgård do SHA-2. Em vez de comprimir a entrada bloco a bloco em um estado de hash em execução (Merkle-Damgård), o sponge tem duas fases: absorção (a entrada é XOR aplicada em uma parte do estado e misturada com a permutação Keccak-f[1600] repetidamente) e extração (bits de saída são lidos do estado). O benefício de segurança crítico: o estado interno é maior que a saída — SHA3-256 usa um estado de 1600 bits mas produz apenas 256 bits, deixando 1344 bits de estado oculto. Um atacante que vê apenas a saída de 256 bits não pode reconstruir o estado completo para estender a mensagem, tornando ataques de extensão de comprimento estruturalmente impossíveis sem um wrapper. Isso difere do SHA-256, que requer HMAC para prevenir extensão de comprimento.
Devo usar SHA-3 em vez de SHA-2?
Não por padrão — tanto SHA-256 quanto SHA3-256 são atualmente seguros e aprovados pelo NIST. SHA-3 é projetado como um backup estrutural para SHA-2: como usam designs completamente diferentes (Merkle-Damgård vs. sponge), uma quebra em um algoritmo não compromete o outro. Use SHA-3 quando: (1) seu protocolo explicitamente exige, (2) você precisa de imunidade à extensão de comprimento sem o wrapper HMAC, (3) está construindo um novo sistema que quer agilidade de algoritmo à prova de futuro, ou (4) sua organização exige um hash SHA-3 de backup ao lado de SHA-256. Para checksums de arquivo e impressões digitais de certificados do dia a dia, SHA-256 continua sendo o padrão universal.
SHA-3 é mais rápido que SHA-256?
Em software, geralmente mais lento. SHA3-256 tipicamente alcança 150–400 MB/s em JavaScript no navegador, comparado com 400–700 MB/s para SHA-256 via Web Crypto API (que usa a implementação SHA-2 nativa do navegador no nível C). Em hardware dedicado e ASICs (por exemplo, chips de segurança personalizados), a permutação Keccak-f[1600] do SHA-3 é frequentemente mais rápida porque paraleliza melhor e usa apenas operações bitwise simples (XOR, AND, rotação) — sem adição modular. Para ferramentas baseadas em navegador, essa diferença de desempenho é imperceptível.
Qual é o tamanho de um hash SHA-3 desta ferramenta?
Esta ferramenta usa SHA3-256 por padrão, que sempre produz exatamente 64 caracteres hexadecimais (256 bits = 32 bytes, 2 hex por byte). O NIST FIPS 202 também define SHA3-224 (56 hex), SHA3-384 (96 hex) e SHA3-512 (128 hex). Todos compartilham a mesma permutação Keccak-f[1600]; apenas a divisão capacidade/taxa e o comprimento de saída diferem. Para comparação: SHA-256 também produz 64 hex, mas são strings de 64 caracteres diferentes para a mesma entrada.
SHA-3 é resistente a computadores quânticos?
Parcialmente. O algoritmo de Grover em um computador quântico pode elevar ao quadrado o espaço de busca de qualquer função de hash, efetivamente reduzindo à metade o nível de segurança. SHA3-256 tem 256 bits de resistência a pré-imagem, que é reduzida para 128 bits sob ataque quântico — ainda seguro sob qualquer modelo de ameaça a curto prazo. A vantagem importante sobre SHA-2: a construção sponge do SHA-3 não é relacionada ao Merkle-Damgård, então não é afetada por nenhuma técnica de criptoanálise específica à função de compressão do SHA-2. As orientações pós-quânticas do NIST recomendam SHA-3 como o hash preferido para novos protocolos que desejam diversidade de design ao lado de SHA-2.
Meus dados são enviados a um servidor ao usar esta ferramenta?
Não. Após o carregamento inicial da biblioteca (o script js-sha3 é buscado uma vez do CDN, ~10 KB), todo o hashing é executado inteiramente no seu navegador em JavaScript. Abra DevTools → aba Rede enquanto faz hash de texto — você verá zero requisições de saída carregando seus dados de entrada. Ao contrário das ferramentas SHA-2 neste site (que usam a Web Crypto API embutida no navegador), SHA-3 ainda não está na especificação Web Crypto, então uma biblioteca JavaScript é necessária. O download da biblioteca é a única requisição de rede; seu texto nunca sai da página.
O que foi a competição SHA-3 do NIST?
O NIST realizou uma competição aberta de 2007 a 2012 para selecionar um terceiro padrão de Algoritmo de Hash Seguro — não para substituir SHA-2 (que permanece seguro), mas para diversificar o cenário de algoritmos de hash caso SHA-2 fosse algum dia quebrado. 64 submissões iniciais foram reduzidas a 5 finalistas: BLAKE, Grøstl, JH, Keccak e Skein. Keccak, projetado por Guido Bertoni, Joan Daemen, Michaël Peeters e Gilles Van Assche (da STMicroelectronics e NXP Semiconductors), foi selecionado como vencedor em outubro de 2012 e padronizado como SHA-3 no NIST FIPS 202 em agosto de 2015.
SHA-3 é vulnerável a ataques de extensão de comprimento?
Não — por design. Ataques de extensão de comprimento exploram o fato de que construções Merkle-Damgård (SHA-256, SHA-512, MD5) expõem o estado interno na saída do hash, permitindo que um atacante acrescente dados a uma mensagem hasheada sem conhecer o prefixo secreto. A construção sponge do SHA-3 evita isso completamente: o estado interno de 1600 bits é maior que a saída de 256 bits, então a saída não revela estado suficiente para estender a mensagem. Isso significa que você pode usar SHA3-256 simples como um primitivo MAC com chave (KMAC) com segurança, enquanto usar SHA-256 bruto como MAC com chave (HASH(chave || mensagem)) é inseguro sem o wrapper HMAC.

Ferramentas relacionadas

Ver todas as ferramentas →

Decodificador JWT

Ferramentas de Segurança

Decodifique tokens JWT online com nosso decodificador JWT grátis. Inspecione cabeçalho, carga útil, assinatura, expiração e reivindicações. 100% navegador — seu token nunca sai do dispositivo. Sem cadastro, sem rastreio.

Gerador de Hash MD5 e Ferramenta de Checksum

Ferramentas de Segurança

Gere hashes MD5, SHA-256, SHA-1 e SHA-512 online gratuitamente. Faça hash de texto ou arquivos no navegador, verifique checksums e copie resultados. Sem cadastro necessário.

Gerador de Senhas Aleatórias — Forte e Seguro

Ferramentas de Segurança

Gere senhas aleatórias fortes instantaneamente — grátis, sem cadastro, 100% no navegador. Personalize comprimento e tipos de caracteres, gere em lote até 50. Medidor de força com análise de entropia.

Gerador de Hash SHA-1 (160 bits — Legado)

Ferramentas de Segurança

Gere hashes SHA-1 no navegador — saída hex de 40 caracteres, sem upload. Ferramenta legada para impressões digitais do Git, verificação de certificados antigos e auditorias de migração. Dados nunca saem do dispositivo.

Gerador de Hash SHA-256 e Ferramenta de Checksum

Ferramentas de Segurança

Gere hashes SHA-256 online gratuitamente. Faça hash de texto ou arquivos no navegador, verifique checksums e copie saída hex de 64 caracteres. Sem cadastro; dados nunca saem da página.

Gerador de Hash SHA-384 (Hash Suite B para TLS)

Ferramentas de Segurança

Gere hashes SHA-384 online — saída hex de 96 caracteres, imune a extensão de comprimento, compatível com NSA Suite B. Combinado com AES-256-GCM em TLS. Todo o hashing é executado no navegador via Web Crypto API.