Основные требования к криптографическому закрытию информации
- Сложность и стойкость криптографического закрытия данных должны выбираться в зависимости от объема и степени секретности данных.
- Надежность закрытия должна быть такой, чтобы секретность не нарушалась даже в том случае, когда злоумышленнику становится известен метод шифрования.
- Метод закрытия, набор используемых ключей и механизм их распределения не должны быть слишком сложными.
- Выполнение процедур прямого и обратного преобразований должно быть формальным. Эти процедуры не должны зависеть от длины сообщений.
- Ошибки, возникающие в процессе преобразования не должны распространяться по системе.
- Вносимая процедурами защиты избыточность должна быть минимальной.
Классификация основных методов криптографического закрытия информации
- Шифрование
- Подстановка (замена)
- Одноалфавитная
- Многоалфавитная одноконтурная обыкновенная
- Многоалфавитная одноконтурная монофоническая
- Многоалфавитная многоконтурная
- Перестановка
- Простая
- Усложненная по таблице
- Усложненная по маршрутам
- Гаммирование
- С конечной короткой гаммой
- С конечной длинной гаммой
- С бесконечной гаммой
- Аналитические преобразования
- Матричные
- По особым зависимостям
- Комбинированные
- Подстановка+перестановка
- Подстановка+гаммирование
- Перестановка+гаммирование
- Гаммирование+гаммирование
- Кодирование
- Смысловое
- По специальным таблицам
- Символьное
- По кодовому алфавиту
- Другие виды
- Рассечение-разнесение
- Смысловое
- Механическое
- Сжатие-расширение
Типы шифров
Все методы шифровки можно разделить на две группы: шифры с секретным ключом и шифры с открытым ключом. Первые характеризуются наличием некоторой информации (секретного ключа), обладание которой даёт возможность как шифровать, так и расшифровывать сообщения. Поэтому они именуются также одноключевыми. Шифры с открытым ключом подразумевают наличие двух ключей - открытого и закрытого; один используется для шифровки, другой для расшифровки сообщений. Эти шифры называют также двухключевыми.
Шифры с секретным ключом
Этот тип шифров подразумевает наличие некой информации (ключа), обладание которой позволяет как зашифровать, так и расшифровать сообщение.
С одной стороны, такая схема имеет те недостатки, что необходимо кроме открытого канала для передачи шифрограммы наличие также секретного канала для передачи ключа, а кроме того, при утечке информации о ключе, невозможно доказать, от кого из двух корреспондентов произошла утечка.
С другой стороны, среди шифров именно этой группы есть единственная в мире схема шифровки, обладающая абсолютной теоретической стойкостью. Все прочие можно расшифровать хотя бы в принципе. Такой схемой является обычная шифровка (например, операцией XOR) с ключом, длина которого равна длине сообщения. При этом ключ должен использоваться только раз. Любые попытки расшифровать такое сообщение бесполезны, даже если имеется априорная информация о тексте сообщения. Осуществляя подбор ключа, можно получить в результате любое сообщение.
Шифры с открытым ключом
Шифры с открытым ключом подразумевают наличие двух ключей - открытого и закрытого; один используется для шифровки, другой для расшифровки сообщений. Открытый ключ публикуется - доводится до сведения всех желающих, секретный же ключ хранится у его владельца и является залогом секретности сообщений. Суть метода в том, что зашифрованное при помощи секретного ключа может быть расшифровано лишь при помощи открытого и наоборот. Ключи эти генерируются парами и имеют однозначное соответствие друг другу. Причём из одного ключа невозможно вычислить другой.
Характерной особенностью шифров этого типа, выгодно отличающих их от шифров с секретным ключом, является то, что секретный ключ здесь известен лишь одному человеку, в то время как в первой схеме он должен быть известен по крайней мере двоим. Это даёт такие преимущества:
- не требуется защищённый канал для пересылки секретного ключа, вся связь осуществляется по открытому каналу;
- «что знают двое, знают все» - наличие единственной копии ключа уменьшает возможности его утраты и позволяет установить чёткую персональную ответственность за сохранение тайны;
- наличие двух ключей позволяет использовать данную шифровальную систему в двух режимах - секретная связь и цифровая подпись.
Простейшим примером рассматриваемых алгоритмов шифровки служит алгоритм RSA. Все другие алгоритмы этого класса отличаются от него непринципиально. Можно сказать, что, по большому счёту, RSA является единственным алгоритмом с открытым ключом.