Шифр Цезаря: Как зашифровать символ, удаляющий информацию? - PullRequest
1 голос
/ 05 февраля 2020

У меня есть вопрос, который просит зашифровать сообщение, используя модифицированную версию Цезаря Шифра. Уловка в том, что я должен использовать все 256 символов расширенной библиотеки ASCII. Эта часть довольно проста.

Однако, когда я запускал шифрование, длина сообщения изменилась. После отслеживания проблемы кажется, что если используется определенный сдвиг, некоторые из символов преобразуются в ASCII 127, который является символом для «удаления». Таким образом, он удаляет предыдущий символ, вместо добавления символа к сообщению.

Любые предложения о том, как обойти это, сохраняя при этом целостность шифра?

Если это поможет Я могу написать решение в Python и VBA.

1 Ответ

4 голосов
/ 05 февраля 2020

Это на самом деле не вопрос криптографии, но позвольте мне ответить в любом случае.

Я думаю, что вы смешиваете разные слои своего приложения. Если вы получили символ ASCII, который удаляет другие символы или, что более вероятно, один из множества непечатаемых символов - вы все равно можете сохранить этот код в зашифрованной строке. Это просто плохая идея, чтобы попытаться напечатать эту зашифрованную строку после декодирования как ASCII в терминале. Просто используйте шестнадцатеричное представление, и все будет в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...