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

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

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

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

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


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

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


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

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

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

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

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

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

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

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.04.2019, 20:27

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

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

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

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

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


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

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

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