Скачиваний:
93
Добавлен:
18.10.2019
Размер:
14.08 Mб
Скачать

2. Инфраструктура криптосистем

139

3. Гибридные протоколы, использующие одновременно симмет­ ричные и асимметричные криптосхемы. Весьма интересным приме­ рам такого протокола является протокол Beller - УасоЫ. Он предна­

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

протокола существует значительный дисбаланс вычислительной мощности, например в случае обмена данными между интеллекту­ алЬНОЙ картой и приемным устройством или между терминалом и сервером. Такой протокол сокращает до минимума требования к слабейшей стороне (А), тогда как основную вычислительную на­ грузку несет более сильная сторона (В). Итак, пусть А - терминал (слабейшая сторона), В - сервер (сильная сторона), Т - центр дове­ рия, IА• [в - идентификаторы участников протокола, h - однонаправ­ ленная хеш-функция. Протокол состоит из двух этапов: предвари­ тельного и рабочего. Действия участников протокола показаны В табл.2.10.

Любопытной особенностью протокола Beller - УасоЫ является то, что В нем используются две схемы открытого шифрования: RSA и Эль-Гамаля. Схема RSA с е = 3 дает эффективные операции с от­ крытым ключом: зашифровку и проверку цифровой подписи. Для этого требуется выполнить всего по два модульных умножения.

Таблица 2.10. Протокол Веllег - Yacobi

 

 

 

Предваритепьныйэтап

 

 

 

 

А

 

т

В

 

 

 

 

 

1

Выбор системных параметров:

 

 

 

 

 

Параметры для схемы Эль-Гамаля:

 

 

 

 

 

11, -

простое число, cf.Е Z,:, -обра-

 

 

 

 

 

зующий элемент.

 

 

 

 

 

Параметры подписи Т по схеме RSA:

 

 

 

 

 

р,q -

простые числа, Jlr =ра, ет =3, dT

 

 

 

 

 

: erd7' =l(mod(p-l)(q-l))

 

 

2

Распределение системных параметров:

 

 

 

 

 

 

~[~·,(l1s,Cf.),er]-7

 

 

 

 

Каждому участнику присваивается

 

 

 

 

 

 

~у,.щкальиый идентификатор-Э

 

 

 

 

 

 

 

 

 

 

 

 

 

140 Запечников С. В. Криптографическиепротоколы 11ILX I1puMellelllle

Продолжениетабл. 2.1 О

Предварительный эта"

 

А

 

т

В

 

 

 

 

 

з

Инициализация терминала:

 

 

 

 

 

 

 

 

А идентифицирует себя

 

 

 

некриптографическими

 

 

 

средствами, выбирает

 

 

 

а - случайное число,

 

 

1< а .::; lls - 2 , вычис-

ляет открытый КЛЮЧ цифровой подписи по схеме Эпь-Гамаля:

[Ил =(J,II гпооп,] -7

 

 

Откр, ключ А по схеме Эль-Гамаля

 

 

сертифицируется цифровой подпи-

 

 

 

 

сью центра доверия по схеме RSA:

 

 

GА =ST (I Л, иЛ ) =

 

 

= (11 (IЛ,uл)У'Т mod I1т

 

 

~ [Cert'1 =(1л,uл.Gл)]

 

 

 

 

4 Инициализация сервера:

 

 

 

в идентифици-

 

 

рует себя не-

 

 

крипгографиче-

 

 

скими средства-

 

 

ми, выбираетРв,

 

 

'1n - простые

 

 

числа, ев = 3, вы-

 

 

чиспяет dn и 01'-

 

 

крытый ключ

 

Открытый ключ В по схеме RSA сер-

цифровой под-

 

тифицируется цифровой подписью

писи по схеме

 

центра доверия по схеме RSA:

RSA: нв = Рв<}в.

 

GB = ST (1n,ll n) =

~[nB]

 

r

 

 

=(h(1n,lln ))d mod~.

 

 

[Cert B = (1n,llп,Gп)] -7

 

 

 

 

 

2. Инфраструктура криптасистем

141

 

 

 

 

Окончание табл. 2.10

 

 

 

 

 

 

 

Рабочий эта"

 

 

 

А

 

 

В

 

 

1

Предварительные вычисления терминала:

 

 

 

 

 

выбираетх - спуч.: 1$ х $ ns - 2,

 

 

 

 

 

 

 

 

 

 

 

 

(х.п,- 1) ;:;; 1, вычисляет v ;:;; а' mod n!

'

 

 

 

 

 

х-I mОd(пs -1). avmod(ns -1)

 

 

 

 

 

2

 

 

 

~ [сегtп =(iB,nn,GB ) ]

 

 

 

 

 

 

 

 

 

 

 

 

 

3

Проверка аутентичности lIв:

 

 

 

 

 

 

~

 

 

 

 

 

 

ьи.»,)~G; modnт.

 

 

 

 

 

 

Генерация сеансового ключа:

 

 

 

 

 

 

К - спуч.: 1<К<Jlв-l.

 

 

 

 

 

 

= РП ( К) = к3 mod пв] ~

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

Восстанавливает ключ К:

 

 

 

 

 

К =Sn (у) = yl/B

modnB ,

 

 

 

 

 

 

 

 

т Е Z - спуч., t == 50 .

~[г;(т,{о}')]

5 Расшифровывает поступившее сообщение и проверяет, что последние r бит равны нулю. Формирует М =(111,18), вычисляет

w = - ау) х-1 mod (lls -1);

 

(v, w) -

подпись участника А под сообщением

 

М по схеме Эль-Гамаля.

 

к ((v. w),Сеrtл = (IА,uл,Gл))J~

 

 

 

 

6

 

 

Расшифровывает поступившее

 

 

 

сообщение и проверяет:

 

 

 

1

 

 

 

 

 

 

11 (1А'иА )=G~ mod 1lт ,формиру-

 

 

 

ет М = (щIв) и проверяет,

 

 

 

'1

 

 

 

аМ..:=.иАV , v\V тоdП1 • В случае по-

 

 

 

ложительного исхода принимает уча-

 

 

 

стника А с идентификатором /tI как

источник ключа К

142 Запечкиков С. В. Криптографическиепротоколы 1/ их применение

Схема Эль-Гамаля дает эффективные операции с секретным ключом: расшифровку и генерацию цифровой подписи. Для этого требуется всего одно модульное умножение, предполагая выполне­ ние предварительных вычислений. Открытые ключи схемы Эль­ Гамаля сертифицируются центром доверия цифровой подписью по схеме RSA. Этот протокол обеспечивает аутентификацию его участ­ ников и явную аутентификацию ключа.

Рассмотрим теперь примеры протоколов обмена ключами, ос­ нованных на асимметричных криптосхемах. Их удобно подразде­ лить на ПрОТОКОЛЫ, обеспечивающие основные свойства распреде­ ления ключей (т. е. аутентификацию ключа, подтверждение ключа, явную аутентификацию), и протоколы, обеспечивающие расширен­ ные свойства (совершенную опережающую секретность, стойкость к словарным атакам и др.).

Начнем с протоколов, обеспечивающих основные свойства. Хо­ рошо известен протокол Диффи - Хеллмана открытого распреде­ ления ключей (табл. 2.11) - исторически первый протокол обмена ключами, предложенный в 1976 г.

Таблица 2.11. Протокол открытого распределения ключей Диффи - Хеллмаца

А

 

В

 

~

 

 

Р - прос"!,ое число,

 

 

аЕ z; - образ. элемент,

 

 

2~a~p-2

 

 

 

 

х - СЛУЧ.,

 

о-

 

 

 

 

1~x~p-2

 

 

[a.rmOdpJ

-7

 

 

 

 

 

у - случайное чис-

 

 

ло, 1::;; у ~ р-2

 

~

[аУ modp]

 

 

 

 

 

К =(аУ)Х modp

 

К =(ах)' modp

 

 

 

2. Инфраструктура криптосистем

143

Простой протокол обмена ключа Диффи - Хеллмана не обеспе­ чивает ни одного из основных свойств протоколов распределения ключей: ни аутентификацию, ни подтверждение ключа, ни аутенти­ фикацию участников протокола. Активный противник может по­

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

в табл:2.12. В итоге он сможет контролировать весь обмен данными

между участниками по «защищенному», как им кажется, каналу.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

м = о, (с),

 

 

 

 

л

 

 

 

[ С· = Екв (М)] 7

М =DKB (C~)

 

 

 

 

 

 

 

 

 

т

 

 

 

 

~ lc =: Ек (m)J

 

 

т=DK8 (C),

/l

 

 

~[с* :::; Ек" (т)]

активного противника

 

 

Таблица 2.12. Атака

 

 

 

на протокол Диффи - Хеллманя

 

 

Об-мен ключами

 

 

А

 

Е

В

 

х - случайное число,

 

 

 

 

аХ -7

 

I

 

 

Х

-случ.

 

 

 

 

(j/~

 

 

 

 

 

у - случайное число,

 

 

уI -

случайное

~a)'

 

 

 

число,

 

 

 

 

~ а)'

 

 

Кл ==a.t)" modp

Кл == (а;'У' шоd р,

КВ = а'<У modp

 

 

Кn = ((1:" )Х' шоd р

 

 

 

Обмен данными

 

 

А

 

Е

В

 

М

 

 

 

 

[С=Екл(м)J~_

 

 

 

 

т>»;(с·)

 

 

 

 

 

 

 

 

 

 

 

 

 

Более защищенным является протокол МТ/ (Магзшпою, Takashima, Imai, 1986), показанный в табл. 2.13; а.Ь - ЭТО долговре-

144 Запечников С. В. Криптографическиепротоколы и '/х применение

менные секретные ключи участников протокола, Zл, ZB - их долго­ временные открытые ключи. Компрометация разовых секретных ключей участников протокола не влияет на безопасность долговре­ менных секретных ключей. Можно построить четыре варианта этого протокола, различающиеся сообщениями, которые участники пере­ дают друг другу, и способом формирования общего секретного ключа (табл. 2.14).

 

 

Таблица 2.13. Протокол МТI

 

Предварительный эта"

 

А

 

 

В

а - случайное число,

 

~)

Ь - случайное число,

 

 

1:::;a~p-2.

 

Catiz CerfS(ZB)

1:::;b:::;p-2,

 

 

[ =а" mod р] ~

 

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

f- [zn = аЬ mod р]

 

 

 

аЕ z; - образ. эле-

 

 

 

мент, 2:::;a~p-2

 

 

 

 

 

Рабочий этап

1х - случайное число, 1~x~p-2.

 

 

[тлв = a~ mod р]

 

~

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

У - случайное число,

 

 

 

 

 

 

 

 

 

 

 

1~y~p-2,

 

 

 

 

 

 

 

 

~

 

 

[тЕЛ =аУ mod р]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

з

Кл =(аУУ' z~ modp

К = Кл = КВ ==

 

КВ =(а-т)" z~modp

 

 

= abHIl)' mod р

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 2.14. Варианты построения протокола МТI

 

 

 

 

 

 

 

 

 

 

 

 

Мм,

тлв

 

твл

 

КА

 

КВ

 

Общий ключ К

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

аХ

 

аУ

 

n Х

 

Ь

у

 

аЬх+ау

 

 

 

 

 

 

 

тВА - ZB

 

тАВ

- ZA

 

 

 

2

 

z;

 

z~

 

т(l-' -а"

 

ь-!

у

 

аХ+У

 

 

 

 

 

ВА

 

тлв

 

 

 

 

 

z;

 

z~

 

тВЛ

 

тАВ

 

 

a.t)'

 

з

 

 

 

 

 

a-1x

 

b-1y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

z~f1

 

Z~b

 

m~A

 

т~B

 

 

ааЬху

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Инфраструктура криптасистем

145

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

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

вано в табл. 2.15.

Таблица 2.15. Атака на протокол МТI методом подстановки источника (с одинаковыми открытыми ключами)

А

 

 

 

 

С

 

п

 

 

 

 

 

 

 

 

~~

t===-

 

----

~

 

~y~

 

 

 

 

... Сеп,

... '-0

~

 

f----

 

 

 

Сеп, ......

 

 

 

 

 

 

 

 

 

 

 

[О:ХmOd P.]

 

...

 

[ О:Х mod Р.]

 

 

Сеп,

 

 

 

Сеп;

~

 

 

 

 

 

 

 

 

 

-

 

 

 

 

[аУ mod рJ

 

-

 

 

 

 

 

 

 

 

 

 

Суть атаки заключается в том, что злоумышленник С регистри­ рует в удостоверяющем центре сертификат с таким же открытым ключом, как и А, а затем модифицирует сообщение, передаваемое от А к В. В результате В считает, что последующие сообщения зашиф­ рованы на ключе k = аь.(+ау mod р , исходящем от С, в то время как

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

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

А (табл. 2.16).

Теперь С регистрирует в удостоверяющем центре сертификат с открытым ключом а" mod р и подменяет сообщения, передавае­ мые участниками протокола друг другу. После осуществления такой атаки А полагает, что он выполнил обмен ключами с В (это так и есть!); В полагает, что он выполнил обмен ключами с С. Злоумыш­ ленник С не способен сам вычислить ключ k, но вынуждает В делать

146 Запечников С. В. Криптографическиепротоколы н их примененив

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

Таблица 2.16. Атака на протокол МТI методом подстановки источника (е различными открытыми ключами)

 

А

С

 

В

 

е -

случайное

 

 

 

число,

 

 

 

 

 

 

1$e~p-2,

 

 

 

Zc =(ZлУ =

 

 

ZA - откр. КЛЮЧ А

::::aaemodp -

 

ZB - откр, КЛЮЧ В

 

 

 

 

 

откр. КЛЮЧ С

~

~~СепСеп,,\ t:=---f-- ~

[а'mOdP ,]

-7

[а'г.

 

 

-7

 

Сеnл

 

 

сы;

 

 

 

 

 

 

 

 

 

 

а.\,)е

 

р

 

 

[а'У mod р]

 

 

 

 

~

[(

mod

 

]

~

 

k=

 

 

 

 

 

 

 

 

k=

=(

ауе

'Z~

 

 

 

 

 

 

=(a.t")b . z~mod р

 

J

modp

 

 

 

 

 

 

 

= а{/еу ·а·<Ь mod р =

 

 

 

 

 

 

= аХЬ . а'''' mod р =

== а{/I!У+ хЬ mod р

 

 

 

 

 

 

= апеу+хЬ mod р

 

 

 

 

 

 

 

 

 

 

 

Протокол STS (ыайоп-ю-ыаиоп), показанный в табл. 2.17, тоже основан на протоколе Диффи - Хеллмана. Дополнительно ОН ис­ пользует симметричную схему шифрования (E,D) и две схемы циф-

ровой подписи вида Sх (т);:;;(н(111))tl.Y mod 11х , Х ;:;; {А,в},

Н(т)<nх. На эту роль подходят схемы RSA или Рабина.

 

2. Инфраструктура криптасистем

147

 

 

 

Таблица2.17. Протокол STS

 

 

 

 

 

 

 

 

 

 

 

Предватинельный этап

 

 

 

 

А

 

 

 

 

 

В

 

ПА = р".qл

~(ел nJ (сп 11/,)

 

llв :::; PBQB

'

 

 

(ел. IlА) 7

 

f--(ев. I1в)

-

 

 

 

 

 

d A : елdл =:

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

d u :e JJd1J

=:

 

=: 1mod (рА -1) (qА - 1)

аЕ z; - образ. эле-

 

=: 1mod(PB -1)( Qn -1)

 

 

 

мент, 2:5:а:5: р-2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рабочийэ11tU11

 

 

 

 

 

 

 

 

 

 

 

 

А

 

 

 

 

В

 

 

 

 

 

 

 

 

 

1

х - случайное число,

 

 

 

 

 

 

 

 

1:5: х :5: Р- 2, [ а"х mod Р]

7

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

У - случайное число,

 

 

 

 

1:5: У :5: Р - 2 , k := ( а"у mod Р

 

 

 

f-- [ а/ mod р; е,(SIJ (а.У.а'):IJ

3

k ;:; (аУу mod р , расшифровы-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вает Ek, проверяет подпись В,

 

 

 

 

 

 

 

в случае положительного исхода

 

 

 

 

 

 

 

Формирует' [ Е,.(SА(аХ.аУ))]

7

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

Расшифровывает Ek , проверя-

 

 

 

 

ет подпись А, в случае поло-

 

 

 

 

жительного исхода принимает

ключ k как общий сА

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

рассмотренных.

Разработка новых безопасных протоколов распределения клю­ чей, основанных на асимметричных криптосхемах, продолжаются и поныне. Многочисленные публикации по этой проблеме можно най­ ти в трудах международных конференций CRYPTO, EUROCRYPT, ASIACR УРТ за последние годы.

148Запечников с. В. Криптографическиепротоколы и их примеленив

2.2.5.Конференц-связь

Конференц-связь - это многосторонняя рассылка сообщений в режиме реального времени (число участников обмена сообщениями не менее трех).

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

Пусть N - множество участников системы конференц-связи, М С N - множества (группы) участников конференций, INI =11,

IMI=t,t~n.

К распределению ключей конференц-связи выдвигается не­ сколько вполне очевидных требований:

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

2) эти сеансовые ключи динамические (т. е. протоколы с пред­ распределенными ключами исключаются), более того, в' различных конференциях, даже при одинаковом составе участников, должны быть разные ключи, так как очень высок риск их компрометации;

3) информация, которой обмениваются участники в процессе выполнения протокола распределения ключей несекретная, т. е. пе­

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

(это следствие из предыдущего требования).

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