Initializing, please wait a moment

MD5 vs SHA-256 - quando usar cada funcao de hash


MD5 e SHA-256 produzem impressoes digitais de comprimento fixo de qualquer entrada, mas apenas SHA-256 e seguro contra entradas adversariais. A resistencia a colisoes do MD5 falhou em 2004. Para assinaturas digitais, use SHA-256. Para verificacoes de integridade nao adversariais, MD5 ainda funciona.


O que uma funcao de hash realmente faz

O que uma funcao de hash realmente faz no guia MD5 vs SHA-256: transforma qualquer entrada em uma impressao digital de tamanho fixo - mesmos bytes geram o mesmo digest, um bit muda a saida.

MD5 retorna 128 bits (32 caracteres hex). SHA-256 retorna 256 bits (64 caracteres hex). Ambos sao deterministicos. Ambos sao rapidos. Ambos nao revelam nada sobre a estrutura da entrada a partir da saida.


Comparacao lado a lado

Comparacao lado a lado em MD5 vs SHA-256: MD5 tem 128 bits e esta quebrado por colisao; SHA-256 tem 256 bits e ainda e o padrao para integridade e assinaturas em 2026.

See MD5 at a glance: 128-bit digest, designed 1991 by Ron Rivest, MD4 lineage, and known collision resistance breaks.
MD5 at a glance: four key properties before you decide whether to use it or SHA-256.
AtributoMD5SHA-256
Comprimento do digest128 bits (32 caracteres hex)256 bits (64 caracteres hex)
Projetado em1991 (Ron Rivest)2001 (NSA, FIPS 180-2)
Familialinhagem MD4familia SHA-2
Resistencia a colisoesQuebrada desde 2004 (Wang et al.); colisoes praticas em segundosSem colisao pratica conhecida; ~2128 operacoes para encontrar uma
Resistencia de segunda pre-imagemEnfraquecida mas sem ataque pratico para entrada pre-computadaForte; ~2256 operacoes
Velocidade (x86-64 moderno)~500 MB/s por nucleo~300 MB/s por nucleo (SHA-NI: ~1,5 GB/s)
Aceleracao de hardwareSem instrucao dedicadaIntel SHA-NI, extensoes crypto ARMv8
Seguro para uso criptograficoNao - nao usar para assinaturas, cert pinning, hash de senhaSim (fora de hash de senha - use Argon2id/bcrypt para senhas)

Por que MD5 esta quebrado e o que isso realmente significa

Por que MD5 esta quebrado e o que isso realmente significa: um atacante pode criar dois arquivos diferentes com o mesmo MD5, entao MD5 sozinho nao prova que um download esta intacto.

A resistencia de segunda pre-imagem do MD5 e mais fraca que a do SHA-256, mas nao tem ataque pratico conhecido contra entradas arbitrarias ja existentes. Essa e a janela estreita onde MD5 ainda e seguro: confirmar que um digest ja computado corresponde a um arquivo que voce baixou, quando nenhum adversario teve a chance de criar uma colisao contra esse arquivo especifico.


Quando MD5 ainda esta bem

Quando MD5 ainda esta bem no guia MD5 vs SHA-256: checksums rapidos sem seguranca, manifests legados ou detectar corrupcao acidental quando ninguem esta atacando.

Caches de de-duplicacao. Um proxy de cache indexa objetos por MD5 de seu conteudo para detectar repeticoes. Colisoes nesse contexto sao benignas - dois objetos diferentes com o mesmo MD5 significam uma falha de cache, sem consequencia de seguranca.

Fingerprint de linhas de banco de dados. "Este registro mudou desde a ultima sincronizacao?" - MD5 da linha, compare com digest armazenado. Mais rapido que SHA-256; o modelo de adversario esta ausente.

Enderecamento de conteudo Git. Git usa SHA-1 (em breve SHA-256), nao MD5 - mas a justificativa do design se aplica: para um armazenamento enderecado por conteudo onde voce confia no escritor, um hash de 128 bits e suficiente se a colisao nao for um vetor de ataque.


Quando SHA-256 e a escolha correta

Quando SHA-256 e a escolha correta: hashes de release, cadeias de certificados, objetos Git e qualquer caso em que um terceiro possa forjar um MD5 em colisao.

Cert pinning e impressoes digitais de chave publica. A impressao digital SHA-256 da chave publica de um certificado e o padrao para pinning.

Blockchain e armazenamento enderecavel por conteudo onde adversarios participam. Bitcoin usa SHA-256 duas vezes (SHA-256d) para cabecalhos de bloco e identificadores de transacao. Qualquer armazenamento onde usuarios contribuem conteudo e colisoes podem ser exploradas precisa de SHA-256.

HMAC para autenticacao de mensagens. HMAC-SHA-256 e a linha de base para assinatura de requisicao de API (AWS Signature v4, GitHub webhooks, Stripe). HMAC-MD5 ainda e usado em alguns protocolos legados mas e cada vez mais sinalizado por scanners de conformidade.


O que usar para senhas (spoiler: nenhum)

O que usar para senhas (spoiler: nenhum) e um hash lento como Argon2 ou bcrypt - nem MD5 nem SHA-256 nus da string da senha sao armazenamento aceitavel.


Realidade de desempenho em 2026

Realidade de desempenho em 2026 para MD5 vs SHA-256: ambos terminam arquivos grandes no navegador em segundos - escolha SHA-256 por confianca, nao porque MD5 seja bem mais rapido em uploads tipicos.

JavaScript no navegador com WebCrypto (crypto.subtle.digest('SHA-256', data)) atinge ~200 MB/s em um laptop moderno. Nosso conversor MD5 executa MD5 em velocidade similar via implementacao wasm.


MD5 ou SHA-256: a regra da fronteira de confianca

A escolha entre MD5 e SHA-256 depende de uma unica pergunta - se um adversario pode influenciar a entrada que voce esta fazendo hash. Se um uploader remoto, um atacante de rede, ou qualquer parte fora de sua fronteira de confianca pode moldar os bytes que chegam a funcao de hash, escolha SHA-256 (ou SHA-3, ou BLAKE3) para que um ataque de colisao nao possa forjar um digest correspondente. Se as entradas vem de seu proprio pipeline e voce esta fingerprintando-as para cache, de-duplicacao, ou deteccao de mudanca, MD5 esta bem e roda ligeiramente mais rapido em CPUs sem aceleracao SHA-NI. A decisao e binaria e vive na fronteira de confianca; uma vez que voce nomeou de qual lado dessa fronteira a entrada esta, o algoritmo a usar e determinado.


Ferramentas relacionadas


← Voltar para Developer Tools

Why trust these tools

  • Ten-plus years of web tooling. The freetoolonline editorial team has shipped browser-based utilities since 2015. The goal has never changed: get you to a working output fast, without an install.
  • No install, no sign-up. Open a tool and get a working output in seconds - nothing to download and no account to create. Tools that need heavy processing run it on our service, so even a low-powered machine gets the job done.
  • Analytics stops at the page view. We measure which pages get visited, not what you type or upload inside a tool. There is nothing to sign in to and no profile is attached to your input.
  • Open-source core components. The processing engines underneath (libheif, libde265, pdf-lib, terser, clean-css, ffmpeg.wasm, and others) are public and audit-able. We link to each one in its tool page's footer.
  • Free, with or without ads. All tools are fully functional without sign-up. The Disable Ads button in the header is always available if you need a distraction-free run.

Related tools:

  • MD5 converter - Free online MD5 hash generator and MD5-to-text reverse lookup.
  • Convert PDF to TEXT online - Extract text from PDF online for copying and editing.
  • Text To HTML Editor - Text to HTML editor online - write in a WYSIWYG view and watch the generated HTML update live, with
  • CSS Gradient Animator Generator - CSS gradient generator - build animated linear gradients with live preview; copy ready-to-paste CSS
  • CSS Minifier - Minify CSS online for faster page loads.
  • CSS UnMinifier - CSS unminifier online - beautify minified CSS with proper indentation, line breaks, and readable
  • JavaScript Minifier - JavaScript minifier online free - paste your JS, click Minify, and copy the compressed code.
  • JSON Parser By Tree View - Paste JSON to validate, format, and view it in a tree.
  • JavaScript UnMinifier - JavaScript unminifier online - reformat minified JS with indentation and line breaks for
  • Keyboard Test - Keyboard test online - press each key to highlight it, spot non-working keys, and verify Num Lock,
  • Text Diff - Text diff online - compare two text blocks and highlight added, removed, and changed characters,
  • Developer Tools - Developer tools to parse JSON, minify or unminify CSS/JS, compare text, and generate MD5 hashes.

Tags: #guide, #developer, #md5, #hash

Related guides:

Related news: