Этот репозиторий содержит криптографическое приложение, использующее низкоуровневый ассемблер, в котором я реализовал алгоритм шифрования, а именно столбчатую транспозицию, форму транспозиционного шифра, аналогичную Rail Fence Cipher, с использованием двух терминалов. Ввод будет поступать из первого терминала, помеченного как «входной терминал», а зашифрованная или расшифрованная версия ввода будет отправлена на второй терминал, помеченный как «выходной терминал».
Входное сообщение всегда будет иметь вид «KEY:ABCD#INPUT_STRING*», где ABCD — это четырехзначный ключ для транспонирования столбцов, а INPUT_STRING — 16-значное сообщение, которое будет либо зашифровано, либо расшифровано. Я реализовал кнопку для переключения между режимами шифрования и дешифрования. Микроконтроллер изначально будет находиться в режиме шифрования, а при нажатии кнопки перейдет в режим дешифрования. Обратите внимание, что кнопку можно нажимать сколько угодно раз.
РЕЖИМ | Входной терминал | Выходной терминал |
---|---|---|
Режим шифрования | КЛЮЧ: УТКА#ITISASAMPLEINPUT* | ИАЭУИАПНСМИТТСЛП |
Режим дешифрования | КЛЮЧ: УТКА#IAEUIAPNSMITTSLP* | ITISASAMPLEINPUT |
Информация о транспозиции столбцов: https://en.wikipedia.org/wiki/Transposition_cipher.