46136 (665403), страница 3

Файл №665403 46136 (Проблема аутентификации данных и блочные шифры) 3 страница46136 (665403) страница 32016-07-31СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

где S – начальное заполнение алгоритма – может выбираться произвольно, обычно полагают S=0;

Несложно доказать, что задача подбора массива данных T'=(T'1,T'2,...,T'm') под заданную контрольную комбинацию C эквивалентна следующей системе уравнений подбора ключа для заданных входного и выходного блоков данных криптоалгоритма:

ET'1(S)=S1,

ET'2(S1)=S2,

...

ET'm'(Sm'–1)=C,

Нет необходимости решать сразу все эти уравнения относительно ключа Ti' – все блоки массива данных T', кроме одного, могут быть выбраны произвольными – это определит, все значения Si, и лишь один, любой из них, должен быть определен решением соответствующего уравнения ET'i(Si–1)=Si относительно T'i. Так как данная задача вычислительно неразрешима в силу использования криптостойкого алгоритма шифрования, предложенная схема вычисления MDC обладает гарантированной стойкостью, равной стойкости используемого шифра.

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

EK1(X)=EK2(X) при некоторых X и K1K2.

Один из этих ключей – тот, на котором проводилось зашифрование – «истинный», а другой – «побочный». Таким образом, побочным ключом для некоторого блока данных X и некоторого истинного ключа K называется ключ K', который дает точно такой же результат зашифрования блока X, что и истинный ключ K: EK'(X)=EK(X). Ясно, что для различных блоков исходного массива данных побочные ключи также в общем случае различны – вероятность встретить пару ключей, переводящих одновременно несколько пар одинаковых блоков открытых текстов в пары одинаковых блоков шифротекстов стремительно убывает с ростом числа этих пар. Поэтому обнаружение побочного ключа криптоаналитиком при дешифровании сообщения не является его особым успехом, так как с вероятностью, незначительно отличающейся от 1, на этом найденном ключе он не сможет правильно расшифровать никаких других блоков шифротекста. Совершенно иное дело в алгоритме выработки MDC – здесь обнаружение побочного ключа означает, что злоумышленник подобрал такой ложный, то есть отсутствующий в сообщении блок данных, использование которого приводит к истинному MDC исходного массива данных.

Для того, чтобы уменьшить вероятность навязывания ложных данных через нахождение побочных ключей, в шагах криптографического преобразования применяются не сами блоки исходного сообщения, а результат их расширения по некоторой схеме. Под схемой расширениея здесь понимается процедура построения блоков данных большего размера из блоков данных меньшего размера. Примером может служить, например, функция расширения, в которой выходной блок строится из байтов (или 2-,4-,... и т.д. -байтовых слов) исходного блока, перечисляемых в различном порядке. Указанное расширение стоит применять, если размер ключа использованного шифра в несколько раз превышает размер его блока данных. Так, для алгоритма DES, с размером блока данных 64 бита и ключа 56 бит в расширении нет необходимости. Если в схеме используется алгоритм ГОСТ 28147–89 с размером блока 64 бита и размером ключа 256 бит, стоит использовать 64- или 128-битные блоки исходного текста и расширять их до размеров 256 бит. Пример функции расширения 128-битового блока в 256-битовый может быть, например, следующим:

Исходный блок: T=(B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13, B14, B15, B16),

После расширения: P(T)=(B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13, B14, B15, B16,

B1, B4, B7, B10, B13, B16, B3, B6, B9, B12, B15, B2, B5, B8, B11, B14),

где Bi – байты блока данных, |Bi|=8.

Схема алгоритма выработки MDC (хэш–кода) с использованием классического блочного шифра приведена на рисунке 2.

  1. Рис. 2. Алгоритм выработки кода обнаружения манипу- ляций для массива данных.


    Входные данные – массив данных T, разбитый на m блоков фиксированного размера, не превышающего размер ключа использованного криптоалгоритма и, как правило, делящего его нацело: T=(T1,T2,...,Tm). Последний блок данных Tm каким-либо способом дополняется до полного блока данных, если имеет меньший размер.

  2. MDC получает нулевое начальное значение (это значение может быть, в принципе, любым).

Последующие шаги 2 и 3 алгоритма выполняются последовательного для каждого блока исходных данных в порядке их следования.

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

  2. Выполняется зашифрование текущего значения MDC на ключе, полученном на шаге 2, результат становится новым текущим значением MDC.

  3. Результатом работы алгоритма (т.е. MDC для всего входного массива данных) является последнее текущее значение MDC, полученное на шаге 3.

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

  1. Цифровая подпись на основе традиционных блочных шифров.

На первый взгляд, сама эта идея может показаться абсурдом. Действительно, общеизвестно, что так называемая «современная», она же двухключевая криптография возникла и стала быстро развиваться в последние десятилетия именно потому, что ряд новых криптографических протоколов типа протокола цифровой подписи, в которых возникла острая необходимость в связи с проникновением электронных технологий в новые сферы, не удалось реализовать на базе традиционных криптоалгоритмов, широко известных и хорошо изученных к тому времени. Тем не менее, это возможно. И первые, кто обратил внимание на такую возможность, были … родоначальники криптографии с открытым ключом У.Диффи (W.Diffie) и М.Е.Хеллман (M.E.Hellman). В своей работе [8] они опубликовали описание подхода, позволяющего выполнять процедуру цифровой подписи одного бита с помощью блочного шифра. Прежде чем изложить эту изящную идею, сделаем несколько замечаний о сути и реализациях цифровой подписи.

    1. Что такое цифровая подпись.

Итак, схема цифровой подписи или электронно-цифровой подписи – это набор алгоритмов и протоколов1, позволяющих построить информационное взаимодействие между двумя и более участниками таким образом, чтобы факт авторства переданного массива данных, «подписанного» одним из участников, мог быть надежно подтвержден или опровергнут третьей стороной, «независимым арбитражем». Подобная схема необходима для всех систем электронной обработки данных, где нет полного взаимного доверия между участниками информационного процесса, прежде всего это касается финансовой сферы. Любая схема цифровой подписи предполагает добавление к «подписываемому» массиву данных дополнительного кода – собственно «цифровой подписи», выработать который может только автор сообщения, обладающий секретным ключом подписи, а все остальные могут лишь проверить соответствие этой «подписи» подписанным данным. Поэтому каждая схема должна предусмотреть, как минимум, определение трех следующих алгоритмов:

  1. Алгоритм GK выработки пары ключей – подписи KS и проверки подписи KC с использованием вектора случайных параметров R: (KS,KC)=GK(R), здесь:

KS – ключ подписи, он должен быть известен только подписывающему;

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

  1. Алгоритм S подписи сообщения T с использованием секретного ключа подписи KS:

s=S(T,KS),

где s – цифровая подпись сообщения;

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

V(T,s,KC){0,1}.

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

  • вычисляют контрольную комбинацию по некоторому алгоритму C с использованием подписанного сообщения и цифровой подписи:

c=C(T,s);

  • сравнивают контрольную комбинацию c и ключ проверки подписи KC, если они совпадают, то подпись признается верной, а данные – подлинными, в противном случае данные считаются ложными.

Собственно говоря, указанных трех алгоритмов достаточно для реализации схемы цифровой подписи, однако на практике в схемы добавляют еще один алгоритм – функцию выработки хэш–блока для подписываемого массива данных T. Большинство криптографических алгоритмов оперируют блоками данных фиксированного размера, а массивы большего размера обрабатывают по частям, что необходимо для обеспечения эффективности и надежности этих схем. Если такой же подход использовался при выработке цифровой подписи, блоки массивов информации подписывались бы отдельно друг от друга, и размер подписи оказался бы сравнимым с размером подписываемого массива данных, что по вполне понятным причинам не удобно. Поэтому в практических схемах ЭЦП подписывается не само сообщение, а его хэш–код, то есть результат вычисления функции необратимого сжатия для этого массива, который имеет фиксированный размер. Таким образом, в схему ЭЦП добавляется четвертый алгоритм:

  1. Алгоритм H вычисления необратимой хэш–функции для подписываемых массивов:

h=H(T).

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

Для работоспособной схемы электронно-цифровой подписи необходимо выполнение следующих условий:

  • никто, кроме лица, обладающего секретным ключом подписи KS, не может корректно подписать заданное сообщение T;

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

  • никто, включая лицо, обладающее ключом подписи, не в состоянии построить сообщение T', подходящее под наперед заданную подпись s.

При предложении какой-либо схемы подписи оба эти свойства необходимо доказывать, что делается обычно доказательством равносильности соответствующей задачи вскрытия схемы какой-либо другой, о которой известно, что она вычислительно неразрешима. Практически все современные алгоритмы цифровой подписи и прочие схемы «современной криптографии» основаны на так называемых «сложных математических задачах» типа факторизации больших чисел или логарифмирования в дискретных полях. Однако доказательство невозможности эффективного вычислительного решения этих задач отсутствует, и нет никаких гарантий, что они не будут решены в ближайшем будущем, а соответствующие схемы взломаны – как это произошло с «ранцевой» схемой цифровой подписи [9]. Более того, с бурным прогрессом средств вычислительных техники «границы надежности» методов отодвигаются в область все больших размеров блока. Всего пару десятилетий назад, на заре криптографии с открытым ключом считалось, что для реализации схемы подписи RSA достаточно 128- или даже битовых чисел. Сейчас эта граница отодвинута до 1024-битовых чисел – практически на порядок, – и это далеко еще не предел. Надо ли объяснять, что с каждой такой «подвижкой» приходится перепроектировать аппаратуру и переписывать программы, реализующие схему. Ничего подобного нет в области классических блочных шифров, если не считать изначально ущербного и непонятного решения комитета по стандартам США ограничить размер ключа алгоритма DES 56-ю битами, тогда как еще во время обсуждения алгоритма предлагалось использовать ключ большего размера [5]. Схемы подписи, основанные на классических блочных шифрах, свободны от указанных недостатков:

  • во-первых, их стойкость к попыткам взлома вытекает из стойкости использованного блочного шифра;

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

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

  • Базовая идея Диффи и Хеллмана.

Итак, вернемся к схеме Диффи и Хеллмана подписи одного бита сообщения с помощью алгоритма, базирующегося на любом классическом блочном шифре. Предположим, в нашем распоряжении есть алгоритм зашифрования EK, оперирующий блоками данных X размера n и использующий ключ размером nK: |X|=n, |K|=nK. Структура ключевой информации в схеме следующая:

  • секретный ключ подписи KS выбирается как произвольная пара ключей K0, K1 используемого блочного шифра:

KS=(K0,K1);

Характеристики

Тип файла
Документ
Размер
2 Mb
Тип материала
Учебное заведение
Неизвестно

Список файлов реферата

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7021
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее