Дополнительные контрольные комбинации, которые передаются вместе с подписью и используются при ее проверке, вырабатываются при формировании ключа проверки по ключу подписи и могут храниться в системе и использоваться в момент формирования подписи, либо вычисляться заново в этот момент.
Первый подход предполагает затраты дисковой памяти, так как необходимо хранить 2L+1–2 значений хэш-функции всех уровней, а второй требует большого объема вычислений в момент формирования подписи. Можно использовать и компромиссный подход – хранить все хэш-комбинации начиная с некоторого уровня l*, а комбинации меньшего уровня вычислять при формировании подписи.
В рассмотренной выше схеме подписи на 8 сообщений можно хранить все 14 контрольных комбинаций, используемых при проверки (всего их 15, но самая верхняя не используется), тогда при проверке подписи их не надо будет вычислять заново. Можно хранить 6 комбинаций начиная с уровня 1 (C0(1), C1(1), C2(1), C3(1), C0(2), C1(2)), тогда при проверке подписи сообщения № 5 необходимо будет заново вычислить комбинацию C4(0), а остальные (C0(2),C3(1)) взять из таблицы, и т.д Указанный подход позволяет достичь компромисса между быстродействием и требованиям к занимаемому количеству дискового пространства.
Отметим, что отказ от хранения комбинаций одного уровня приводит к экономии памяти и росту вычислительных затрат примерно вдвое, то есть зависимость носит экспоненциальный характер.
6. Атаки на ЭЦП
Стойкость большинства схем ЭЦП зависит от стойкости ассиметричных алгоритмов шифрования и хэш-функций.
Существует следующая классификация атак на схемы ЭЦП:
- атака с известыи открытым ключем.
- Атака и известными подписанными сообщениями – противник, кроме открытого кюча имеет и набор подписанных сообщений.
- Простая атака с выбором подписанных сообщений – противник имеет возможность выбирать сообщения, при этом открытый ключ он получает после выбора сообщения.
- Направленная атака с выбором сообщения
- Адаптивная атака с выбором сообщения.
Каждая атака преследует определенную цель, которые можно разделить на несколько классов:
- полное раскрытие. Противник находит секретный ключ пользователя
- универсальная подделка. Противник находит алгоритм, функционально аналогичный алгоритму генерации ЭЦП
- селективная подделка. Подделка подписи под выбранным сообщением.
- Экзистенциальная подделка. Подделка подписи хотя бы для одного случайно выбранного сообщения.
На практике применение ЭЦП позволяет выявить или предотвратить следующие действия нарушителя:
- отказ одного из участников авторства документа.
- Модификация принятого электронного документа.
- Подделка документа.
- Навязывание сообщений в процессе передачи – противник перехватывает обмен сообщениями и модифицирует их.
- Имитация передачи сообщения.
Так же существуют нарушения, от которых невозможно оградить систему обмена сообщениями – это повтор передачи сообщения и фальсификация времени отправления сообщения.Противодействие данным нарушениям может остовываться на использовании временных вставок и строгом учете входящих сообщений.
7. Некоторые средства работы с ЭЦП
В настоящее время существует большое кодичество комплексов для работы с электронной подписью, или использующие ее.
Приведем некоторые из них:
7.1. PGP
Наиболее известный - это пакет PGP (Pretty Good Privacy) – (www.pgpi.org ), без сомнений являетющийся на сегодня самым распространенным программным продуктом, позволяющим использовать современные надежные криптографические алгоритмы для защиты информации в персональных компьютерах.
К основным преимуществам данного пакета, выделяющим его среди других аналогичных продуктов следует отнести следующие:
1. Открытость. Исходный код всех версий программ PGP доступен в открытом виде. Любой эксперт может убедиться в том, что в программе эффективно реализованы криптоалгоритмы. Так как сам способ реализации известных алгоритмов был доступен специалистам, то открытость повлекла за собой и другое преимущество - эффективность программного кода.