Cifrado Playfair

Charles Wheatstone

El cifrado de Playfair es un ejemplo de sustitución mono alfabética, donde un par de letras de un texto en claro se convierten en otro par distinto.

Este algoritmo surge alrededor de 1850 y es desarrollado por Charles Wheatstone quien fue un científico e inventor británico. Fue implementado en un disco desarrollado por él y nombrado así Disco de Wheatstone, sin embargo, al procedimiento empleado se le llama Playfair en honor a su amigo Lord Playfair.

Realiza el proceso de cifrado por bloques de caracteres. En esta sustitución, la clave está dada por una matriz de cifrado de tamaño 5x5, la cual contiene las letras del alfabeto sin las letras J y Ñ, el orden de la matriz está dado por la secuencia correspondiente a la palabra clave K.



Cifrado

Para empezar el cifrado de un texto plano, primero se construye la matriz de cifrado, para ello colocamos en la primera fila de la matriz la palabra clave sin letras repetidas.

Por ejemplo:


La matriz se escribe sin repetir las letras de la llave K, además de excluir la letra J, sustituyendo la misma por una letra I.


La sustitución del texto plano se realiza usando la matriz de cifrado generada y siguiendo las siguientes reglas:

  1. Si y se encuentran en la misma fila, escoger y situados a su derecha (circularmente)
  2. Si y se encuentran en la misma columna, escoger y situados debajo (circularmente)
  3. Si y se encuentran en distintas filas y columnas, escoger y situados en la diagonal opuesta
  4. Si , insertar carácter sin significado entre y para evitar su repetición, y después aplicar las reglas 1-3
  5. Si el número de letras es impar, añadir una sin significado al final del texto

Por ejemplo, usando K = NORIA, la matriz de cifrado es:


Texto en claro: a t a q u e  c e r o  h o r a s
Texto cifrado: I U O U T F D F I R Q C I N X R

Dónde

  • es la longitud del texto plano
  • es la llave del sistema
  • es la letra resultante de la posición del texto cifrado
  • es la letra de la posición del texto plano

Descifrado

Para realizar el descifrado de un texto cifrado, se construye la matriz de cifrado al igual que al cifrar, para ello colocamos en la primera fila de la matriz la palabra clave sin letras repetidas.

Por ejemplo:


La matriz se escribe sin repetir las letras de la llave K, además de excluir la letra J, sustituyendo la misma por una letra I.


La sustitución del texto cifrado se realiza usando la matriz de cifrado generada y siguiendo las siguientes reglas:

  1. Si y se encuentran en la misma fila, escoger y situados a su izquierda (circularmente)
  2. Si y se encuentran en la misma columna, escoger y situados arriba (circularmente)
  3. Si y se encuentran en distintas filas y columnas, escoger y situados en la diagonal opuesta
  4. Si , insertar carácter sin significado entre y para evitar su repetición, y después aplicar las reglas 1-3
  5. Si el número de letras es impar, añadir una sin significado al final del texto

Por ejemplo, usando K = NORIA, la matriz de cifrado es:


Texto cifrado: I U O U T F D F I R Q C I N X R
Texto en claro: a t a q u e  c e r o  h o r a s x

Dónde

  • es la longitud del texto cifrado
  • es la llave del sistema
  • es la letra resultante de la posición del texto plano
  • es la letra de la posición del texto cifrado

Referencias

  1. Prof. Dr. Eng. Monica Borda. (2011). Fundamentals in Information Theory and Coding. Berlin Heidelberg: Springer.
  2. Wade Trappe, Lawrence C. Washington. (2006). Introduction to Cryptography with Coding Theory. United States: Prentice Hall.