Cifrado y descifrado Serpent
Cifra y descifra texto con Serpent, finalista del concurso AES.
La necesitarás de nuevo para descifrar. Nada de lo que escribes sale de esta página.
El valor predeterminado de OpenSSL es 10.000. Sirve cualquier número: cuantas más, más lenta de adivinar es la contraseña; para descifrar hace falta el mismo número.
La opción habitual con OpenSSL. Necesita un IV; rellena hasta completar bloques.
OpenSSL no tiene el cifrado Serpent.
Serpent, de Ross Anderson, Eli Biham y Lars Knudsen, quedó segundo en el concurso AES. Cifra bloques de 16 bytes con una clave de 128, 192 o 256 bits a lo largo de 32 rondas, un margen de seguridad deliberadamente amplio que le costó velocidad frente a Rijndael, el ganador que se convirtió en AES, y no se le conoce ningún ataque práctico. Aquí puedes cifrar y descifrar texto con Serpent-256 por defecto (o 128 o 192) en modo CBC, ECB, CTR, CFB u OFB. Con contraseña, la clave y el IV se derivan con PBKDF2-HMAC-SHA256 y una sal aleatoria, y la salida se guarda con la estructura Salted__ de openssl enc -pbkdf2; también puedes introducir tu propia clave e IV en hexadecimal. Tu texto y tus claves nunca salen de tu dispositivo: se ejecuta en tu navegador, gratis y sin registro.
Cómo cifrar texto con Serpent
- Elige Cifrar o Descifrar. Escribe el texto que quieres cifrar o pega el texto en Base64 o hexadecimal que quieres descifrar: el formato se detecta automáticamente.
- Escribe una contraseña (Generar crea una segura), o cambia a Clave e IV (hex) e introduce o genera una clave y un IV de 32 dígitos (ECB no usa IV).
- Elige el tamaño de clave (256 bits por defecto) y el modo, CBC por defecto. Para descifrar, usa los mismos ajustes con que se cifró el texto.
- Copia o descarga el resultado, o pulsa Intercambiar para pasarlo a la entrada e invertir la dirección.
Funciones
- Serpent con clave de 128, 192 o 256 bits y sus 32 rondas completas
- Modos CBC, ECB, CTR, CFB y OFB; relleno PKCS#7 o sin relleno
- Orden de bytes estándar, el de los vectores de prueba de NESSIE
- Modo contraseña con PBKDF2-HMAC-SHA256 y la cabecera Salted__ de openssl enc -pbkdf2
- Modo Clave e IV con tu propia clave e IV en hexadecimal, o generados
- Base64 o hexadecimal de entrada y de salida; copia, descarga o intercambia el resultado
¿Es privado?
Sí. Serpent se ejecuta en WebAssembly dentro de tu navegador; tu texto, tu contraseña y tu clave nunca se envían a un servidor ni se guardan en el navegador.
Preguntas frecuentes
¿Es seguro Serpent?
Sí. No se conoce ningún ataque práctico contra Serpent completo de 32 rondas; se diseñó para seguir siendo seguro aunque los ataques mejoraran, a costa de la velocidad. Con textos de tamaño normal, la diferencia de velocidad no importa. AES es compatible con casi todo, así que elige Serpent cuando lo use un sistema con el que intercambias datos.
¿Puede OpenSSL descifrar Serpent?
No: OpenSSL no incluye Serpent, así que ningún comando openssl lee esta salida. Para usar los datos en otro programa, elige el modo Clave e IV y dale a ese programa la misma clave, el mismo IV, el mismo modo y el mismo relleno (PKCS#7 en CBC y ECB).
¿Por qué no se descifran los datos Serpent de otro programa?
Si la clave, el IV y el modo son correctos, la causa probable es el orden de los bytes: algunas implementaciones escriben al revés los bytes de entrada y salida de Serpent, y Bouncy Castle llama Tnepres a esa variante. Esta página usa el orden estándar de los vectores de prueba de NESSIE, así que los datos de una implementación Tnepres no se descifrarán aquí.
¿Puede abrir volúmenes de VeraCrypt cifrados con Serpent?
No. VeraCrypt cifra discos enteros y archivos contenedores con Serpent en modo XTS tras su propia cabecera; esta página cifra y descifra texto. Abre los volúmenes de VeraCrypt con VeraCrypt; para proteger un solo archivo en tu navegador, usa Cifrar archivos.