Cifrado Rail Fence (Zig-zag)

Revisado por el equipo editorial de Let's Cipher Lectura: ~7 min Nivel: Principiante

Definición directa

El cifrado Rail Fence es un cifrado de transposición que escribe el mensaje en un patrón zig-zag a través de n rieles (filas) y lo lee fila por fila para generar el texto cifrado. No cambia las letras; solo reordena su posición con un período de 2·(n−1).

  1. Elige el número de rieles n (≥2): es la única clave del cifrado.
  2. Escribe las letras del mensaje en zig-zag: baja hasta el último riel, sube al primero, repite.
  3. Lee las filas de arriba a abajo → ese es el texto cifrado.

Imagina escribir un mensaje como una montaña rusa: subes, bajas, subes, bajas… cada letra ocupa una posición distinta en la trayectoria. Cuando terminas, lees las letras fila a fila, no en el orden en que las escribiste. Eso es Rail Fence: un recorrido en zig-zag que desordena el mensaje sin tocar ni una sola letra. La clave: cuántos rieles usaste.

Comparativa rápida — Rail Fence vs otros cifrados de transposición

Rail Fence vs Columnar

  • ✔ Rail Fence: zig-zag fijo, solo parámetro n
  • ✔ Columnar: tabla + clave alfabética (más flexible)
  • ✔ Rail Fence: n-1 claves pos. / Columnar: N! posibles
  • ✔ Columnar es más resistente que Rail Fence simple

Rail Fence vs César

  • ✔ César: sustitución (cambia cada letra)
  • ✔ Rail Fence: transposición (mueve letras sin cambiarlas)
  • ✔ César: 25 claves / Rail Fence: 1 sola clave entera (n)
  • ✔ Ambos trivialmente rompibles con texto suficiente

Rail Fence vs Escítala

  • ✔ Escítala: columnas en orden fijo (ancho de la varilla)
  • ✔ Rail Fence: zig-zag diagonal por rieles
  • ✔ Ambas son transposiciones geométricas con clave numérica
  • ✔ La Escítala es la precursora histórica del Rail Fence

¿Qué es el cifrado Rail Fence?

El Rail Fence es un cifrado de transposición: no cambia las letras, solo reordena sus posiciones. El mensaje se escribe siguiendo un recorrido en zig-zag a través de n rieles (filas) y luego se lee fila por fila para formar el texto cifrado.

Este patrón zig-zag tiene un período de 2·(n−1) caracteres (para n ≥ 2). Cuando n = 1 el mensaje queda igual (identidad) y cuando n = 2 el resultado es la intercalación de letras de filas alternas.

Cómo funciona

1) Elige n rieles (n ≥ 2): define cuántas filas tendrá el patrón.

2) Escribe en zig-zag: recorre las filas en diagonal hacia abajo hasta el último riel y luego hacia arriba hasta el primero, repitiendo. Coloca cada letra del texto (normalizado) en la posición correspondiente del patrón.

3) Lee por filas: concatena de arriba a abajo el contenido de cada riel para obtener el cifrado.

Descifrado: reconstruye el patrón marcando las posiciones en zig-zag con el mismo número de rieles; rellena por filas usando el texto cifrado y, finalmente, lee el recorrido en zig-zag para recuperar el plano.

Ejemplo

Texto: ATAQUEAMANECER   •   Rieles: 3
Se escribe en zig-zag (baja hasta el riel 3 y sube al 1, y así sucesivamente) y luego se lee por filas.

Esquema básico

Texto:    ATAQUEAMANECER
Rieles:   3
Patrón:   (baja hasta el último riel y sube, repetido)

A . . . U . . . A . . . E .
. T . Q . E . M . N . C . R
. . A . . . A . . . E . . .
Cifrado:  AUAETQEMNCRAAE
  

Normaliza tildes para el patrón (á→a, etc.). En modo didáctico, puedes preservar ñ/Ñ sin cifrar y documentar la decisión.

Por qué el Rail Fence es perfecto para entender transposición

Piensa en teñido de señales de radio en la Segunda Guerra Mundial. Los operadores necesitaban cifrar mensajes a mano, sin máquinas. El Rail Fence era una solución elegante: solo necesitabas recordar un único número — los rieles. Tomabas el mensaje, trazabas el zig-zag mentalmente sobre el papel y leías las filas. En segundos, un mensaje intelígible se convertía en un revoltijo de letras perfectamente ordenadas.

La clave está en el período del zig-zag: con n=3 rieles, el patrón se repite cada 2·(3−1) = 4 posiciones. Eso significa que las letras de las posiciones 0, 4, 8, 12… siempre van al riel 1. Las de las posiciones 2, 6, 10… al riel 3. Ese patrón periódico es exactamente lo que lo hace tan fácil de atacar.

Patrón zig-zag para ATAQUEAMANECER (n=3):

A . . . U . . . A . . . E . ← riel 1

. T . Q . E . M . N . C . R ← riel 2

. . A . . . A . . . E . . . ← riel 3

Cifrado: AUAE | TQEMNCR | AAE → AUAETQEMNCRAAEX

Referencia: Helen Fouche Gaines, Cryptanalysis, Cap. 8 — Route Transpositions (1939, edición Dover 1956).

Período fijo: 2·(n−1)

El zig-zag tiene un período matemático exacto. Con n=3: período=4. Con n=5: período=8. Eso significa que el índice de cada letra en el patrón determina su fila con fórmula directa, sin necesidad de simular el zig-zag completo.

Conserva frecuencias del idioma

Como toda transposición, Rail Fence no cambia ninguna letra. La E sigue siendo E. Las frecuencias del idioma permanecen intactas — lo que permite identificar inmediatamente que es una transposición (y no un César o un Vigenère).

La clave más simple de toda la criptografía clásica

Un solo entero n ≥ 2. Con n=longitud del texto: el texto queda igual (identidad). Con n=2: intercalación de pares. Con n=3–5: uso típico didáctico y recreativo. Simplicidad máxima, resistencia mínima.

Cómo romper el cifrado Rail Fence

Saber how to break Rail Fence cipher step by step es trivial: el espacio de claves es enorme… pero solo hay un parámetro — el número de rieles. Con texto suficiente, se prueba cada valor de n en segundos.

Enumeración de rieles

Con texto de longitud L, el número máximo de rieles útiles es L/2. Se prueba n=2, 3, 4… hasta encontrar texto legible. Proceso automático en milisegundos.

Análisis de frecuencia

Las frecuencias de letras son idénticas al idioma original (la E sigue siendo la más frecuente en español). Eso confirma que es transposición — y descarta inmediatamente César, Vigenère, Playfair.

Explotación del período

El período exacto 2·(n−1) permite calcular directamente cuántas letras hay en cada riel sin simulación. Las fórmulas son óptimas O(L), no fuerza bruta.

Reto: ¿cuántos rieles usó este cifrado?

Texto cifrado interceptado: AUAETQEMNCRAAEX
Solo sabes que es Rail Fence. El texto tiene 15 letras. ¿Cuántos rieles pruebas? ¿Cuál da texto legible?

Mostrar solución →

n=2: Descifrado → AAUEAQTEMNCRAAEX

n=3: reconstruímos el zig-zag con 15 letras:

Riel 1 (4 letras): AUAE

Riel 2 (7 letras): TQEMNCR

Riel 3 (4 letras): AAEX

→ Recorrido zig-zag: ATAQUEAMANECER(X)

El mensaje era ATAQUEAMANECER. La X era relleno para llegar a 15 letras.

  • Enumeración de rieles: probar distintos valores de n y reconstruir el zig-zag.
  • Heurísticas de idioma: uso de bigramas/trigramas frecuentes y palabras probables para validar el orden.
  • Patrón periódico: explotar el período 2·(n−1) para acotar rápidamente candidatos.
  • Como toda transposición, conserva la frecuencia global de letras; cambia su orden, lo que facilita detectarlo.

    Pros y contras

    Pros

    • Muy visual y didáctico para entender transposiciones y patrones periódicos.
    • Parámetro simple (n rieles) que permite experimentar y comparar efectos.
    • Fácil de implementar y reproducir en una matriz o directamente por índices.

    Contras

    • Transposición simple: con suficiente texto, el patrón y n se recuperan con facilidad.
    • Sensible a decisiones de normalización (espacios/signos); deben documentarse para el descifrado.
    • No ofrece integridad ni autenticidad; solo reordena el mensaje.

    Sigue aprendiendo: del Rail Fence a la criptografía moderna

    Rail Fence es la base más visual de la transposición. Este camino te lleva desde el zig-zag hasta los algoritmos más seguros del mundo:

    Herramienta de Cifrado y Descifrado Rail Fence

    Elige 2 o más rieles.

    Visualización del patrón