Алгоритмы симметричного кодирования

Министерство образования  и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Южно-Уральский государственный университет» Факультет «Экономика и управление» Кафедра «Экономическая теория и мировая экономика»

Реферат

На тему «Алгоритмы симметричного  кодирования»

 

 

 

 

 

 

Руководитель, доцент

Степанов Е.А. «____»____________2012 г.

 

Автор работы

Студент группы ЭиУ-225

Воробьева Т.А. «____»____________2012 г.

 

 

 

                                                                             Челябинск 2012

 

 

СОДЕРЖАНИЕ

 

Введение………………………………………………………………………….

2

Глава 1 Классификация алгоритмов шифрования ………...……………

4

Глава 2 Симметричные алгоритмы  шифрования………………………

Глава 3  Применение симметричного алгоритма шифрования …………     

7

Заключение……………………………………………………………………..

12

Библиографический список………………………………………………      

 

Введение

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

  1. возрастающие объемы хранимых и передаваемых данных;
  2. расширение круга пользователей, имеющих доступ к ресурсам ЭВМ, программам и данным;
  3. усложнение режимов эксплуатации вычислительных систем.

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

Защита информации - совокупность мероприятий, методов и средств, обеспечивающих:

  1. исключение НСД к ресурсам ЭВМ, программам и данным;
  2. проверку целостности информации;
  3. исключение несанкционированного использования программ (защита программ от копирования).

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

        С  помощью криптографических методов  возможно:

  1. шифрование информации;
  2. реализация электронной подписи;
  3. распределение ключей шифрования;
  4. защита от случайного или умышленного изменения информации.

       К алгоритмам шифрования предъявляются определенные требования:

  1. высокий уровень защиты данных против дешифрования и возможной модификации;
  2. защищенность информации должна основываться только на знании ключа и не зависеть от того, известен алгоритм или нет (правило Киркхоффа);
  3. малое изменение исходного текста или ключа должно приводить к значительному изменению шифрованного текста (эффект "обвала");
  4. область значений ключа должна исключать возможность дешифрования данных путем перебора значений ключа;
  5. экономичность реализации алгоритма при достаточном быстродействии;
  6. стоимость дешифрования данных без знания ключа должна превышать стоимость данных.

 

  1. Классификация алгоритмов шифрования

Симметричные (с секретным, единым ключом, одноключевые, single-key).

Потоковые (шифрование потока данных):

• с одноразовым или  бесконечным ключом (infinite-key cipher);

• с конечным ключом (система  Вернама);

• на основе генератора псевдослучайных  чисел (ПСЧ).

Блочные (шифрование данных поблочно):

• шифры перестановки (permutation, P-блоки);

• шифры замены (подстановки, substitution,

S-блоки):  

– моноалфавитные (код Цезаря);

– полиалфавитные (шифр Видженера, цилиндр Джефферсона, диск Уэтстоуна, Enigma);

Cоставные:

• Lucipher (фирма IBM, США);

• DES (Data Encryption Standard, США);

• FEAL-1 (Fast Enciphering Algorithm, Япония);

• IDEA/IPES (International Data Encryption Algorithm/;

• Improved Proposed Encryption Standard, фирма Ascom-Tech AG, Швейцария);

• B-Crypt (фирма British Telecom, Великобритания);

• ГОСТ 28147-89 (СССР);

• Skipjack (США).

Асимметричные (с открытым ключом, public-key):

• Диффи-Хеллман DH (Diffie, Hellman);

• Райвест-Шамир-Адлeман RSA (Rivest, Shamir, Adleman);

• Эль-Гамаль ElGamal.

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

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

Обмен информацией осуществляется в три этапа:

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

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

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

   Схема обмена информацией следующая:

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

• отправитель, используя  открытый ключ получателя, зашифровывает  сообщение, которое пересылается получателю;

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

  В асимметричных системах необходимо применять длинные ключи (512 битов иезащищенным каналам.

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

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

При передаче информации должны быть обеспечены одновременно или по отдельности:

• конфиденциальность (privacy) – злоумышленник не должен иметь возможности узнать содержание передаваемого сообщения;

• подлинность (authenticity), включающая два понятия: целостность (integrity) – сообщение должно быть защищено от случайного или умышленного изменения; идентификация отправителя (проверка авторства) – получатель должен иметь возможность проверить, кем отправлено сообщение.

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

 

 

 

2.Симметричные алгоритмы шифрования.

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

    Обмен информацией  осуществляется в 3 этапа:

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

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

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

·        поточные шифры, в которых шифрование проводится над каждым битом либо байтом исходного (открытого) текста с использованием гаммирования. Поточный шифр может быть легко создан на основе блочного (например, ГОСТ 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, а также отсутствие влияния какого-то бита входного байта на какой-то бит результата — то есть случаи, когда бит результата одинаков для всех пар входных слов, отличающихся только в данном бите.

 

Существует множество (не менее двух десятков) алгоритмов симметричных шифров, существенными параметрами  которых являются:

  1. стойкость
  2. длина ключа
  3. число раундов
  4. длина обрабатываемого блока
  5. сложность аппаратной/программной реализации     
  6. сложность преобразования

 

 

 

 

3. Применение симметричного алгоритма шифрования.

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

 Схема работы с применением  симметричного алгоритма шифрования  состоит из следующих этапов:

· стороны устанавливают  на своих компьютерах программное  обеспечение, обеспечивающее шифрование и расшифровку данных и первичную генерацию секретных ключей;

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

· отправитель шифрует  информацию при помощи установленного программного обеспечения, реализующего симметричный алгоритм шифрования;

· зашифрованная информация передается получателю по каналам связи;

· получатель дешифрует информацию, используя тот же ключ, что и  отправитель.

 Ниже приведен обзор  некоторых алгоритмов симметричного  шифрования:

· DES (Data Encryption Standard). Разработан фирмой IBM и широко используется с 1977 года. В настоящее время несколько устарел, поскольку применяемая в нем длина ключа недостаточна для обеспечения устойчивости к вскрытию методом полного перебора всех возможных значений ключа. Вскрытие этого алгоритма стало возможным благодаря быстрому развитию вычислительной техники, сделавшему с 1977 года огромный скачок;

· Triple DES. Это усовершенствованный вариант DES, применяющий для шифрования алгоритм DES три раза с разными ключами. Он значительно устойчивее к взлому, чем DES;

· Rijndael. Алгоритм разработан в Бельгии. Работает с ключами длиной 128, 192 и 256 бит. На данный момент к нему нет претензий у специалистов по криптографии;

· Skipjack. Алгоритм создан и используется Агентством национальной безопасности США. Длина ключа 80 бит. Шифрование и дешифрование информации производится циклически (32 цикла);

· IDEA. Алгоритм запатентован в США и ряде европейских стран. Держатель патента компания Ascom-Tech. Алгоритм использует циклическую обработку информации (8 циклов) путем применения к ней ряда математических операций;

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

 В соответствии с  законодательством США (соглашение  International Traffic in Arms Peguiation), криптографические устройства, включая программное обеспечение, относится к системам вооружения .

 Поэтому при экспорте  программной продукции, в которой  используется криптография, требуется  разрешение Госдепартамента. Фактически  экспорт криптографической продукции  контролирует NSA (National Security Agency). правительство США очень неохотно выдаёт подобные лицензии, поскольку это может нанести ущерб национальной безопасности США. Вместе с тем совсем недавно компании Hewlett–Packard выдано разрешение на экспорт её криптографического комплекса Ver Secure в Великобританию, Германию, Францию, Данию и Австралию. Теперь НР может эксплуатировать в эти страны системы, использующие 128-битный криптостандарт Triple DES, который считается абсолютно надёжным.

 

 

ЗАКЛЮЧЕНИЕ.

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

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

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

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

Список литературы

1) Чмора А.Л. Современная прикладная криптография. 2-е изд., стер. – М.: Гелиос АРВ, 2004. – 256с.: ил.

2) А.Г. Ростовцев, Н.В.  Михайлова Методы криптоанализа классических шифров.

3) А. Саломаа Криптография с открытым ключом.

4) Герасименко В.А. Защита  информации в автоматизированных  системах обработки данных кн. 1.-М.: Энергоатомиздат. -2004.-400с.

 

Алгоритмы симметричного кодирования