Информационные угрозы информации

Причины угрозы потери информации: случайные, специальные. Анализ корректирующих кодов как способа защиты информации от наводок. Характеристика алгоритма Хаффмана. Алгоритм RSA как классика асимметричной криптографии. Особенности симметричных шифров.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 04.08.2012
Размер файла 391,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Информационные угрозы информации

90% злоумышленников, пытающихся украсть информацию -- сотрудники своего предприятия.

Атака на информацию -- умышленное нарушение правил работы с информацией. Потери информации могут привести к прямым убыткам на рынке. Сам факт кражи информации может серьезно подорвать имидж предприятия. Подмена информации тоже приводит к убыткам. Многократные успешные атаки на фирму снижают доверие клиентов.

Если информация оказалась потеряна -- произошла утечка информации (удаление, модификация, чтение).

Угроза потери информации -- возможность утечки из-за плохой защиты. Угрозы бывают:

Связанные с человеком

Не связанные с человеком

Не связанные с человеком -- стихийные бедствия, аппаратные сбои, неправильное функционирование аппаратных средств. Связанные с человеком:

Случайные

Специальные

Случайные -- при наборе текста опечатка, случайное нажатие на клавишу. Специальные -- человек выполняет действия, нацеленные на кражу информации :

незаконное физическое проникновение в помещения, в которых располагаются средства автоматизированной обработки данных -- ЭВМ, терминалы, хранилище, архивы)

несанкционированное логическое проникновение (вход в АС под видом законного пользователя путем подбора пароля или обхода механизма контроля входа в систему)

Загрузка посторонней ОС или программы без средств контроля доступа к ЭВМ (АС)

Обследование (считывание) освобождаемых областей оперативной и внешней памяти, ранее содержавших конфиденциальную информацию.

Получение привилегированного статуса для взятия полного контроля над АС посредством изменения системных таблиц ОС в регистрах.

Изменение установленного статуса объектов защиты АС (кодов защиты, паролей, матриц доступа)

Модификация прикладных и системных программных средств с целью выполнения несанкционированных действий в АС

Внедрение в АС вредоносных программных средств для манипуляции или блокирования работы АС (DDoS -атака)

Очень часто злоумышленник знает ошибки реализации операционной системы.

Мониторы с ЭЛТ, 3 источника излучения:

Кадровая развертка

Строчная развертка

Видеоусилитель

Зная частоту излучения, можно перехватить картинку на экране. Перехват побочных э/м, акустических и др. излучений от средств авт. обработки, несущих конф. Информацию как через традиционный эфир, так и с использованием наводок таких излучений на вспомогательные технические средства (ПЭМИ - побочные электромагнитные излучения). Через ПЭМИ осуществляется аппаратная утечка информации.

Осн. технические средства -- обрабатывают конфиденциальную информацию

Всп. техн. средства -- не обрабатывают конф. информацию, но находятся в охраняемой зоне.

Внедрение аппаратных закладок в технические средства. Использование электроакустических детекторов речи персонала АС и/или всп. технических средств для перехвата речевой информации по соответствующему излучению модулированных сигналов от этих средств. Перехват инф. Сигналов в линиях связи между средствами АС.

потеря информация алгоритм шифр

Корректирующие коды как способы защиты информации от помех и наводок

Разработанные различные корректирующие коды подразделяются на непрерывные и блочные. В непрерывных, или рекуррентных, кодах контрольные элементы располагаются между информационными. В блочных кодах информация кодируется, передается и декодируется отдельными группами (блоками) равной длины.

Корректирующие коды, помехоустойчивые коды, коды обнаружения и исправления ошибки, коды, позволяющие по имеющейся в кодовой комбинации избыточности обнаруживать и исправлять определённые ошибки, появление которых приводит к образованию ошибочных или запрещенных комбинаций. Применяются при передаче и обработке информации в вычислительной технике, телеграфии, телемеханике и технике связи, где возможны искажения сигнала в результате действия различного рода помех. Кодовые слова К. к. содержат информационные и проверочные разряды (символы). В процессе кодирования при передаче информации из информационных разрядов в соответствии с определёнными для каждого К. к. правилами формируются дополнительные символы -- проверочные разряды. При декодировании из принятых кодовых слов по тем же правилам вновь формируют проверочные разряды и сравнивают их с принятыми; если они не совпадают, значит при передаче произошла ошибка. Существуют коды, обнаруживающие факт искажения сообщения, и коды, исправляющие ошибки, т. е. такие, с помощью которых можно восстановить первичную информацию.

В качестве примера рассмотрим код Хэмминга. Пусть требуется передать некоторое слово 1010. При кодировании оно будет представлено как 1011010, где 1-й, 2-й и 4-й разряды проверочные (слева направо 101), а остальные информационные. Если при передаче произошла ошибка, например в 3-м разряде вместо 1 получен 0, то при декодировании проверочные разряды примут значения: 1-й (младший) -- 1, 2-й -- 1, 4-й -- 0 (т. е. 011). Несовпадение кодовых комбинаций проверочных разрядов не только сигнализирует о наличии ошибки, но и указывает номер искажённого разряда (011 -- 3 в двоичном коде).

Корректирующая и обнаруживающая способность кодов зависит от кодового расстояния d между словами, численно равного минимальному числу ошибок, которое может превратить одно слово в другое. Например, имеется кодовая комбинация: 0111100; 0100101; 0010110. Первая группа (слово) отличается от второй в трёх разрядах, вторая от третьей -- в четырёх разрядах, первая от третьей -- в трёх разрядах. Минимальное расстояние d между этими словами равно 3. Если в первом слове произойдёт 3 ошибки, то оно может превратиться либо во второе, либо в третье слово; при декодировании такая ошибка не будет обнаружена. Максимальное число ошибок, которое в данном случае может быть обнаружено, равно 2. Если в первом слове произошла ошибка во втором разряде, то полученное слово отличается от второго в четырёх разрядах, от третьего -- в двух разрядах, от первого -- в одном разряде. Согласно максимального правдоподобия методу, при декодировании делается вывод, что, вероятнее всего, передавалось первое слово. Для правильного декодирования необходимо, чтобы максимальное число ошибок в передаваемом слове превращало его в слово, отличающееся от исходного в наименьшем числе разрядов. Чтобы исправлять все комбинации из t ошибок, необходимо и достаточно, чтобы d ? 2t+ 1.

Ошибки в передаваемых словах могут возникать вследствие либо независимых искажений разрядов (в этом случае применяют, например, коды типа кода Хэмминга), либо искажений группы рядом стоящих разрядов (для таких случаев разработаны коды, исправляющие одиночные пачки ошибок, и коды, исправляющие более одной пачки ошибок); для обнаружения ошибок в процессе вычислений на ЭВМ разработаны так называемые арифметические коды.

Криптографические способы защиты информации. Криптография. Классификация криптоалгоритмов

В зависимости от наличия либо отсутствия ключа кодирующие алгоритмы делятся на тайнопись и криптографию. В зависимости от соответствия ключей шифрования и дешифрования - на симметричные и асимметричные. В зависимости от типа используемых преобразований - на подстановочные и перестановочные. В зависимости от размера шифруемого блока - на потоковые и блочные шифры.

Основной схемой классификации всех криптоалгоритмов является следующая:

Тайнопись.

Отправитель и получатель производят над сообщением преобразования, известные только им двоим. Сторонним лицам неизвестен сам алгоритм шифрования. Некоторые специалисты считают, что тайнопись не является криптографией вообще, и автор находит это совершенно справедливым.

Криптография с ключом.

Алгоритм воздействия на передаваемые данные известен всем сторонним лицам, но он зависит от некоторого параметра - "ключа", которым обладают только отправитель и получатель.

Симметричные криптоалгоритмы.

Для зашифровки и расшифровки сообщения используется один и тот же блок информации (ключ).

Асимметричные криптоалгоритмы.

Алгоритм таков, что для зашифровки сообщения используется один ("открытый") ключ, известный всем желающим, а для расшифровки - другой ("закрытый"), существующий только у получателя.

В зависимости от характера воздействий, производимых над данными, алгоритмы подразделяются на:

Перестановочные

Блоки информации (байты, биты, более крупные единицы) не изменяются сами по себе, но изменяется их порядок следования, что делает информацию недоступной стороннему наблюдателю.

Подстановочные

Сами блоки информации изменяются по законам криптоалгоритма. Подавляющее большинство современных алгоритмов принадлежит этой группе.

В зависимости от размера блока информации криптоалгоритмы делятся на:

Потоковые шифры. Единицей кодирования является один бит. Результат кодирования не зависит от прошедшего ранее входного потока. Схема применяется в системах передачи потоков информации, то есть в тех случаях, когда передача информации начинается и заканчивается в произвольные моменты времени и может случайно прерываться. Наиболее распространенными предствателями поточных шифров являются скремблеры.

Блочные шифры. Единицей кодирования является блок из нескольких байтов (в настоящее время 4-32). Результат кодирования зависит от всех исходных байтов этого блока. Схема применяется при пакетной передаче информации и кодировании файлов.

Симметричные криптоалгоритмы

Симметричные криптоалгоритмы выполняют преобразование небольшого (1 бит либо 32-128 бит) блока данных в зависимости от ключа таким образом, что прочесть исходное сообщение можно только зная этот секретный ключ.

Скремблеры

Скремблерами называются программные или аппаратные реализации алгоритма, позволяющего шифровать побитно непрерывные потоки информации. Сам скремблер представляет из себя набор бит, изменяющихся на каждом шаге по определенному алгоритму. После выполнения каждого очередного шага на его выходе появляется шифрующий бит - либо 0, либо 1, который накладывается на текущий бит информационного потока операцией XOR.

Суть скремблирования заключается в побитном изменении проходящего через систему потока данных. Практически единственной операцией, используемой в скремблерах является XOR - "побитное исключающее ИЛИ". Параллельно прохождению информационного потока в скремблере по определенному правилу генерируется поток бит - кодирующий поток. Как прямое, так и обратное шифрование осуществляется наложением по XOR кодирующей последовательности на исходную.

Генерация кодирующей последовательности бит производится циклически из небольшого начального объема информации - ключа по следующему алгоритму. Из текущего набора бит выбираются значения определенных разрядов и складываются по XOR между собой. Все разряды сдвигаются на 1 бит, а только что полученное значение ("0" или "1") помещается в освободившийся самый младший разряд. Значение, находившееся в самом старшем разряде до сдвига, добавляется в кодирующую последовательность, становясь очередным ее битом (см. рис.1).

Рис.1.

Из теории передачи данных криптография заимствовала для записи подобных схем двоичную систему записи. По ней изображенный на рисунке скремблер записывается комбинацией "100112" - единицы соответствуют разрядам, с которых снимаются биты для формирования обратной связи.

Рассмотрим пример кодирования информационной последовательности 0101112 скремблером 1012 с начальным ключом 1102.

скремблер код.бит инф.бит рез-т

1 1 0 _

\ \ \_

1 1 1 _ \_

\ \ \_ 0 XOR 0 = 0

0 1 1 _ \_

\ \ \_ 1 XOR 1 = 0

1 0 1 \_

\ \ 1 XOR 0 = 1

и т.д.

Блочные шифры

Блочные шифры шифруют целые блоки информации (от 4 до 32 байт) как единое целое - это значительно увеличивает стойкость преобразований к атаке полным перебором и позволяет использовать различные математические и алгоритмические преобразования.

Общие сведения о блочных шифрах

Характерной особенностью блочных криптоалгоритмов является тот факт, что в ходе своей работы они производят преобразование блока входной информации фиксированной длины и получают результирующий блок того же объема, но недоступный для прочтения сторонним лицам, не владеющим ключом. Таким образом, схему работы блочного шифра можно описать функциями Z=EnCrypt(X,Key) и X=DeCrypt(Z,Key)

Ключ Key является параметром блочного криптоалгоритма и представляет собой некоторый блок двоичной информации фиксированного размера. Исходный (X) и зашифрованный (Z) блоки данных также имеют фиксированную разрядность, равную между собой, но необязательно равную длине ключа.

Симметричные криптосистемы

Симметричные криптосистемы являются полноценными программами, которые могут на основе симметричных криптоалгоритмов кодировать и декодировать файлы произвольной длины. Криптосистемы устраняют целый класс "потенциальных уязвимостей" систем, использующих симметричные криптоалгоритмы.

Функции криптосистем. Краткое описание того, для чего все же предназначены криптосистемы

Все исследования, которые мы проводили на предыдущих лекциях, касались только криптоалгоритмов, то есть методов преобразования небольшого блока данных (от 4 до 32 байт) в закодированный вид в зависимости от заданного двоичного ключа. Криптоалгоритмы несомненно являются "сердцем" криптографических систем, но, как мы сейчас увидим, их непосредственное применение без каких-либо модификаций для кодирования больших объемов данных на самом деле не очень приемлимо.

Все недостатки непосредственного применения криптоалгоритмов устраняются в криптосистемах. Криптосистема - это завершенная комплексная модель, способная производить двусторонние криптопреобразования над данными произвольного объема и подтверждать время отправки сообщения, обладающая механизмом преобразования паролей и ключей и системой транспортного кодирования. Таким образом, криптосистема выполняет три основные функции:

усиление защищенности данных,

облегчение работы с криптоалгоритмом со стороны человека

обеспечение совместимости потока данных с другим программным обеспечением.

Конкретная программная реализация криптосистемы называется криптопакетом.

Генераторы случайных и псевдослучайных последовательностей

Генераторы случайных последовательностей играют большую роль в современной криптографии. В том случае, когда генерируемая последовательность основана только на состоянии ЭВМ, она называется псевдослучайной. Действительно случайными являются только некоторые физические процессы и человеческий фактор.

Самая большая проблема всех методов рандомизации сообщений - это порождение действительно случайной последовательности бит. Дело в том, что генераторы случайных последовательностей, используемые для общих целей, например, в языках программирования, являются на самом деле псевдослучайными генераторами. Дело в том, что в принципе существует конечное, а не бесконечное множество состояний ЭВМ, и, как бы сложно не формировалось в алгоритме число, оно все равно имеет относительно немного бит информационной насыщенности.

Архивация

Архивация (сжатие данных) - есть процесс представления информации в ином виде (перекодирования) с потенциальным уменьшением объема, требуемого для ее хранения. Существует множество классов различных алгоритмов сжатия данных, каждый из которых ориентирован на свою область применения.

Общие принципы архивации. Классификация методов

Существуют две большие группы алгоритмов архивации : сжатие без потерь биективно перекодирует информацию по другим законам, то есть возможно абсолютно идентичное ее восстановление; сжатие с потерями необратимо удаляет из информации некоторые сведения, оказывающие наименьшее влияние на смысл сообщения.

Существует два основных метода архивации без потерь:

алгоритм Хаффмана (англ. Huffman), ориентированный на сжатие последовательностей байт, не связанных между собой,

алгоритм Лемпеля-Зива (англ. Lempel, Ziv), ориентированный на сжатие любых видов текстов, то есть использующий факт неоднократного повторения "слов" - последовательностей байт.

Практически все популярные программы архивации без потерь (ARJ, RAR, ZIP и т.п.) используют объединение этих двух методов - алгоритм LZH.

Алгоритм Хаффмана

Алгоритм сжатия ориентирован на неосмысленные последовательности символов какого-либо алфавита. Необходимым условием для сжатия является различная вероятность появления этих символов (и чем различие в вероятности ощутимее, тем больше степень сжатия).

Алгоритм основан на том факте, что некоторые символы из стандартного 256-символьного набора в произвольном тексте могут встречаться чаще среднего периода повтора, а другие, соответственно, - реже. Следовательно, если для записи распространенных символов использовать короткие последовательности бит, длиной меньше 8, а для записи редких символов - длинные, то суммарный объем файла уменьшится.

Алгоритм Лемпеля-Зива

А этот алгоритм сжатия основан наоборот на корреляциях между расположенными рядом символами алфавита (словами, управляющими последовательностями, заголовками файлов фиксированной структуры)

Классический алгоритм Лемпеля-Зива - LZ77, названный так по году своего опубликования, предельно прост. Он формулируется следующим образом : "если в прошедшем ранее выходном потоке уже встречалась подобная последовательность байт, причем запись о ее длине и смещении от текущей позиции короче чем сама эта последовательность, то в выходной файл записывается ссылка (смещение, длина), а не сама последовательность". Так фраза "КОЛОКОЛ_ОКОЛО_КОЛОКОЛЬНИ" закодируется как "КОЛО(-4,3)_(-5,4)О_(-14,7)ЬНИ".

Хеширование паролей

Хеш-функцией называется такое математическое или алгоритмическое преобразование заданного блока данных, которое обладает следующими свойствами:

хеш-функция имеет бесконечную область определения,

хеш-функция имеет конечную область значений,

она необратима,

изменение входного потока информации на один бит меняет около половины всех бит выходного потока, то есть результата хеш-функции.

Асимметричные криптоалгоритмы

В асимметричных криптоалгоритмах для зашифровывания сообщения используется один ключ, а для расшифровки другой. Ключ шифрования известен всем, но выполняемое преобразование необратимо, поэтому зашифрованный текст не может прочесть никто, кроме получателя - именно он один знает второй (закрытый) ключ.

Алгоритм RSA

Алгорит RSA является классикой асимметричной криптографии. В нем в качестве необратимого преобразования отправки используется возведение целых чисел в большие степени по модулю.

Алгоритм RSA стоит у истоков асимметричной криптографии. Он был предложен тремя исседователями-математиками Рональдом Ривестом (R.Rivest) , Ади Шамиром (A.Shamir) и Леонардом Адльманом (L.Adleman) в 1977-78 годах.

Первым этапом любого асимметричного алгоритма является создание пары ключей : открытого и закрытого и распространение открытого ключа "по всему миру". Для алгоритма RSA этап создания ключей состоит из следующих операций :

Выбираются два простых (!) числа p и q

Вычисляется их произведение n(=p*q)

Выбирается произвольное число e (e<n), такое, что НОД(e,(p-1)(q-1))=1, то есть e должно быть взаимно простым с числом (p-1)(q-1).

Методом Евклида решается в целых числах (!) уравнение e*d+(p-1)(q-1)*y=1. Здесь неизвестными являются переменные d и y - метод Евклида как раз и находит множество пар (d,y), каждая из которых является решением уравнения в целых числах.

Два числа (e,n) - публикуются как открытый ключ.

Технологии цифровых подписей

Асимметричная криптография, как оказалось, позволяет очень красиво решать и задачу аутентификации автора сообщения - простым изменением порядка использования открытого и закрытого ключей.

Как оказалось, теория асимметричного шифрования позволяет очень красиво решать еще одну проблему информационной безопасности - проверку подлинности автора сообщения. Для решения этой проблемы с помощью симметричной криптографии была разработана очень трудоемкая и сложная схема. В то же время с помощью, например, того же алгоритма RSA создать алгоритм проверки подлинности автора и неизменности сообщения чрезвычайно просто.

Предположим, что нам нужно передать какой-либо текст, не обязательно секретный, но важно то, чтобы в него при передаче по незащищенному каналу не были внесены изменения. К таким текстам обычно относятся различные распоряжения, справки, и тому подобная документация, не представляющая секрета. Вычислим от нашего текста какую-либо хеш-функцию - это будет число, которое более или менее уникально характеризует данный текст.

В принципе, можно найти другой текст, который дает то же самое значение хеш-функции, но изменить в нашем тексте десять-двадцать байт так, чтобы текст остался полностью осмысленным, да еще и изменился в выгодную нам сторону (например, уменьшил сумму к оплате в два раза) - чрезвычайно сложно. Именно для устранения этой возможности хеш-функции создают такими же сложными как и криптоалгоритмы - если текст с таким же значением хеш-функции можно будет подобрать только методом полного перебора, а множество значений будет составлять как и для блочных шифров 232-2128 возможных вариантов, то для поиска подобного текста злоумышленнику "потребуются" те же самые миллионы лет.

Асимметричные криптосистемы

Поскольку асимметричные криптоалгоритмы очень медленны, в реальных системах используются быстрые надежные симметричные криптоалгоритмы по схеме с ключом сеанса. А вот сам ключ сеанса кодируется асимметричным криптоалгоритмом с помощью открытого ключа получателя. Подобная система обладает всеми свойствами асимметричного криптоалгоритма и очень высоким быстродействием.

Рис.

МИСЗКИ. Комплексное обеспечение защиты информации

Оно включает в себя:

1. Защита информационных средств

· Обеспечение целостности

физическое

логическое

· Предупреждения

1. получение

2. модификация

3. размножение (тиражирование)

2. Защита от информации (Защита от разрушающего действия информации)

· Технических систем

1. Информационные системы

2. Управляющие системы

3. Телекоммуникационные системы

· Людей

1. Личность

2. коллектив

3. население

Мероприятия по Защите инормации:

1. Законодательно - правовые

· Разработка законов

· Надзор

· Судебная защита

2. Организационно - техническая защита

· Организация режима на предприятии

· Техническое обеспечение

· Организационное обеспечение

· Сертификация

· Лицензирование

· Контроль

3. Страховое обеспечение

· Защита собственника

· Защита имущества

4. Моральное - этические

· Подбор кадров

· Достойная з.п.

· Воспитание чувства городости за собственный коллектив

Шифры с открытым ключом

Криптографическая система с открытым ключом (или Асимметричное шифрование, Асимметричный шифр) -- система шифрования и/или электронной цифровой подписи (ЭЦП), при которой открытый ключ передаётся по открытому (то есть незащищённому, доступному для наблюдения) каналу, и используется для проверки ЭЦП и для шифрования сообщения. Для генерации ЭЦП и для расшифровки сообщения используется секретный ключ. Криптографические системы с открытым ключом в настоящее время широко применяются в различных сетевых протоколах, в частности, в протоколах TLS и его предшественнике SSL (лежащих в основе HTTPS).

Начало асимметричным шифрам было положено в работе «Новые направления в современной криптографии» Уитфилда Диффи и Мартина Хеллмана, опубликованной в 1976 году. Находясь под влиянием работы Ральфа Меркле (Ralph Merkle) о распространении открытого ключа, они предложили метод получения секретных ключей, используя открытый канал.

Пусть существует функция f(x) и известно х, а также алгоритм, то его просто сосчитать. Но если y=f(x) и x=f-1(y), то это сделать невозможно. То есть в системе лежит принцип односторонней функции, то есть такой функции, которую легко вычислить при случайных входных данных, но трудно вычислить при заданных.

Криптография с открытым ключом использует односторонние функции с лазейкой. Лазейка -- это некий секрет, который помогает расшифровать. То есть существует такой y, что зная f(x) и y, можно вычислить x. К примеру, если разобрать часы на множество составных частей, то очень сложно собрать вновь работающие часы. Но если есть инструкция по сборке (лазейка), то можно легко решить эту проблему.

Все эти основы криптографии с открытым ключом заложены в алгоритме шифрования RSA, который стал первым подобным алгоритмом, пригодным для шифрования, и для цифровой подписи.

Алогритм:

Поскольку алгоритм является несимметричным, то ключи должны быть взаимосвязаны.

1. Выбираются (получаются, генерируются) два больших простых числа p и q.

Простое число - это такое число, которое делится без остатка только на себя и на единицу. Использование простых чисел повышает криптостойкость алгоритма.

Пусть существует равенство An-1=1 mod n, где n=p·q

Для любого целого положительного А, не кратного n, это выражение выполняется всегда, если n - простое число, для составного может выполнятся и не выполнятся.

2. Вычисляется л по формуле л=(p-1)(q-1).

3. Назначается (выбирается) e, такое, чтобы (e, л) имели НОД, то есть были взаимно простыми.

4. Вычисляется число d: d·e=1 mod л или d·e mod л=1.

5. {e, n} - открытый ключ

{d, n} - секретный ключ

Число d хранится в строжайшем секрете - это и есть секретный ключ, который позволит читать все послания, зашифрованные с помощью пары чисел (e,n).

Сам алгоритм шифрования:

Z=Me mod n, где M<n

Отправитель разбивает свое сообщение на блоки, равные k=[log2(n)] бит, где квадратные скобки означают взятие целой части от дробного числа.

Сообщение можно спокойно передавать по открытому каналу, поскольку операция возведения в степень по модулю простого числа, является необратимой математической задачей. Обратная ей задача носит название "логарифмирование в конечном поле" и является на несколько порядков более сложной задачей. То есть даже если злоумышленник знает числа e и n, то по Zi прочесть исходные сообщения Mi он не может никак, кроме как полным перебором Mi.

Расшифрование:

M=Zd mod n

А вот на приемной стороне процесс дешифрования все же возможен, и поможет нам в этом хранимое в секрете число d.

Недостатком этого алгоритма является то, что он наиболее медленный из всех существующих алгоритмов из-за операции возведения в степень. Поэтому обычно весь текст сообщения кодируется обычным блочным шифром (намного более быстрым), но с использованием ключа сеанса, а вот сам ключ сеанса шифруется как раз асимметричным алгоритмом с помощью открытого ключа получателя и помещается в начало файла.

Так же существуют и другие подобные алгоритмы. Вот одни из них:

1. DSA (Digital Signature Algorithm)

2. Elgamal (Шифросистема Эль-Гамаля)

3. Diffie-Hellman (Обмен ключами Диффи -- Хелмана)

4. ECC (Elliptic Curve Cryptography, криптография эллиптической кривой)

5. ГОСТ Р 34.10-2001

6. Rabin

7. Luc

8. McEliece

9. Williams System (Криптосистема Уильямса)

Симметричные и потоковые шифры

Симметричные криптосистемы (также симметричное шифрование, симметричные шифры) -- способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. До изобретения схемы асимметричного шифрования единственным существовавшим способом являлось симметричное шифрование. Ключ алгоритма должен сохраняться в секрете обеими сторонами. Алгоритм шифрования выбирается сторонами до начала обмена сообщениями.

Алгоритмы шифрования и дешифрования данных широко применяются в компьютерной технике в системах сокрытия конфиденциальной и коммерческой информации от злонамеренного использования сторонними лицами. Главным принципом в них является условие, что передатчик и приемник заранее знают алгоритм шифрования, а также ключ к сообщению, без которых информация представляет собой всего лишь набор символов, не имеющих смысла.

Классическим примером таких алгоритмов являются симметричные криптографические алгоритмы, перечисленные ниже:

1. Простая перестановка

2. Одиночная перестановка по ключу

3. Двойная перестановка

4. Перестановка "Магический квадрат"

Простая перестановка без ключа - один из самых простых методов шифрования. Сообщение записывается в таблицу по столбцам. После того, как открытый текст записан колонками, для образования шифровки он считывается по строкам. Для использования этого шифра отправителю и получателю нужно договориться об общем ключе в виде размера таблицы. Объединение букв в группы не входит в ключ шифра и используется лишь для удобства записи несмыслового текста.

Более практический метод шифрования, называемый одиночной перестановкой по ключу очень похож на предыдущий. Он отличается лишь тем, что колонки таблицы переставляются по ключевому слову, фразе или набору чисел длиной в строку таблицы.

Для дополнительной скрытности можно повторно шифровать сообщение, которое уже было зашифровано. Этот способ известен под названием двойная перестановка. Для этого размер второй таблицы подбирают так, чтобы длины ее строк и столбцов были другие, чем в первой таблице. Лучше всего, если они будут взаимно простыми. Кроме того, в первой таблице можно переставлять столбцы, а во второй строки. Наконец, можно заполнять таблицу зигзагом, змейкой, по спирали или каким-то другим способом. Такие способы заполнения таблицы если и не усиливают стойкость шифра, то делают процесс шифрования гораздо более занимательным.

Магическими квадратами называются квадратные таблицы со вписанными в их клетки последовательными натуральными числами от 1, которые дают в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число. Подобные квадраты широко применялись для вписывания шифруемого текста по приведенной в них нумерации. Если потом выписать содержимое таблицы по строкам, то получалась шифровка перестановкой букв. На первый взгляд кажется, будто магических квадратов очень мало. Тем не менее, их число очень быстро возрастает с увеличением размера квадрата. Так, существует лишь один магический квадрат размером 3 х 3, если не принимать во внимание его повороты. Магических квадратов 4 х 4 насчитывается уже 880, а число магических квадратов размером 5 х 5 около 250000. Поэтому магические квадраты больших размеров могли быть хорошей основой для надежной системы шифрования того времени, потому что ручной перебор всех вариантов ключа для этого шифра был немыслим.

В квадрат размером 4 на 4 вписывались числа от 1 до 16. Его магия состояла в том, что сумма чисел по строкам, столбцам и полным диагоналям равнялась одному и тому же числу -- 34. Впервые эти квадраты появились в Китае, где им и была приписана некоторая «магическая сила».

Таблица

16

3

2

13

5

10

11

8

9

6

7

12

4

15

14

1

Шифрование по магическому квадрату производилось следующим образом. Например, требуется зашифровать фразу: «ПриезжаюCегодня.». Буквы этой фразы вписываются последовательно в квадрат согласно записанным в них числам: позиция буквы в предложении соответствует порядковому числу. В пустые клетки ставится точка.

После этого шифрованный текст записывается в строку (считывание производится слева направо, построчно): .ирдзегюСжаоеянП При расшифровывании текст вписывается в квадрат, и открытый текст читается в последовательности чисел «магического квадрата» Программа должна генерировать «магические квадраты» и по ключу выбирать необходимый. Размер квадрата больше чем 3х3.

В настоящее время симметричные шифры -- это:

1. блочные шифры. Обрабатывают информацию блоками определённой длины (обычно 64, 128 бит), применяя к блоку ключ в установленном порядке, как правило, несколькими циклами перемешивания и подстановки, называемыми раундами. Результатом повторения раундов является лавинный эффект -- нарастающая потеря соответствия битов между блоками открытых и зашифрованных данных.

2. поточные шифры, в которых шифрование проводится над каждым битом либо байтом исходного (открытого) текста с использованием гаммирования. Поточный шифр может быть легко создан на основе блочного (например, ГОСТ 28147-89 в режиме гаммирования), запущенного в специальном режиме.

Большинство симметричных шифров используют сложную комбинацию большого количества подстановок и перестановок. Многие такие шифры исполняются в несколько (иногда до 80) проходов, используя на каждом проходе «ключ прохода». Множество «ключей прохода» для всех проходов называется «расписанием ключей» (key schedule). Как правило, оно создается из ключа выполнением над ним неких операций, в том числе перестановок и подстановок.

Типичным способом построения алгоритмов симметричного шифрования является сеть Фейстеля. Алгоритм строит схему шифрования на основе функции F(D, K), где D -- порция данных, размером вдвое меньше блока шифрования, а K -- «ключ прохода» для данного прохода. От функции не требуется обратимость -- обратная ей функция может быть неизвестна. Достоинства сети Фейстеля -- почти полное совпадение дешифровки с шифрованием (единственное отличие -- обратный порядок «ключей прохода» в расписании), что сильно облегчает аппаратную реализацию.

Операция перестановки перемешивает биты сообщения по некоему закону. В аппаратных реализациях она тривиально реализуется как перепутывание проводников. Именно операции перестановки дают возможность достижения «эффекта лавины». Операция перестановки линейна -- f(a) xor f(b) == f(a xor b)

Операции подстановки выполняются как замена значения некоей части сообщения (часто в 4, 6 или 8 бит) на стандартное, жестко встроенное в алгоритм иное число путем обращения к константному массиву. Операция подстановки привносит в алгоритм нелинейность.

Зачастую стойкость алгоритма, особенно к дифференциальному криптоанализу, зависит от выбора значений в таблицах подстановки (S-блоках). Как минимум считается нежелательным наличие неподвижных элементов S(x) = x, а также отсутствие влияния какого-то бита входного байта на какой-то бит результата -- то есть случаи, когда бит результата одинаков для всех пар входных слов, отличающихся только в данном бите.

Поточный шифр -- это симметричный шифр, в котором каждый символ открытого текста преобразуется в символ шифрованного текста в зависимости не только от используемого ключа, но и от его расположения в потоке открытого текста. Поточный шифр реализует другой подход к симметричному шифрованию, нежели блочные шифры.

Большую популярность потоковым шифрам принесла работа Клода Шеннона, опубликованная в 1949 году, в которой Шеннон доказал абсолютную стойкость шифра Вернама(также известного, как одноразовый блокнот). В шифре Вернама ключ имеет длину, равную длине самого передаваемого сообщения. Ключ используется в качестве гаммы, и если каждый бит ключа выбирается случайно, то вскрыть шифр невозможно (т.к. все возможные открытые тексты будут равновероятны). До настоящего времени было придумано немало алгоритмов потокового шифрования. Такие как: A3, A5, A8, RC4,PIKE, SEAL, eSTREAM.

Простейшая реализация поточного шифра изображена на рисунке. Генератор гаммы выдаёт ключевой поток (гамму): k1, k2, k3,…, kL . Обозначим поток битов открытого текста m1, m2, m3,…, mL . Тогда поток битов шифротекста получается с помощью применения операции XOR: c1, c2, c3,…, cL , где ci=mi (M2) ki. M2 - сложение по модулю 2.

Расшифрование производится операцией XOR между той же самой гаммой и зашифрованным текстом: mi=ci (M2) ki .

Очевидно, что если последовательность битов гаммы не имеет периода и выбирается случайно, то взломать шифр невозможно. Но у данного режима шифрования есть и отрицательные особенности. Так ключи, сравнимые по длине с передаваемыми сообщениями, трудно использовать на практике. Поэтому обычно применяют ключ меньшей длины (например, 128 бит). С помощью него генерируется псевдослучайная гаммирующая последовательность ( она должна удовлетворять постулатам Голомба). Естественно, псевдослучайность гаммы может быть использована при атаке на поточный шифр.

Таблица

Рис.

Цифровая подпись сообщений

Как оказалось, теория асимметричного шифрования позволяет очень красиво решать еще одну проблему информационной безопасности - проверку подлинности автора сообщения. Для решения этой проблемы с помощью симметричной криптографии была разработана очень трудоемкая и сложная схема. В то же время с помощью, например, того же алгоритма RSA создать алгоритм проверки подлинности автора и неизменности сообщения чрезвычайно просто.

Предположим, что нам нужно передать какой-либо текст, не обязательно секретный, но важно то, чтобы в него при передаче по незащищенному каналу не были внесены изменения. К таким текстам обычно относятся различные распоряжения, справки, и тому подобная документация, не представляющая секрета. Вычислим от нашего текста какую-либо хеш-функцию - это будет число, которое более или менее уникально характеризует данный текст.

В принципе, можно найти другой текст, который дает то же самое значение хеш-функции, но изменить в нашем тексте десять-двадцать байт так, чтобы текст остался полностью осмысленным, да еще и изменился в выгодную нам сторону (например, уменьшил сумму к оплате в два раза) - чрезвычайно сложно. Именно для устранения этой возможности хеш-функции создают такими же сложными как и криптоалгоритмы - если текст с таким же значением хеш-функции можно будет подобрать только методом полного перебора, а множество значений будет составлять как и для блочных шифров 232-2128 возможных вариантов, то для поиска подобного текста злоумышленнику "потребуются" те же самые миллионы лет.

Таким образом, если мы сможем передать получателю защищенным от изменения методом хеш-сумму от пересылаемого текста, то у него всегда будет возможность самостоятельно вычислить хеш-функцию от текста уже на приемной стороне и сверить ее с присланной нами. Если хотя бы один бит в вычисленной им самостоятельно контрольной сумме текста не совпадет с соответствующим битом в полученном от нас хеш-значении, значит, текст по ходу пересылки подвергся несанкционированному изменению.

Представим теперь готовую к передаче хеш-сумму в виде нескольких k-битных блоков hi, где k - это размер сообщений по алгоритму RSA. Вычислим над каждым блоком значение si=(hi)d mod n, где d - это тот самый закрытый ключ отправителя. Теперь сообщение, состоящее из блоков si можно "спокойно" передавать по сети. Никакой опасности по известным hi и si найти секретный ключ нет - это настолько же сложная задача, как и задача "логарифмирования в конечном поле". А вот любой получатель сообщения может легко прочесть исходное значение hi, выполнив операцию (si)e mod n = ((hi)de) mod n = hi - открытый ключ (e,n) есть у всех, а то, что возведение любого числа в степень (e*d) по модулю n дает исходное число. При этом никто другой, кроме Вас, не зная Вашего закрытого ключа d не может, изменив текст, а следовательно, и хеш-сумму, вычислить такие s'i, чтобы при их возведении в степень e получилась хеш-сумма h'i, совпадающая с хеш-суммой фальсифицированного текста.

Таким образом, манипуляции с хеш-суммой текста представляют из себя "асимметричное шифрование наоборот" : при отправке используется закрытый ключ отправителя, а для проверки сообщения - открытый ключ отправителя. Подобная технология получила название "электронная подпись". Информацией, которая уникально идентифицирует отправителя (его виртуальной подписью), является закрытый ключ d. Ни один человек, не владеющий этой информацией, не может создать такую пару (текст,si), что описанный выше алгоритм проверки дал бы положительный результат.

Подобный обмен местами открытого и закрытого ключей для создания из процедуры асимметричного шифрования алгоритма электронной подписи возможен только в тех системах, где выполняется свойство коммутативности ключей. Для других асимметричных систем алгоритм электронной подписи либо значительно отличается от базового, либо вообще не реализуем.

Рисунок 1 - Схема алгоритма

Размещено на Allbest.ru


Подобные документы

  • Особенности кодирования информации с помощью метода Хаффмана. Реализация кодера и декодера с использованием статического алгоритма Хаффмана. Структура программы, оценка ее эффективности (степени сжатия) в зависимости от типа и размера сжимаемых файлов.

    курсовая работа [136,2 K], добавлен 15.06.2013

  • Наиболее распространённые пути несанкционированного доступа к информации, каналы ее утечки. Методы защиты информации от угроз природного (аварийного) характера, от случайных угроз. Криптография как средство защиты информации. Промышленный шпионаж.

    реферат [111,7 K], добавлен 04.06.2013

  • Сущность проблемы и задачи защиты информации в информационных и телекоммуникационных сетях. Угрозы информации, способы их воздействия на объекты. Концепция информационной безопасности предприятия. Криптографические методы и средства защиты информации.

    курсовая работа [350,4 K], добавлен 10.06.2014

  • Проект комплексной системы защиты информации на примере Администрации г. Миасса: объект защиты; модель бизнес-процессов с целью выявления конфиденциальной информации, "Перечень сведений конфиденциального характера", объекты защиты, угрозы, уязвимости.

    курсовая работа [2,6 M], добавлен 16.04.2008

  • Безопасность информации, компоненты системы защиты. Дестабилизирующие факторы. Классификация угрозы безопасности информации по источнику появления, по характеру целей. Способы их реализации. Уровни защиты информации. Этапы создания систем защиты.

    презентация [288,1 K], добавлен 22.12.2015

  • Проблема защиты информации. Особенности защиты информации в компьютерных сетях. Угрозы, атаки и каналы утечки информации. Классификация методов и средств обеспечения безопасности. Архитектура сети и ее защита. Методы обеспечения безопасности сетей.

    дипломная работа [225,1 K], добавлен 16.06.2012

  • Технические средства защиты информации. Основные угрозы безопасности компьютерной системы. Средства защиты от несанкционированного доступа. Системы предотвращения утечек конфиденциальной информации. Инструментальные средства анализа систем защиты.

    презентация [3,8 M], добавлен 18.11.2014

  • Политика защиты информации. Возможные угрозы, каналы утечки информации. Разграничение прав доступа и установление подлинности пользователей. Обзор принципов проектирования системы обеспечения безопасности информации. Межсетевой экран. Антивирусная защита.

    дипломная работа [1,9 M], добавлен 05.11.2016

  • Правовые основы обеспечения защиты информации. Эволюция криптографической деятельности. Основные понятия и разделы криптографии, направления использования ее методов. Особенности симметричных и асимметричных криптосистем, предъявляемые к ним требования.

    презентация [201,1 K], добавлен 19.01.2014

  • Угрозы в сфере информационного обеспечения. Цели и задач и создания комплексной системы защиты информации на предприятии. Применение скрытия и уничтожения информации, дезинформации противника, легендирования. Анализ функций системы защиты предприятия.

    курсовая работа [60,7 K], добавлен 23.06.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.