Система цифровой подписи на базе математических алгоритмов работает с помощью пары ключей: закрытого для подписи и открытого для проверки. 14 Закрытый ключ известен только подписывающему, а открытый ключ находится в открытом доступе. 1
Процесс работы системы включает три этапа: 1
- Генерация ключей. 1 Создаётся пара ключей, которая состоит из закрытого и открытого. 1
- Генерация подписи. 1 Отправитель выбирает случайное значение k для каждого сообщения. 1 Затем алгоритм использует его, хэш-дайджест и закрытый ключ отправителя для вычисления двух чисел: r и s. 1 Эти значения формируют цифровую подпись. 1
- Проверка подписи. 1 Когда получатель получает сообщение и приложенную к нему подпись, он использует открытый ключ отправителя для проверки. 1 Получатель также прогоняет сообщение через ту же хэш-функцию, чтобы получить дайджест. 1 Затем, используя значения r, s и открытые параметры, алгоритм выполняет несколько вычислений, чтобы восстановить число. 1 Система подтверждает правильность подписи, если восстановленное число совпадает с оригинальным r. 1
Некоторые математические алгоритмы, на которых основана работа системы цифровой подписи:
- Алгоритм цифровой подписи (DSA). 14 Основан на задаче дискретного логарифма, подтверждает личность отправителя и проверяет целостность сообщения, не шифруя его содержимое. 1
- Алгоритм цифровой подписи RSA. 2 Безопасность подкреплена математическими принципами теории чисел, в частности сложностью факторизации больших составных чисел. 2 Алгоритм использует свойства простых чисел и модульную арифметику для создания надёжной основы для цифровых подписей. 2