
- •10.1. Основные понятия криптографии.
- •10.2. Алгоритмы шифрования.
- •10.2.1. Симметричные алгоритмы шифрования.
- •10.2.2. Асимметричные алгоритмы шифрования.
- •10.3. Криптоаналитические атаки.
- •10.4. Шифры.
- •10.4.1. Подстановочные шифры.
- •10.4.2. Перестановочные шифры.
- •10.4.3. Компьютерные алгоритмы шифрования
- •10.5. Электронная цифровая подпись.
Лекция 10. Криптографические методы защиты информации.
Теперь при желании кто угодно может зашифровать свои данные. На практике все обстоит иначе. Указом № 334 от 3 апреля 1995 г. президент России запретил "деятельность юридических и физических лиц, связанную с разработкой, производством, реализацией и эксплуатацией шифровальных средств, предоставлением услуг в области шифрования информации", без государственных лицензий. А российские спецслужбы обязал "осуществлять выявление юридических и физических лиц, нарушающих требования настоящего Указа". Аналогично действует и американское правительство: путем введения государственного стандарта шифрования с передачей ключей на хранение пытается узаконить для себя право шпионить за своими гражданами.
Надежность шифровальных средств - традиционно лишнее качество для спецслужб, независимо от их национальной принадлежности. Правительства принуждают своих граждан самих принять все необходимые меры, чтобы можно было без помех вести за ними наблюдение.
В информационной войне государство пользуется двумя основными способами:
В любую сертифицированную государством систему защиты информации встраивается так называемый потайной ход. В 1991 г. в сенат США был внесен законопроект, который требовал, чтобы любое американское криптографическое оборудование содержало потайной ход, известный АНБ (AT&T - не скрывает того факта, что у американского правительства есть "ключи" "потайных ходов", ведущих во все ее системы).
Применение системы с депонированием ключей.
10.1. Основные понятия криптографии.
Криптография (от др.-греч. κρυπτός - скрытый и γράφω - пишу) - наука о методах обеспечения конфиденциальности (невозможности прочтения информации посторонним) и аутентичности (целостности и подлинности авторства) информации. Криптография - одна из старейших наук, ее история насчитывает несколько тысяч лет.
Изначально криптография изучала методы шифрования информации - обратимого преобразования открытого (исходного) текста на основе секретного алгоритма и ключа в шифрованный текст.
Традиционная криптография образует раздел симметричных криптосистем, в которых зашифрование и расшифрование проводится с использованием одного и того же секретного ключа. Современная криптография включает в себя асимметричные криптосистемы, системы электронной цифровой подписи (ЭЦП), хеш-функции, управление ключами, получение скрытой информации.
Сообщение состоит из открытого текста. Открытый текст - массив незашифрованных данных. Шифрование - процесс приведения информации в форму, при которой невозможно или существенно затруднено извлечение из нее осмысленных данных. В результате шифрования сообщения получается шифротекст. Шифротекст - массив зашифрованных данных, то есть данных, подвергнутых процедуре шифрования. Расшифрование (дешифрование) - процесс восстановления информации в исходной форме, позволяющей извлечь из нее смысловые данные.
Наука о сохранении содержания сообщений в тайне, называется криптографией. Людей, занимающихся криптографией, называют криптографами.
Криптоанализ - наука о вскрытии шифров. Людей, занимающихся криптоанализом называют криптоаналитиками. Раздел науки, объединяющий криптографию и криптоанализ, именуется криптологией.
Обозначим открытый текст - Р (plaintext). Это может быть текстовый файл, битовое изображение, оцифрованный звук - двоичные данные. Шифротекст обозначается - С (ciphertext), также - двоичные данные. Объем полученного шифротекста иногда совпадает с объемом соответствующего открытого текста, а иногда превышает его. После зашифрования преобразованный открытый текст может быть передан по каналам, компьютерной сети или сохранен в памяти компьютера.
На вход функции шифрования Е подается Р, чтобы на выходе получить С.
Е(Р) = C
При обратном преобразовании шифротекста в открытый текст на вход функции расшифрования D поступает С= Е(Р), а на выходе получается Р:
D(E(P)) = Р
Шифр - совокупность алгоритмов криптографических преобразований, отображающих множество возможных открытых данных на множество возможных зашифрованных данных и обратных им преобразований.
10.2. Алгоритмы шифрования.
Первым принципиальным признаком, позволяющим произвести разделение шифров, является объем информации, неизвестной третьей стороне. В том случае, когда злоумышленнику полностью неизвестен алгоритм выполненного над сообщением преобразования, шифр называется тайнописью.
В отличие от тайнописи криптографией с ключом называют сегодня алгоритмы шифрования, в которых сам алгоритм преобразований широко известен и доступен для исследований каждому желающему, но шифрование производится на основе небольшого объема информации - ключа, известного только отправителю и получателю.
Общая схема классификации шифров приведена на рис. 12.1.
В простых случаях ключ формирует человек, отправляющий сообщение, в остальных - ключ создается автоматически с помощью ПО или запрашивается у удаленной базы данных ключей. В современной криптографии в зависимости от методик размер ключа составляет от 56 до 4096 бит.
Все современные системы предлагают вводить не ключ - набор цифр, а пароль - текстовую фразу.
Криптографический алгоритм (шифр, алгоритм шифрования) представляет собой математические функции, используемые для зашифрования и расшифрования.
В современной криптографии для шифрования (расшифрования) используются ключи - К (key). Ключ выбирается из множества, называемым ключевым пространством. И функция шифрования Е и функция расшифрования D зависят от ключа:
Е к (Р) = С ,
D k (E k (P)) = P
Некоторые алгоритмы шифрования используют различные ключи для шифрования и расшифрования. Это означает, что ключ шифрования К1 отличается от ключа расшифрования К2 . В этом случае справедливы следующие соотношения:
Е к 1 ( P ) = С ,
D k2 (E k1 (Р) ) = Р
Надежность алгоритма шифрования с использованием ключей достигается за счет их надлежащего выбора и последующего хранения в секрете. Алгоритм не требуется держать в тайне. Знание криптографического алгоритма не позволит злоумышленнику прочесть зашифрованные сообщения, поскольку он не знает секретный ключ, использованный для шифрования.
Существуют две разновидности алгоритмов шифрования с использованием ключей - симметричные (с закрытым ключом) и асимметричные (с открытым ключом).