Initializing, please wait a moment

Alternativas ao MD5: bcrypt vs Argon2id vs SHA-256 - Quando Cada Um Cabe

Última revisão 2026-05-02. Se você chegou aqui tentando recuperar uma senha em texto puro a partir de um hash MD5, leia Why MD5 Cannot Be Decrypted primeiro - a resposta curta é que não existe chave, e buscas em rainbow tables só funcionam para entradas muito comuns. Esta página cobre o que usar em vez, por caso de uso.

Resposta em 30 segundos. A alternativa correta ao MD5 depende do trabalho. Armazenar senhas? Use Argon2id (recomendação atual da OWASP) ou bcrypt (amplo suporte de bibliotecas). Proteger integridade contra um adversário? Use SHA-256 com HMAC. Derivar uma chave a partir de uma senha? Use PBKDF2 (ambientes que exigem FIPS) ou Argon2id em outros lugares. Chaves de cache, ETags, deduplicação em dados não adversários? MD5 ainda está bem - passe pelo conversor MD5.

A decisão em uma tabela

A decisão em uma tabela é Argon2id ou bcrypt para senhas, SHA-256 para integridade e PBKDF2 quando FIPS obriga - em MD5 Alternatives escolha a linha que casa com a tarefa.

Compare quatro casos de uso ao algoritmo hash certo using the four points in this diagram.
Escolher o hash pelo trabalho at a glance.
Caso de usoEscolhaPor queNão escolha MD5 porque
Armazenar senhas de usuário (web, mobile, API)Argon2id (preferido), bcrypt (alternativa)Memória-rígido + custo ajustável; resiste a força bruta em GPUMD5 é rápido demais - GPUs computam bilhões de hashes/seg, senhas comuns caem em milissegundos
Banco de senhas MD5 existente (legado)Migre para Argon2id no próximo loginEnvolva MD5(senha) dentro de Argon2id durante o reset progressivoHashes MD5 puros vazam rápido; assuma comprometimento na divulgação
Integridade de arquivo contra entrada adversáriaSHA-256Ataques de colisão práticos contra MD5 desde 2004; SHA-256 ainda seguroUm atacante pode criar dois arquivos diferentes que compartilham um MD5
Integridade de arquivo contra corrupção acidental apenasMD5 ou SHA-256 (qualquer um serve)Dados naturais não colidem com MD5 na prática(MD5 é aceitável aqui; escolha pela conveniência da ferramenta)
Autenticação de mensagem (HMAC)HMAC-SHA-256HMAC anexa uma chave ao hash; HMAC-MD5 está quebrado na práticaHMAC-MD5 é descontinuado pelo NIST e pela IETF
Derivação de chave a partir de uma senhaArgon2id (preferido), PBKDF2 (FIPS)Projetado para derivação senha-para-chave com fator de custoMD5 não tem fator de custo; produz o mesmo digest em nanossegundos
Chaves de cache, ETags, chaves de dedupMD5 (está bem)Impressão digital de comprimento fixo de entrada arbitrária; colisões não importam para dados não adversários(este é o caso onde MD5 ainda merece seu lugar)
Armazenamento endereçável por conteúdo (CAS) sob influência de atacanteSHA-256Ataques de colisão permitiriam que um atacante substitua conteúdo com o mesmo endereçoMD5 não pode garantir unicidade contra entradas criadas

Argon2id vs bcrypt para senhas

Argon2id é o hash de senha recomendado pela OWASP desde 2022. É memória-rígido, o que significa que um atacante com GPU tem que alocar centenas de megabytes por palpite paralelo. O ponto de partida recomendado é Argon2id, m=64MB, t=3, p=4. O fator de custo escala com o hardware: reavalie a cada dois anos e aumente os parâmetros.

bcrypt é o vice-campeão bem suportado. É mais antigo (1999), usa um fator de custo ajustável expresso como o log2 de iterações (custo 12 na hora desta redação). Não é memória-rígido, o que é sua principal fraqueza vs Argon2id, mas seu suporte de bibliotecas em todo framework web é mais amplo. Escolha bcrypt apenas se sua plataforma ainda não tem um binding Argon2id mantido.

Uma terceira opção resistente a memória é o scrypt (RFC 7914). Precede o Argon2id e usa uma abordagem semelhante de custo de memória e CPU. Prefira Argon2id quando sua plataforma o suportar; use scrypt como substituto se os bindings de Argon2id não estiverem disponíveis e você precisar de resistência a memória sem a limitação apenas-CPU do bcrypt.

Qualquer um de Argon2id ou bcrypt está correto em 2026. Não armazene senhas como MD5 + salt - esse esquema cai em uma única GPU em dias mesmo com um salt longo aleatório, porque MD5 é o gargalo, não o salting.

SHA-256 vs MD5 para integridade

Se a entrada pode ser criada por um atacante, use SHA-256. O ataque Wang de 2004 e a colisão Stevens / Lenstra de 2008 em um certificado X.509 mostraram que duas entradas diferentes podem ser feitas para compartilhar um único MD5. Para uma assinatura digital, assinatura de código, ou qualquer coisa onde um atacante pode substituir o conteúdo deles pelo seu, MD5 está quebrado; SHA-256 é a primitiva correta.

Se a entrada é apenas um download que você controla ou um artefato de build que você produziu, MD5 ainda está bem para verificação de integridade. Ele pega as inversões aleatórias de bit que você realmente vê na prática (raios cósmicos, cabos ruins, discos ruins). O conjunto completo de trade-offs MD5 vs SHA-256 está em MD5 vs SHA-256 - quando hashear com cada um.

PBKDF2 - o caminho FIPS

PBKDF2 é a função de derivação de chave baseada em senha que o NIST abençoou em 2000. É baseada em iterações: você escolhe uma contagem, roda um hash subjacente esse número de vezes, e o fator de trabalho segue. Não é memória-rígido, então é mais fraco que Argon2id contra GPUs modernas, mas é a escolha certa quando seu ambiente requer um algoritmo FIPS 140-2 / 140-3. A contagem de iterações a usar em 2026 com HMAC-SHA-256 por baixo é 600.000 ou mais por orientação da OWASP; com HMAC-SHA-512 é 210.000 ou mais. Números mais baixos ainda são comuns em código legado; aumente-os no próximo deploy.

"Onde MD5 ainda pertence" - a lista de trabalho

Compare quatro cenários onde MD5 ainda serve using the four points in this diagram.
MD5 para cache, ETag, integridade, dedup at a glance.
  • Chaves de cache. Hashear uma URL longa ou string de query em uma chave de comprimento fixo para memcached, Redis ou um nome de arquivo. Colisões não importam; velocidade importa.
  • Impressões digitais de conteúdo no estilo ETag. Emita MD5 de um corpo de resposta como o cabeçalho ETag para que os clientes possam revalidar sem baixar novamente.
  • Verificação de integridade de arquivo em um download que você produziu. Publique MD5 ao lado do arquivo; usuários comparam localmente. Muitos espelhos Linux ainda publicam tanto MD5 quanto SHA-256 para compatibilidade.
  • Deduplicação de uploads recebidos. Pegue uma impressão digital do fluxo de bytes com MD5 para curto-circuitar o armazenamento de uma duplicata exata antes de persisti-la.
  • Fixtures de teste e IDs de snapshot. Hash um blob JSON canônico para produzir IDs determinísticos para fixtures de teste unitário.

Para todos esses, o conversor MD5 é a superfície certa - cole texto, obtenha o hash, copie o resultado.

Lista de verificação da migração - movendo um app existente para fora do MD5

Compare quatro passos de migração fora do MD5 using the four points in this diagram.
Auditar, Argon2id, HMAC-SHA-256, SHA-256 at a glance.
  1. Audite onde MD5 é usado. Grep a base de código por md5, MessageDigest.getInstance("MD5"), hashlib.md5, crypto.createHash('md5'). Marque cada uso como um de: senhas, MAC, integridade, cache.
  2. Senhas - migração progressiva. Adicione um verificador Argon2id ao lado do verificador MD5. No próximo login bem-sucedido, recompute a senha sob Argon2id, armazene o novo verificador, descarte a linha MD5. Rotacione cada conta em 90 dias; force-reset o que sobrar.
  3. MAC - substitua por HMAC-SHA-256. Implantações HMAC-MD5 da época de 2010 em APIs devem rotacionar chaves e re-emitir clientes com HMAC-SHA-256.
  4. Integridade adversária - substitua por SHA-256. Qualquer coisa assinando conteúdo enviado por usuário, distribuição de pacotes, ou código de terceiro vai para SHA-256 imediatamente.
  5. Integridade não adversária, cache, ETag, dedup - deixe em paz. Não agite código funcional por razões teóricas. MD5 está bem aqui.

Relacionado

Estes guias relacionados abordam as questões que os leitores trazem para a decisão de alternativas ao MD5 - a comparação completa MD5 vs SHA-256, por que o MD5 não pode ser revertido e a ferramenta para os casos em que o MD5 ainda serve.

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 - Text to MD5 + MD5 to text cached 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 - Quick keyboard check before a meeting or new purchase.
  • 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, #bcrypt, #argon2id, #sha256

Related guides: