МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


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

    Имитовставка передается по каналу связи после зашифрованных данных. На

    приемной стороне аналогичным образом из принятого сообщения выделяется?

    имитовставка и сравнивается с полученной откуда?. В случае несовпадения

    имитовставок сообщение считается ложным.

    Системы с открытым ключом

    Как бы ни были сложны и надежны криптографические системы - их слабое

    мест при практической реализации - проблема распределения ключей. Для того,

    чтобы был возможен обмен конфиденциальной информацией между двумя

    субъектами ИС, ключ должен быть сгенерирован одним из них, а затем каким-то

    образом опять же в конфиденциальном порядке передан другому. Т.е. в общем

    случае для передачи ключа опять же требуется использование какой-то

    криптосистемы.

    Для решения этой проблемы на основе результатов, полученных

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

    ключом.

    Суть их состоит в том, что каждым адресатом ИС генерируются два ключа,

    связанные между собой по определенному правилу. Один ключ объявляется

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

    кто желает послать сообщение адресату. Секретный ключ сохраняется в тайне.

    Исходный текст шифруется открытым ключом адресата и передается ему.

    Зашифрованный текст в принципе не может быть расшифрован тем же открытым

    ключом. Дешифрование сообщение возможно только с использованием закрытого

    ключа, который известен только самому адресату.

    Криптографические системы с открытым ключом используют так называемые

    необратимые или односторонние функции, которые обладают следующим

    свойством: при заданном значении x относительно просто вычислить значение

    f(x), однако если y=f(x), то нет простого пути для вычисления значения x.

    Множество классов необратимых функций и порождает все разнообразие

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

    использования в реальных ИС.

    В самом определении необратимости присутствует неопределенность. Под

    необратимостью понимается не теоретическая необратимость, а практическая

    невозможность вычислить обратное значение используя современные

    вычислительные средства за обозримый интервал времени.

    Поэтому чтобы гарантировать надежную защиту информации, к системам с

    открытым ключом (СОК) предъявляются два важных и очевидных требования:

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

    его восстановление на основе открытого ключа.

    2. Определение закрытого ключа на основе открытого также должно быть

    невозможным на современном технологическом уровне. При этом желательна

    точная нижняя оценка сложности (количества операций) раскрытия шифра.

    Алгоритмы шифрования с открытым ключом получили широкое распространение

    в современных информационных системах. Так, алгоритм RSA стал мировым

    стандартом де-факто для открытых систем и рекомендован МККТТ.

    Вообще же все предлагаемые сегодня криптосистемы с открытым ключом

    опираются на один из следующих типов необратимых преобразований:

    1. Разложение больших чисел ан простые множители.

    2. Вычисление логарифма в конечном поле.

    3. Вычисление корней алгебраических уравнений.

    Здесь же следует отметить, что алгоритмы криптосистемы с открытым

    ключом (СОК) можно использовать в трех назначениях.

    1. Как самостоятельные средства защиты передаваемых и хранимых данных.

    2. Как средства для распределения ключей. Алгоритмы СОК более

    трудоемки, чем традиционные криптосистемы. Поэтому часто на практике

    рационально с помощью СОК распределять ключи, объем которых как информации

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

    большими информационными потоками.

    3. Средства аутентификации пользователей. Об этом будет рассказано в

    главе «Электронная подпись».

    Ниже рассматриваются наиболее распространенные системы с открытым

    ключом.

    Алгоритм RSA

    Несмотря на довольно большое число различных СОК, наиболее популярна -

    криптосистема RSA, разработанная в 1977 году и получившая название в честь

    ее создателей: Рона Ривеста[7], Ади Шамира и Леонарда Эйдельмана.

    Они воспользовались тем фактом, что нахождение больших простых чисел в

    вычислительном отношении осуществляется легко, но разложение на множители

    произведения двух таких чисел практически невыполнимо. Доказано (теорема

    Рабина), что раскрытие шифра RSA эквивалентно такому разложению. Поэтому

    для любой длины ключа можно дать нижнюю оценку числа операций для раскрытия

    шифра, а с учетом производительности современных компьютеров оценить и

    необходимое на это время.

    Возможность гарантированно оценить защищенность алгоритма RSA стала

    одной из причин популярности этой СОК на фоне десятков других схем. Поэтому

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

    работы с удаленными клиентами (обслуживание кредитных карточек).

    В настоящее время алгоритм RSA используется во многих стандартах, среди

    которых SSL, S-HHTP, S-MIME, S/WAN, STT и PCT.

    Рассмотрим математические результаты, положенные в основу этого

    алгоритма.

    Теорема 1. (Малая теорема Ферма.)

    Если р - простое число, то

    xp-1 = 1 (mod p) (1)

    для любого х, простого относительно р, и

    xp = х (mod p) (2)

    для любого х.

    Доказательство. Достаточно доказать справедливость уравнений (1) и (2)

    для х(Zp. Проведем доказательство методом индукции.

    Очевидно, что уравнение (8.2.2) выполняется при х=0 и 1. Далее

    xp=(x-1+1)p= ( C(p,j)(x-1)j=(x-1)p+1 (mod p),

    0(j(p

    так как C(p,j)=0(mod p) при 0

    метода доказательства по индукции теорема доказана.

    Определение. Функцией Эйлера ((n) называется число

    положительных целых, меньших n и простых относительно n.

    |n |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |

    |((n) |1 |2 |2 |3 |2 |6 |4 |6 |4 |10 |4 |

    Теорема 2. Если n=pq, (p и q - отличные друг от друга

    простые числа), то

    ((n)=(p-1)(q-1).

    Теорема 3. Если n=pq, (p и q - отличные друг от друга

    простые числа) и х - простое относительно р и q, то

    x((n) = 1 (mod n).

    Следствие . Если n=pq, (p и q - отличные друг от друга

    простые числа) и е простое относительно ((n), то отображение

    Еe,n: x(xe (mod n)

    является взаимно однозначным на Zn.

    Очевиден и тот факт, что если е - простое относительно ((n), то

    существует целое d, такое, что

    ed = 1 (mod ((n)) (3)

    На этих математических фактах и основан популярный алгоритм RSA.

    Пусть n=pq, где p и q - различные простые числа. Если e и d

    удовлетворяют уравнению (8.2.3), то отображения Еe,n и Еd,n являются

    инверсиями на Zn. Как Еe,n, так и Еd,n легко рассчитываются, когда известны

    e, d, p, q. Если известны e и n, но p и q неизвестны, то Еe,n представляет

    собой одностороннюю функцию; нахождение Еd,n по заданному n равносильно

    разложению n. Если p и q - достаточно большие простые, то разложение n

    практически не осуществимо. Это и заложено в основу системы шифрования RSA.

    Пользователь i выбирает пару различных простых pi и qi и рассчитывает

    пару целых (ei, di), которые являются простыми относительно ((ni), где

    ni=pi qi . Справочная таблица содержит публичные ключи {(ei ,ni)}.

    Предположим, что исходный текст

    x =(x0, x1, ..., xn-1), x(Zn , 0 ( i < n,

    сначала представлен по основанию ni :

    N = c0+ci ni+....

    Пользователь i зашифровывает текст при передаче его пользователю j,

    применяя к n отображение Edi,ni :

    N ( Edi,ni n = n’.

    Пользователь j производит дешифрование n’, применяя Eei,ni :

    N’ ( Eei,ni n’= Eei,ni Edi,ni n = n .

    Очевидно, для того чтобы найти инверсию Edi,ni по отношению к Eei,ni,

    требуется знание множителей n=pi qi. Время выполнения наилучших из

    известных алгоритмов разложения при n=10100 на сегодняшний день выходит за

    пределы современных технологических возможностей.

    Рассмотрим небольшой пример, иллюстрирующий применение алгоритма RSA.

    Пример Зашифруем сообщение “САВ”. Для простоты будем использовать

    маленькие числа (на практике применяются гораздо большие).

    1. Выберем p=3 и q=11.

    1. Определим n=3*11=33.

    1. Найдем (p-1)(q-1)=20. Следовательно, в качестве d, взаимно простое с

    20, например, d=3.

    1. Выберем число е. В качестве такого числа может быть взято любое число,

    для которого удовлетворяется соотношение (е*3) (mod 20) = 1, например 7.

    1. Представим шифруемое сообщение как последовательность целых чисел с

    помощью отображения: А(1, В(2, С(3. Тогда сообщение принимает вид

    (3,1,2). Зашифруем сообщение с помощью ключа {7,33}.

    ШТ1 = (37) (mod 33) = 2187 (mod 33) = 9,

    ШТ2 = (17) (mod 33) = 1 (mod 33) = 1,

    ШТ3 = (27) (mod 33) = 128 (mod 33) = 29.

    6. Расшифруем полученное зашифрованное сообщение (9,1,29) на основе

    закрытого ключа {3,33}:

    ИТ1 = (93) (mod 33) = 729 (mod 33) = 3,

    ИТ2= (13) (mod 33) = 1 (mod 33) = 1,

    ИТ3 = (293) (mod 33) = 24389 (mod 33) = 2.

    Итак, в реальных системах алгоритм RSA реализуется следующим образом:

    каждый пользователь выбирает два больших простых числа, и в соответствии с

    описанным выше алгоритмом выбирает два простых числа e и d. Как результат

    умножения первых двух чисел (p и q) устанавливается n.

    {e,n} образует открытый ключ, а {d,n} - закрытый (хотя можно взять и

    наоборот).

    Открытый ключ публикуется и доступен каждому, кто желает послать

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

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

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

    сообщение.

    Практическая реализация RSA

    В настоящее время алгоритм RSA активно реализуется как в виде

    самостоятельных криптографических продуктов[8], так и в качестве встроенных

    средств в популярных приложениях[9].

    Важная проблема практической реализации - генерация больших простых

    чисел. Решение задачи «в лоб» - генерация случайного большого числа n

    (нечетного) и проверка его делимости на множители от 3 вплоть до n0.5. В

    случае неуспеха следует взять n+2 и так далее.[10]

    В принципе в качестве p и q можно использовать «почти» простые числа,

    то есть числа для которых вероятность того, что они простые, стремится к 1.

    Но в случае, если использовано составное число, а не простое,

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

    генерировать «почти» простые числа с уровнем доверия 2-100.

    Другая проблема - ключи какой длины следует использовать?

    Для практической реализации алгоритмов RSA полезно знать оценки

    трудоемкости разложения простых чисел различной длины, сделанные Шроппелем.

    |log10 n |Число операций |Примечания |

    |50 |1.4*1010 |Раскрываем на суперкомпьютерах |

    |100 |2.3*1015 |На пределе современных технологий |

    |200 |1.2*1023 |За пределами современных технологий |

    |400 |2.7*1034 |Требует существенных изменений в |

    | | |технологии |

    |800 |1.3*1051 |Не раскрываем |

    В конце 1995 года удалось практически реализовать раскрытие шифра RSA

    для 500-значного ключа. Для этого с помощью сети Интернет было

    задействовано 1600 компьютеров.

    Сами авторы RSA рекомендуют использовать следующие размеры модуля n:

    768 бит - для частных лиц;

    1024 бит - для коммерческой информации;

    2048 бит - для особо секретной информации.[11]

    Третий немаловажный аспект реализации RSA - вычислительный. Ведь

    приходится использовать аппарат длинной арифметики. Если используется ключ

    длиной k бит, то для операций по открытому ключу требуется О(k2) операций,

    по закрытому ключу - О(k3) операций, а для генерации новых ключей требуется

    О(k4) операций.

    Криптографический пакет BSAFE 3.0 (RSA D.S.) на компьютере Pentium-90

    осуществляет шифрование со скоростью 21.6 Кбит/c для 512-битного ключа и со

    скоростью 7.4 Кбит/c для 1024 битного. Самая «быстрая» аппаратная

    реализация обеспечивает скорости в 60 раз больше.

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

    тысяч раз большее время.

    Криптосистема Эль-Гамаля

    Данная система является альтернативой RSA и при равном значении ключа

    обеспечивает ту же криптостойкость[12].

    В отличие от RSA метод Эль-Гамаля основан на проблеме дискретного

    логарифма. Этим он похож на алгоритм Диффи-Хелмана. Если возводить число в

    степень в конечном поле достаточно легко, то восстановить аргумент по

    значению (то есть найти логарифм) довольно трудно.

    Основу системы составляют параметры p и g - числа, первое из которых -

    простое, а второе - целое.

    Александр генерирует секретный ключ а и вычисляет открытый ключ y = gа

    mod p. Если Борис хочет послать Александру сообщение m, то он выбирает

    случайное число k, меньшее p и вычисляет

    y1 = gk mod p и

    y2 = m ( yk,

    где ( означает побитовое сложение по модулю 2. Затем Борис посылает

    (y1,y2) Александру.

    Александр, получив зашифрованное сообщение, восстанавливает его:

    m = (y1a mod p) ( y2.

    Алгоритм цифровой подписи DSA, разработанный NIST (National Institute

    of Standard and Technology) и являющийся частью стандарта DSS частично

    опирается на рассмотренный метод.

    Криптосистемы на основе эллиптических уравнений

    Эллиптические кривые - математический объект, который может определен

    над любым полем (конечным, действительным, рациональным или комплексным). В

    криптографии обычно используются конечные поля. Эллиптическая кривая есть

    множество точек (x,y), удовлетворяющее следующему уравнению:

    y2 = x3 + ax + b,

    а также бесконечно удаленная точка. Для точек на кривой довольно легко

    вводится операция сложения, которая играет ту же роль, что и операция

    умножения в криптосистемах RSA и Эль-Гамаля.

    В реальных криптосистемах на базе эллиптических уравнений используется

    уравнение

    y2 = x3 + ax + b mod p,

    где р - простое.

    Проблема дискретного логарифма на эллиптической кривой состоит в

    следующем: дана точка G на эллиптической кривой порядка r (количество точек

    на кривой) и другая точка Y на этой же кривой. Нужно найти единственную

    точку x такую, что Y = xG, то есть Y есть х-я степень G.

    Электронная подпись

    В чем состоит проблема аутентификации данных?

    В конце обычного письма или документа исполнитель или ответственное

    лицо обычно ставит свою подпись. Подобное действие обычно преследует две

    цели. Во-первых, получатель имеет возможность убедиться в истинности

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

    подпись является юридическим гарантом авторства документа. Последний аспект

    особенно важен при заключении разного рода торговых сделок, составлении

    доверенностей, обязательств и т.д.

    Если подделать подпись человека на бумаге весьма непросто, а установить

    авторство подписи современными криминалистическими методами - техническая

    деталь, то с подписью электронной дело обстоит иначе. Подделать цепочку

    битов, просто ее скопировав, или незаметно внести нелегальные исправления в

    документ сможет любой пользователь.

    С широким распространением в современном мире электронных форм

    документов (в том числе и конфиденциальных) и средств их обработки особо

    актуальной стала проблема установления подлинности и авторства безбумажной

    документации.

    В разделе криптографических систем с открытым ключом было показано, что

    при всех преимуществах современных систем шифрования они не позволяют

    обеспечить аутентификацию данных. Поэтому средства аутентификации должны

    использоваться в комплексе и криптографическими алгоритмами.

    Итак, пусть имеются два пользователя Александр и Борис. От каких

    нарушений и действий злоумышленника должна защищать система аутентификации.

    Отказ (ренегатство).

    Александр заявляет, что он не посылал сообщение Борису, хотя на самом

    деле он все-таки посылал.

    Для исключения этого нарушения используется электронная (или цифровая)

    подпись.

    Модификация (переделка).

    Борис изменяет сообщение и утверждает, что данное (измененное)

    сообщение послал ему Александр.

    Подделка.

    Борис формирует сообщение и утверждает, что данное (измененное)

    сообщение послал ему Александр.

    Активный перехват.

    Владимир перехватывает сообщения между Александром и Борисом с целью их

    скрытой модификации.

    Для защиты от модификации, подделки и маскировки используются цифровые

    сигнатуры.

    Маскировка (имитация).

    Владимир посылает Борису сообщение от имени Александра .

    Страницы: 1, 2, 3, 4, 5


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.