Skip to main content

Cifrado de transposición

 

El cifrado por transposición consiste en agrupar los caracteres del mensaje a cifrar dentro de una matriz bidimensional, un carácter en cada índice de la matriz, el segundo paso es leer cada columna por ejemplo para cifrar el mensaje «A quien madruga Dios le ayuda» con una matriz de 5×5, en este caso el 5 sería nuestra clave, nuestra matriz quedaría de la siguiente manera:

A

Q

U

I

E

N

M

A

D

R

U

G

A

D

I

O

S

L

E

A

Y

U

D

A

H

 

El último elemento que esta sombrado es el relleno de la matriz este se genera aleatoriamente.

Ahora leemos cada columna para crear nuestro mensaje cifrado: ANUOY QMGSU UAALD IDDEA ERIAH, para mayor seguridad y complejidad podemos leer las columnas con un determinado orden preestablecido entre las entidades involucradas, por ejemplo leeremos las columnas con el orden 3-5-2-1-4 el mensaje cifrado seria : UAALD ERIAH QMGSU ANUOY IDDEA

Para des cifrar el mensaje lo que haremos es a volver a hacer una tabla para leer las columnas:

A

N

U

O

Y

Q

M

G

S

U

U

A

A

L

D

I

D

D

E

A

E

R

I

A

H

 

Si implementamos algún orden en especial para cifrar el mensaje, para des cifrarlo tenemos que leer las columnas en orden inverso, utilizando el mensaje UAALD ERIAH QMGSU ANUOY IDDEA al invertir el orden quedaría como el original y así podríamos generar la tabla anterior para des cifrar el mensaje.

Recomendaciones

Algunas personas manejan los espacios en blanco con caracteres especiales que al des cifrar el mensaje los sustituyen por los espacios en blanco para hacer más legible el mensaje.

Si nuestro mensaje es más corto que nuestra clave, el mensaje no quedaría cifrado del todo y sería más fácil de romper por ejemplo si nuestro mensaje es «hola amigo» y nuestra clave es 10 la matriz quedaría algo así:

H O L A (s) A M I G O

Como ven este mensaje queda en texto plano es decir que el método no servirá de nada, por eso hay que comprobar que el mensaje sea más grande que nuestra clave.

En este ejemplo use el carácter (s) como un espacio en blanco.

Algoritmo para Cifrar

 

Si quisiéramos cifrar todo un documento realizar el cifrado sería un trabajo titánico sin hablar del des cifrado del mismo, pero no hay que preocuparnos que por eso tenemos las computadoras para que realicen el trabajo tedioso por nosotros, ahora programemos una función para cifrar un mensaje y darle la clave para que genere la matriz.

 

 Código para decifrar

 

 

 

 

 


Comentarios Facebook

Rodrigo Gómez

Desarrollador web en Mirrorservices.com desde hace 5 años.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *