Криптосистема Боне — Го — Ниссима: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
'''Криптосистема Боне-Го-Ниссима''' — частично [[Гомоморфное шифрование|гомоморфная]] [[криптосистема]], являющаяся модификацией [[Криптосистема Пэйе|криптосистемы Пэйе]]<ref>{{Статья|автор=Pascal Paillier|ответственный=Jacques Stern|год=1999|doi=10.1007/3-540-48910-x_16|isbn=9783540489108|язык=en|страницы=223–238|заглавие=Public-Key Cryptosystems Based on Composite Degree Residuosity Classes|ссылка=https://link.springer.com/chapter/10.1007/3-540-48910-X_16|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — EUROCRYPT ’99}}</ref> и [[криптосистемы Окамото-Учиямы]]<ref>{{Статья|автор=Tatsuaki Okamoto, Shigenori Uchiyama|ответственный=Kaisa Nyberg|год=1998|doi=10.1007/bfb0054135|isbn=9783540697954|язык=en|страницы=308–318|заглавие=A new public-key cryptosystem as secure as factoring|ссылка=https://link.springer.com/chapter/10.1007/BFb0054135|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — EUROCRYPT'98}}</ref>[[Криптосистема Пэйе|,]] разработанная [[Бонех, Дэн|Дэном Бонех]]<ref>{{Статья|автор=Mihir Bellare, Juan A. Garay, Tal Rabin|ответственный=Kaisa Nyberg|год=1998|doi=10.1007/bfb0054130|isbn=9783540697954|язык=en|страницы=236–250|заглавие=Fast batch verification for modular exponentiation and digital signatures|ссылка=https://link.springer.com/chapter/10.1007/BFb0054130|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — EUROCRYPT'98}}</ref> совместно с [[Ю Чжин Го]] и [[Коби Ниссимом]]<ref name=":0">{{Статья|автор=Dan Boneh, Matt Franklin|ответственный=Joe Kilian|год=2001|doi=10.1007/3-540-44647-8_13|isbn=9783540446477|язык=en|страницы=213–229|заглавие=Identity-Based Encryption from the Weil Pairing|ссылка=https://link.springer.com/chapter/10.1007/3-540-44647-8_13|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — CRYPTO 2001}}</ref> в 2005 году. Основанная на конечных группах составного порядка, которые поддерживают билинейное отображение, система позволяет оценить многовариантные [[Факторизация многочленов|квадратичные полиномы]] на [[Шифротекст|шифротекстах]] (например, [[Дизъюнктивная нормальная форма|дизъюктивная нормальная форма]] второго порядка (2-[[Дизъюнктивная нормальная форма|ДНФ]])).
'''Криптосистема Боне-Го-Ниссима''' — частично [[Гомоморфное шифрование|гомоморфная]] [[криптосистема]], являющаяся модификацией [[Криптосистема Пэйе|криптосистемы Пэйе]]<ref>{{Статья|автор=Pascal Paillier|ответственный=Jacques Stern|год=1999|doi=10.1007/3-540-48910-x_16|isbn=9783540489108|язык=en|страницы=223–238|заглавие=Public-Key Cryptosystems Based on Composite Degree Residuosity Classes|ссылка=https://link.springer.com/chapter/10.1007/3-540-48910-X_16|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — EUROCRYPT ’99}}</ref> и [[криптосистемы Окамото-Учиямы]]<ref>{{Статья|автор=Tatsuaki Okamoto, Shigenori Uchiyama|ответственный=Kaisa Nyberg|год=1998|doi=10.1007/bfb0054135|isbn=9783540697954|язык=en|страницы=308–318|заглавие=A new public-key cryptosystem as secure as factoring|ссылка=https://link.springer.com/chapter/10.1007/BFb0054135|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — EUROCRYPT'98}}</ref>[[Криптосистема Пэйе|,]] разработанная [[Бонех, Дэн|Дэном Бонех]]<ref>{{Статья|автор=Mihir Bellare, Juan A. Garay, Tal Rabin|ответственный=Kaisa Nyberg|год=1998|doi=10.1007/bfb0054130|isbn=9783540697954|язык=en|страницы=236–250|заглавие=Fast batch verification for modular exponentiation and digital signatures|ссылка=https://link.springer.com/chapter/10.1007/BFb0054130|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — EUROCRYPT'98}}</ref> совместно с [[Ю Чжин Го]] и [[Коби Ниссимом]]<ref name=":0">{{Статья|автор=Dan Boneh, Matt Franklin|ответственный=Joe Kilian|год=2001|doi=10.1007/3-540-44647-8_13|isbn=9783540446477|язык=en|страницы=213–229|заглавие=Identity-Based Encryption from the Weil Pairing|ссылка=https://link.springer.com/chapter/10.1007/3-540-44647-8_13|издательство=Springer Berlin Heidelberg|издание=Advances in Cryptology — CRYPTO 2001}}</ref> в 2005 году. Основанная на конечных группах составного порядка, которые поддерживают билинейное отображение, система позволяет оценить многовариантные [[Факторизация многочленов|квадратичные полиномы]] на [[Шифротекст|шифротекстах]] (например, [[Дизъюнктивная нормальная форма|дизъюктивная нормальная форма]] второго порядка (2-[[Дизъюнктивная нормальная форма|ДНФ]])).


Благодаря использованию конструкции [[Криптосистема Пэйе|криптосистемы Пэйе]] и билинейного отбражения, получена система с аддиитивным [[Гомоморфизм|гомоморфизмом]], которая поддерживает произвольные добавления и одно умножение (за которым следуют произвольные добавления) для зашифрованных данных.<ref name=":1">{{Книга|год=2005|isbn=9783540305767, 3540305769, 3540245731, 9783540245735|страниц=1 online resource (xii, 619 pages)|место=Berlin|издательство=Springer|заглавие=Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings|ссылка=https://www.worldcat.org/oclc/262680723|автор=|ответственный=|издание=|страницы=|isbn2=}}</ref>
Благодаря использованию конструкции [[Криптосистема Пэйе|криптосистемы Пэйе]] и билинейного отбражения, получена система с аддиитивным [[Гомоморфизм|гомоморфизмом]], которая поддерживает произвольные добавления и одно умножение (за которым следуют произвольные добавления) для зашифрованных данных.<ref>{{Книга|год=2005|isbn=9783540305767, 3540305769, 3540245731, 9783540245735|страниц=1 online resource (xii, 619 pages)|место=Berlin|издательство=Springer|заглавие=Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings|ссылка=https://www.worldcat.org/oclc/262680723|автор=|ответственный=|издание=|страницы=326|isbn2=}}</ref>


== Генерация ключей ==
== Генерация ключей ==
'''''Генерация_Ключа('''''<math>\tau</math>''''')'':''' Учитывая параметр безопасности <math>\tau\in\mathbb{Z}^+</math>, вычисляем <math>\Im(\tau)</math>, чтобы получить кортеж <math>(\boldsymbol{q}_1,\boldsymbol{q}_2,\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math>. Пусть <math>\boldsymbol{n}=\boldsymbol{q}_1\boldsymbol{q}_2</math>. Выберем два случайных генератора <math>\boldsymbol{g},\boldsymbol{u}\xleftarrow{R}\mathbb{G}</math> и определим <math>\boldsymbol{h}</math>, как <math>\boldsymbol{h}=\boldsymbol{u}^\boldsymbol{q_2}</math>. Тогда <math>\boldsymbol{h}</math> это случайный генератор подгруппы <math>\mathbb{G}</math> порядка <math>\boldsymbol{q_1}</math>. Открытый ключ : <math>\mathcal{O}\mathcal{K}=(\boldsymbol{n},\mathbb{G},\mathbb{G_1},\boldsymbol{f},\boldsymbol{g},\boldsymbol{h})</math>. Закрытый ключ : <math>\mathcal{S}\mathcal{K}=\boldsymbol{q_1}</math>''.''<ref name=":1" />
'''''Генерация_Ключа('''''<math>\tau</math>''''')'':''' Учитывая параметр безопасности <math>\tau\in\mathbb{Z}^+</math>, вычисляем <math>\Im(\tau)</math>, чтобы получить кортеж <math>(\boldsymbol{q}_1,\boldsymbol{q}_2,\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math>. Пусть <math>\boldsymbol{n}=\boldsymbol{q}_1\boldsymbol{q}_2</math>. Выберем два случайных генератора <math>\boldsymbol{g},\boldsymbol{u}\xleftarrow{R}\mathbb{G}</math> и определим <math>\boldsymbol{h}</math>, как <math>\boldsymbol{h}=\boldsymbol{u}^\boldsymbol{q_2}</math>. Тогда <math>\boldsymbol{h}</math> это случайный генератор подгруппы <math>\mathbb{G}</math> порядка <math>\boldsymbol{q_1}</math>. Открытый ключ : <math>\mathcal{O}\mathcal{K}=(\boldsymbol{n},\mathbb{G},\mathbb{G_1},\boldsymbol{f},\boldsymbol{g},\boldsymbol{h})</math>. Закрытый ключ : <math>\mathcal{S}\mathcal{K}=\boldsymbol{q_1}</math>''.''<ref name=":1">{{Книга|год=2005|isbn=9783540305767, 3540305769, 3540245731, 9783540245735|страниц=1 online resource (xii, 619 pages)|место=Berlin|издательство=Springer|заглавие=Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings|ссылка=https://www.worldcat.org/oclc/262680723|автор=|ответственный=|издание=|страницы=329|isbn2=}}</ref><ref name=":2">{{Статья|автор=Takuho Mitsunaga, Yoshifumi Manabe, Tatsuaki Okamoto|год=2010-11-22|doi=10.1007/978-3-642-16825-3_11|страницы=149–163|заглавие=Efficient Secure Auction Protocols Based on the Boneh-Goh-Nissim Encryption|ссылка=https://www.researchgate.net/publication/220784859_Efficient_Secure_Auction_Protocols_Based_on_the_Boneh-Goh-Nissim_Encryption|том=E96A}}</ref>


== Работа в режиме шифрования ==
== Работа в режиме шифрования ==
Строка 13: Строка 13:
<math>\boldsymbol{C}=\boldsymbol{g}^\mathcal{M}\boldsymbol{h}^\boldsymbol{r}\in\mathbb{G}</math> .
<math>\boldsymbol{C}=\boldsymbol{g}^\mathcal{M}\boldsymbol{h}^\boldsymbol{r}\in\mathbb{G}</math> .


Полученный результат и есть шифротекст.
Полученный результат и есть шифротекст.<ref name=":1" /><ref name=":2" />


=== Расшифрование ===
=== Расшифрование ===
Строка 22: Строка 22:
Пусть <math>\hat{\boldsymbol{g}}=\boldsymbol{g}^{q_1}</math> . Чтобы восстановить <math>\mathcal{M}</math> достаточно вычислить дискретный логарифм <math>\boldsymbol{C}^{q_1}</math> по основанию <math>\hat{\boldsymbol{g}}</math>.
Пусть <math>\hat{\boldsymbol{g}}=\boldsymbol{g}^{q_1}</math> . Чтобы восстановить <math>\mathcal{M}</math> достаточно вычислить дискретный логарифм <math>\boldsymbol{C}^{q_1}</math> по основанию <math>\hat{\boldsymbol{g}}</math>.


Следует отметить, что дешифрование в этой системе занимает полиномиальное время в размере пространства сообщений.
Следует отметить, что дешифрование в этой системе занимает полиномиальное время в размере пространства сообщений.<ref name=":1" /><ref name=":2" />


== Пример ==
== Пример ==
Строка 35: Строка 35:
## Она выполняет арифметизацию <math>\Phi(\phi)</math> заменяя «<math>\lor</math>» на «<math>+</math>», «<math>\land</math>» на «<math>*</math>» и «<math>\bar{x_j}</math>» на «<math>(1-x_j)</math>».Отметим, что <math>\Phi</math> это полином степени 2.
## Она выполняет арифметизацию <math>\Phi(\phi)</math> заменяя «<math>\lor</math>» на «<math>+</math>», «<math>\land</math>» на «<math>*</math>» и «<math>\bar{x_j}</math>» на «<math>(1-x_j)</math>».Отметим, что <math>\Phi</math> это полином степени 2.
## Алиса вычисляет шифрование <math>\boldsymbol{r}*\Phi(\boldsymbol{a})</math> для случайно выбранного <math>\boldsymbol{r}</math> используя гомоморфные свойства системы шифрования. Результат отправляется Бобу.
## Алиса вычисляет шифрование <math>\boldsymbol{r}*\Phi(\boldsymbol{a})</math> для случайно выбранного <math>\boldsymbol{r}</math> используя гомоморфные свойства системы шифрования. Результат отправляется Бобу.
# Если Боб получает шифрование "<math>0</math>", он выводит "<math>0</math>"; в противном случае, он выводит "<math>1</math>".<ref name=":1" />
# Если Боб получает шифрование "<math>0</math>", он выводит "<math>0</math>"; в противном случае, он выводит "<math>1</math>".<ref>{{Книга|год=2005|isbn=9783540305767, 3540305769, 3540245731, 9783540245735|страниц=1 online resource (xii, 619 pages)|место=Berlin|издательство=Springer|заглавие=Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings|ссылка=https://www.worldcat.org/oclc/262680723|автор=|ответственный=|издание=|страницы=332|isbn2=}}</ref>


== Вспомогательные данные о группах ==
== Вспомогательные данные о группах ==
Строка 47: Строка 47:
# <math>\boldsymbol{f}</math> — билинейное отображение <math>\boldsymbol{f}:\mathbb{G}\times\mathbb{\mathbb{G}}\rightarrow\mathbb{G}_1</math>. Другими словами, для всех <math>\boldsymbol{u} , \boldsymbol{v} \in\mathbb{G}</math> и <math>\boldsymbol{a} , \boldsymbol{b} \in\mathbb{Z}</math> мы имеем <math>\boldsymbol{f}(\boldsymbol{u}^\boldsymbol{a},\boldsymbol{v}^\boldsymbol{b}) = \boldsymbol{f}(\boldsymbol{u},\boldsymbol{v})^{\boldsymbol{a}\boldsymbol{b}}</math>. Мы также требуем выполнение условия : <math>\boldsymbol{f}(\boldsymbol{g},\boldsymbol{g})</math> является генератором <math>\mathbb{G}_1</math>
# <math>\boldsymbol{f}</math> — билинейное отображение <math>\boldsymbol{f}:\mathbb{G}\times\mathbb{\mathbb{G}}\rightarrow\mathbb{G}_1</math>. Другими словами, для всех <math>\boldsymbol{u} , \boldsymbol{v} \in\mathbb{G}</math> и <math>\boldsymbol{a} , \boldsymbol{b} \in\mathbb{Z}</math> мы имеем <math>\boldsymbol{f}(\boldsymbol{u}^\boldsymbol{a},\boldsymbol{v}^\boldsymbol{b}) = \boldsymbol{f}(\boldsymbol{u},\boldsymbol{v})^{\boldsymbol{a}\boldsymbol{b}}</math>. Мы также требуем выполнение условия : <math>\boldsymbol{f}(\boldsymbol{g},\boldsymbol{g})</math> является генератором <math>\mathbb{G}_1</math>


Мы говорим, что <math>\mathbb{G}</math> — билинейная группа, если существует группа <math>\mathbb{G}_1</math> и билинейное отображение, определённое выше.
Мы говорим, что <math>\mathbb{G}</math> — билинейная группа, если существует группа <math>\mathbb{G}_1</math> и билинейное отображение, определённое выше.<ref name=":2" />


=== Построение билинейных групп заданого порядка <math>\boldsymbol{n}</math> ===
=== Построение билинейных групп заданого порядка <math>\boldsymbol{n}</math> ===
Строка 63: Строка 63:
#На выходе получим <math>(\boldsymbol{q}_1,\boldsymbol{q}_2,\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math>.
#На выходе получим <math>(\boldsymbol{q}_1,\boldsymbol{q}_2,\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math>.


Пусть <math>\tau\in\mathbb{Z}^+</math>, а <math>(\boldsymbol{q}_1,\boldsymbol{q}_2,\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math> - кортеж, созданный <math>\Im</math>, где <math>\boldsymbol{n}=\boldsymbol{q}_1\boldsymbol{q}_2</math>. Рассмотрим следующую задачу. Для заданного <math>(\boldsymbol{n},\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math> и элемента <math>\boldsymbol{x}\in\mathbb{G}</math>, выведем "<math>1</math>", если порядок <math>\boldsymbol{x}</math> равен <math>\boldsymbol{q_1}</math>, в противном случае, выведем "<math>0</math>". Другими словами, без знания факторизации группы порядка <math>\boldsymbol{n}</math>, необходимо узнать, находится ли элемент <math>\boldsymbol{x}</math> в подгруппе группы <math>\mathbb{G}</math>. Данная задача называется [[Задача Бёрнсайда|задачей Бернсайда]].
Пусть <math>\tau\in\mathbb{Z}^+</math>, а <math>(\boldsymbol{q}_1,\boldsymbol{q}_2,\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math> - кортеж, созданный <math>\Im</math>, где <math>\boldsymbol{n}=\boldsymbol{q}_1\boldsymbol{q}_2</math>. Рассмотрим следующую задачу. Для заданного <math>(\boldsymbol{n},\mathbb{G},\mathbb{G}_1,\boldsymbol{f})</math> и элемента <math>\boldsymbol{x}\in\mathbb{G}</math>, выведем "<math>1</math>", если порядок <math>\boldsymbol{x}</math> равен <math>\boldsymbol{q_1}</math>, в противном случае, выведем "<math>0</math>". Другими словами, без знания факторизации группы порядка <math>\boldsymbol{n}</math>, необходимо узнать, находится ли элемент <math>\boldsymbol{x}</math> в подгруппе группы <math>\mathbb{G}</math>. Данная задача называется [[Задача Бёрнсайда|задачей Бернсайда]].<ref name=":2" />


== Гомоморфные свойства ==
== Гомоморфные свойства ==
Строка 79: Строка 79:


* Безопасность Боба - Мы требуем, чтобы Алиса не могла видеть разницу между различными возможными входными данными Боба.
* Безопасность Боба - Мы требуем, чтобы Алиса не могла видеть разницу между различными возможными входными данными Боба.
* Безопасность Алисы - Безопасность Алисы формируется требованием о не получением Бобом никакой информации помимо того, удовлетворяет ли <math>\boldsymbol{a}</math> <math>\phi()</math>.<ref name=":1" />
* Безопасность Алисы - Безопасность Алисы формируется требованием о не получением Бобом никакой информации помимо того, удовлетворяет ли <math>\boldsymbol{a}</math> <math>\phi()</math>.<ref>{{Книга|год=2005|isbn=9783540305767, 3540305769, 3540245731, 9783540245735|страниц=1 online resource (xii, 619 pages)|место=Berlin|издательство=Springer|заглавие=Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings|ссылка=https://www.worldcat.org/oclc/262680723|автор=|ответственный=|издание=|страницы=331|isbn2=}}</ref>


== Примечание ==
== Примечание ==

Версия от 15:38, 11 ноября 2019

Криптосистема Боне-Го-Ниссима — частично гомоморфная криптосистема, являющаяся модификацией криптосистемы Пэйе[1] и криптосистемы Окамото-Учиямы[2], разработанная Дэном Бонех[3] совместно с Ю Чжин Го и Коби Ниссимом[4] в 2005 году. Основанная на конечных группах составного порядка, которые поддерживают билинейное отображение, система позволяет оценить многовариантные квадратичные полиномы на шифротекстах (например, дизъюктивная нормальная форма второго порядка (2-ДНФ)).

Благодаря использованию конструкции криптосистемы Пэйе и билинейного отбражения, получена система с аддиитивным гомоморфизмом, которая поддерживает произвольные добавления и одно умножение (за которым следуют произвольные добавления) для зашифрованных данных.[5]

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

Генерация_Ключа(): Учитывая параметр безопасности , вычисляем , чтобы получить кортеж . Пусть . Выберем два случайных генератора и определим , как . Тогда это случайный генератор подгруппы порядка . Открытый ключ : . Закрытый ключ : .[6][7]

Работа в режиме шифрования

Шифрование

Шифр(): Мы предполагаем, что пространство сообщений состоит из целых чисел в наборе {0,1}. Чтобы зашифровать сообщение с помощью открытого ключа выбераем случайный параметр и вычисляем

.

Полученный результат и есть шифротекст.[6][7]

Расшифрование

Расшифр(): Чтобы расшифровать шифротекст используя закрытый ключ , рассмотрим следующее выражение

.

Пусть . Чтобы восстановить достаточно вычислить дискретный логарифм по основанию .

Следует отметить, что дешифрование в этой системе занимает полиномиальное время в размере пространства сообщений.[6][7]

Пример

Частично гомоморфная система позволяет оценить 2-ДНФ.

На входе: У Алисы есть 2-ДНФ формула , а у Боба есть набор переменных . Обе стороны на входе содержат параметр безопасности .

  1. Боб выполняет следующие действия:
    1. Он исполняет алгоритм Генерация_Ключа(), чтобы вычислить и отправляет Алисе.
    2. Он вычисляет и отправляет Шифр() для .
  2. Алиса выполняет следующие действия:
    1. Она выполняет арифметизацию заменяя «» на «», «» на «» и «» на «».Отметим, что это полином степени 2.
    2. Алиса вычисляет шифрование для случайно выбранного используя гомоморфные свойства системы шифрования. Результат отправляется Бобу.
  3. Если Боб получает шифрование "", он выводит ""; в противном случае, он выводит "".[8]

Вспомогательные данные о группах

Краткое рассмотрение основных групп, лежащих в основе данной системы шифрования.

Билинейные группы

Конструкция использует некоторые конечные группы составного порядка, которые поддерживают билинейное отображение. Используются следующие обозначения:

  1. и - две циклические группы конечного порядка .
  2.  — генератор .
  3.  — билинейное отображение . Другими словами, для всех и мы имеем . Мы также требуем выполнение условия : является генератором

Мы говорим, что  — билинейная группа, если существует группа и билинейное отображение, определённое выше.[7]

Построение билинейных групп заданого порядка

Пусть > 3 — заданное число, которое не делится на 3. Построим билинейную группу порядка следующим образом:

  1. Найдем наименьшее натуральное число , такое что  — простое число и .
  2. Рассмотрим группу точек на эллиптической кривой опреленную над . Поскольку кривая имеет точек в . Поэтому группа точек на кривой имеет подруппу порядка , которую обозначим через .
  3. Пусть подгруппа в порядка . Модифицированный алгоритм спаривания Вейля (Спаривание Вейля является билинейным, кососимметричным, невырож­денным отображением[9][4][10][11]) на кривой выдает билинейное отображение , удовлетворяющее заданным условиям.

Алгоритм, основанный на задаче Бёрнсайда

Определим алгоритм , который при заданном параметре безопасности выводит кортеж , где и группы порядка и  — билинейное отображение. На входе известен параметр , алгоритм работает следующим образом:

  1. Сгенерируем два случайных  — битовых числа и и положим .
  2. Создадим билинейную группу порядка , как описанно в разделе выше. Пусть  — генератор , а  — билинейное отображение.
  3. На выходе получим .

Пусть , а - кортеж, созданный , где . Рассмотрим следующую задачу. Для заданного и элемента , выведем "", если порядок равен , в противном случае, выведем "". Другими словами, без знания факторизации группы порядка , необходимо узнать, находится ли элемент в подгруппе группы . Данная задача называется задачей Бернсайда.[7]

Гомоморфные свойства

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

Более важно то, что любой может умножить два зашифрованных сообщения один раз, используя билинейное отображение. Определим и . Тогда порядка , а порядка . Кроме того, для некоторого (неизвестного) параметра , напишем . Предположим, что нам известны два шифротекста . Чтобы построить шифрование произведения , выберем случайное число и положим . Получаем , где — распределено равномерно в , как и необходимо.

Таким образом, является равномерно распределенным шифрованием , но только в группе , а не в (поэтому допускается только одно умножение).[6]

Стойкость системы

Стойкость данной схемы основана на задаче Бернсайда . А именно, зная элемент группы составного порядка , невозможно определить его приналежность к подгруппе порядка . Понятно, что если мы можем учесть групповой порядок в криптосистеме, то мы знаем закрытый ключ , и в результате система взломана. Кроме того, если мы можем вычислить дискретные логарифмы в группе , то мы можем вычислить и . Таким образом, необходимые условия для безопасности: сложность факторинга и сложность вычисления дискретных логарифмов в .[12]

Требования к стойкости для модели "Алиса - Боб"

Поскольку только одна сторона моет узнать результат (в нашем случае - Боб):

  • Безопасность Боба - Мы требуем, чтобы Алиса не могла видеть разницу между различными возможными входными данными Боба.
  • Безопасность Алисы - Безопасность Алисы формируется требованием о не получением Бобом никакой информации помимо того, удовлетворяет ли .[13]

Примечание

  1. Pascal Paillier. Public-Key Cryptosystems Based on Composite Degree Residuosity Classes (англ.) // Advances in Cryptology — EUROCRYPT ’99 / Jacques Stern. — Springer Berlin Heidelberg, 1999. — P. 223–238. — ISBN 9783540489108. — doi:10.1007/3-540-48910-x_16.
  2. Tatsuaki Okamoto, Shigenori Uchiyama. A new public-key cryptosystem as secure as factoring (англ.) // Advances in Cryptology — EUROCRYPT'98 / Kaisa Nyberg. — Springer Berlin Heidelberg, 1998. — P. 308–318. — ISBN 9783540697954. — doi:10.1007/bfb0054135.
  3. Mihir Bellare, Juan A. Garay, Tal Rabin. Fast batch verification for modular exponentiation and digital signatures (англ.) // Advances in Cryptology — EUROCRYPT'98 / Kaisa Nyberg. — Springer Berlin Heidelberg, 1998. — P. 236–250. — ISBN 9783540697954. — doi:10.1007/bfb0054130.
  4. 1 2 Dan Boneh, Matt Franklin. Identity-Based Encryption from the Weil Pairing (англ.) // Advances in Cryptology — CRYPTO 2001 / Joe Kilian. — Springer Berlin Heidelberg, 2001. — P. 213–229. — ISBN 9783540446477. — doi:10.1007/3-540-44647-8_13.
  5. Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings. — Berlin: Springer, 2005. — С. 326. — 1 online resource (xii, 619 pages) с. — ISBN 9783540305767, 3540305769, 3540245731, 9783540245735.
  6. 1 2 3 4 Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings. — Berlin: Springer, 2005. — С. 329. — 1 online resource (xii, 619 pages) с. — ISBN 9783540305767, 3540305769, 3540245731, 9783540245735.
  7. 1 2 3 4 5 Takuho Mitsunaga, Yoshifumi Manabe, Tatsuaki Okamoto. Efficient Secure Auction Protocols Based on the Boneh-Goh-Nissim Encryption. — 2010-11-22. — Т. E96A. — С. 149–163. — doi:10.1007/978-3-642-16825-3_11.
  8. Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings. — Berlin: Springer, 2005. — С. 332. — 1 online resource (xii, 619 pages) с. — ISBN 9783540305767, 3540305769, 3540245731, 9783540245735.
  9. О.Н. Василенко. О вычислении спариваний Вейля и Тейта // Тр. по дискр. матем.. — М.: ФИЗМАТЛИТ, 2007. — Т. 10. — С. 18—46.
  10. Antoine Joux. A One Round Protocol for Tripartite Diffie–Hellman. — 2006-12-30. — Т. 17. — С. 385–393. — doi:10.1007/10722028_23.
  11. Victor Miller. The Weil Pairing, and Its Efficient Calculation // J. Cryptology. — 2004-09-01. — Т. 17. — С. 235–261. — doi:10.1007/s00145-004-0315-8.
  12. EUROCRYPT 2010 (2010 : Riveria, France). Advances in cryptology--EUROCRYPT 2010 : 29th Annual International Conference on the Theory and Applications of Cryptographic Techniques, French Riviera, May 30-June 3, 2010 : proceedings. — Springer, 2010. — ISBN 9783642131905, 3642131905.
  13. Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, USA, February 10-12, 2005 : proceedings. — Berlin: Springer, 2005. — С. 331. — 1 online resource (xii, 619 pages) с. — ISBN 9783540305767, 3540305769, 3540245731, 9783540245735.

Литература