
El cifrado César es un método sencillo para encriptar mensajes. Es un tipo de cifrado por sustitución. Esto significa que cada letra del mensaje original se reemplaza por otra letra.
¿Cómo funciona?
El cifrado César usa una clave. Esta clave es un número. Este número indica cuántas posiciones se desplaza cada letra. Por ejemplo, si la clave es 3, la 'A' se convierte en 'D', la 'B' se convierte en 'E', y así sucesivamente. Cuando llegamos a la 'Z', volvemos a empezar desde la 'A'.
Ejemplo sencillo
Supongamos que queremos encriptar la palabra "HOLA" con una clave de 1.
Must Read
- H -> I (H se desplaza una posición)
- O -> P (O se desplaza una posición)
- L -> M (L se desplaza una posición)
- A -> B (A se desplaza una posición)
El mensaje encriptado sería "IPMB".
Desencriptar el mensaje
Para desencriptar un mensaje cifrado con el cifrado César, se usa la misma clave, pero en sentido contrario. Si la clave para encriptar fue 3, para desencriptar usaremos -3.

Cifrado César en Java
Aquí tienes un ejemplo básico de cómo implementar el cifrado César en Java:
public class CifradoCesar {
public static String cifrar(String texto, int clave) {
StringBuilder resultado = new StringBuilder();
for (int i = 0; i < texto.length(); i++) {
char caracter = texto.charAt(i);
if (Character.isLetter(caracter)) {
char base = Character.isUpperCase(caracter) ? 'A' : 'a';
caracter = (char) (((caracter - base + clave) % 26 + 26) % 26 + base); //Asegura resultado positivo
}
resultado.append(caracter);
}
return resultado.toString();
}
public static String descifrar(String texto, int clave) {
return cifrar(texto, -clave);
}
public static void main(String[] args) {
String mensajeOriginal = "Hola Mundo!";
int clave = 3;
String mensajeCifrado = cifrar(mensajeOriginal, clave);
System.out.println("Mensaje cifrado: " + mensajeCifrado);
String mensajeDescifrado = descifrar(mensajeCifrado, clave);
System.out.println("Mensaje descifrado: " + mensajeDescifrado);
}
}
Explicación del código Java
El código anterior define una clase llamada `CifradoCesar`. Tiene dos métodos principales: `cifrar` y `descifrar`. El método `cifrar` toma un texto y una clave como entrada. Itera a través de cada carácter del texto. Si el carácter es una letra, calcula su posición en el alfabeto, aplica el desplazamiento de la clave, y luego ajusta la posición para que permanezca dentro del rango de las letras (A-Z o a-z). El método `descifrar` simplemente llama al método `cifrar` con la clave negada.

Limitaciones
El cifrado César es muy fácil de romper. Solo hay 26 posibles claves. Alguien podría probar cada clave hasta encontrar el mensaje original. Por eso, no se usa para proteger información importante. Se utiliza principalmente con fines educativos o para ejemplos sencillos.
En resumen, el cifrado César es un algoritmo de encriptación simple que desplaza las letras del alfabeto según una clave. Aunque fácil de entender, no es seguro para la comunicación seria.