UTILS.
100% en el navegador
✖️

Codificador / Decodificador de Cifrado Afín

Cifrado monoalfabético que usa E(x)=(a·x+b) mod 26, con validación de clave (gcd(a,26)=1) y decodificación por inverso modular. Codifica o decodifica letras al instante.

La clave a debe ser coprima con 26: 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 o 25.

— la salida aparece aquí —

Acerca de esta herramienta

El Codificador / Decodificador de Cifrado Afín es una herramienta gratuita que funciona en el navegador para el cifrado monoalfabético construido sobre aritmética modular. Las letras A–Z se numeran 0–25 y cada una se transforma mediante la función lineal E(x) = (a·x + b) mod 26, donde a y b son los dos valores de la clave. La decodificación lo invierte con D(y) = a⁻¹·(y − b) mod 26, donde a⁻¹ es el inverso multiplicativo modular de a módulo 26.

Para que el cifrado sea reversible, el multiplicador a debe ser coprimo con 26 —es decir, gcd(a, 26) = 1. Las doce opciones válidas son 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 y 25; cualquier otro valor asignaría dos letras diferentes a la misma salida y no podría decodificarse, por lo que la herramienta lo rechaza con un mensaje claro. La clave aditiva b puede ser cualquier valor 0–25. Todo se calcula localmente en tu navegador, por lo que nada de lo que escribes sale de tu dispositivo.

Se conserva el caso y las letras que no lo son pasan sin cambios. El cifrado Afín generaliza cifrados clásicos más simples: fijar a = 1 lo reduce a un desplazamiento César de b, y a = 25, b = 25 reproduce el cifrado Atbash. Es un pilar de los cursos de matemáticas discretas y teoría de números porque hace concretas las ideas de coprimalidad e inversos modulares, y aparece con regularidad en acertijos CTF y herramientas como CyberChef.

Preguntas frecuentes

¿Cuál es la fórmula del cifrado afín?
La codificación es E(x) = (a·x + b) mod 26 y la decodificación es D(y) = a⁻¹·(y − b) mod 26, con las letras numeradas 0–25. Aquí a⁻¹ es el inverso multiplicativo modular de a módulo 26.
¿Qué valores de a se permiten?
Solo los valores coprimos con 26, es decir gcd(a, 26) = 1: es decir 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23 o 25. Otros valores hacen que el cifrado no sea invertible, por lo que la herramienta los rechaza.
¿Cómo se realiza la decodificación?
Necesita el inverso modular a⁻¹ de a módulo 26, el número donde a·a⁻¹ ≡ 1 (mod 26). La herramienta lo encuentra automáticamente, y luego aplica D(y) = a⁻¹·(y − b) mod 26 a cada letra.
¿Cómo se relaciona con César y Atbash?
Los generaliza a ambos. Con a = 1 el cifrado afín se convierte en un desplazamiento César de b, y con a = 25, b = 25 reproduce el cifrado Atbash. Es la forma lineal de una sustitución monoalfabética.

Más herramientas