Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КУРСОВАЯ Зуйковой ЦСПиМЗ.docx
Скачиваний:
0
Добавлен:
04.02.2026
Размер:
3.41 Mб
Скачать

Глава 1 Формирование технического задания на составную часть эскизного проекта

Техническое задание на составную часть эскизного проекта приведено в Приложении А. В соответствии с темой и индивидуальным заданием сформировано технического задание на составную часть эскизного проекта микропроцессорной криптографической системы цифровой подписи и аутентификации по алгоритму RSA в расширенных полях Галуа с кодовым наименованием МПКС-RSA-ЦПА-n-2025-10(ЦПА)

Расшифровка данного шифра:

• МПКС – Микропроцессорная криптографическая система

• RSA – алгоритм RSA

• ЦПА – шифр на основе цифровой подписи и аутентификации

• n – шифр разрабатывается в расширенных полях Галуа

• 2025 – год разработки шифра

• 10 – номер бригады

• (ЦПА) – цифровая подпись и аутентификация

Согласно техническому заданию, система должна формировать цифровую подпись для 16-битного хеш-образа, полученного из 48-битного исходного сообщения. Таким образом, хеш-функция является неотъемлемой частью криптосистемы и предшествует этапу возведения в степень по модулю.

Цель разработки - создание модели цифровой подписи и аутентификации для процессора ADSP-2181. Результатом должна стать разработка алгоритмов и методов, позволяющих преобразовывать данные в зашифрованный вид при помощи закрытого ключа и затем обратно в исходный вид при помощи открытого ключа.

Разрабатываемая система будет использовать цифровую подпись для аутентификации сообщения Х на приеме. Курсовой проект разделен на два этапа - разработку системы цифровой подписи и ее аутентификацию.

Глава 2 Краткие теоретические основы

2.1 Математический аппарат

Реализация криптосистем на сигнальном процессоре тесно связана с вычислениями в полях Галуа, особенно в расширенных полях, формируемых на основе простых полей. Работа в таких полях позволяет эффективно управлять данными без выхода за пределы разрядной сетки процессора, поскольку при выполнении арифметических операций элементы возвращаются в поле с использованием остаточного деления, то есть по модулю.

Расширенные поля Галуа, обозначаемые как GF(pn), где p - простое число, а n - натуральное число, представляют собой множество элементов, описываемых полиномами. Операции в таких полях требуют применения определенного математического аппарата:

Сложение: осуществляется поэлементно, с учетом правил арифметики в GF(p) и возможного вычитания по модулю р.

Вычитание: аналогично сложению, вычитание выполняется поэлементно, применяя модульную арифметику.

Умножение: умножение полиномов выполняется с последующим сокращением по заданному неприводимому полиному, который используется для определения структуры поля. Сокращение осуществляется через деление с остатком, что возвращает результат в рамках поля.

Деление: Деление также производится на полиномах с использованием алгоритма Евклида для нахождения наибольшего общего делителя и деления с остатком.

2.2 Особенности реализации rsa в расширенных полях Галуа

В классическом виде алгоритм RSA реализуется в кольце вычетов по модулю

𝑛 = 𝑝 ⋅𝑞, где 𝑝 и 𝑞 — большие простые числа. Однако при адаптации RSA к архитектуре сигнальных процессоров, таких как ADSP-2181, возникает необходимость использовать расширенные поля Галуа GF(2ⁿ), поскольку они позволяют эффективно выполнять длинную арифметику на 16-разрядной платформе без переполнений.

В поле GF(2ⁿ) операции сложения и вычитания эквивалентны побитовой операции XOR, а умножение и деление выполняются с редукцией по неприводимому полиному степени n. Это позволяет представлять 48-битные числа как трёхсловные структуры из 16-битных регистров и реализовывать модульное возведение в степень через последовательность базовых операций, совместимых с архитектурой процессора.

Кроме того, использование расширенных полей Галуа обеспечивает детерминированное время выполнения операций, что повышает устойчивость к атакам по времени. Несмотря на то, что безопасность классического RSA основана на трудности факторизации целых чисел, в контексте учебного проекта применение GF(2ⁿ) служит демонстрацией адаптации криптографических примитивов к ограничениям аппаратной платформы [4, 7].