Initializing, please wait a moment

MD5 vs SHA-256 - cuando usar cada funcion de hash


MD5 y SHA-256 producen huellas digitales de longitud fija de cualquier entrada, pero solo SHA-256 es seguro contra entradas adversariales. La resistencia a colisiones de MD5 fallo en 2004. Para firmas digitales, use SHA-256. Para verificaciones de integridad no adversariales, MD5 sigue siendo valido.


Que hace realmente una funcion de hash

Que hace realmente una funcion de hash en la guia MD5 vs SHA-256: convierte cualquier entrada en una huella de longitud fija - mismos bytes dan el mismo digest, un bit cambia la salida.

MD5 devuelve 128 bits (32 caracteres hex). SHA-256 devuelve 256 bits (64 caracteres hex). Ambos son deterministas. Ambos son rapidos. Ambos no revelan nada sobre la estructura de la entrada desde la salida.


Comparacion lado a lado

Comparacion lado a lado en MD5 vs SHA-256: MD5 es de 128 bits y esta roto por colisiones; SHA-256 es de 256 bits y sigue siendo el default para integridad y firmas en 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
Longitud del digest128 bits (32 caracteres hex)256 bits (64 caracteres hex)
Disenado en1991 (Ron Rivest)2001 (NSA, FIPS 180-2)
Familialinaje MD4familia SHA-2
Resistencia a colisionesRota desde 2004 (Wang et al.); colisiones practicas en segundosSin colision practica conocida; ~2128 operaciones para encontrar una
Resistencia de segunda preimagenDebilitada pero sin ataque practico para entrada pre-computadaFuerte; ~2256 operaciones
Velocidad (x86-64 moderno)~500 MB/s por nucleo~300 MB/s por nucleo (SHA-NI: ~1,5 GB/s)
Aceleracion de hardwareSin instruccion dedicadaIntel SHA-NI, extensiones crypto ARMv8
Seguro para uso criptograficoNo - no usar para firmas, cert pinning, hash de contrasenaSi (fuera de hash de contrasena - usa Argon2id/bcrypt para contrasenas)

Por que MD5 esta roto y que significa realmente eso

Por que MD5 esta roto y que significa realmente eso: un atacante puede crear dos archivos distintos con el mismo MD5, asi que MD5 solo no prueba que una descarga este intacta.

La resistencia de segunda preimagen de MD5 es mas debil que la de SHA-256 pero no tiene ataque practico conocido contra entradas arbitrarias ya existentes. Esa es la ventana estrecha donde MD5 sigue siendo seguro: confirmar que un digest ya computado coincide con un archivo que descargaste, cuando ningun adversario tuvo la oportunidad de crear una colision contra ese archivo especifico.


Cuando MD5 sigue estando bien

Cuando MD5 sigue estando bien en la guia MD5 vs SHA-256: checksums rapidos sin seguridad, manifiestos legacy o detectar corrupcion accidental cuando nadie te ataca.

Caches de de-duplicacion. Un proxy de cache indexa objetos por MD5 de su contenido para detectar repeticiones. Las colisiones en este contexto son benignas - dos objetos diferentes con el mismo MD5 significan una falla de cache, sin consecuencia de seguridad.

Fingerprint de filas de base de datos. "Ha cambiado este registro desde la ultima sincronizacion?" - MD5 la fila, compara con digest almacenado. Mas rapido que SHA-256; el modelo de adversario esta ausente.

Direccionamiento de contenido Git. Git usa SHA-1 (pronto SHA-256), no MD5 - pero la justificacion del diseno se aplica: para un almacen direccionado por contenido donde confias en el escritor, un hash de 128 bits es suficiente si la colision no es un vector de ataque.


Cuando SHA-256 es la eleccion correcta

Cuando SHA-256 es la eleccion correcta: hashes de release, cadenas de certificados, objetos Git y cualquier caso donde un tercero pueda forjar un MD5 en colision.

Cert pinning y huellas digitales de clave publica. La huella digital SHA-256 de la clave publica de un certificado es el estandar para pinning.

Blockchain y almacenamiento direccionable por contenido donde adversarios participan. Bitcoin usa SHA-256 dos veces (SHA-256d) para encabezados de bloque e identificadores de transaccion. Cualquier almacen donde usuarios contribuyen contenido y colisiones pueden ser explotadas necesita SHA-256.

HMAC para autenticacion de mensajes. HMAC-SHA-256 es la linea base para firma de solicitud de API (AWS Signature v4, GitHub webhooks, Stripe). HMAC-MD5 todavia se usa en algunos protocolos legacy pero esta cada vez mas marcado por escaneres de cumplimiento.


Que usar para contrasenas (spoiler: ninguno)

Que usar para contrasenas (spoiler: ninguno) es un hash lento como Argon2 o bcrypt - ni MD5 ni SHA-256 desnudos del string de la contrasena son almacenamiento aceptable.


Realidad de rendimiento en 2026

Realidad de rendimiento en 2026 para MD5 vs SHA-256: ambos terminan archivos grandes en el navegador en segundos - elige SHA-256 por confianza, no porque MD5 sea mucho mas rapido en uploads tipicos.

JavaScript en el navegador con WebCrypto (crypto.subtle.digest('SHA-256', data)) alcanza ~200 MB/s en un laptop moderno. Nuestro conversor MD5 ejecuta MD5 a velocidad similar via una implementacion wasm.


MD5 o SHA-256: la regla de la frontera de confianza

La eleccion entre MD5 y SHA-256 depende de una sola pregunta - si un adversario puede influir en la entrada que estas hasheando. Si un uploader remoto, un atacante de red, o cualquier parte fuera de tu frontera de confianza puede dar forma a los bytes que llegan a la funcion de hash, elige SHA-256 (o SHA-3, o BLAKE3) para que un ataque de colision no pueda forjar un digest coincidente. Si las entradas vienen de tu propia tuberia y las estas fingerprinteando para cache, de-duplicacion, o deteccion de cambios, MD5 esta bien y corre ligeramente mas rapido en CPUs sin aceleracion SHA-NI. La decision es binaria y vive en la frontera de confianza; una vez que has nombrado en que lado de esa frontera se encuentra la entrada, el algoritmo a usar esta determinado.


Herramientas relacionadas


← Volver a 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: