Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

TI

Светлана Болтак - Здравствуй, жопа, Новый год! (feat. MC $YARMOLICK$)

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

Методические материалы: С.В. Ярмолик, В.Н. Ярмолик - "Криптография и охрана коммерческой информации"

Лабораторная работа 1. Вариант 4

Написать программу, которая выполняет шифрование и дешифрование текстового файла любого размера, содержащего текст на заданном языке, используя следующие алгоритмы шифрования:

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

Для всех алгоритмов ключ задается с клавиатуры пользователем. Программа должна игнорировать все символы, не являющиеся буквами заданного алфавита, и шифровать только текст на заданном языке. Все алгоритмы должны быть реализованы в одной программе. Программа не должна быть написана в консольном режиме. Результат работы программы – зашифрованный/расшифрованный файл/ы.

Лабораторная работа 2. Вариант 12

Реализовать систему потокового шифрования и дешифрования для файла с любым содержимым с помощью генератора ключевой последовательности на основе линейного сдвигового регистра с обратной связью LFSR1 (размерность регистра = номер варианта + 22). Начальное состояние регистра ввести с клавиатуры. Поле для ввода состояния регистра должно игнорировать любые символы кроме 0 и 1. Вывести на экран сгенерированный ключ (последовательность из 0 и 1), исходный файл и зашифрованный файл в двоичном виде. Программа не должна быть написана в консольном режиме. Результат работы программы – зашифрованный/расшифрованный файл.

Лабораторная работа 3. Вариант 2

Реализовать шифратор и дешифратор алгоритма Эль-Гамаля файла c произвольным содержимым, а также реализовать вычисление открытого ключа g при данном значении p, используя алгоритм нахождения первообразного корня по модулю. Значения параметров p, x и k задаются пользователем. Программа должна осуществлять проверку ограничений на вводимые пользователем значения параметров алгоритма. Организовать вывод содержимого зашифрованного файла на экран в виде чисел в 10-й системе счисления. Вывести значение g на экран. Результат работы программы – зашифрованный/расшифрованный файл/ы. Используя алгоритм из методички, искать все первообразные корни по модулю p. Все найденные корни вывести на экран и предложить для шифрования ввести на выбор любой из найденных.

Лабораторная работа 4. Вариант 1

Реализовать программное средство, выполняющее вычисление и проверку электронной цифровой подписи (ЭЦП) текстового файла на базе алгоритма RSA. Для вычисления хеш-образа сообщения использовать функцию 3.2 из методичички (стр.22, Н0=100). Числа p и q, а также закрытый ключ, ввести с клавиатуры. Произвести все необходимые проверки для параметров, вводимых с клавиатуры. В отдельное поле вывести полученный хеш сообщения в 10 с/cч. ЭЦП вывести как целое число. Сформировать новое сообщение, состоящее из исходного сообщения и добавленной к нему цифровой подписи. При проверке ЭЦП предусмотреть возможность выбора файла для проверки. На экран вывести результат проверки:

  • 1: сообщение о том верна подпись или нет;
  • 2: вычисленные при проверке значения.