CIFRADO CON SOLITARIO
El cifrado de Playfair fue inventado por el físico Charles Wheatstone y difundido por su amigo Lord Playfair que acabó dándole el nombre. Es un cifrado poligráfico que a cada par de letras del texto claro hace corresponder otras dos letras en el texto cifrado. Solitario es un cifrado "stream", en modo "output-feedback" (salida- retroalimentación). Algunas veces se les llama generadores de claves ("Key-Generator", KG en la jerga militar de EE.UU.). La idea básica es que Solitario genera una ristra de números, llamada "keystream" (ristra o secuencia de clave), entre 1 y 26. Para cifrar, se genera una ristra de longitud igual al texto original. Seguidamente se suman, módulo 26, letra a letra al texto original, para crear el texto cifrado. Para descifrar, se genera la misma ristra y se resta, módulo 26, del texto cifrado. No te preocupes, explicaré qué es "módulo" en un minuto.
Se usa con un alfabeto de 25 letras que se disponen sobre un cuadro de cinco filas y cinco columnas como en la tabla de Polibio. La disposición de las letras en el cuadro es la clave del cifrado. Por ejemplo:
M | Q | S | U | V |
W | X | Y | Z | P |
I | T | E | C | A |
N | R | O | B | D |
F | G | H | K | L |
Para efectuar el cifrado se siguen las siguientes reglas:
1. Si el par de letras a cifrar están situadas en filas y columnas diferentes, se forma el rectángulo que tiene como vértices opuestos las dos letras. Las letras de los otros dos vértices forman el texto cifrado, ordenadas por filas de la misma forma que en el texto claro. Es decir que se pone antes en el texto cifrado la letra que se encuentra en la misma fila que la primera letra del texto claro. Por ejemplo, con la tabla anterior al par li le corresponde FA y al par zo le corresponde YB.
2. Si ambas letras se encuentran en la misma fila, se sustituyen por las que se encuentran en la misma fila a su derecha. Si alguna de ellas está en la última columna se sustituye por la letra de la misma fila en la primera columna. Por ejemplo ic se cifraría como TA y od como BN.
3. Iguamente, si están en la misma columna, se cifran mediante las letras que se encuentran justamente debajo de ellas. Si alguna está en la quinta fila, por la de la primera. Con la tabla anterior, so se cifra como YH, y pl comoAV.
No se pueden cifrar pares compuestos por letras iguales. La solución es procurar que no suceda esto por ejemplo introduciendo una letra con valor nulo entre las dos iguales. Si el número de letras a cifrar es impar, se le añade un nulo al final.