Skip to content

Generador de Hash SHA-384 (Hash Suite B para TLS)

Genera hashes SHA-384 online — salida hex de 96 caracteres, inmune a extensión de longitud, compatible con NSA Suite B. Usado con AES-256-GCM en TLS. Todo el hasheo se ejecuta en tu navegador.

Sin rastreo Se ejecuta en el navegador Gratis
Todo el hasheo se realiza localmente en tu navegador. No se transmite ningún dato a ningún servidor.
Algoritmo
Revisado para verificar la corrección de SHA-384 según los vectores de prueba NIST FIPS 180-4; encuadre Suite B verificado según la documentación CNSSP-15 y CNSA Suite — Equipo de Ingeniería de Go Tools · May 28, 2026

¿Qué es SHA-384?

SHA-384 es una función de hash criptográfica de 384 bits de la familia SHA-2, publicada por el NIST en 2001 como parte de FIPS 180-2. Es arquitectónicamente una variante truncada de SHA-512: ambos algoritmos usan aritmética de palabras de 64 bits idéntica, 80 rondas de compresión y bloques de entrada de 1024 bits — las únicas diferencias son el vector de inicialización (IV) y el hecho de que SHA-384 descarta los últimos 128 bits de la salida de 512 bits de SHA-512, produciendo 384 bits (96 caracteres hexadecimales).

Por qué el truncado importa criptográficamente: SHA-256 es vulnerable a ataques de extensión de longitud — dado SHA-256(mensaje), un atacante puede calcular SHA-256(mensaje || relleno || extensión) sin conocer el mensaje original, reanudando el cálculo del hash desde el estado interno filtrado. SHA-384 elimina esta superficie de ataque: el truncado descarta 128 bits del estado interno, por lo que el hash publicado de 384 bits no lleva suficiente información para reanudar el cómputo de SHA-512. Esto hace que SHA-384 puro (sin envoltura HMAC) sea seguro para construcciones donde la salida del hash puede quedar expuesta a adversarios.

NSA Suite B y papel en TLS: SHA-384 fue exigido por NSA Suite B (CNSSP-15, 2005) para clasificación TOP SECRET. Es el algoritmo de hash en la suite de cifrado ECDHE-ECDSA-AES256-GCM-SHA384, que es la suite de cifrado TLS 1.2 estándar para sistemas conformes con Suite B y sigue ampliamente desplegada en redes gubernamentales, financieras y de defensa de EE. UU. La CNSA Suite de la NSA (2015) retuvo SHA-384 junto a SHA-256, y SHA-384 aparece en la lista de algoritmos de firma de TLS 1.3 (ecdsa_secp384r1_sha384).

Rendimiento: En hardware de 64 bits, SHA-384 y SHA-512 se ejecutan a velocidad idéntica — ambos usan operaciones de palabras de 64 bits exclusivamente. Son típicamente más rápidos que SHA-256 (que usa operaciones de palabras de 32 bits y requiere más pasadas para la misma entrada) en procesadores modernos x86-64 y ARM64.

Esta herramienta calcula SHA-384 completamente en tu navegador mediante crypto.subtle.digest('SHA-384', ...) de la Web Crypto API. La salida es bit a bit idéntica a la que producen sha384sum, openssl dgst -sha384 o Python's hashlib.sha384().

Cuándo usar SHA-384: suites de cifrado TLS que exigen conformidad Suite B, HMAC-SHA-384 para el PRF de TLS 1.2, derivación de claves HKDF-SHA-384, huella de documentos clasificados y cualquier contexto donde se requiera inmunidad a extensión de longitud sin envoltura HMAC. Cuándo no usar SHA-384: checksums de propósito general y uso de integridad cotidiano — SHA-256 es la elección estándar para esos, con soporte de biblioteca más simple y compatibilidad universal de herramientas.

// Hash text using Web Crypto API (SHA-384)
async function sha384(text) {
  const data = new TextEncoder().encode(text);
  const hash = await crypto.subtle.digest('SHA-384', data);
  return Array.from(new Uint8Array(hash))
    .map(b => b.toString(16).padStart(2, '0'))
    .join('');
}

await sha384('Hello, World!');
// → '5485cc9b3365b4305dfb4e8337e0a598a574f8242bf17289e0dd6c20a3cd44a089de16ab4ab308f63e44b1170eb5f515'

Ejemplos de SHA-384

Huella de handshake de suite de cifrado TLS

ECDHE-ECDSA-AES256-GCM-SHA384

El nombre de suite de cifrado ECDHE-ECDSA-AES256-GCM-SHA384 es la suite de cifrado Suite B canónica para sesiones TLS de nivel TOP SECRET. El sufijo SHA-384 hace referencia al PRF (Función Pseudoaleatoria) usado en el handshake TLS 1.2 para derivar las claves de sesión. Pega esta cadena para generar el hash SHA-384 del nombre de la suite de cifrado — una forma rápida de verificar que tu implementación SHA-384 es consistente entre entornos. En una sesión TLS real, la cadena de certificados, el secreto pre-master y la transcripción del handshake se alimentan todos a HMAC-SHA-384 como parte del PRF de TLS 1.2.

Derivación de clave HKDF-SHA-384 (PRF de TLS 1.2)

master secret || client random || server random

El PRF de TLS 1.2 (definido en RFC 5246) usa HMAC-SHA-384 para suites de cifrado negociadas con SHA-384. El secreto maestro se deriva del pre-master secret usando P_SHA384(pre_master_secret, 'master secret' || ClientHello.random || ServerHello.random). HKDF-SHA-384 (RFC 5869) extiende este patrón para la derivación general de claves y se usa en el esquema de claves de TLS 1.3 así como en IKEv2 (IPsec). Pega aquí cualquier material semilla para generar la huella SHA-384 antes de aplicar HMAC — un primer paso para depurar un proceso de derivación de claves.

Huella de documento clasificado NSA Suite B

CLASSIFIED//TS//SI//NF — Document ID: TSC-2026-0001

El perfil de criptografía Suite B de la NSA (CNSSP-15, reemplazado por CNSA Suite en 2018) exigía SHA-384 para la integridad de documentos de nivel TOP SECRET. Los sistemas de la comunidad de inteligencia generan huellas de documentos clasificados con SHA-384 para detectar manipulaciones. La cadena hexadecimal de 96 caracteres resultante se almacena en el manifiesto del documento junto al payload cifrado con AES-256-GCM. Pega aquí cualquier cabecera o ID de documento para generar la huella SHA-384 — útil al auditar archivos conformes con Suite B heredados o al validar que un sistema en transición a CNSA sigue produciendo salidas SHA-384 correctas.

Autenticación de mensajes HMAC-SHA-384

POST /api/v2/transfer
Content-Type: application/json
{"amount":10000,"to":"account-XYZ"}

HMAC-SHA-384 se usa en APIs de alta seguridad para autenticar cuerpos de solicitudes. El servidor calcula HMAC-SHA-384(clave_secreta, solicitud_canónica) e incluye el resumen hex en una cabecera Authorization; el cliente reproduce el cálculo y compara. Dado que SHA-384 es inmune a extensión de longitud incluso en forma pura (sin HMAC), proporciona un margen de seguridad adicional sobre HMAC-SHA-256 en escenarios donde el hash puro podría quedar expuesto — por ejemplo, en sistemas de registro distribuido o esquemas de URL firmadas. Pega el cuerpo de la solicitud aquí para inspeccionar el hash SHA-384 antes de añadir tu clave HMAC.

Cómo generar hashes SHA-384

  1. 1

    Pega texto o suelta un archivo

    Selecciona la pestaña Texto y pega cualquier cadena — un ID de documento, cuerpo de solicitud o entrada arbitraria — en el área de entrada. El hash SHA-384 se actualiza mientras escribes. Para archivos, cambia a la pestaña Archivo y arrastra cualquier archivo a la zona de soltar; el navegador lo hashea localmente usando la Web Crypto API sin ninguna subida. Un indicador de progreso aparece para archivos grandes (>10 MB).

  2. 2

    Copia el hash de 96 caracteres

    Haz clic en el botón Copiar junto a la salida del hash. La cadena hexadecimal completa de 96 caracteres en minúsculas va a tu portapapeles — lista para pegar en una configuración TLS, informe de conformidad o implementación HMAC. Usa la opción Mayúsculas si tu sistema de destino requiere hexadecimal en mayúsculas.

  3. 3

    Compara contra un hash conocido

    Cambia a la pestaña Comparar y pega dos hashes SHA-384 lado a lado. La herramienta informa coincidencia o discrepancia usando comparación en tiempo constante, que no filtra información de temporización. Útil para verificar hashes de conformidad Suite B, comparar claves derivadas HKDF-SHA-384 entre implementaciones o comprobar huellas de documentos en auditorías de archivos clasificados.

Detalles técnicos

Algoritmo: SHA-512 con IV diferente, salida truncada a 384 bits
SHA-384 es estructuralmente idéntico a SHA-512 (FIPS 180-4, sección 6.5). Ambos usan 80 rondas de operaciones de 64 bits (funciones Ch, Maj, Σ0, Σ1) con constantes derivadas de las raíces cúbicas y cuadradas de los primeros 80 primos. El vector de inicialización (ocho palabras de 64 bits) difiere del IV de SHA-512 — el IV de SHA-384 se deriva de las partes fraccionarias de las raíces cuadradas de los primos del 9.º al 16.º. Tras el procesamiento, se emiten las primeras seis palabras de 64 bits de las ocho palabras del estado (384 bits); las dos palabras finales se descartan.
Salida: 384 bits, 96 caracteres hexadecimales
Siempre exactamente 96 caracteres hexadecimales en minúsculas (384 bits = 48 bytes, cada byte codificado como 2 caracteres hex). Longitud fija independientemente del tamaño de la entrada. Los 96 caracteres de longitud son la huella inmediata que distingue SHA-384 de SHA-256 (64 caracteres) y SHA-512 (128 caracteres). Los 128 bits descartados — las dos últimas palabras de 64 bits del estado — son los que hacen a SHA-384 resistente a extensión de longitud.
Rendimiento: idéntico a SHA-512 en hardware de 64 bits
SHA-384 y SHA-512 ejecutan la misma secuencia de instrucciones en CPUs de 64 bits. Ambos usan bloques de entrada de 1024 bits (128 bytes), procesados con rotaciones y sumas de 64 bits. El rendimiento es típicamente 500-900 MB/s en un navegador usando la Web Crypto API (que llama a código C/Rust nativo fuera de la VM de JS), y 1-3 GB/s en herramientas nativas con extensiones SHA de hardware. En hardware de 32 bits o sin aceleración hardware, SHA-384/512 son más lentos que SHA-256 debido a la emulación de enteros de 64 bits.
Estándares: FIPS 180-4, NSA Suite B heredado, CNSA actual
Estandarizado en FIPS 180-2 (2001), versión actual FIPS 180-4 (2015). Requerido por NSA Suite B (CNSSP-15, 2005) para TOP SECRET, todavía presente en CNSA Suite (2015). Especificado para TLS en RFC 5246 (PRF de TLS 1.2 con suites de cifrado SHA-384), RFC 8446 (algoritmo de firma TLS 1.3 ecdsa_secp384r1_sha384) y RFC 5869 (HKDF). Aprobado por el NIST para todos los niveles de seguridad hasta 2030 y más allá según NIST SP 800-131A Rev 2.

Buenas prácticas

Usa SHA-384 cuando la inmunidad a extensión de longitud importa sin HMAC
Si tu protocolo expone la salida hash pura y un atacante podría intentar extender el mensaje (por ejemplo, en ciertos esquemas de URL firmadas o desafío-respuesta), SHA-384 proporciona inmunidad inherente a extensión de longitud que SHA-256 no tiene. Para todos los demás usos con clave, aplica HMAC independientemente del hash subyacente — HMAC-SHA-256 y HMAC-SHA-384 son ambos seguros, y HMAC elimina los ataques de extensión de longitud para cualquier variante SHA-2.
Combina con AES-256-GCM para conformidad Suite B / CNSA
Si estás construyendo un sistema que debe cumplir con los requisitos NSA Suite B o CNSA, el emparejamiento canónico es AES-256-GCM para cifrado masivo y SHA-384 para integridad y derivación de claves. TLS 1.2 con ECDHE-ECDSA-AES256-GCM-SHA384 es la suite de cifrado de referencia. Para TLS 1.3, el equivalente es TLS_AES_256_GCM_SHA384 con ecdsa_secp384r1_sha384 como algoritmo de firma. Confirma que tu biblioteca TLS realmente negocia estas suites de cifrado — algunos valores predeterminados prefieren variantes AES-128 incluso en sistemas configurados para Suite B.
Usa HMAC-SHA-384 para MAC con clave en contextos PRF de TLS 1.2
El PRF de TLS 1.2 usa HMAC-SHA-384 para suites de cifrado donde se negoció SHA-384 (RFC 5246, sección 5). Si estás implementando o probando un PRF de TLS 1.2: PRF(secreto, etiqueta, semilla) = P_SHA384(secreto, etiqueta + semilla). No sustituyas HMAC-SHA-256 en un contexto de suite de cifrado SHA-384 — la negociación de la suite de cifrado determina el hash del PRF, y una discrepancia causa un fallo en el handshake. Verifica con vectores de prueba de RFC 5705 (exportadores de material de clave) o RFC 6070 (PBKDF2).
Usa comparación en tiempo constante al verificar hashes SHA-384 en código
Si comparas dos hashes SHA-384 en código — verificando una huella de documento, comprobando un MAC — usa una verificación de igualdad en tiempo constante: Node.js crypto.timingSafeEqual(), Python hmac.compare_digest(), Go subtle.ConstantTimeCompare(). La igualdad de cadenas simple (=== o ==) filtra información de temporización que puede permitir a un atacante reconstruir el hash esperado byte a byte en ~768 comparaciones (96 chars × 8 bits). Esta es una medida de defensa en profundidad crítica para cualquier sistema de autenticación.

Preguntas frecuentes sobre SHA-384

¿Por qué usar SHA-384 en lugar de SHA-256?
Dos razones: inmunidad a extensión de longitud y conformidad con Suite B. SHA-384 es inmune a los ataques de extensión de longitud porque truncar el estado de 512 bits de SHA-512 a 384 bits descarta 128 bits de estado interno — un atacante que conoce SHA-384(mensaje) no puede calcular SHA-384(mensaje || extensión) sin conocer el mensaje completo. SHA-256 es vulnerable a ataques de extensión de longitud, por lo que el uso con clave de SHA-256 requiere la construcción HMAC. Además, SHA-384 era requerido por NSA Suite B en el nivel TOP SECRET y sigue siendo prevalente en suites de cifrado TLS (ECDHE-ECDSA-AES256-GCM-SHA384) y sistemas gubernamentales en transición a CNSA Suite.
¿Es SHA-384 tan seguro como SHA-512?
Sí, en términos de resistencia a colisiones. SHA-384 proporciona 192 bits de resistencia a colisiones (la mitad de 384 bits) frente a los 256 bits de SHA-512 — ambos están muy por encima de cualquier ataque previsible. SHA-384 proporciona la misma resistencia a segunda preimagen que SHA-512 en la práctica. La única diferencia significativa es la longitud de salida: 96 caracteres hex frente a 128. Si necesitas la máxima resistencia a colisiones para archivos de muy larga duración (más de 50 años), SHA-512 proporciona un margen mayor — pero para cualquier sistema actual, SHA-384 es completamente adecuado.
¿Tiene SHA-384 la misma velocidad que SHA-512?
Sí — son literalmente el mismo algoritmo. SHA-384 es SHA-512 con un vector de inicialización (IV) diferente y la salida truncada a los primeros 384 bits. Como ambos usan aritmética de palabras de 64 bits a lo largo de todo el proceso, se ejecutan a velocidad idéntica en hardware de 64 bits. Paradójicamente, SHA-384 y SHA-512 son ambos típicamente más rápidos que SHA-256 en máquinas de 64 bits — SHA-256 usa aritmética de palabras de 32 bits y procesa bloques de 512 bits, mientras que SHA-512 procesa bloques de 1024 bits en menos pasadas. Rendimiento típico: 500-900 MB/s en un navegador, comparable a las herramientas nativas.
¿Cuándo importa HMAC-SHA-384 frente a HMAC-SHA-256?
En los handshakes TLS 1.2 negociados con suites de cifrado SHA-384, el PRF es HMAC-SHA-384 — este es un requisito de protocolo obligatorio, no una elección. Fuera de TLS, prefiere HMAC-SHA-384 cuando: (1) estás apuntando a conformidad Suite B / CNSA, (2) el sistema maneja datos clasificados por encima de SECRET, o (3) quieres un margen adicional ante futuros avances contra la seguridad de 128 bits. Para MACs de propósito general donde ninguno de estos aplica, HMAC-SHA-256 es el estándar y está bien probado en todas las bibliotecas.
¿Debo usar SHA-384 para hasheo de propósito general?
No, a menos que tengas una razón específica. SHA-256 es el estándar de la industria para integridad de archivos, checksums, objetos de Git, firmas JWT y huellas de certificados — es universalmente soportado y proporciona 128 bits de resistencia a colisiones, más que suficiente para cualquier uso práctico. SHA-384 tiene sentido cuando necesitas (1) inmunidad a extensión de longitud sin envoltura HMAC, (2) conformidad Suite B / CNSA, o (3) interoperabilidad con suites de cifrado TLS que exigen SHA-384. Para todo lo demás, SHA-256 es más simple e igualmente seguro.
¿Qué es NSA Suite B y sigue usándose?
NSA Suite B era un conjunto de algoritmos criptográficos aprobados para proteger información clasificada de EE. UU., publicado por la NSA en 2005 (CNSSP-15). Suite B requería SHA-256 para SECRET y SHA-384 para TOP SECRET. En 2015, la NSA anunció una transición alejándose de Suite B hacia el Commercial National Security Algorithm Suite (CNSA), impulsada por preocupaciones sobre criptografía poscuántica. Sin embargo, SHA-384 fue retenido en CNSA junto a SHA-256. Muchos sistemas gubernamentales y de defensa construidos para conformidad con Suite B todavía usan SHA-384, y las suites de cifrado TLS originalmente requeridas por Suite B (como ECDHE-ECDSA-AES256-GCM-SHA384) siguen ampliamente desplegadas en redes gubernamentales.
¿Qué longitud tiene un hash SHA-384?
Siempre exactamente 96 caracteres hexadecimales — 384 bits divididos en 48 bytes, cada byte codificado como dos caracteres hex. La longitud de salida es fija independientemente del tamaño de la entrada; un mensaje de 1 byte y un archivo de 10 GB producen ambos 96 caracteres hex. Comparación: SHA-256 produce 64 caracteres hex, SHA-512 produce 128 caracteres hex, MD5 produce 32 caracteres hex. La longitud de 96 caracteres es la señal inmediata de que un hash fue producido por SHA-384.
¿Se envían mis datos a un servidor al usar esta herramienta?
No. SHA-384 se calcula completamente en tu navegador usando la Web Crypto API (crypto.subtle.digest('SHA-384', data)). Abre DevTools → pestaña Red mientras hasheas — verás cero peticiones salientes. Los archivos que sueltas se leen mediante la FileReader API y se hashean localmente; los bytes nunca salen de tu máquina. Esto hace que la herramienta sea segura para hashear huellas de documentos clasificados, material de clave privada TLS o cualquier otra entrada sensible. La misma garantía de privacidad se aplica al generador SHA-256 y al generador SHA-512.

Herramientas relacionadas

Ver todas las herramientas →

Decodificador JWT

Herramientas de Seguridad

Decodifica tokens JWT online con nuestro decodificador JWT gratis. Inspecciona encabezado, carga útil, firma, expiración y reclamaciones al instante. 100% navegador — tu token nunca sale del dispositivo. Sin registro ni rastreo.

Generador de Hash MD5 Online y Verificador de Checksum

Herramientas de Seguridad

Genera hashes MD5, SHA-256, SHA-1 y SHA-512 gratis — 100% en tu navegador, sin registro. Hashea texto o archivos, verifica checksums y compara hashes con un clic. Tus datos permanecen privados.

Generador de Contraseñas Aleatorias y Seguras

Herramientas de Seguridad

Genera contraseñas seguras al instante — gratis, sin registro, 100% en tu navegador. Personaliza la longitud y los tipos de caracteres, genera hasta 50 contraseñas. Medidor de fortaleza con análisis de entropía.

Generador de Hash SHA-1 (Legado de 160 bits)

Herramientas de Seguridad

Genera hashes SHA-1 en tu navegador — salida hex de 40 caracteres, sin subidas. Herramienta para huellas Git, comprobación de certificados antiguos y auditorías de migración. Datos nunca salen de tu dispositivo.

Generador de Hash SHA-256 y Verificador de Checksum

Herramientas de Seguridad

Genera hashes SHA-256 online gratis. Hashea texto o archivos en tu navegador, verifica checksums y copia la salida hex de 64 caracteres. Sin registro; los datos nunca salen de la página.

Generador de Hash SHA-3 (Keccak SHA3-256)

Herramientas de Seguridad

Genera hashes SHA-3 online gratis. Construcción de esponja NIST FIPS 202 — el estándar posterior a SHA-2. Salida SHA3-256 en 64 caracteres hex. Solo en navegador vía js-sha3; sin subidas.