logo
Криптографическая защита информации

8.2. Шифрсистема Эль-Гамаля

Шифрсистема Эль-Гамаля была предложена в 1985г. и является фактически одним из вариантов метода выработки открытых ключей Диффи-Хеллмана (который бу­дет рассмотрен далее). Криптографическая стойкость данной системы основана на сложности проблемы логарифмирования в мультипликативной группе конечного простого поля.

В соответствии с терминологией, введенной в 2, шифрсистема Эль-Гамаля (X, К, Y ,E,D) определяется следую­щим образом. Для нее

Х= Z*p, Y =Z*pZ*p, K={(p,,,g) g (mod p)},

где p – достаточно большое простое число, – порождающий элемент группы Z*p, g – целое число из интервала 1 g p–2. Ключ k=(p,,,g) представляется в виде открытого ключа kз = (p,,) и секретного ключа kр=(g). Правило зашифрования на ключе k определяется формулой

Еk(M)=(C1,C2),

где С1 r (mod p), С2 = М r(mod p),

и r – случайно выбираемое число (рандомизатор) из интервала 0 r р –2.

Правило расшифрования на ключе k определяется фор­мулой

Dk(C1,C2)=C2(C1g)–1(mod p).

Несложно проверить, что такое определение корректно, то есть что выполняется равенство Dk(Ek(M)) = М при любых k К и МХ .

Введение в правило зашифрования рандомизатора r делает шифр Эль-Гамаля шифром многозначной замены (см. 4). В связи со случайным характером выбора параметра r подобную схему шифрования называют еще схемой вероят­ностного шифрования. Для нее открытый текст и ключ не определяют шифртекст однозначно.

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

1) выбирает большое простое число р и некоторый по­рождающий элемент группы Z*p;

2) случайно выбирает целое число g, 1 gp-2, и вы­числяет g(mod p);

3) публикует открытый ключ (р,,), оставляя в секре­те число g.

Следует отметить, что в приведенной системе необходи­мо использовать различные значения рандомизатора r для зашифрования различных открытых текстов М и М'. В самом деле, в противном случае соответствующие шифртексты (C1,C2) и (Ć1,Ć2) оказываются связанными соотноше­нием C22)–1=M(M') –1 и М' может быть легко вы­числен, если известен М.

Как уже отмечалось, стойкость системы Эль-Гамаля оп­ределяется сложностью решения задачи дискретного лога­рифмирования в Z*p. В настоящее время эта задача практиче­ски нереализуема для значений р, содержащих не менее 150 десятичных знаков. Рекомендуется также, чтобы число р –1 содержало большой простой делитель.

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

1) мультипликативная группа Z целых чисел по модулю простого числа p;

2) мультипликативная группа GF(2m)* конечного поля GF(2m) характеристики 2;

3) группа точек эллиптической кривой над конечным по­лем.

Вероятностный характер шифрования можно отнести к достоинствам системы Эль-Гамаля, так как схемы вероятно­стного шифрования обладают, как правило, большей стойкостью по сравнению со схемами с детерминированным про­цессом шифрования. Недостатком системы является удвоение длины открытого текста при шифровании.