Cifrar y descifrar con Blowfish

BeetVPN

Datos de entrada

Entrada

Resultado

Resultado
Opciones avanzadas
Vector de inicialización — 8 bytes

PKCS#7El relleno PKCS#7 se aplica automáticamente. En modo CBC, utiliza un IV aleatorio diferente para cada nuevo cifrado con la misma clave.

¿Qué es Blowfish?

Blowfish es un cifrado simétrico por bloques de 64 bits con una clave variable de 32 a 448 bits. Se utiliza la misma clave para cifrar y descifrar. Esta herramienta admite los modos CBC y ECB y aplica relleno PKCS#7.

CBCCada bloque depende del anterior y de un IV de 8 bytes. Es el modo preferido aquí para comprender el uso histórico de Blowfish.
ECBCada bloque se procesa de forma independiente. Los patrones repetidos siguen siendo visibles, por lo que este modo no debe utilizarse para proteger datos estructurados.
ClaveEntre 4 y 56 bytes. Una frase de contraseña UTF-8 y una clave hexadecimal no representan los mismos bytes.
SalidaBase64 resulta práctico para copiar datos; el formato hexadecimal muestra los bytes exactos producidos.

Blowfish no es bcrypt

bcrypt utiliza una construcción derivada llamada EksBlowfish para ralentizar la verificación de contraseñas. Un hash bcrypt no es un texto cifrado Blowfish y no puede descifrarse. La página de bcrypt sigue dedicada a la generación y verificación de contraseñas.

Compatibilidad y seguridad

Hoy Blowfish resulta útil sobre todo para compatibilidad con sistemas heredados y para aprendizaje. Su tamaño de bloque de 64 bits lo hace menos adecuado para grandes volúmenes de datos. Las aplicaciones nuevas deben utilizar un cifrado autenticado moderno ofrecido por su plataforma, como AES-GCM o ChaCha20-Poly1305.

Preguntas frecuentes

¿Qué longitud debe tener el IV?

Blowfish utiliza bloques de 8 bytes. Por tanto, un IV CBC debe contener exactamente 8 bytes, es decir, 16 caracteres hexadecimales.

¿Por qué el descifrado indica que el relleno no es válido?

Probablemente no coincidan la clave, el IV, el modo o el texto cifrado. Los datos dañados producen el mismo síntoma.

¿Debe utilizarse ECB?

ECB se incluye para pruebas de compatibilidad y vectores conocidos. No oculta los bloques repetidos.

Notas prácticas

Blowfish es un cifrado simétrico antiguo con bloques de 64 bits. Esta página cifra y descifra en modo CBC o ECB con una clave de 4 a 56 bytes.

Bloque64 bits
ModosCBC y ECB
ClaveDe 4 a 56 bytes

Preguntas frecuentes

¿Se sigue recomendando Blowfish?

Sigue siendo útil por compatibilidad con sistemas antiguos, pero su bloque de 64 bits limita los diseños nuevos. En general se prefieren AES o ChaCha20-Poly1305.

¿Por qué CBC necesita un IV?

El IV hace que el primer bloque sea diferente cuando la misma clave cifra varios mensajes. Debe ser único e impredecible para cada cifrado.

¿Es seguro ECB?

ECB revela las repeticiones entre bloques idénticos y no debe utilizarse para proteger datos estructurados.