Herramientas de cifrado, descifrado y generación de hash
Genere valores hash MD5 y MD4 para texto o archivos con múltiples formatos de salida
Herramienta en línea de generación de hash SHA que soporta SHA-1, SHA-256, SHA-384, SHA-512
Cifrar y descifrar texto de forma segura usando el algoritmo AES
Algoritmo AES original con tamaños de bloque flexibles (128/192/256 bits). Soporta modos CBC, ECB, CFB, OFB
Decodifique, verifique y genere JSON Web Tokens con soporte para múltiples algoritmos de firma
Herramienta de generación HMAC en línea que soporta MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA3 y RIPEMD-160
Usar cifrado asimétrico RSA para cifrado con clave pública, descifrado con clave privada, firma digital y verificación
Generar pares de claves Ed25519, firmar mensajes y verificar firmas con el Algoritmo de Firma Digital de Curva Edwards
Generar pares de claves ECDSA, firmar mensajes y verificar firmas con las curvas secp256k1, P-256, P-384, P-521
Generar pares de claves DSA, firmar y verificar mensajes con el Algoritmo de Firma Digital FIPS 186 (obsoleto, solo verificación en FIPS 186-5)
Cifrar y descifrar con algoritmos DES y 3DES, múltiples modos y opciones de relleno
Cifrado de bloques simétrico rápido diseñado por Bruce Schneier, con longitud de clave variable (32-448 bits)
Finalista AES, cifrado simétrico con bloques de 128 bits y claves de 128/192/256 bits, diseñado por Bruce Schneier
Cifrado de bloque simétrico con longitud de clave variable (40-128 bits), ampliamente usado en cifrado PGP, compatible con RFC 2144
Algoritmo finalista AES con claves de 128/192/256 bits, 32 rondas, ofreciendo un excelente margen de seguridad y resistencia criptanalítica probada
Cifrado de bloque australiano candidato a AES con bloques de 128 bits y claves de 128/192/256 bits, diseño de red Feistel de 16 rondas
International Data Encryption Algorithm con clave de 128 bits y bloques de 64 bits, usado históricamente en PGP
Familia Tiny Encryption Algorithm con clave de 128 bits, popular en desarrollo de juegos, dispositivos IoT y sistemas embebidos
Cifrados de flujo y bloque de la familia RC incluyendo RC4, RC4-Drop, RC5 y RC6 (finalista AES)
Cifrado de flujo moderno con ChaCha20, ChaCha20-Poly1305 AEAD y variantes XChaCha20
Cifrado de flujo de alta velocidad con Salsa20, Salsa20/12, Salsa20/8 y variantes XSalsa20
Cifrado de bloques estándar japonés/europeo (ISO/IEC 18033-3) con claves de 128/192/256 bits y múltiples modos
Cifrado de bloques estándar nacional coreano (RFC 4269, ISO 18033-3) con clave de 128 bits y modo CBC
Cifrado de bloque ruso GOST 28147-89/Magma con múltiples modos, opciones de S-Box y métodos de relleno
Generar hashes BLAKE2b, BLAKE2s y BLAKE3 para texto y archivos, algoritmos de hash rápidos y seguros
Generar y verificar hashes de contraseña seguros con Bcrypt, Scrypt y Argon2
Derive claves de cifrado seguras de contraseñas usando PBKDF2 con SHA-256/384/512, compatible con OWASP
Derive claves criptográficas usando el paradigma extract-expand HKDF RFC 5869, usado en TLS 1.3 y Signal Protocol
Calcular sumas de verificación CRC-8, CRC-16, CRC-32, CRC-64 con soporte para Modbus, CCITT y otros estándares de protocolo
Calcula checksums Adler-32 para texto y archivos, checksum rápido usado en compresión zlib/gzip
Genera hashes RIPEMD-128/160/256/320 para texto y archivos, RIPEMD-160 ampliamente usado en Bitcoin
Genera hashes Whirlpool de 512 bits usando algoritmos Whirlpool-0, Whirlpool-T y Whirlpool ISO
Genera hashes Snefru-128/256 para texto y archivos, función hash criptográfica temprana por Ralph Merkle
Genera hashes HAS-160, estándar criptográfico coreano para firmas digitales KCDSA
Hash no criptográfico extremadamente rápido soportando xxHash32, xxHash64, xxHash3 y xxHash128
Genera hashes SHA3-224/256/384/512 y Keccak con aceleración WebAssembly, usado en Ethereum
Función hash no criptográfica de alto rendimiento para tablas hash, filtros Bloom y particionamiento de datos
Función hash Fowler-Noll-Vo con variantes FNV-1 y FNV-1a, usada en DNS, tablas hash y estructuras de datos
Generar hashes GOST R 34.11-94 y Streebog (GOST R 34.11-2012), estándares criptográficos nacionales rusos
Herramientas de criptografía estándar nacional china que soportan cifra de clave pública SM2, hash SM3 y cifra de bloque SM4
La criptografía es la práctica de usar algoritmos matemáticos para asegurar datos contra acceso no autorizado y manipulación. Esta categoría cubre operaciones criptográficas esenciales incluyendo cifrado simétrico (AES, DES, Blowfish, Twofish), cifrado asimétrico (RSA), algoritmos hash (MD5, SHA, BLAKE), HMAC para autenticación y JWT para generación de tokens seguros. Estas herramientas son fundamentales para proteger información sensible en aplicaciones, APIs, bases de datos y transmisión de datos. La criptografía moderna proporciona confidencialidad mediante cifrado, integridad mediante hash y autenticidad mediante firmas digitales. Comprender cuándo y cómo usar cada algoritmo criptográfico es crítico para construir sistemas seguros. Esta guía cubre selección de algoritmos, mejores prácticas de gestión de claves, consideraciones de seguridad y errores comunes a evitar.
Advanced Encryption Standard (AES) es el estándar de la industria para cifrado simétrico, usado por agencias gubernamentales y empresas en todo el mundo. Soporta tamaños de clave de 128, 192 y 256 bits, con AES-256 proporcionando seguridad resistente a computación cuántica para datos altamente sensibles.
RSA es un criptosistema de clave pública que permite comunicación segura sin intercambio previo de claves. Esencial para HTTPS, firmas digitales y escenarios de cifrado asimétrico donde las partes no se han conocido antes.
La familia SHA (Secure Hash Algorithm) proporciona funciones hash criptográficas para verificación de integridad de datos, almacenamiento de contraseñas y firmas digitales. SHA-256 y SHA-3 son recomendados para nuevas aplicaciones.
| Tipo de Algoritmo | Descripción y Casos de Uso |
|---|---|
| Cifrado Simétrico (AES, DES, Blowfish) | Usa una sola clave compartida para cifrado y descifrado. Rápido y eficiente para grandes volúmenes de datos. Ejemplos: AES-256, DES (obsoleto), Blowfish. Mejor para: cifrado de base de datos, cifrado de archivos, protección de datos locales. Desventaja: desafío de distribución de claves. |
| Cifrado Asimétrico (RSA) | Usa clave pública para cifrar y clave privada para descifrar. Permite comunicación segura sin compartir claves previamente. Mejor para: HTTPS, firmas digitales, intercambio de claves. Desventaja: más lento que cifrado simétrico, adecuado para datos pequeños. |
| Hash (MD5, SHA, BLAKE) | Función unidireccional que produce huella digital de tamaño fijo de datos. No puede revertirse a datos originales. Usado para verificación de integridad y almacenamiento de contraseñas. Ejemplos: SHA-256, SHA-3, BLAKE2. Evitar: MD5 (vulnerabilidades de colisión). |
| HMAC (Código de Autenticación de Mensaje basado en Hash) | Combina hash con clave secreta para verificar tanto integridad como autenticidad. Esencial para autenticación de API y verificación de mensajes. Soporta cualquier algoritmo hash (HMAC-SHA256, HMAC-SHA512). |
| JWT (Tokens Web JSON) | Formato de token compacto y seguro para URL para autenticación sin estado e intercambio de información. Contiene encabezado, carga útil y firma. Use RS256/ES256 para firma asimétrica, HS256 solo para partes confiables. |
| Criptografía SM (Estándar Chino) | Estándares criptográficos nacionales chinos incluyendo SM2 (asimétrico), SM3 (hash), SM4 (simétrico). Usado en sistemas conformes con China. SM2 proporciona seguridad similar a RSA-2048 con claves de 256 bits. |
Use AES-256 para cifrado simétrico, RSA-2048+ o ECC para cifrado asimétrico, SHA-256+ o SHA-3 para hash. Evite algoritmos obsoletos: MD5 (colisiones), SHA-1 (debilidades), DES (claves de 56 bits), RC4. Verifique recomendaciones NIST para requisitos de cumplimiento.
Genere claves usando generadores aleatorios criptográficamente seguros. Almacene claves de forma segura (módulos de seguridad de hardware, bóvedas de claves, nunca codifique directamente). Rote claves regularmente (recomendación anual). Use claves diferentes para propósitos diferentes. Nunca registre o exponga claves en mensajes de error.
Para datos sensibles, use AES-GCM (modo Galois/Contador) proporcionando tanto cifrado como autenticación. Nunca use modo ECB (cifra bloques de texto plano idénticos idénticamente). Evite cifrado no autenticado seguido de HMAC separado (use modos AEAD en su lugar).
Nunca almacene contraseñas en texto plano. Use bcrypt, scrypt o Argon2 para hash de contraseñas (no SHA simple). Agregue sal única por contraseña. Use factores de trabajo que prevengan ataques de fuerza bruta. Implemente bloqueo de cuenta después de intentos fallidos.
Use RNG criptográficamente seguros (java.security.SecureRandom, /dev/urandom en Unix, CryptGenRandom en Windows). Siembre RNGs correctamente. Evite Math.random() y semillas predecibles. Genere entropía suficiente para tamaños de clave.
Siempre verifique la firma JWT antes de aceptar tokens. Verifique marcas de tiempo de expiración. Valide reclamaciones de emisor (iss) y audiencia (aud). Use tiempos de expiración cortos (15-60 minutos). Implemente mecanismo de token de actualización. Nunca confíe en tokens 'alg: none'.