Общее описание
Прежде чем перейти к непосредственному рассмотрению наиболее
известных криптосистем, перечислим основные требования, которым должны удовлетворять
алгоритмы шифрования, ориентированные на применение в ИВС общего пользования:
криптограмма должна расшифроваться только при наличии ключа;
число операций, необходимых для вскрытия ключа по открытому тексту и соответствующей ему криптограмме, должно быть не меньше числа всех возможных ключей;
знание алгоритма шифрования не должно упрощать процедуры криптоанализа, выполняемой с
целью вскрытия ключей и расшифрования криптограмм;
незначительное изменение ключа должно приводить к существенному изменению криптограммы;
незначительное изменение открытого текста при неизменном ключе должно приводить к
существенному изменению соответствующей криптограммы;
структура алгоритма шифрования должна быть постоянной;
в процессе шифрования должен быть предусмотрен контроль за шифруемым открытым текстом и ключом;
длина криптограммы должна быть равна длине открытого текста;
сложность вскрытия очередного ключа по последовательности ранее применявшихся должна быть сопоставимой со сложностью вскрытия ключа по открытому тексту и соответствующей ему криптограмме;
множество всех ключей должно быть однородным и не должно содержать "слабых" ключей, применительно к которым процедуры криптоанализа относительно более просты и эффективны;
криптограмма должна быть структурно однородной, т.е. не должна делиться на фрагменты, одни из которых априори известны как относящиеся к открытому тексту, а другие — как включенные в шифртекст в процессе зашифрования;
алгоритм шифрования должен допускать как программную, так и аппаратную реализацию;
изменение длины ключа не должно ухудшать характеристики алгоритма шифрования.
Алгоритм шифрования, удовлетворяющий перечисленным требованиям, считается криптостойким и пригодным для применения в различных службах безопасности ИВС общего пользования.
В современной криптографии рассматриваются два типа криптографических алгоритмов. Это классические алгоритмы, основанные на использовании секретных ключей и новые криптографические алгоритмы с открытым ключом, основанные на использовании ключей двух типов: секретного и открытого.
Оценка криптографической защиты передаваемых данных
Сравнивая алгоритмы RSA и DES, можно заметить:
криптосистемы с открытыми ключами не могут обеспечить теоретическую стойкость, а обладают лишь практической;
в случае одноключевой криптографии отправитель и получатель не имеют выбора и вынуждены безоговорочно доверять друг другу.
в случае двухключевой криптографии только один пользователь должен считаться безоговорочно заслуживающим доверия. Другой пользователь не способен выполнить операции, доступные этому определенному пользователю;
RSA работает значительно медленнее и требует более длинных ключей.
Из результатов сравнения можно сделать вывод, что для многих практических приложений имеет смысл применять гибридную криптографическую систему, в которой использовать преимущества как алгоритма DES, так и алгоритма RSA.
Далее можно подробнее рассмотреть следующие разделы:
Алгоритм шифрования DES
Криптографические алгоритмы с открытым ключом
Алгоритм шифрования по ГОСТ 28147-89
Вычисление функции хэширования по ГОСТ Р 34.11-94
Электронная цифровая подпись по ГОСТ Р 34.10-94