RSS    

   Реферат: Баричев С. Криптография без секретов

 


В 1991 г. Национальный институт стандартов и технологии (NIST) предложил для появившегося тогда алгоритма цифровой подписи DSA (Digital Signature Algorithm) стандарт DSS (Digital Signature Standard), в основу которого положены алгоритмы Эль-Гамаля и RSA. [13]


Цифровая сигнатура

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

Цифровая сигнатура - это строка символов, зависящая как от идентификатора отправителя, так и содержания сообщения.


Цифровая сигнатура

Ни­кто при этом кро­ме поль­зо­ва­те­ля А не мо­жет вы­чис­лить циф­ро­вую сиг­на­ту­ру А для кон­крет­но­го со­об­ще­ния. Ни­кто, да­же сам поль­зо­ва­тель не мо­жет из­ме­нить по­слан­но­го со­об­ще­ния так, что­бы сиг­на­ту­ра ос­та­лась не­из­мен­ной. Хо­тя по­лу­ча­тель дол­жен иметь воз­мож­ность про­ве­рить яв­ля­ет­ся ли циф­ро­вая сиг­на­ту­ра со­об­ще­ния под­лин­ной. Что­бы про­ве­рить циф­ро­вую сиг­на­ту­ру, поль­зо­ва­тель В дол­жен пред­ста­вить по­сред­ни­ку С ин­фор­ма­цию, ко­то­рую он сам ис­поль­зо­вал для ве­ри­фи­ка­ции сиг­на­ту­ры.

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

Рас­смот­рим ти­пич­ную схе­му циф­ро­вой сиг­на­ту­ры.

Пусть Е - функция симметричного шифрования и f - функция отображения некоторого множества сообщений на подмножество мощности р из последовательности {1, ..., n}.

Например р=3 и n=9. Если m - сообщение , то в качестве f можно взять функцию  f(m) = {2, 5, 7}.

Для каждого сообщения пользователь А выбирает некоторое множество ключей K=[K1, ..., Kn} и параметров V={v1, ...,vn} для использования в качестве пометок сообщения, которое будет послано В. Множества V и V’={E(v1,K1) ..., E(vn,Kn)} посылаются пользователю В и заранее выбранному посреднику С.

Пусть m - сообщение и idm - объединение идентификационных номеров отправителя, получателя и номера сообщения. Если f({idm, m}), то цифровая сигнатура m есть множество K’=[Ki, ..., Kj}. Сообщение m, идентификационный номер idm и цифровая сигнатура К’ посылаются В.



Получатель В проверяет сигнатуру следующим образом. Он вычисляет функцию f({idm, m}) и проверяет ее равенство К’. Затем он проверяет, что подмножество {vi, ...,vj} правильно зашифровано в виде подмножества  {E(vi,Ki) ..., E(vj,Kj)} множества V’.

В кон­фликт­ной си­туа­ции В по­сы­ла­ет С сообщение m, иден­ти­фи­ка­ци­он­ный но­мер idm и мно­же­ст­во клю­чей K’, ко­то­рое В объ­яв­ля­ет сиг­на­ту­рой m. То­гда по­сред­ник С так же, как и В, бу­дет спо­со­бен про­ве­рить сиг­на­ту­ру. Ве­ро­ят­ность рас­кры­тия двух со­об­ще­ний с од­ним и тем же зна­че­ни­ем функ­ции f долж­на быть очень ма­ла. Что­бы га­ран­ти­ро­вать это, чис­ло  n долж­но быть дос­та­точ­но боль­шим, а чис­ло р долж­но быть боль­ше 1, но мень­ше n.

Ряд не­дос­тат­ков этой мо­де­ли оче­ви­ден:

*  долж­но быть третье ли­цо - по­сред­ник, ко­то­ро­му до­ве­ря­ют как по­лу­ча­тель, так и от­пра­ви­тель;

*  по­лу­ча­тель, от­пра­ви­тель и по­сред­ник долж­ны об­ме­нять­ся су­ще­ст­вен­ным объ­е­мом ин­фор­ма­ции, пре­ж­де чем бу­дет пе­ре­да­но ре­аль­ное со­об­ще­ние;

*  пе­ре­да­ча этой ин­фор­ма­ции долж­на осу­ще­ст­в­лять­ся в за­кры­том ви­де;

*  эта ин­фор­ма­ция ис­поль­зу­ет­ся край­не не­эф­фек­тив­но, по­сколь­ку мно­же­ст­ва K, V, V’ ис­поль­зу­ют­ся толь­ко один раз.

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

Хэш-функции

Использование цифровой сигнатуры предполагает использование некоторых функций шифрования:

S = H(k, T),

где S - сигнатура, k - ключ, T - исходный текст.

Функция H(k, T) - является хэш-функцией, если она удовлетворяет следующим условиям:

1) исходный текст может быть произвольной длины;

2) само значение H(k, T) имеет фиксированную длину;

3) значение функции H(k, T) легко вычисляется для любого аргумента;

4) восстановить аргумент по значению с вычислительной точки зрения  - практически невозможно;

5) функция H(k, T) - однозначна[14].

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

Наиболее известные из хэш-функций - MD2, MD4, MD5 и SHA.

Три алгоритма серии MD разработаны Ривестом в 1989-м, 90-м и 91-м году соответственно. Все они преобразуют текст произвольной длины в 128-битную сигнатуру.

Алгоритм MD2 предполагает:

·   дополнение текста до длины, кратной 128 битам;

·   вычисление 16-битной контрольной суммы (старшие разряды отбрасываются);

·   добавление контрольной суммы к тексту;

·   повторное вычисление контрольной суммы.

Алгоритм MD4 предусматривает:

·   дополнение текста до длины, равной 448 бит по модулю 512;

·   добавляется длина текста в 64-битном представлении;

·   512-битные блоки подвергаются процедуре Damgard-Merkle[16], причем каждый блок участвует в трех разных циклах.

В алгоритме MD4 довольно быстро были найдены «дыры», поэтому он был заменен алгоритмом MD5, в котором каждый блок участвует не в трех, а в четырех различных циклах.

Алгоритм SHA (Secure Hash Algorithm) разработан NIST  (National Institute of Standard and Technology) и повторяет идеи серии MD. В SHA используются тексты более 264 бит, которые закрываются сигнатурой длиной 160 бит. Данный алгоритм предполагается использовать в программе Capstone[17].


Управ­ле­ние клю­ча­ми

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

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

Управ­ле­ние клю­ча­ми - ин­фор­ма­ци­он­ный про­цесс, вклю­чаю­щий в се­бя три эле­мен­та:

*  ге­не­ра­цию клю­чей;

*  на­ко­п­ле­ние клю­чей;

*  рас­пре­де­ле­ние клю­чей.

Рас­смот­рим, как они долж­ны быть реа­ли­зо­ва­ны для то­го, что­бы обес­пе­чить безо­пас­ность клю­че­вой ин­фор­ма­ции в ИС.

Ге­не­ра­ция клю­чей

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

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

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.