Криптография

Проблема защиты информации путем ее
преобразования, исключающего ее прочтение посторонним лицом волновала
человеческий ум с давних времен. История криптографии - ровесница истории
человеческого языка. Более того, первоначально письменность сама по себе была
криптографической системой, так как в древних обществах ею владели только
избранные. Священные книги Древнего Египта, Древней Индии тому примеры. С
широким распространением письменности криптография стала формироваться как
самостоятельная наука. Первые криптосистемы встречаются уже в начале нашей эры.
Так, Цезарь в своей переписке использовал уже более менее систематический шифр,
получивший его имя. Бурное развитие криптографические системы получили в годы
первой и второй мировых войн. Начиная с послевоенного времени и по нынешний день
появление вычислительных средств ускорило разработку и совершенствование
криптографических методов. Криптографические методы защиты информации в
автоматизированных системах могут применяться как для защиты информации,
обрабатываемой в ЭВМ или хранящейся в различного типа ЗУ, так и для закрытия
информации, передаваемой между различными элементами системы по линиям связи.
Криптографическое преобразование как метод предупреждения несационированного
доступа к информации имеет многовековую историю. В настоящее время разработано
большое колличество различных методов шифрования, созданы теоретические и
практические основы их применения. Подавляющие число этих методов может быть
успешно использовано и для закрытия информации. Под шифрованием в данном
едаваемых сообщений, хранение информации (документов, баз данных) на носителях в
зашифрованном виде. Почему проблема использования криптографических методов в
информационных системах (ИС) стала в настоящий момент особо актуальна? С одной
стороны, расширилось использование компьютерных сетей, в частности глобальной
сети Интернет, по которым передаются большие объемы информациигосударственного,
военного, коммерческого и частного характера, не допускающего возможность
доступа к ней посторонних лиц. С другой стороны, появление новых мощных
компьютеров, технологий сетевых и нейронных вычислений сделало возможным
дискредитацию криптографических систем еще недавно считавшихся практически не
раскрываемыми. - тайный, lo . Цели этих направлений прямо
противоположны. Сфера интересов
Современная криптография включает в себя четыре крупных
раздела: Управление ключами. Основные
направления использования криптографических методов - передача конфиденциальной
информации по каналам связи (например, электронная почта), установление
подлинности передаваемых сообщений ,хранение информации (документов,баз данных)
на носителях в зашифрованном виде. Криптографические методы защиты информации
в автоматизированных системах могут применяться как для защиты информации,
обрабатываемой в ЭВМ или хранящейся в различного типа ЗУ, так и для закрытия
информации, передаваемой между различными элементами системы по линиям связи.
Криптографическое преобразование как метод предупреждения несационированного
доступа к информации имеет многовековую историю. В настоящее время разработано
большое колличество различных методов шифрования, созданы теоретические и
практические основы их применения. Подавляющие число этих методов может быть
успешно использовано и для закрытия информации. Итак, криптография дает
возможность преобразовать информацию таким образом, что ее прочтение
(восстановление) возможно только при знании ключа. ,
построенные на некотором - конечное множество используемых для кодирования
информации знаков. В качестве примеров алфавитов, используемых в современных ИС можно привести
следующие: - символы, входящие в стандартные коды ASCII и КОИ-8; Шифрование ,
заменяется - обратный
шифрованию процесс. На основе ключа шифрованный текст преобразуется в
исходный. Криптографическая система
представляет собой семейство T преобразований открытого текста. Члены этого
семейства индексируются, или обозначаются символом - это набор возможных
значений ключа. Обычно ключ представляет собой последовательный ряд букв
алфавита. и для шифрования, и для
дешифрования используется закрытый , которые
математически связаны друг с другом. Информация шифруется с помощью открытого
ключа, который доступен всем желающим, а расшифровывается с помощью закрытого
ключа, известного только получателю сообщения. относятся к процессам системы обработки
информации, содержанием которых является составление и распределение ключей
между пользователями. называется
присоединяемое к тексту его криптографическое преобразование, которое позволяет
при получении текста другим пользователем проверить авторство и подлинность
сообщения. называется характеристика шифра,
определяющая его стойкость к дешифрованию без знания ключа (т.е. криптоанализу).
Имеется несколько показателей криптостойкости, среди которых: . Эффективность
шифрования с целью защиты информации зависит от сохранения тайны ключа и
криптостойкости шифра. Процесс криптографического закрытия данных может
осуществляться как программно, так и аппаратно. Аппаратная реализация отличается
существенно большей стоимостью, однако ей присущи и преимущества: высокая
производительность, простота, защищенность и т.д. Программная реализация более
практична, допускает известную гибкость в использовании. зашифрованное сообщение должно поддаваться чтению только при
наличии ключа; число операций, необходимых для определения использованного
ключа шифрования по фрагменту шифрованного сообщения и соответствующего ему
открытого текста, должно быть не меньше общего числа возможных ключей; число
операций, необходимых для расшифровывания информации путем перебора всевозможных
ключей должно иметь строгую нижнюю оценку и выходить за пределы возможностей
современных компьютеров (с учетом возможности использования сетевых
вычислений); незначительное изменение ключа должно приводить к существенному
изменению вида зашифрованного сообщения даже при использовании одного и того же
ключа; дополнительные биты, вводимые в сообщение в процессе шифрования,
должен быть полностью и надежно скрыты в шифрованном тексте; не должно быть
простых и легко устанавливаемых зависимостью между ключами, последовательно
используемыми в процессе шифрования; алгоритм должен допускать как
программную, так и аппаратную реализацию, при этом изменение длины ключа не
должно вести к качественному ухудшению алгоритма шифрования. Все
многообразие существующих криптографических методов можно свести к следующим
классам
преобразований: аиболее простой вид преобразований, заключающийся в замене
символов исходного текста на другие (того же алфавита) по более или менее
сложному правилу. Для обеспечения высокой криптостойкости требуется
использование больших ключей. несложный метод
криптографического преобразования. Используется как правило в сочетании с
другими методами. тот метод заключается в наложении на
исходный текст некоторой псевдослучайной последовательности, генерируемой на
основе ключа. собой последовательность (с возможным
повторением и чередованием) основных методов преобразования, применяемую к блоку
(части) шифруемого текста. Блочные шифры на практике встречаются чаще, чем
"чистые" преобразования того или иного класса в силу их более высокой
криптостойкости. Российскийи американский стандарты шифрования основаны именно
на этом классе шифров.
набора целых чисел (0,1,...,N-1) называется его переупорядочение. Для того чтобы
показать, что целое i перемещено из позиции i в позицию , будем использовать запись (1),..., !=1*2*...*(N-1)*N.
Введем обозначение s s i , 0 s S. И,
наоборот, автоморфизм S соответствует перестановке целых чисел (0,1,2,.., называется последовательность автоморфизмов:
T={T m,n ¥ Поскольку T j, число
криптографических преобразований исходного текста размерности m =2 число различных криптографических
преобразований равно 1089!. Отсюда следует, что потенциально существует большое
число отображений исходного текста в шифрованный. k } были определены алгоритмами,
зависящими от относительно небольшого числа параметров (ключей). на алфавите Z , при котором буквы исходного текста t замещены буквами
шифрованного текста ; Набор всех подстановок называется
симметрической группой Z m Замкнутость
является подстановкой: 1 : результат
произведения не зависит
от порядка расстановки скобок: 2 : постановка i, определяемая как i(t)=t, 0 ) по операции умножения: i Существование
обратного
существует единственная обратная подстановка p
SYM(Z называется последовательность элементов
симметрической группы
Z n ¥ , при помощи которого осуществляется преобразование -грамму шифрованного текста (y £ называется моноалфавитной подстановкой, если
называется многоалфавитной подстановкой. n-1 s i 1.3.
Подстановка Цезаря моноалфавитных
подстановок £ :
j , k <m. Семейство подстановок Цезаря названо по имени
римского императора Гая Юлия Цезаря, который поручал Марку Туллию Цицерону
составлять послания с использованием 50-буквенного алфавита и подстановки
C Подстановка определяется по таблице замещения, содержащей пары
соответствующих букв "исходный текст – шифрованный текст". Для C )
означает, что буква исходного текста (слева) шифруется при помощи C называется моноалфавитная подстановка, преобразующая -грамму шифрованного текста (y (x Например, ВЫШЛИТЕ_НОВЫЕ_УКАЗАНИЯ
посредством подстановки C м à К à à Г а Н à à Ж З И Таблица 1.1: Применение подстановки
Цезвря. 1) шифрованный и соответствующий исходный текст или то определение ключа и
дешифрование исходного текста тривиальны. . Они основаны на
подстановке не отдельных символов, а 2-грамм (шифр Плэйфера) или -грамм
(шифр Хилла). При более высокой криптостойкости они значительно сложнее для
реализации и требуют достаточно большого количества ключевой
информации. Слабая криптостойкость моноалфавитных подстановок преодолевается
с применением подстановок многоалфавитных. p , ...), содержащим не менее двух
различных подстановок. В начале рассмотрим многоалфавитные системы подстановок с
нулевым начальным смещением. Пусть { i<n} – независимые случайные переменные с
одинаковым распределением вероятностей, K Система одноразового
использования в шифрованный
текст i Для такой системы подстановки
используют также термин "одноразовая лента" и "одноразовый блокнот".
Пространство ключей К системы одноразовой подстановки является вектором рангов
( Рассмотрим небольшой пример шифрования с
бесконечным ключом. В качестве ключа примем текст БЕСКОНЕЧНЫЙ_КЛЮЧ Наложение белого шума в виде бесконечного ключа на исходный текст
меняет статистические характеристики языка источника. Системы одноразового
использования Почему же эти системы
неприменимы для обеспечения секретности при обработке информации? Ответ простой
- они непрактичны, так как требуют независимого выбора значения ключа для каждой
буквы исходного текста. Хотя такое требование может быть и не слишком трудным
при передаче по прямому кабелю Москва - Нью-Йорк, но для информационных оно
непосильно, поскольку там придется шифровать многие миллионы знаков.
Посмотрим, что получится, если ослабить требование шифровать каждую букву
исходного текста отдельным значением ключа. 1.5.Системы
шифрования Вижинера , и продлим ее до бесконечной
последовательности, повторяя цепочку. Таким образом, получим j < и ключе пользователя 15 8 2 10 11 4 18 рабочий ключ
будет периодической последовательностью:
VI ) = (x 1) исходный текст 2) i-й
фрагмент исходного текста i+ =2 называется
в
пятибитовый символ. К исходному тексту Бодо добавлялся ключ (по модулю 2).
Старинный телетайп фирмы AT&T со считывающим устройством Вернама и
оборудованием для шифрования, использовался корпусом связи армии США. практика использовать слово
или фразу в качестве ключа ) было легко запомнить. В ИС
для обеспечения безопасности информации это недопустимо. Для получения ключей
должны использоваться программные или аппаратные средства случайной генерации
ключей. НЕ_СЛЕДУЕТ_ВЫБИРАТЬ_НЕСЛУЧАЙНЫЙ_КЛЮЧ НЕ_С ЛЕДУ ЕТ_В ЫБИР АТЬ_ НЕСЛ УЧАЙ НЫЙ_
КЛЮЧ ЧРЭЗ ХРБЙ ПЭЭЩ ДМЕЖ КЭЩЦ ЧРОБ ЭБЮ_
ЧЕЖЦ ФЦЫН Пусть r-многоалфавитный ключ , ) с элементами в ,..., ) при помощи ключа : (x ,...,y )), где используется
условие . Следует признать,
что и многоалфавитные подстановки в принципе доступны криптоаналитическому
исследованию. Криптостойкость многоалфавитных систем резко убывает с уменьшением
длины ключа. Тем не менее такая система как шифр Вижинера допускает несложную
аппаратную или программную реализацию и при достаточно большой длине ключа может
быть использован в современных ИС. Гаммирование является также широко
применяемым криптографическим преобразованием. На самом деле граница между
гаммированием и использованием бесконечных ключей и шифров Вижинера, о которых
речь шла выше, весьма условная. гаммированием
заключается в генерации гаммы шифра с помощью датчика псевдослучайных чисел и
наложении полученной гаммы на открытые данные обратимым образом (например,
используя сложение по модулю 2). данных сводится к
повторной генерации гаммы шифра при известном ключе и наложении такой гаммы на
зашифрованные данные. Полученный зашифрованный текст является достаточно
трудным для раскрытия в том случае, если гамма шифра не содержит повторяющихся
битовых последовательностей. По сути дела гамма шифра должна изменяться
случайным образом для каждого шифруемого слова. Фактически же, если период гаммы
превышает длину всего зашифрованного текста и неизвестна никакая часть исходного
текста, то шифр можно раскрыть только прямым перебором (пробой на ключ).
Криптостойкость в этом случае определяется размером ключа. Метод гаммирования
становится бессильным, если злоумышленнику становится известен фрагмент
исходного текста и соответствующая ему шифрограмма. Простым вычитанием по модулю
получается отрезок ПСП и по нему восстанавливается вся последовательность.
Злоумышленники может сделать это на основе догадок о содержании исходного
текста. Так, если большинство посылаемых сообщений начинается со слов
"СОВ.СЕКРЕТНО", то криптоанализ всего текста значительно облегчается. Это
следует учитывать при создании реальных систем информационной безопасности.
1.7. Шифрование с помощью аналитических
преобразований Таким образом, получили следующюю последовательность знаков
раскрытого текста:3,0,19,0,12,0, что соответствует исходному тексту. Этот метод
шифрования является формальнным , что позволяет легко реализовать его
программными средствами. - математический объект, который может
определен над любым полем (конечным, действительным, рациональным или
комплексным). В криптографии обычно используются конечные поля. Эллиптическая
кривая есть множество точек а также бесконечно
удаленная точка. Для точек на кривой довольно легко вводится операция сложения,
которая играет ту же роль, что и операция умножения в криптосистемах RSA и Эль-
Гамаля. + ax + b Проблема дискретного логарифма на эллиптической кривой состоит в
следующем: дана точка G на эллиптической кривой порядка r (количество точек на
кривой) и другая точка Y на этой же кривой. Нужно найти единственную точку
2.
Эллиптические фунции – реализация метода открытых ключей Как бы ни были сложны и надежны криптографические системы - их
слабое мест при практической реализации - проблема .
Для того, чтобы был возможен обмен конфиденциальной информацией между двумя
субъектами ИС, ключ должен быть сгенерирован одним из них, а затем каким-то
образом опять же в конфиденциальном порядке передан другому. То есть , в общем
случае для передачи ключа опять же требуется использование какой-то
криптосистемы. системы с открытым
ключом. Суть их состоит в том, что каждым адресатом ИС генерируются два
ключа, связанные между собой по определенному правилу. Один ключ объявляется
. Открытый ключ публикуется и доступен
любому, кто желает послать сообщение адресату. Секретный ключ сохраняется в
тайне. Исходный текст шифруется открытым ключом адресата и передается ему.
Зашифрованный текст в принципе не может быть расшифрован тем же открытым ключом.
Дешифрование сообщение возможно только с использованием закрытого ключа, который
известен только самому адресату. Криптографические системы с открытым ключом используют
так называемые относительно просто
вычислить значение Множество классов необратимых
функций и порождает все разнообразие систем с открытым ключом. Однако не всякая
необратимая функция годится для использования в реальных ИС. понимается не теоретическая необратимость, а практическая
невозможность вычислить обратное значение используя современные вычислительные
средства за обозримый интервал времени. Поэтому чтобы гарантировать надежную
защиту информации, к системам с открытым ключом (СОК) предъявляются два важных и
очевидных требования: 1. Преобразование исходного текста должно быть
необратимым и исключать его восстановление на основе открытого ключа. 2.
Определение закрытого ключа на основе открытого также должно быть невозможным на
современном технологическом уровне. При этом желательна точная нижняя оценка
сложности (количества операций) раскрытия шифра. Алгоритмы шифрования с
открытым ключом получили широкое распространение в современных информационных
системах. Так, алгоритм RSA стал мировым стандартом де-факто для открытых систем
и рекомендован МККТТ. Вообще же все предлагаемые сегодня криптосистемы с
открытым ключом опираются на один из следующих типов необратимых
преобразований: Вычисление корней алгебраических уравнений. Здесь
же следует отметить, что алгоритмы криптосистемы с открытым ключом (СОК) можно
использовать в трех назначениях. средства для распределения
ключей . Алгоритмы СОК более трудоемки, чем традиционные криптосистемы.
Поэтому часто на практике рационально с помощью СОК распределять ключи, объем
которых как информации незначителен. А потом с помощью обычных алгоритмов
осуществлять обмен большими информационными потоками. Ниже рассматриваются наиболее распространенные системы с открытым
ключом. Несмотря на довольно большое число различных СОК, наиболее популярна -
криптосистема RSA, разработанная в 1977 году и получившая название в честь ее
создателей: Рона Ривеста, Ади Шамира и Леонарда Эйдельмана. Они
воспользовались тем фактом, что нахождение больших простых чисел в
вычислительном отношении осуществляется легко, но разложение на множители
произведения двух таких чисел практически невыполнимо. Доказано (теорема
Рабина), что раскрытие шифра RSA эквивалентно такому разложению. Поэтому для
любой длины ключа можно дать нижнюю оценку числа операций для раскрытия шифра, а
с учетом производительности современных компьютеров оценить и необходимое на это
время. Возможность гарантированно оценить защищенность алгоритма RSA стала
одной из причин популярности этой СОК на фоне десятков других схем. Поэтому
алгоритм RSA используется в банковских компьютерных сетях, особенно для работы с
удаленными клиентами (обслуживание кредитных карточек). , S-MIME, S/WAN, STT и Сегодня безопасные решения используют некоторую комбинацию из пяти
различных криптографических услуг. Эти услуги: –
введением пути в оперативную транзакцию, пользователь подтверждает, что это
именно он. - обеспечение сохранения
данных неправомочными сторонами. - получатель транзакции
способен демонстрировать нейтральному третьему лицу, что требуемый передатчик
действительно посылал транзакцию. Существуют два главных типа криптографии
симметрично - ключевые и шифрование с открытым ключом, которые основаны на
комплексных математических алгоритмах и управляются ключами. Симметрично -
ключевые схемы криптографии требуют две стороны, которые хотят войти в доверие,
чтобы разделить общий, секретный ключ. Каждый пользователь должен доверять
другому, чтобы не обнародовать общий ключ третьему лицу. Эти системы эффективно
зашифруют большое колличество данных ; однако, они излагают существенные
ключевые проблемы управления в сетях больше чем в маленьком числе пользователей,
и обычно используются вместе с шифрованием с открытым ключом. В системах
шифрования отправитель сообщения шифрует его открытым ключом получателя.
Получатель расшифровывает это сообщение своим личным (секретным) ключом. Имея
открытый ключ получателя, каждый момент послать ему сообщение ,а прочитать его
может только обладатель личного ключа. При этом получить личный ключ из
открытого с помощью каких-либо математических операций невозможно. В системах
цифровой лодписи подпись ''накладывается'' с использованием секретного ключа , а
снимается с помощью открытого отправителя . Схемы Шифрования с открытым
ключом требуют, чтобы каждая сторона имела ключевую пару: секретный ключ,
который не должен быть раскрыт другому пользователю, и общий ключ, который может
быть доступным в общем каталоге. Эти два ключа связаны жесткой односторонней
функцией, так что в вычислительном отношении неосуществимо определить секретный
ключ от общего ключа. Секретный ключ часто сохраняется в программном обеспечении
с использованием пароля; однако, секретный ключ должен идеально быть сохранен в
безопасной аппаратной лексеме, которая предотвращает прямой доступ или
вмешательство. Криптосистемы с ключом общего пользования решают ключевые
проблемы управления, связанные с симметрично - ключевым кодированием; однако,
шифрование с открытым ключом предлагает способность эффективно осуществить
цифровые представления. – это электронный эквивалент традиционных рукописных сигнатур.
Рукописные сигнатуры обеспечивают службу безопасности, потому что уникальность
почерка личностей делает сигнатуры интенсивными. В отличие от почерка
индивидуума, электронная информация проста для дублирования. Если электронные
сигнатуры использовались таким же образом как письменные сигнатуры, защита легко
может быть поставлена под угрозу. Цифровые представления могут использоваться,
чтобы использовать три криптогафических услуги: идентификацию, неотказ, и
целостность данных. код с исправлением ошибок может использоваться, чтобы
генерировать сильные цифровые представления с маленьким количеством обработки
энергии. После изобретения
шифрования с открытым ключом, были предложены многочисленные общее - ключевые
системы засекречивания на ее основе.Криптография с открытым ключом может
применяться как для шифрования сообщений , так и для аутентификации (так
называемая цифровая подпись). Каждая из этих систем полагается на трудную
математическую проблему для ее защиты. Они являются труднообрабатываемыми,
потому что годы интенсивного изучения ведущими математиками и компьютерными
учеными не сумели создать эффективные алгоритмы для их решения, так, чтобы
практически, они остались труднообрабатываемыми с текущей вычислительной
технологией. Требуется время , чтобы получить безопасный ключ с лучшим известным
алгоритмом для этой проблемы. Обще - ключевая система шифрования, основана на
этой проблеме. - математические конструкции, которые
изучились математиками начиная с семнадцатого столетия. В 1985 Нейл Коблиц и
Виктор Миллер независимо предложили криптосистемы с ключом общего пользования,
использующие группу точек на эллиптической кривой, и эллиптическая криптография
кривой (код с исправлением ошибок) была рождена. Начиная с того времени,
многочисленные исследователи и разработчики потратили несколько лет, исследуя
силу кода с исправлением ошибок и улучшая методы для его выполнения. Сегодня
более быстрая криптосистема с ключом общего пользования предлагает практическую
и безопасную технологию для наиболее сдерживаемой среды. Код с исправлением
ошибок дает самую высокую силу в любой известной криптосистемы с ключом общего
пользования из-за трудности жесткой проблемы, на которой это основано. Эта
большая трудность жесткой проблемы эллиптической кривой, дискретной проблемы
логарифма (ECDLP) означает что меньший размер ключа выдает эквивалентные уровни
защиты. Учитывая лучшие известные алгоритмы к целым числам множителя и вычисляют
эллиптические логарифмы кривой, размеры ключа являются эквивалентной силой,
основанной на MIPS годах, необходимых, чтобы восстановить один ключ. Трудность
проблемы и заканчивающихся размеров ключа эквивалентной силы предоставляет
несколько прямых выгод к выполнению электроной платы. – это маленькие, переносные,
устройства противодействия вмешательству, обеспечивающие пользователей с
хранением памятью и возможностью обработки. Из-за их уникальной формы,
электроные платы предложены для использования в широком разнообразии приложений
типа электронной торговли, идентификации, и здравоохранения. Для многих из этих
предложенных приложений, требовались бы криптогафические
услуги, предлагаемые цифровыми представлениями. Чтобы быть практическим для
широкого применения электроные платы также должны быть недорогими. Электроная
плата поддается криптогафическому выполнению по нескольким причинам. Плата
содержит много особенностей защиты, которые допускают защиту чувствительных
криптогафических данных и обеспечивают безопасную среду обработки. Защита
секретного ключа критическая; чтобы обеспечивать криптогафические услуги, этот
ключ никогда не должен быть показан. Электроная плата защищает секретный ключ, и
многие рассматривают ее как идеальную криптогафическую лексему. Осуществление
шифрования с открытым ключом в электроном применении платы излагает
многочисленные проблемы. Электроные платы представляют комбинацию связей
выполнения, которые другие платформы не делают: сдерживаемая память и
ограниченные вычислительные возможности. Как упомянуто ранее, секретный ключ
в общее - ключевой паре должен сохраниться секретным. Для истинного неотказа,
секретный ключ должен быть полностью недоступен всем другим сторонам. В
приложениях, использующих другие типы используемых в настоящее время
криптосистем с ключом общего пользования, платы индивидуализированы в безопасной
среде, чтобы выполнить это требование. Из-за сложности требуемого вычисления,
плата, неэффективена и обычно непрактичена. С кодом исправления ошибок, время,
необходимое генерировать ключевую пару настолько коротко, что даже устройство с
самыми ограниченными вычислительными возможностями электроной платы может
генерировать ключевую пару, если хороший генератор случайных чисел доступен. Это
означает, что процесс персонализации платы можно придавать обтекаемую форму для
приложений, в которых неотказ является важным. При подведении итогов,
преимущества размера ключа кода с исправлением ошибок предоставляют много выгод
для электроных плат, и превосходящая деятельность, предлагаемая выполнением кода
с исправлением ошибок делает приложения выполнимыми в низких конечных
устройствах без специализированных аппаратных средств. Прежде, чем системы засекречивания и соответствующие математические
проблемы могут быть обсуждены, должна быть определена трудность проблемы.
Алгоритм – это процесс, описывающий проблему , которую нужно решить. При
поиске математической проблемы, чтобы базировать криптографическую систему,
шифровальщики ищут такую проблему, для которой самый быстрый алгоритм берет
показательное время. Чем больше времени требуется, чтобы вычислить лучший
алгоритм для этой проблемы, тем более безопасной будет общее - ключевая система
шифрования, основанная на той проблеме. Целочисленная проблема факторизации
(IFP): RSA и Rabin-Уильям. Эллиптическая кривая дискретная проблема логарифма
(ECDLP). 3.1.1. Описание
задачи Целочисленная проблема факторизации (IFP): находит p и q, учитывая
составное число n, который является произведением двух больших простых чисел p и
q. Обнаружение больших простых чисел - относительно простая задача, а
проблема разложения на множители, произведение двух таких чисел рассматривается
в вычислительном отношении труднообрабатываемым. Базирующиеся на трудности этой
проблемы Ривест, Чамир и Адлеман разработали RSA общее - ключевую систему
шифрования. В то время как целочисленная проблема факторизации занимала
внимание известных математиков подобно Фермату и Гауссу более чем столетия
,только в прошлых 20 годах был сделан прогресс в разрешении этой проблемы.
Имеются две главных причины для этого явления. Сначала, изобретение RSA-системы
шифрования в 1978 стимулировало много математиков к изучению этой проблему. И
быстродействующие ЭВМ стали доступными для выполнения и испытания сложных
алгоритмов. Фермат и Гаусс имели небольшой стимул для изобретения алгоритма
разложения на множители решета поля цифр, так как этот алгоритм более громоздкий
,чем испытательное деление с целью разложения на множители целых чисел
вручную. Имеются в основном два типа
специализированных и универсальных алгоритмов разложения на множители.
Специализированные алгоритмы разложения на множители пытаются эксплуатировать
специальные особенности номера n разлагаемого на множители. Текущие времена
универсальных алгоритмов разложения на множители зависят только от размера
n. Один из наиболее мощных специализированных алгоритмов разложения на
множители - эллиптический метод разложения на множители кривой (режим
исправления ошибок), который был изобретен в 1985 Х.Ленстром младшим. Текущее
время этого метода зависит от размера главных множителей n, и следовательно
алгоритм имеет тенденцию находить сначала маленькие множители. 21 июня 1995
Andreas Mueller (студент в Universitaet des Saarlandes, Германия) объявил, что
он нашел 44-десятичную цифру с 147-разрядным множителем 99-десятичной цифрой с
329-разрядным составным целым числом, используя режим исправления ошибок.
Вычисление было выполнено на сети АРМ, и долговечность была приблизительно 60
MIPS годы. Самый большой главный множитель, найденный к настоящему времени
режимом исправления ошибок - 47-десятичная цифра с 157-разрядным главным
множетелем 135-десятичной цифры 449-разрядный номер. До развития RSA системы
шифрования, лучший универсальный алгоритм разложения на множители был алгоритм
цепной дроби , который имел числа множителя до 40 десятичных цифр (133 бита).
Этот алгоритм был основан на идее относительного использования основы множителя
штрихов и производства связанного с набором линейных уравнений, чее решение в
конечном счете вело к факторизации. Та же самая идея лежит в основе лучших
универсальных алгоритмов, используемых сегодня: квадратичное решето (QS) и
решето поля цифр (NFS). Оба эти алгоритмы могут быть легко параллелизованы,
чтобы разрешить разложение на множители на распределительных сетях АРМ.
Квадратичное решето было разработано Карлом Померансом 1984. Первоначально, это
применялось к числам множителя в 70-десятичной цифре 233-разрядный диапазон. В
1994 это использовалось группой исследователей во главе с А.Ленстром к множителю
129-десятичной цифры 429-разрядного номера проблемы RSA, который был изложен
Мартином Гарднером 14 1977. Факторизация была выполнена через 8 месяцев примерно
на 1600 компьютерах во всем мире. Долговечность для факторизации была оценена
как 5000 MIPS годы. Сначала было разработано в 1989 ,что Решето поля цифр
работает лучше всего на числах специальной формы. Алгоритм привык к множителю
155-десятичной цифры 513-разрядного номера. Это было впоследствии расширено к
универсальному алгоритму факторизациию. Эксперименты доказали, что NFS является
действительно превосходящим алгоритмом для целых чисел разложения на множители,
имеющих по крайней мере 120 десятичных цифр (400 битов). В 1996, группа во главе
с А.Ленстром использовала NFS к множителю 130-десятичной цифры 432-разрядного
номера. Это - самый большой номер, разложенный на множители до настоящего
времени. Факторизация, как оценивали, брала меньше чем 15 % из 5000 MIPS годы,
которые требовались для факторизации 129-десятичной цифры проблемы RSA.
Разложение на множители 155 десятичной цифры 512-разрядного номера могло брать
меньше усилия в 5 раз. 512-разрядный модуль n обеспечивает только крайнюю защиту
, когда используется в RSA системе шифрования. Алгоритм
цифрового представления Американского правительства (системный агент каталога),
Diffie-Hellman ключевая схема соглашения, ElGamal кодирование и схемы сигнатуры,
Schnorr схема сигнатуры, и Nyberg-Rueppel схема сигнатуры. Если p - простое
число, то Zp обозначает набор целых чисел 0, 1, 2,..., p - 1, где сложение и
амплитудное искажение - выполняются с модулем. Известно, что существует
ненулевой элемент О Zp такой, что каждый ненулевой элемент в Zp может быть
написан как мощность a, такой элемент называется генератором Zp. Дискретная
проблема логарифма (процессор передачи данных) заключается в следующем: учитывая
штрих p, генератор Zp, и ненулевой элемент О Zp, находит уникальное целое число
0,1,2,..., p - 2, такое что b принадлежит Базируясь на трудности этой
проблемы, Диффи и Хеллман предложили известную Diffie-Hellman ключевую схему
соглашения в 1976. С тех пор были предложены многочисленные другие
криптогафические протоколы, чья защита зависит от процессора передачи данных,
включая: Американский правительственный алгоритм цифрового представления
(системный агент каталога), ElGamal кодирование и схемы сигнатуры, Schnorr схема
сигнатуры, и Nyberg-Rueppel схема сигнатуры.С должным интересом процессор
передачи данных экстенсивно изучился математиками в течение прошлых 20
лет. Как с целочисленной проблемой
факторизации, имеются два типа алгоритмов для решения дискретной проблемы
логарифма. Специализированные алгоритмы пытаются эксплуатировать специальные
особенности главной с. Текущие времена универсальных алгоритмов зависят только
от размера с. Самыебыстрые универсальные алгоритмы, известные за решение
процессора передачи данных ,основаны на методе называемом конкрементом индекса.
В этом методе создана база данных маленьких штрихов и их соответствующих
логарифмов, в последствии за которой логарифмы произвольных полевых элементов
могут быть легко получены. Это напоминание о методах основы множителя для
целочисленной факторизации. По этой причине, если уточнение в алгоритмах для IFP
или процессора передачи данных найдено, то вскоре подобный улучшенный алгоритм
может ожидаться, чтобы быть решеным в пользу другай проблемы. С методами
разложения на множители, алгоритмы конкремента индекса могут быть легко
параллелизованы. В случае с разложением на множители, лучшим текущим
алгоритмом является процессор передачи данных - решето поля цифр. Он имеет то же
самое асимптотическое текущее время , как соответствующий алгоритм для
целочисленной факторизации. Это может свободно интерпретироваться с таким
сообщением: что обнаружение логарифмов в случае k-бита главного модуля p
Выполнение дискретных алгоритмов логарифма отстало от аналогичных усилий
для разложения на множители целых чисел. В 1990 Брайен ЛаМакчия и O.Эндрю
использовали вариант метода конкремента индекса, называемого методом
Комплексного целого числа вычисляемого дискретный модуль логарифмов 191-
разрядный штрих. Раньше Вебер, Дэнни и Зауер (студенты в Universitaet des
Saarlandes, Германия) вычислили дискретный модуль логарифмов 248-разрядный
штрих, используя решето поля цифр. Проект, инициализированный в Университете
Waterloo (Канады) пытается улучшать эту технологию, и в теории и в практике с
целью принятия модуля логарифмов штрих p длины более 400 битов. Лучшие оценки
состоят в том, что эта цель далека от достижения на несколько лет. Можно
сказать, что принятие модуля логарифмов 512-разрядный штрих p останется
труднообрабатываемым в течение следующих трех или четырех лет. Насравнении, 512-
разрядный RSA модуль будет вероятно разложен на множители в пределах года или
около этого. Тем не менее, для долгой защиты, 1024-разрядный или больший
moduli p должен использоваться в дискретных системах шифрования
логарифма. Эллиптический аналог кривой системного
агента каталога (ECDSA), и эллиптических аналогов кривой Diffie-Hellman ключевой
схемы соглашения, ElGamal кодирования и схем сигнатуры, Schnorr схемы сигнатуры,
и Nyberg-Rueppel схемы сигнатуры. Должно быть подчеркнуто, что эти проблемы
являются труднообрабатываемыми, потому что годы интенсивного изучения ведущими
математиками и компьютерными учеными не сумели выдать эффективные алгоритмы для
их решения . Если q - главная мощность, то Fq обозначает конечное поле,
содержащее q элементы. В приложениях q - обычно мощность 2 (2m) или
вспомогательное простое число (p). Эллиптическая кривая дискретная проблема
логарифма (ECDLP) заключается в следующем: учитывая эллиптическую кривую E
определенную по Fq, точка PОE (Fq) порядка n, и точки QОE (Fq), определяются
целым числом 0, l, 2,..., n - 1, так что Добротность = lP, при условии, что
такое целое число существует. Базируясь на трудности этой проблемы, Нейл
Коблиц и Виктор Миллер независимо друг от друга в 1985 предложили использовать
группу точек на эллиптической кривой, определенной по конечному полю, для
осуществления различных дискретных систем шифрования логарифма. Один такой
криптогафический протокол, который стандартизируется аккредитованными
организациями стандартов - эллиптический аналог кривой системного агента
каталога, называемого ECDSA. Имеется только два главных способа в методах для
решения IFP: квадратичный алгоритм разложения на множители решета (вместе с его
предшественником, алгоритм разложения на множители цепной дроби), и решето поля
цифр. Последний алгоритм возводит в степень некоторую сложную
математику(особенно алгебраическая теория номера), и только полностью понят
маленьким семейством теоретиков. До появления компьютеров, математики не искали
алгоритмы для IFP, которые были эффективны вручную скорее , чем на больших сетях
компьютеров. Другой факт, который обычно пропускается - то многое из работы,
сделанной на процессоре передачи данных до 1985, также применяется к ECDLP , так
как ECDLP может просматриваться как похожий на процессор передачи данных, но в
различной алгебраической установке. Начиная с
1985, на ECDLP обратили значительное внимание ведущие математики во всем мире.
Алгоритм из-за Pohlig и Hellman приводит определениеl к определениюl модуля
каждый из главных множителей n. Следовательно, чтобы достичь возможно
максимального уровня защиты, n должен быть главным. Лучший алгоритм, известный
до настоящего времени для ECDLP - Pollard метод ро, где шаг имеется
эллиптическое сложение кривой. В 1993 Р. Oorschot и Майкл Винер показали, как
Pollard метод ро может быть параллелизован так, чтобы, если r процессоры
использовались, то ожидаемое число с каждым процессором перед одиночным
дискретным логарифмом получено - ( ) /r. Наиболее существенно, алгоритмы " типа
показателя степени " не являются известными из-за ECDLP ,что касается процессора
передачи данных. По этой причине, ECDLP является намного тяжелее или чем IFP или
процессор передачи данных . В 1991 Menezes, Okamoto и Vanstone (MOV) показал,
как ECDLP может быть сокращен к процессу перпдачи данных в полях Fq, где могут
применяться методы конкремента индекса. Однако, этот MOV алгоритм приведения
эффективен только для очень специальной категории кривых ,известных как
суперсингулярные кривые. Имеется простое испытание, чтобы гарантировать, что
эллиптическая кривая не уязвима к этому разложению. Суперсингулярные кривые
специально запрещены во всех стандартах эллиптических систем кривой типа ИИЭРА
P1363, ANSI X9.62, и ANSI X9.63. Другой жидкий класс эллиптических кривых -
так называемые аномальные кривые - кривые E определенные по Fq, которые имеют
точно q точки. Разложение на этих кривых было обнаружено Semaev, Smart, и Satoh
и Araki , и обобщено Rьck. Имеется простое испытание над суперсингулярными
кривыми для того чтобы гарантировать, что эллиптическая кривая не уязвима; через
это испытание, эти кривые специально запрещены во всех стандартах эллиптических
систем кривой.
Криптографический алгоритм RSA использует только один тип вычислений –
возведение в степень . Показатель степени определяет длительность выполнения
процедуры вычеслений. Чтобы обеспечить требуемый уровень надежности , показатель
степени, являющийся секретным ключом , должен быть достаточно большим , поэтому
для вычислений требуется много времени. Производительность вычислительных
устройств с недавнего времени принято оценивать в MIPS ( Million Instruction Per
Second): 1MIPS=10^6 опер./с. По отношению к
эллиптическим кривым производительность 1 MIPS соответствует примерно 4*10^4
операций сложения кривой в секунду, поскольку длина ключа существенно превышает
длину еденицы данных. У стойчивость алгоритмов криптографии принято оценивать в
MIPS годах . Иначе говоря , устойчивость – это число лет непрерывной работы ,
необходимое вычислителю с производительностью 1 MIPS ,чтобы взломать данный
шифр. 10^20 10^78 Таблица
3.1. Сравнение размеров ключей , необходимых для обеспечения эквивалентных
уровней безопасности. Программные выполнение на SPARC IPC исполняют 2,000
эллиптических сложений кривой в секунду. Тогда число эллиптических сложений
кривой, которые могут быть выполнены 1 механизмом MIPS в одном году: Например, если 10,000 компьютеров каждый в 1,000
MIPS году доступн, то эллиптическая кривая дискретного логарифма может быть
вычислена через 96,000 лет. При установке режимов эллиптической системы шифрования кривой,
имеются три основных пункта, которые должны быть сделаны: 3. Выбор эллиптической кривой E по Fq. 1. Два наиболее общего
выбора в практических приложениях для основного конечного поля - F2m и Fp (где p
- вспомогательный штрих). ECDLP одинаково труден для образцов, которые
используют F2m и для образцов , которые используют Fp, и где размеры 2m и p
полей приблизительно равны. Не имелось никаких математических открытий до
настоящего времени, которые показывают, что ECDLP для эллиптических кривых по
F2m может быть проще или тяжелее чем ECDLP для эллиптических кривых по
Fp. 2. Если поле F2m выбрано как основное конечное поле, то имеются много
путей, в которых элементы F2m могут быть представлены. Два наиболее эффективных
пути : оптимальное , нормальное представление основания и полиномиальное
представление основания. Так как элементы в одном представлении могут быть
эффективно преобразованы к элементам в другом представлении, используя
соответствующую матрицу изменения основания, на ECDLP не воздействует выбор
представления. MOV алгоритм приведения выдает алгоритм для ECDLP, когда
эллиптическая кривая суперсингулярна. В большенстве случаев эллиптические кривые
являются не-суперсингулярными. Кроме того, можно легко проверить действительно
ли MOV алгоритм приведения выполним для данной эллиптической кривой –
следовательно, этого разъедания легко избегают на практике. Также, можно легко
обнаружить является ли данная кривая аномальной. Разъедания на аномальной кривой
легко избегают. При выборе не-суперсингулярной эллиптической кривой, можно
выбирать кривую наугад, или можно выбирать кривую специальными свойствами,
которые могут привести быстрее к эллиптической арифметике кривой. Пример
специальной категории кривых, который был предложен - кривые Koblitz . ECDLP
одинаково труден для образцов, которые используют беспорядочно сгенерированные
кривые, и для тех, которые используют кривые Koblitz. Не имелось никаких
математических открытий до настоящего времени, которые показывают, что ECDLP для
беспорядочно сгенерированных эллиптических кривых - проще или тяжелее чем ECDLP
для кривых Koblitz. Международная
стандартизация систем засекречивания протоколов - важный процесс, который
активно поддержан фирмой Certicom. Стандартизация имеет три главных выгоды.
Сначала, это учитывает способность к взаимодействию среди аппаратных и
программных систем от многих различных продавцов. Во вторых, это возводит в
степень критический обзор защиты систем с криптографической точки зрения.
Наконец, это разрешает вход в конструкцию систем шифрования от тех, кто должны
осуществить их в широких пределах среды. Эллиптические Кривые - это тема
интенсивного исследования в математическом семействе много лет и теперь
тщательно исследовались в организациях стандартов в течение более чем трех лет.
Это дало инженерам - конструкторам высокий доверительный коэффициент в их
защите, которая не могла быть достигнута через поддержку только несколько
организаций. Извлечение корня стандартов - критическая партия принятая любой
системой засекречивания. Стандартизация кода с исправлением ошибок поощрила ее
принятие организациями во всем мире. Кроме того, это продвинуло образование
многих шифровальщиков, разработчиков, и проектирует в математическом основании
кода с исправлением ошибок и в его важности в достижения практических,
эффективных общее - ключевых основанных систем. ИИЭР P1363
- код с исправлением ошибок включен в проект ИИЭРА P1363 стандарт (Технические
условия для Шифрования с открытым ключом), который включает кодирование,
сигнатуру, и ключевые механизмы соглашения. Эллиптические кривые могут быть
определены по модулю р. или по F2m, поле с 2m элементы, для соответствия со
стандартом. ANSI X9 - код с исправлением ошибок содержится в двух работах,
созданных Американским Институтом Национальных эталонов (ANSI) ASC X9 (Службы
финансового довольствия): ANSI X9.62, Эллиптический Алгоритм Цифрового
представления Кривой (ECDSA); и ANSI X9.63, Эллиптическое Соглашение ключа
Кривой и Транспортные Протоколы . ISO/IEC - проект документа ISO/IEC 14888:
Цифровое представление с приложением - Партия 3: Свидетельство основанные
механизмы определяют эллиптические аналоги кривой некоторых Elgamal-подобных
алгоритмов сигнатуры. IETF - OAKLEY Ключевой Протокол Определения Internet,
проектирующего Оперативное соединение (IETF),описывает ключевой протокол
реализации соглашения, который является вариантом Diffie-Hellman протокола. Это
учитывает ряд групп, которые нужно использовать, включая эллиптические кривые.
Документ делает определенное упоминание об эллиптических группах кривых по полям
F2155 и F2210. Форум ATM - Форум ATM Стадия Технического Комитета я проект
документа Технических требований Защиты ATM стремится обеспечивать механизмы
защиты для ATM сетей (Режимов асинхронной передачи). Службы безопасности
обеспечили, конфиденциальность, идентификацию, целостность данных, и управление
доступом. Код с исправлением ошибок - одна из поддержанных систем. Большинство
этих стандартов описывается в алгоритме независимым способ так, чтобы любой
признанный общее - ключевой алгоритм мог быть реализован. Это позволит
использовать алгоритмы, типа кода с исправлением ошибок, в средах, где другие
криптосистемы с ключом общего пользования были бы
непрактичны. Выбор для конкретных ИС должен быть основан на
глубоком анализе слабых и сильных сторон тех или иных методов защиты.
Обоснованный выбор той или иной системы защиты в общем-то должен опираться на
какие-то . К сожалению, до сих пор не разработаны
подходящие методики оценки эффективности криптографических систем. мощность множества ключей (М). . Для ее численной оценки можно использовать также и
сложность раскрытия шифра путем перебора всех ключей. невозможность раскрытия или осмысленной
модификации информации на основе анализа ее структуры, минимальный объем используемой
ключевой информации, высокая
оперативность. Для учета стоимости,
трудоемкости и объема ключевой информации можно использовать удельные показатели
- отношение указанных параметров к мощности множества ключей шифра. Часто
более эффективным при выборе и оценке криптографической системы является
использование экспертных оценок и имитационное моделирование. В любом случае
выбранный комплекс криптографических методов должен сочетать как удобство,
гибкость и оперативность использования, так и надежную защиту от злоумышленников
циркулирующей в ИС информации. Эллиптические кривые – математические
объекты, которые математики интенсивно изучают начиная с 17 – го века. Н.Коблиц
и В. Миллер независимо друг от друга предложили системы системы криптозащиты с
открытым ключом , использующие для шифрования свойства аддитивной группы точек
на эллиптической кривой. Эти работы легли в основу криптографии на основе
алгоритма эллиптических кривых. Множество исследователей и разработчиков
испытывали алгоритм ЕСС на прочность. Сегодня ЕСС предлагает более короткий и
быстрый открытый ключ , обеспечивающий практичную и безопасную технологию ,
применимую в различных областях . Применение криптографии на основе алгоритма
ЕСС не требует дополнительной аппаратной поддержки в виде криптографического
сопроцессора . Всё это позволяет уже сейчас применять криптографические системы
с открытым ключом и для создания недорогих смарт-карт. В соответствии с
законодательством США (соглашение International Traffic in Arms Peguiation),
криптографические устройства , включая программное обеспечение , относится к
системам вооружения . Поэтому при экспорте программной продукции , в которой
используется криптография , требуется разрешение Госдепартамента. Фактически
экспорт криптографической продукции контролирует NSA (National Security Agency).
правительство США очень неохотно выдаёт подобные лицензии , поскольку это может
нанести ущерб национальнойбезопасности США. Вместе с тем совсем недавно компании
Newlett –Packard выдано разрешение на экспорт её криптографического комплекса
Ver Secure в Великобританию , Германию, Францию , Данию и Австралию. Теперь Н Р
может эксплуатировать в эти страны системы , использующие 128- битный
криптостандарт Triple DES ,который считается абсолютно надёжным.