Enviar um arquivo
  1. base64hub
  2. Chaves e hashes
  3. Hash SHA-256 em Base64

SHA-256 para Base64

Digite um texto ou arraste arquivos para obter o digest SHA-256 em Base64 (44 caracteres), Base64URL e hex de uma vez. O digest são os mesmos 32 bytes em todas as formas; escolha a que o seu sistema espera.

Grátis sem cadastro, sem limites Local nada é enviado Arquivos SHA-256 em streaming acima de 200 MB Atualizado 27 de out. de 2026

Processado no seu navegador. Esta página não consegue enviar seus dados para lugar nenhum – como sabemos

Como obter um hash SHA-256 em Base64

  1. SHA-256 já vem selecionado em Algoritmo; os outros botões mudam para MD5, SHA-1, SHA-384 ou SHA-512.
  2. Com Entrada em Texto, digite ou cole em Texto. A entrada está em define como esse texto é lido: como texto UTF-8, ou como bytes em hex ou Base64, se você quiser gerar o hash de dados binários que já tem em forma codificada.
  3. Copie o resultado em Hex, Base64 ou Base64URL. Todos os algoritmos lista todos os digests da mesma entrada.
  4. Para gerar o hash de arquivos, mude Entrada para Arquivo e arraste um ou vários. Cada arquivo recebe o seu próprio resultado. Acima de 200 MB, SHA-256 e MD5 são calculados em blocos de 8 MB com indicador de progresso, então um arquivo grande nunca precisa caber inteiro na memória.

O hash é atualizado enquanto você digita. HMAC e SRI no topo mudam para hashes com chave e tags de Subresource Integrity.

Exemplos de hashes

EntradaSHA-256 (hex)SHA-256 (Base64)
string vaziae3b0c442…7852b85547DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=
hello2cf24dba…938b9824LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLmCQ=
hello + quebra de linha5891b5b5…46f6be03WJG1tSLV3whtD/CxEPvZ0hu0/HFjrzTQgoai6Eb2vgM=
The quick brown fox jumps over the lazy dogd7a8fbb3…37c9e59216j7swfXgJRpypq8sAguT41WUeRtPNt2LQLQvzfJ5ZI=

A segunda e a terceira linhas mostram a armadilha por trás da maioria das divergências: uma quebra de linha invisível gera um hash completamente diferente. Texto colado em uma caixa de texto do navegador também tem as quebras de linha convertidas para LF, então, para arquivos com quebras CRLF, arraste o próprio arquivo em vez de colar o conteúdo.

Onde o SHA-256 aparece em Base64

Hex é a forma tradicional de exibir um digest, mas muitos formatos usam Base64 porque é mais curto:

  • Hashes de Content Security Policy para scripts inline: script-src 'sha256-…'.
  • Subresource Integrity: integrity="sha256-…", embora ali o SHA-384 seja a escolha mais comum.
  • Content-Digest do HTTP (RFC 9530): Content-Digest: sha-256=:X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=: para o corpo {"hello": "world"}. Os dois-pontos marcam um valor binário em structured headers.
  • Checksums de armazenamento em nuvem, como o cabeçalho x-amz-checksum-sha256 do Amazon S3, que leva o digest em Base64.
  • Lock files e gerenciadores de pacotes: o campo integrity do package-lock.json (normalmente sha512-…) e hashes no estilo SRI no Nix.

Digests de imagens Docker e OCI (sha256:…) e o Git usam hex. Quando precisar comparar entre sistemas, converta com hex para Base64 ou Base64 para hex em vez de gerar o hash de novo.

SHA-256 em Base64 no código e na linha de comando

printf 'hello' | openssl dgst -sha256 -binary | base64
sha256sum file.bin | cut -d' ' -f1 | xxd -r -p | base64

Sem -binary, o OpenSSL imprime texto hex, e o Base64 desse texto são 88 caracteres sem sentido.

import base64, hashlib

digest = hashlib.sha256(b"hello").digest()
print(base64.b64encode(digest).decode())

No Node.js, crypto.createHash("sha256").update("hello").digest("base64") retorna o mesmo LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLmCQ=, e "base64url" entrega a forma URL-safe. Um hash simples não é uma assinatura: qualquer um pode recalculá-lo. Para provar que uma mensagem veio de alguém que tem uma chave, use um HMAC. Veja Base64 em Python e OpenSSL para mais.

Perguntas frequentes

Por que meu SHA-256 não bate com o da linha de comando?

Quase sempre é uma quebra de linha no final. echo hello gera seis bytes, hello mais \n, então o hash é diferente do hash de hello. Use printf 'hello' ou echo -n hello no shell, ou compare com um arquivo que você arrastar aqui.

Quantos caracteres tem um hash SHA-256 em Base64?

44 caracteres, terminando com um =, ou 43 em Base64URL sem preenchimento. Em hex são 64 caracteres. Se você obteve 88 caracteres, o texto hex foi codificado em Base64 no lugar do digest bruto.

Dá para converter uma string SHA-256 em hex para Base64?

Sim, os bytes do digest são os mesmos. Cole os 64 caracteres hex em hex para Base64, ou no shell rode xxd -r -p sobre o hex e passe o resultado para base64.

Dá para decodificar um SHA-256 de volta para o texto original?

Não. Um hash é uma impressão digital de mão única, então não há nada para decodificar. Decodificar o Base64 só devolve os 32 bytes do digest; veja Base64 não é criptografia para entender a diferença em relação à codificação.