ВУЗ:
Составители:
доказана в предположении о стойкости лежащих в ее основе криптографи-
ческих примитивов.
Данная криптосистема реализуема на основе любой циклической
группы, для которой может быть сформулирована проблема Диффи-
Хеллмана, например в {Z
p
*
} или в группе точек на эллиптической кривой.
Система строится из криптографических примитивов низкого уровня:
групповой операции, симметричного шифра, функции хэширования и ал-
горитма вычисления кода аутентификации сообщения-имитовставки
(MAC). Стойкость доказывается на основе предположения о сложности
решения соответствующей проблемы Диффи-Хеллмана и предположения о
стойкости входящих в схему симметричных примитивов.
Опишем криптографические примитивы, входящие в схему.
Циклическая группа G = {g}. Далее будем использовать мультиплика-
тивную запись групповой операции. Алгоритмы, реализующие эту опера-
цию, будут работать с представлениями элементов группы в виде битовых
строк фиксированной длины gLen ∈ N. Способ кодирования
{0,1}
g
Len
G →
не фиксируется и может быть выбран из соображений эффективности.
Код аутентификации сообщения позволяет пользователям, обладаю-
щим общим секретным ключом, выработать битовую строку для аутенти-
фикации и проверки целостности данных Пусть
*
{0,1}Msg =
– пространство
сообщений,
{0,1}
mLen
mKey =
– пространство ключей для вычисления MAC
для некоторого mLen ∈ N,
{0,1}
tLen
Tag =
– включающее множество всех воз-
можных значений MAC для некоторого tLen ∈ N. В этих обозначениях код
аутентификации сообщений представляет собой пару алгоритмов MAC =
{MAC.gen, MAC.ver}. Алгоритм генерации MAC определяется как отображение
.(,):
M
AC gen k x mKey Msg Tag×→
и может быть вероятностным.
Алгоритм верификации MAC является отображением со свойством
.(,, . (,))1MAC ver k x MAC gen k x
=
.
В качестве MAC можно использовать, например, блочный шифр с дос-
таточной длиной блока и ключа в режиме сцепления блоков шифрованного
текста.
Симметричный шифр позволяет пользователям, обладающим общим
секретным ключом, обеспечить секретность. Пусть Msg, как и ранее, про-
странство сообщений,
{0,1}
eLen
eKey =
– пространство ключей для некоторо-
го eLen ∈ N,
*
{0,1}Ctext =
– включающее множество всех возможных зна-
чений шифрованного текста и
{0,1}Coins
∞
=
– множество строк бесконеч-
ной длины. В этих обозначениях шифр представляет собой пару алгорит-
мов SYM = {SYM.enc, SYM.dec}. Алгоритм зашифрования определяется как
отображение
.(,,):SYM enc k x r eKey Msg Coins Ctext
×
×→
,
алгоритм расшифрования является отображением
.(,): { }SYM dec k y eKey Ctext Msg BAD
×
→∪
,
где значение BAD выдается, если шифртекст у не является результатом за-
шифрования никакого открытого текста
Асимметричный шифр. Пусть Msg, Ctext, Coins определены как и ра-
нее,
*
{0,1}PK ⊆
,
*
{0,1}SK ⊆
– множества открытых и секретных ключей.
Асимметричный шифр определяется как тройка алгоритмов ASYM =
{ASYM.enc, ASYM.dec, ASYM.Key}. Алгоритм зашифрования является ото-
бражением
.(,,):
A
SYM enc pk x r PK Msg Coins Ctext
×
×→
,
а расшифрования:
.(,): { }
A
SYM enc sk y SK Ctext Msg BAD
×
→∪
.
Алгоритм выработки ключа в качестве аргумента берет строку r ∈
Coins и выдает пару ключей
,pk sk PK SK
∈
×
. При этом должно выпол-
няться следующее свойство:
∪
∪
Страницы
- « первая
- ‹ предыдущая
- …
- 52
- 53
- 54
- 55
- 56
- …
- следующая ›
- последняя »
