Система Orphus

Система Orphus

Шифрование с открытым ключом с использованием эллиптических кривых. Схемы DLIES и ECIES.

Для группы точек эллиптической кривой над конечным полем E существует быстро выполнимая операция – умножение целого числа x на точку A (суммирование точки самой с собой целое число раз): B = x*A. 

И получение исходной точки A при известных B и x (деление точки на целое число), и получение целого числа x при известных A и B являются сложными задачами. На этом и основаны алгоритмы шифрования и электронной подписи с использованием эллиптических кривых над конечными полями. 

Схема ECIES (англ. Elliptic Curve Integrated Encryption Scheme) является частью сразу нескольких стандартов, в том числе ANSI X9.63, IEEE 1363a, ISO 18033-2 и SECG SEC 1. Эти стандарты по-разному описывают выбор параметров схемы: 

14) ENC(англ.Encryption)–блочныйрежимшифрования

15) KA (англ. Key Agreement) – метод для генерации общего секрета двумя сторонами (оригинальный метод, описанный в протоколе Диффи Хеллмана либо его модифика- ции)

16) KDF (англ. Key Derivation Function) – метод получения ключей из ключевой и дополнительной информации;

17) HASH – криптографическая хэш-функция (SHA-1, SHA-2, RIPEMD, SHA-1);

18) MAC (англ. Message Authentication Code) – функция вычисления имитовставки

К параметрам относится выбор группы точек над эллиптиче-ской кривой E, а также некоторой большой циклической подгруппы G в группе E, задаваемой точкой-генератором G. Мощность циклической группы обозначается n.

Предположим, что в нашем сценарии Алиса хочет послать сообщение Бобу. У Алисы есть открытый ключ Боба PB, а у Боба – соответствующий ему закрытый ключ pB. Для отправки сообщения Алиса также сгенерирует временную (англ. ephemeral) пару из открытого (PA) и закрытого (pA) ключей.

Закрытыми ключами являются некоторые натуральные числа, меньшие n, а открытыми ключами является произведение закрытого на точку-генератор G

• С помощью метода генерации общего секрета KA Алиса вычисляет общий секрет s. В случае использования оригинального протокола Диффи Хеллмана общим секретом будет являться результат умножения закрытого ключа Алисы на открытый ключ Боба s = pa*PB .

• Используя полученный общий секрет s и метод получения ключей из ключевой и дополнительной информации KDF, Алиса получает ключ шифрования kENC, а также ключ для вычисления имитовставки kMAC.

• С помощью симметричного алгоритма шифрования ENC Алиса шифрует открытое сообщение m ключом kENC и получает шифротекст c.

• Взяв ключ kMAC, зашифрованное сообщение c и другие заранее обговорённые сторонами параметры, Алиса вычисляет тэг сообщения (tag) с помощью функции MAC.

• Алиса отсылает Бобу {PA, tag, c}.

• В процессе расшифровки Боб последовательно получает общий секрет s = pb*PA, ключи шифрования kENC и имитовстав-ки kMAC, вычисляет тэг сообщения и сверяет его с полученным. В случае совпадения вычисленного и полученного тэгов Боб расшифровывает исходное сообщение m из шифротекста c с помощью ключа шифрования kENC.


Система Orphus

Комментарии