Este repositorio contiene una aplicación de criptografía que utiliza lenguaje ensamblador de bajo nivel donde implementé un algoritmo de cifrado, a saber, Transposición en columnas, una forma de cifrado de transposición similar al Rail Fence Cipher que utiliza dos terminales. La entrada se proporcionará desde el primer terminal, denominado "terminal de entrada", y se enviará una versión cifrada o descifrada de la entrada al segundo terminal, denominado "terminal de salida".
El mensaje de entrada siempre tendrá el formato “KEY:ABCD#INPUT_STRING*”, donde ABCD será una clave de cuatro caracteres para la transposición de columnas y INPUT_STRING será un mensaje de 16 caracteres que estará cifrado o descifrado. Implementé un botón para cambiar entre los modos de cifrado y descifrado. Inicialmente, el microcontrolador estará en modo de cifrado y, si se presiona el botón, pasará al modo de descifrado. Tenga en cuenta que el botón se puede presionar tantas veces como se desee.
MODO | Terminal de entrada | Terminal de salida |
---|---|---|
Modo de cifrado | CLAVE:PATO#ITISASMUESTRAENTRADA* | IAEUIAPNSMITTSLP |
Modo de descifrado | CLAVE: PATO#IAEUIAPNSMITTSLP* | ES UNA ENTRADA DE MUESTRA |
Información sobre transposición de columnas: https://en.wikipedia.org/wiki/Transposition_cipher