Típo de Cifrado: Sustitución monoalfabético
El cifrado César es uno de los métodos de cifrado más antiguos y simples. Consiste en reemplazar cada letra del mensaje original (texto en claro) por otra letra que se encuentra un número fijo de posiciones desplazada en el alfabeto.
DESPLAZAMIENTO (CLAVE) Y ALFABETO
Se elige un número que indica cuántas posiciones se desplaza cada letra en el alfabeto.
Generalmente, se trabaja con las 26 letras del alfabeto latino (A–Z), transformando todo a mayúsculas y sin espacios ni signos de puntuación, para simplificar.
PROCESO DE CIFRADO
Se toma cada letra del texto en claro.
Se cuenta el número de la letra en el alfabeto (A=0, B=1, C=2, …).
Se suma el desplazamiento (clave) al número de la letra.
Se aplica la operación módulo 26 para asegurarse de que no se salga del rango de letras.
Letra cifrada = (Posición de la letra original + Desplazamiento) mod (Total de letras del alfabeto)
El resultado se traduce de nuevo a una letra (0→A, 1→B, 2→C, etc.).
PROCESO DE DESCIFRADO
Para recuperar el mensaje original, se realiza la operación inversa:
Letra original = ( Posición de la letra cifrada − Desplazamiento) mod (Total de letras del alfabeto)
Así se obtiene la posición de la letra original en el alfabeto.
EJEMPLO SENCILLO
Mensaje en claro: “HOLA”
Desplazamiento (clave): 3
Proceso de cifrado:
H → K (H es la 7ª posición si A=0, +3 = 10, que corresponde a K)
O → R
L → O
A → D
Mensaje cifrado: “KROD”
Típo de Cifrado: Sustitución Polialfabético
El cifrado Vigenère es un método de cifrado clásico que utiliza una palabra o frase clave para encriptar el mensaje. Este método se basa en la aplicación repetida del cifrado César, pero variando la cantidad de desplazamiento con cada letra, lo que genera mayor complejidad y dificulta su ruptura.
CLAVES Y ALFABETO
El cifrado Vigenère trabaja, generalmente, con el alfabeto latino (A–Z).
Se elige una clave, que puede ser una palabra o frase (por ejemplo, “CLAVE”).
Tanto el texto original (en claro) como la clave suelen escribirse en letras mayúsculas y sin espacios ni signos de puntuación para simplificar.
CONSTRUCCIÓN DE LA TABLA DE VIGENÈRE
Aunque no siempre se construye físicamente, la tabla de Vigenère está compuesta por 26 filas (o 27 en castellano debido a la letra Ñ), cada una correspondiente a un desplazamiento diferente del alfabeto.
La primera fila equivale al alfabeto sin desplazar (A, B, C, D, …), la segunda a un desplazamiento de 1 (B, C, D, E, …), la tercera a un desplazamiento de 2 (C, D, E, F, …), y así sucesivamente.
PROCESO DE CIFRADO
Se escribe el texto en claro y debajo (o sobre él) la clave repetida tantas veces como sea necesario para cubrir toda la longitud del mensaje.
Por cada letra del mensaje original y su correspondiente letra de la clave, se encuentra la intersección en la tabla de Vigenère:
Se busca en la columna la letra del texto original.
Se busca en la fila la letra de la clave.
El cruce entre ambas proporciona la letra cifrada.
Alternativamente, sin necesidad de la tabla física, se puede emplear la operación de desplazamiento:
Cifrado = ( Posición de la letra del texto + Posición de la letra de la clave) Mod (Letras alfabeto)
El resultado se traduce de vuelta a una letra del alfabeto.
PROCESO DE DESCIFRADO
Para descifrar, se invierte el proceso:
Letra descifrada = (Posición de la letra cifrada − Posición de la letra de la clave) Mod (Letras alfabeto)
El resultado se traduce de vuelta a una letra del alfabeto.
Es decir, se resta el valor (desplazamiento) de la letra de la clave a la letra cifrada.
EJEMPLO SENCILLO
Mensaje en claro: “ATAQUE”
Clave: “CLAVE”
Se repite la clave hasta tener la misma longitud que el mensaje: “CLAVEC” (para cubrir “ATAQUE”).
Para cada posición, se suma el desplazamiento de la letra del mensaje con el desplazamiento de la letra de la clave.
El valor denominado mod (modificador), hace referencia a las letras que tienen el alfabeto que estamos utilizado. En castellano tenemos 27 letras en el abecedario, si la cifra es superior a 27 se vuelve a comenzar el abecedario, es decir que 29 corresponde a B. Para simplificar, los numeros superiores a 27 le restamos 27, así en el caso anterior nos sale 29-27 = 2 que corresponde con B. En el descifrado, operamos igual pero a la inversa, es decir que -1 corresponde a 26, por lo que restaremos los numeros negativos a 27.
"ATAQUE" = 1 21 1 18 22 5
"CLAVEC" = 3 12 1 23 5 3
Cifrado = (1+3) ((21+12)-27) (1+1) ((18+23)-27) (5+22) (5+3) = 4 6 2 14 27 8 = "DFBNZH"
Descifrado = (4-3) ((6-12)+27) (2-1) ((14-23)+27) (27-23) (8-3) = 1 21 1 18 22 5 = "ATAQUE"
Típo de Cifrado: Sustitución monoalfabético
El cifrado Atbash es un método de cifrado muy simple y antiguo en el que cada letra del alfabeto se sustituye por la letra situada en la posición inversa dentro de ese mismo alfabeto. Por ejemplo, en el alfabeto latino la A se convierte en Z, la B en Y, la C en X, etc.
PRINCIPIO DE SUSTITUCIÓN INVERSA
Para aplicar Atbash, se toma el alfabeto (por ejemplo, las 26 letras en mayúscula) y se establece una equivalencia “espejo”: la primera letra (A) se reemplaza por la última (Z), la segunda (B) por la penúltima (Y), etc.
PROCESO DE CIFRADO
Se normaliza el texto en claro (por ejemplo, quitando espacios, signos de puntuación y usando mayúsculas).
Por cada letra, se encuentra su posición en el alfabeto (A=0, B=1, C=2, … Z=25).
Se sustituye por la letra que ocupa la posición contraria (por ejemplo, 0 ↔ 25, 1 ↔ 24, 2 ↔ 23, etc.).
PROCESO DE DESCIFRADO
El proceso de descifrado es exactamente el mismo que el de cifrado, ya que Atbash es completamente simétrico.
Al aplicar las mismas sustituciones espejo sobre el texto cifrado, se recupera el texto original.
EJEMPLO
Mensaje en claro: “HOLA”
Usando el alfabeto A=0 … Z=25, veamos la equivalencia:
H (7) ↔ S (18)
O (14) ↔ L (11)
L (11) ↔ O (14)
A (0) ↔ Z (25)
Mensaje cifrado: “SLOZ”
Si volvemos a aplicar el mismo cifrado Atbash sobre “SLOZ”, obtendríamos de nuevo “HOLA”.
Típo de Cifrado: Cifrado de Transposición
El cifrado por transposición es un método criptográfico en el cual se altera el orden (posición) de las letras del mensaje original sin modificar la letra en sí. A diferencia de los cifrados por sustitución (donde cada letra se reemplaza por otra), en la transposición se “reorganizan” los caracteres para volver ilegible el texto.
PRINCIPIO FUNDAMENTAL
Se parte de un texto en claro, por ejemplo, “ATAQUEAMANECER”.
La idea es cambiar el orden de sus letras siguiendo un patrón o “clave” específico.
El cifrado por transposición no modifica las letras, solo su ubicación.
EJEMPLO DE CIFRADO POR TRANSPOSICIÓN COLUMNAR
a) Clave: imaginemos que la clave numérica es “3–1–4–2” (un orden que indica en qué columna va cada caracter).
b) Formación de la cuadrícula:
Se escribe el texto en claro en filas, siguiendo el orden natural.
Si no se completa el último renglón, a veces se añaden caracteres de relleno (X, Z, etc.) para completarlo.
Supongamos que tenemos el texto en claro “ATAQUEAMANECER” y la organizamos en función de la longitud de la clave (4 columnas):
C1 C2 C3 C4
A T A Q
U E A M
A N E C
E R ? ?
(Dependiendo del largo, podríamos necesitar rellenos “?”)
c) Reordenar columnas según la clave:
La clave “3–1–4–2” indica que la 1.ª columna en la lectura final será la columna n.º 3, la 2.ª columna será la n.º 1, la 3.ª columna será la n.º 4 y la 4.ª columna la n.º 2.
Así, al leer columna por columna en ese orden, obtenemos el texto cifrado.
DESCIFRADO
Para descifrar, se realiza la operación inversa: se vuelven a colocar los caracteres cifrados en la cuadrícula atendiendo al orden de la clave y posteriormente se lee en el orden natural (por filas o columnas, según el método exacto).
OTROS TIPOS DE CIFRADO POR TRANSPOSICIÓN
Cifrado Rail Fence (o “valla de rieles”): se colocan las letras en “zigzag” sobre distintas filas y luego se leen fila a fila.
Escítala (método de la antigua Grecia): se enrolla una tira de cuero en un bastón de cierto grosor y se escribe el mensaje en sentido vertical. Luego, al desenrollarlo, el mensaje queda aparentemente desordenado.
Típo de Cifrado: Función hash
MD5 (Message-Digest Algorithm 5) es una función hash criptográfica de 128 bits que se emplea principalmente para verificar la integridad de datos. A partir de un mensaje o archivo de entrada, MD5 genera un “resumen” (hash) único de 32 caracteres hexadecimales. En realidad, MD5 no es un cifrado sino una función hash criptográfica. A diferencia de los cifrados, no es reversible y su objetivo principal es la integridad, no la confidencialidad.
PRINCIPIO DE LA FUNCIÓN HASH
MD5 toma el mensaje original (puede ser un texto, un archivo, etc.) y, mediante un proceso matemático, produce un valor hash de 128 bits que suele representarse en notación hexadecimal (32 dígitos).
Es determinista: el mismo contenido siempre generará la misma salida hash.
USO TÍPICO
Verificación de integridad: Se compara el hash calculado localmente con el hash oficial o esperado para confirmar que no ha habido alteraciones en el contenido.
Almacenamiento de contraseñas (práctica obsoleta): En algunos sistemas antiguos se usaba MD5 para almacenar contraseñas de manera “no reversible”. Sin embargo, esto hoy se considera inseguro.
¿CÓMO "DESCODIFICAR” MD5?
No es posible descifrar un hash de manera directa, porque no es un cifrado reversible.
Las funciones hash están diseñadas para que sea difícil obtener el mensaje original a partir del hash.
Aunque se pueden usar ataques de fuerza bruta o tablas de búsqueda (rainbow tables) para intentar encontrar una coincidencia de hash, esto no es un proceso de descifrado sino más bien de adivinanza sistemática y solo funciona si el mensaje original o la contraseña es débil o de longitud limitada.
LIMITACIONES DE MD5
Con el tiempo, se han descubierto vulnerabilidades que permiten encontrar colisiones (diferentes entradas que producen el mismo hash).
Debido a estos problemas de seguridad, hoy se recomiendan funciones de hash más seguras, como SHA-256 o superiores, especialmente en contextos críticos.