Gerador de hash SHA-256 duplo (SHA-256d)
Calcule o SHA-256 duplo (SHA-256d), o hash do Bitcoin: SHA-256 do resumo SHA-256 binário. Entrada hex, opção de inverter os bytes, roda no navegador.
Executa totalmente no seu navegador. Seus dados nunca são enviados.
O que é SHA-256 duplo (SHA-256d)?
O SHA-256 duplo, também escrito SHA-256d, gera o hash da entrada com SHA-256 e depois aplica o SHA-256 de novo ao resumo binário de 32 bytes resultante. É o hash que o Bitcoin usa para cabeçalhos de bloco, IDs de transação, árvores de Merkle e checksums Base58Check. A ferramenta também pode mostrar o resultado com a ordem dos bytes invertida, do jeito que os exploradores de blocos exibem os hashes.
Como usar SHA-256 duplo (SHA-256d)
- Insira os dados em Texto para gerar o hash; para estruturas do Bitcoin, escolha Bytes em hexadecimal como codificação de entrada e cole o cabeçalho ou a transação serializada.
- Deixe a codificação em Texto (UTF-8) para gerar o hash de uma string comum.
- Marque Inverter a ordem dos bytes para obter o valor como exibido pelos exploradores de blocos e pelo Bitcoin Core (txid / hash do bloco).
- Escolha o Formato de saída e clique em Copiar.
Exemplo
Bitcoin genesis block header (Hex bytes): 0100000000000000000000000000000000000000000000000000000000000000000000003ba3edfd7a7b12b27ac72c3e67768f617fc81bc3888a51323a9fb8aa4b1e5e4a29ab5f49ffff001d1dac2b7c, Reverse byte order on
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
Este é o famoso hash do bloco gênese. Sem a inversão dos bytes, a saída é 6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000.
Quando usar SHA-256 duplo (SHA-256d)
Use-a para conferir manualmente o cabeçalho de um bloco ou o ID de uma transação do Bitcoin, para calcular checksums Base58Check (os primeiros 4 bytes do SHA-256d) ou para reproduzir valores SHA-256d de outros protocolos. Não a use para senhas, nem quando uma especificação pede SHA-256 simples — os resultados são diferentes. Gerar de novo o hash do texto hexadecimal de um resumo também não é SHA-256d.
Como funciona SHA-256 duplo (SHA-256d)
A ferramenta calcula SHA-256(SHA-256(dados)). O detalhe importante é que o segundo SHA-256 roda sobre os 32 bytes brutos do primeiro resumo, e não sobre sua string hexadecimal de 64 caracteres — muitas ferramentas online erram nisso. O Bitcoin trata o resultado de 32 bytes como um número little-endian, então o conhecido hash de bloco com zeros à esquerda é o resumo com os bytes invertidos; a opção Inverter a ordem dos bytes faz exatamente isso.
Casos de Uso Comuns
- Verificar o hash de um bloco do Bitcoin a partir do seu cabeçalho de 80 bytes
- Calcular o ID de uma transação (txid) a partir da transação serializada bruta
- Calcular o checksum de 4 bytes de um endereço Base58Check ou de uma chave WIF
- Fazer uma verificação cruzada de uma implementação de mineração ou de carteira durante o desenvolvimento
Nota de Segurança
O SHA-256d é tão resistente a colisões quanto o SHA-256. Ele não é um hash de senha — use Argon2, scrypt ou bcrypt para senhas. Todo o cálculo acontece localmente no seu navegador.
Perguntas Frequentes
Por que o Bitcoin gera o hash duas vezes?
Satoshi usou o SHA-256d, muito provavelmente como defesa contra ataques de extensão de comprimento em um único hash Merkle–Damgård. Isso não torna colisões mais difíceis de encontrar do que no próprio SHA-256, mas agora está fixado no protocolo.
Por que meu resultado não bate com o do explorador de blocos?
Três causas comuns: o cabeçalho foi inserido como texto em vez de Bytes em hexadecimal, o segundo hash foi calculado sobre a string hexadecimal em vez do resumo bruto, ou a ordem dos bytes não foi invertida. Marque Inverter a ordem dos bytes para obter hashes no estilo dos exploradores.
Qual é o SHA-256 duplo de "abc"?
Com entrada UTF-8 e ordem de bytes normal, é 4f8b42c22dd3729b519ba6f68d2da7cc5b2d606d05daed5ad5128cc03e6c6358.