Solución de otro de los retos de la plataforma id0-rsa, la cual está dedicada exclusivamente a desafíos de criptografía.
Se trata de otro de los retos de criptografía clásica que en ella aparecen y, como dije en el post anterior, lo voy a resolver tanto de forma manual ("lápiz y papel") como de forma automatizada mediante la utilización de una herramienta.
El reto en cuestión lleva por título "Rail Fence" y, en mi opinión, presenta un nivel de dificultad muy bajo (★☆☆☆☆).
Su enunciado dice lo siguiente: 'Personally I would never rail a fence'.
El criptograma a descifrar es el siguiente:
WAPSD EXTCO EEREF SELIO RSARC LIETE OIHHP VASTF EGBER IPAPN TOEGI AIATH DDHIY EACYE RQAEN OHRTE TEVME BGHMF EIOWS GFHCL XEUUC OMTOT LERES SDEWW ORCCS HEURE ATTEG ALSEB APXET IURWV RTEEH IOTLO SNACN NULCV LCMTH HHCOH TIOTD ASNAL TSANA CASOR LEKAS TATCW INTLO TRYER YLTND RILER AOMAX OITDE ECOIA HAALS TYIOA DAEHI OTSTE IEYES HHSNG EHCAT SOUAC EHSST TCODN FSOTS TIIGN LTTNL DUBST TCMIM EHTAO IUUPF TSTTI PUEAY OAEOA EEALA LWGWM GNHYU IAAHD TORYA OLVMH RHTGY IHNNM UAARL MMHID HYFCP GRAET MTCNT HIIIO RCVCL BOTSA OFRNR YEHTG IFHEA WLYSC EEEEY UVEIM SOEUE TAYHN NITEK AERAW DSIAE QTDIE HET
Solución:
a) De forma manual:
Tal y como nos cuenta wikipedia, el cifrado rail fence es un criptosistema de transposición en el que el texto plano se escribe en diagonal en un número determinado de raíles de una cerca imaginaria.
El texto en claro se comienza a escribir en la primera posición del raíl (fila o nivel) superior, pasándose, tras escribirse un carácter, al raíl inmediatamente inferior, en el que se escribe otro carácter en la diagonal (siguiente posición vertical respecto al carácter del raíl anterior), y así sucesivamente. Cuando se llega al último raíl (última fila o nivel) se escribe hacía arriba también en diagonal, y cuando se llega de nuevo al raíl superior el texto en claro se sigue escribiendo hacia abajo y en diagonal, y así sucesivamente hasta que se escribe todo el texto plano. Una vez realizado ésto el criptograma se obtiene leyendo los caracteres por filas y de arriba a abajo.
Para descifrar un criptograma se debe conocer el número de raíles (filas o niveles) utilizados, ir disponiendo en cada uno de ellos los caracteres del criptograma de forma consecutiva y, al finalizar, obtener el texto en claro leyendo diagonalmente de la forma anteriormente indicada.
Si no se conoce el número de raíles siempre nos queda la fuerza bruta :). En nuestro caso voy probando con diferentes números de raíles hasta que con 17 consigo descifrar el criptograma. Para ello, dispongo en la siguiente plantilla, fila a fila y de arriba a abajo, los caracteres del criptograma:
Es decir:
Y leyendo diagonalmente obtengo el texto en claro:
WE ATTACK AT DAWN IS A COMMON EXAMPLE PLAIN TEXT SO I FIGURE WE CAN USE IT HERE TO PROVE THAT YOU HAVE DECRYPTED THIS MESSAGE SUCCESSFULLY SUBMIT THE WORD BIRDCAGE WHICH IS A MOVIE THAT IS ON TV WHILE I AM WRITING THIS I AM ADDING A LOT OF TEXT HERE TO HELP THOSE OF YOU THAT DECIDE TO DO CHARACTER FREQUNCY ANALYSIS WHICH IS HONESTLY A PRETTY GOOD STRATEGY HOPEFULLY YOU ALREADY HAVE BUILT OR HAVE ACCESS TO A SOMETHING THAT CAN ANALYSE TEXT AND DETERMINE IF THE CHARACTER FREQUENCIES MATCH THE ENGLISH LANGUAGE BECAUSE IT MAY TAKE A WHILE TO ROLL ONE FROM SCRATCH WHILE TRYING TO SOLVE THIS PROBLEM
Con lo que la solución a este resto es: "BIRDCAGE".
b) De forma automatizada:
Utilizo una de las muchas herramientas 'online' existentes sobre el cifrado rail fence:
Y obtengo el mismo resultado que en el descifrado manual.
Se trata de otro de los retos de criptografía clásica que en ella aparecen y, como dije en el post anterior, lo voy a resolver tanto de forma manual ("lápiz y papel") como de forma automatizada mediante la utilización de una herramienta.
El reto en cuestión lleva por título "Rail Fence" y, en mi opinión, presenta un nivel de dificultad muy bajo (★☆☆☆☆).
Su enunciado dice lo siguiente: 'Personally I would never rail a fence'.
El criptograma a descifrar es el siguiente:
WAPSD EXTCO EEREF SELIO RSARC LIETE OIHHP VASTF EGBER IPAPN TOEGI AIATH DDHIY EACYE RQAEN OHRTE TEVME BGHMF EIOWS GFHCL XEUUC OMTOT LERES SDEWW ORCCS HEURE ATTEG ALSEB APXET IURWV RTEEH IOTLO SNACN NULCV LCMTH HHCOH TIOTD ASNAL TSANA CASOR LEKAS TATCW INTLO TRYER YLTND RILER AOMAX OITDE ECOIA HAALS TYIOA DAEHI OTSTE IEYES HHSNG EHCAT SOUAC EHSST TCODN FSOTS TIIGN LTTNL DUBST TCMIM EHTAO IUUPF TSTTI PUEAY OAEOA EEALA LWGWM GNHYU IAAHD TORYA OLVMH RHTGY IHNNM UAARL MMHID HYFCP GRAET MTCNT HIIIO RCVCL BOTSA OFRNR YEHTG IFHEA WLYSC EEEEY UVEIM SOEUE TAYHN NITEK AERAW DSIAE QTDIE HET
Solución:
a) De forma manual:
Tal y como nos cuenta wikipedia, el cifrado rail fence es un criptosistema de transposición en el que el texto plano se escribe en diagonal en un número determinado de raíles de una cerca imaginaria.
El texto en claro se comienza a escribir en la primera posición del raíl (fila o nivel) superior, pasándose, tras escribirse un carácter, al raíl inmediatamente inferior, en el que se escribe otro carácter en la diagonal (siguiente posición vertical respecto al carácter del raíl anterior), y así sucesivamente. Cuando se llega al último raíl (última fila o nivel) se escribe hacía arriba también en diagonal, y cuando se llega de nuevo al raíl superior el texto en claro se sigue escribiendo hacia abajo y en diagonal, y así sucesivamente hasta que se escribe todo el texto plano. Una vez realizado ésto el criptograma se obtiene leyendo los caracteres por filas y de arriba a abajo.
Para descifrar un criptograma se debe conocer el número de raíles (filas o niveles) utilizados, ir disponiendo en cada uno de ellos los caracteres del criptograma de forma consecutiva y, al finalizar, obtener el texto en claro leyendo diagonalmente de la forma anteriormente indicada.
Si no se conoce el número de raíles siempre nos queda la fuerza bruta :). En nuestro caso voy probando con diferentes números de raíles hasta que con 17 consigo descifrar el criptograma. Para ello, dispongo en la siguiente plantilla, fila a fila y de arriba a abajo, los caracteres del criptograma:
Es decir:
WE ATTACK AT DAWN IS A COMMON EXAMPLE PLAIN TEXT SO I FIGURE WE CAN USE IT HERE TO PROVE THAT YOU HAVE DECRYPTED THIS MESSAGE SUCCESSFULLY SUBMIT THE WORD BIRDCAGE WHICH IS A MOVIE THAT IS ON TV WHILE I AM WRITING THIS I AM ADDING A LOT OF TEXT HERE TO HELP THOSE OF YOU THAT DECIDE TO DO CHARACTER FREQUNCY ANALYSIS WHICH IS HONESTLY A PRETTY GOOD STRATEGY HOPEFULLY YOU ALREADY HAVE BUILT OR HAVE ACCESS TO A SOMETHING THAT CAN ANALYSE TEXT AND DETERMINE IF THE CHARACTER FREQUENCIES MATCH THE ENGLISH LANGUAGE BECAUSE IT MAY TAKE A WHILE TO ROLL ONE FROM SCRATCH WHILE TRYING TO SOLVE THIS PROBLEM
Con lo que la solución a este resto es: "BIRDCAGE".
b) De forma automatizada:
Utilizo una de las muchas herramientas 'online' existentes sobre el cifrado rail fence:
Comentarios
Publicar un comentario