NeonCripto
Por dentro da carteira · 4 de 11

Funções hash: a impressão digital dos dados

Uma função hash transforma qualquer entrada em uma saída de tamanho fixo. Mudar uma letra muda cerca de metade dos bits, e do hash não dá para voltar à entrada.

Hash não é criptografia: não existe chave nem “descriptografar”. Ele também não explica sozinho a relação entre chaves privadas e públicas, que vem de curvas elípticas.

Laboratório educativo. Todo o cálculo roda no seu navegador, nada é enviado nem salvo. Nunca digite aqui sua frase de recuperação, chave privada ou passphrase reais: os exemplos usam apenas vetores de teste públicos.

SHA-256 (32 bytes, sem chave)

A: 06 89 52 b3 6d 75 87 de 57 e5 4e 2e cf 23 97 84 2a 4f ec f5 d0 aa 9a a2 d2 87 a0 2e 66 ab 86 59

B: 8e c9 da d6 7d e9 73 43 f5 22 76 c1 58 e4 b6 56 70 c4 68 18 72 f7 83 2a 95 b4 22 1e 41 28 fe 92

115 de 256 bits diferentes (45%)

HMAC-SHA512 (64 bytes, chave “Bitcoin seed”)

A: ff 57 07 f7 05 a3 85 4f fe f2 21 c8 e6 4b 12 00 bd f5 70 58 34 db 54 e0 30 3e a7 5e 54 17 9e 00 01 8d 4b 17 b7 aa 4a 31 40 35 aa 98 10 c5 4f c1 ab 0d 23 3e f6 95 4d 34 cc 94 df 08 59 15 cf 4e

B: 31 65 01 f4 05 d5 7a c6 6c a6 4c 3c ec 0b df 22 0d a0 5c f5 3e fd ef f8 47 c9 51 74 36 a5 0d 29 5a 1b b9 b3 b9 33 01 76 65 ad dd 59 9c aa 83 f2 f1 29 9a a8 18 b1 d3 26 47 2f 4e 2d ed a5 3a 01

246 de 512 bits diferentes (48%)

Tamanho fixo

O SHA-256 sempre tem 32 bytes, tenha a entrada 1 letra ou 1 milhão. Cada par de dígitos hex é 1 byte.

Sem volta

Não existe algoritmo prático para recuperar a entrada a partir do hash. Só dá para testar candidatos.

Não é criptografia

Hash não tem chave nem “descriptografar”. E não explica como uma chave pública nasce da privada: isso é curva elíptica.

Teste o que aprendeu

1. Hash é o mesmo que criptografia?
2. Quantos bits do SHA-256 mudam, em média, ao trocar uma letra?
3. Um hash explica como a chave pública nasce da privada?
0 de 3 respondidas.

Experimente

  • Troque uma letra e conte os bits que mudaram.
  • Compare o SHA-256 (sem chave) com o HMAC-SHA512 (com chave).
  • Apague tudo: até a entrada vazia tem hash.
Detalhes técnicos
  • SHA-256 produz 32 bytes; HMAC-SHA512 produz 64 bytes. O tamanho não depende da entrada.
  • HMAC mistura uma chave à mensagem, e é a base do PBKDF2 (BIP-39) e da derivação BIP-32.
  • O efeito avalanche: uma boa função hash muda ~50% dos bits da saída ao mudar um bit da entrada.
Próxima lição →Curva elíptica

Termos desta lição

Contas feitas com bibliotecas auditadas (@scure/bip39, @scure/bip32, @noble/curves, @noble/hashes) e conferidas contra os vetores de teste oficiais dos BIP-32, BIP-39 e BIP-84. Conteúdo educativo, não é um gerador nem um serviço de recuperação de carteiras.