Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа? |
Информационная безопасность. Стандарты и алгоритмы шифрования
Разделение сетевой и информационной безопасности достаточно условно. Я отношу к информационной безопасности те технологии и алгоритмы, которые используют криптографию.
Проблема сокрытия содержания послания при его транспортировке волновала людей с древних пор. Достаточно давно были использованы методы стеганографии, когда на выбритой голове писался текст послания, затем ждали, когда отрастут волосы, и посланец отправлялся в путь. По прибытии голову снова брили, и сообщение читалось. В 21-ом веке метод стеганографии неожиданно получил новое развитие. Оказалось, что в графическом файле можно пересылать сообщения и изображения, даже факт наличия которых трудно установить.
Известно, что еще Цезарь (100-44 годы до нашей эры) при переписке использовал шифр, получивший его имя. В 1518 году аббат Джоанес Тритемиус написал первую книгу по криптографии, где впервые были описаны многоалфавитные подстановочные шифры. В 19-ом веке голландец Киркхоф сформулировал фундаментальное требование, предъявляемое к криптосистемам и сегодня:
Секретность шифра должна базироваться не на секретности алгоритма, а на секретном ключе.
Лишь в 1918 году во время первой мировой войны в Германии была применена шифровальная система ADFGVX. Позднее в 1933-45 годах в Германии была разработана и использовалась первая шифровальная машина Enigma (на этом принципе работает система crypt в UNIX). Мощное развитие криптография получила в период второй мировой войны. С шифровальной машиной Enigma связан и первый успех в области вскрытия сложных шифров.
Основы современной криптографии были заложены в работе Клода Шеннона "Теория связи в секретных системах" (1949).
Чаще всего шифруются тексты документов, но в последнее время шифрованию подвергаются и изображения, голосовые данные и даже тексты программ.
Шифрование предполагает преобразование исходного текста Т с использованием ключа К в зашифрованный текст t. Симметричные криптосистемы для шифрования и дешифрования используется один и тот же ключ К. Появившиеся в последние годы системы с открытым ключом осуществляют шифрование с помощью общедоступного ключа, для дешифрования в этом случае необходим секретный ключ, который порождается совместно с открытым. Как шифрование, так и дешифрование может реализоваться программно или аппаратно. При этом должны выполняться определенные требования.
- Знание использованного алгоритма не должно снижать надежность шифрования.
- Длина зашифрованного текста должна быть равна длине исходного открытого текста (это требование относится к числу желательных и выполняется не всегда).
- Зашифрованный текст не может быть прочтен без знания ключа.
- Каждый ключ из многообразия ключей должен обеспечивать достаточную надежность.
- Изменение длины ключа не должно приводить к изменению алгоритма шифрования.
- Если известен зашифрованный и открытый текст сообщения, то число операций, необходимых для определения ключа, не должно быть меньше полного числа возможных ключей.
- Дешифрование путем перебора всех возможных ключей должно выходить далеко за пределы возможностей современных ЭВМ.
- Если при шифровании в текст вводятся дополнительные биты, то алгоритм их внесения должен быть надежно скрыт.
- Не должно быть легко устанавливаемой зависимости между последовательно используемыми ключами.
- Алгоритм может быть реализован аппаратно.
В симметричных криптосистемах могут применяться одно- или многоалфавитные подстановки (например, одно-алфавитная подстановка Цезаря), при этом производится замена символов исходного текста на другие с использованием достаточно сложных алгоритмов. Многоалфавитные подстановки несравненно более надежны. К числу простых методов шифрования относится способ перестановок символов исходного текста (этот метод эффективен только лишь при достаточно большой длине исходного текста). Множество перестановок символов для текста из N символов равно N!, что до какой-то степени гарантирует надежность процедуры. Несколько большую надежность предлагает метод гаммирования, когда на исходный текст накладывается псевдослучайная последовательность бит, генерируемая на основе ключа шифрования, например, с использованием операции исключающего ИЛИ. Обратное преобразование (дешифрование) выполняется генерацией точно такой же псевдослучайной последовательности и наложением ее на зашифрованной текст. Гаммирование уязвимо для случая, когда злоумышленнику становится известен фрагмент исходного текста. В этих обстоятельствах он без труда восстановит фрагмент псевдослучайной последовательности, а по нему и всю последовательность. Так, если достаточно большое число сообщений начинается со слов "Секретно", а в конце ставится дата сообщения, расшифровка становится вопросом времени и терпения.
Ключ может быть одноразового и многоразового использования. Одноразовый ключ достаточно большой длины (или бесконечный) может обеспечить сколь угодно высокую надежность, но его использование создает неудобства, связанные с его транспортировкой (ключ должен быть как-то доставлен получателю зашифрованного послания). В таблице 14.1 приведен пример использования такого вида ключа.
Исходный текст | 9 | 5 | 18 | 1 | 3 | 19 | 20 | 3 | 21 | 11 | 20 | 6 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Используемый ключ | 23 | 5 | 13 | 14 | 10 | 17 | 5 | 1 | 13 | 9 | 27 | 11 |
Зашифрованный текст | 32 | 10 | 31 | 15 | 13 | 36 | 25 | 4 | 34 | 20 | 47 | 17 |
Зашифрованный текст получается здесь из исходного добавлением значения очередного кода ключа (сложение может быть заменено вычитанием или операцией исключающее ИЛИ). Исходный текст в данном случае невозможно восстановить без знания ключа.
Примером шифрования с использованием секретного ключа является метод Видженера (Vigenere (16-й век); http://www.massconfusion.com/crypto/lecture/method6.shtml), относящийся к числу много алфавитных подстановок. Здесь берется небольшое целое число m и алфавит после каждой символьной подстановки сдвигается на m символов. Например, для m=4
- abcdefghijklmnopqrstuvwxyz
g hijklmnopqrstuvwxyzabcdef
- o pqrstuvwxyzabcdefghijklmn
- l mnopqrstuvwxyzabcdefghijk
- f ghijklmnopqrstuvwxyzabcde
Ключ = golf (смотри левую вертикальную колонку символов).
Исходный текст разбивается на группы по m символов (в рассмотренном случае по 4). Для каждой группы первый символ заменяется соответствующей буквой первого алфавита, вторая — из второго и т.д. Например, фраза "get me out of here please" будет преобразована следующим образом:
getm eout ofhe repl ease
mser kcfy utsj xsaq kohj.
Наибольшее распространение в последнее время получило блочное шифрование, где последовательность процедур воздействует на блок входного текста. Одним из наиболее известных таких методов стал DES (Data Encryption Standard), который работает с блоками данных по 64 байта (1998 год). Существует четыре режима работы:
Из-за того, что алгоритм DES в настоящее время представляется устаревшим и не обеспечивает достаточной надежности, довольно часто исходный текст последовательно шифруется трижды с помощью различных ключей.
Шифрование и дешифрование базируются на использовании ключей. Математически это можно выразить следующим образом:
EK(M) = C DK(c) = M, где K — ключ, M — исходный текст; C — зашифрованный текст