Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
hilailu
0 / 0 / 0
Регистрация: 06.04.2019
Сообщений: 4
1

Одноразовый шифроблокнот

17.04.2019, 20:27. Просмотров 198. Ответов 0

Добрый день. Нужно написать одноразовый шифроблокнот на Делфи. Погуглил, нашел, что он реализуется через шифр Вернама. Суть статейки и немного копипасты —

Для начала создается сжимающая таблица, пикрелейтед. В первой строке часто встречающиеся символы, а далее оставшиеся буквы алфавита. Таблица нужна, собственно, для шифрования информации:
Одноразовый шифроблокнот


Допустим, нужно закодировать фразу ПОБЕГ ЗАВТРА. Шифровку проще записывать группами по пять. Тогда шифр будет выглядеть так: 80781 48386 18239 11000. Последняя группа добивается нулями до пяти цифр.

Затем вырываем так называемую страницу из шифроблокнота. Ни в коем случае нельзя указывать страницу шифроблокнота, т.к. декодировщикам будет проще разгадать шифр. Вместо этого для идентификации страницы используется первая группа, ее не следует использовать для шифрования, а записать как есть. Под цифрами шифровки записываем цифры одноразового кода начиная со второй группы, после чего складываем цифры в каждой колонке, всегда отбрасывая возникающий перенос:
Одноразовый шифроблокнот


Сжигаем страницу, с помощью которой шифровали текст, отправляем кодировку получателю. Получатель достанет свою копию шифроблокнота, найдет нужную страницу по первой группе и произведет вначале обратную операцию, вычитая из каждой цифры шифровки цифру с шифроблокнота, всегда отбрасывая минус. Затем возьмет сжимающую таблицу и с помощью нее уже окончательно раскодирует текст. Точно так же — берем 8, это вторая строка, 0 колонка, значит первая буква П, и так далее. А потом тоже сожжет свою копию и больше никто и никогда не сможет расшифровать перехваченное сообщение.

Здесь больше инфы про алгоритм работы шифроблокнота.

Собственно, все. А теперь вопрос на засыпку: как реализовать это на Делфи? Насколько я понял, здесь подключаются текстовые файлы самих страниц шифроблокнота, для сжимающей таблицы используется матрица. А как это все оформить? Да и с генерацией страниц шифроблокнота я не совсем разобрался. Хелпаните, пожалуйста.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2019, 20:27
Ответы с готовыми решениями:

Одноразовый счетчик
Допустим єсть часть програмы: for i:=1 to n do begin readln (x); if x=0 then l:=i; end; ...

Одноразовый пароль
Кто нибудь уже делал одноразовый пароль на C# WF ? Вот код с примером ) тут пароль 123 ) и при...

Одноразовый таймер
Подскажите пожалуйста - есть ли готовая конструкция? Нужно при нажатии на кнопку запустить таймер...

Одноразовый вывод повторяющихся значений
Задача: Написать шаблонную функцию, котороая будет принимать массивы любого типа const int...

Одноразовый скрипт для Word
Написал скрипт осществляющий формирование документов в Word из-под ArcGIS. И все бы хорошо если б...

0
StudAssistant
Эксперт
9811 / 7003 / 2319
Регистрация: 17.04.2006
Сообщений: 9,622
17.04.2019, 20:27
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.
0
StackOverflow
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2019, 20:27

Одноразовый скрипт, с чего начать?
Доброго времени суток. Столкнулся со следующей ситуацией: Нужно в базе обновить все записи ОДИН...

Одноразовый пароль на документы microsoft office
Здравствуйте, подскажите, возможно ли задать один одноразовый пароль (на открытие документа)? При...

Необходим провод для подзарядки телефонов(одноразовый)
Господа умники,нужен провод для зарядки телефонов который после определенного времени перестает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru