Round5: различия между версиями
[непроверенная версия] | [непроверенная версия] |
дополнение |
Нет описания правки |
||
Строка 224: | Строка 224: | ||
Так как секретные ключи в Round5 являются разреженными, троичными и сбалансированными, снижается вероятность ошибок при расшифровки и ускоряются вычисления. Последнему факту также помогает то, что ненулевые коэффициенты многочленов равны либо +1, либо -1, что подразумевает, что умножения могут быть выполнены с использованием только сложений и вычитаний<ref name=":1" />. |
Так как секретные ключи в Round5 являются разреженными, троичными и сбалансированными, снижается вероятность ошибок при расшифровки и ускоряются вычисления. Последнему факту также помогает то, что ненулевые коэффициенты многочленов равны либо +1, либо -1, что подразумевает, что умножения могут быть выполнены с использованием только сложений и вычитаний<ref name=":1" />. |
||
Благодаря тому, что модули <math>q</math> и <math>p</math> являются степенями двойки, упрощается реализация функции округления, поскольку |
Благодаря тому, что модули <math>q</math> и <math>p</math> являются степенями двойки, упрощается реализация функции округления, поскольку её можно реализовать, отбрасывая младшие биты. Аналогично, модульные вычисления могут быть реализованы путем отбрасывания старших битов<ref name=":0" />. |
||
== Возможные атаки на Round5 == |
|||
* '''Dual Attack'''<ref>{{Статья|ссылка=http://dx.doi.org/10.1007/978-3-319-56614-6_4|автор=Martin R. Albrecht|заглавие=On Dual Lattice Attacks Against Small-Secret LWE and Parameter Choices in HElib and SEAL|год=2017|место=Cham|издание=Lecture Notes in Computer Science|издательство=Springer International Publishing|страницы=103–129|isbn=978-3-319-56613-9, 978-3-319-56614-6}}</ref> |
|||
* |
|||
== Примечания == |
== Примечания == |
Версия от 08:34, 7 декабря 2019
Эту статью Инкубатора предлагается удалить. |
Система шифрования Round5 — это пост-квантовая криптография с открытым ключом, основанная на задаче General Learning with Rounding (GLWR)[1]. Данная система является альтернативой для алгоритма RSA и эллиптических кривых и предназначена для защиты от квантовых компьютеров[2]. Round5 состоит из алгоритмов для реализации механизма инкапсуляции ключей (KEM) и схемы шифрования с открытым ключом (PKE). Данные алгоритмы попадают под категорию криптография на решётках.
Round5 представляет собой слияние двух систем Round2[3], основанная также на задаче GLWR, и HILA5[4], имеющая код исправления ошибок[1].
Виды задачи GLWR
Ключевой особенностью Round5 является то, что её можно реализовать на основе таких задач как Learning with Rounding (LWR),так и Ring Learning with Rounding (RLWR) единым способом, что приводит к уменьшению затрат на анализ и обслуживание кода.
Алгоритмы на основе LWR требуются в средах, где производительность не так важна по сравнению с безопасностью.
Напротив, по сравнению с LWR, в алгоритмах на основе RLWR вычисления более просты и эффективны. К тому же эти алгоритмы менее требовательны к полосе пропускания, поэтому они лучше подходят для тех сред, где накладываются более строгие требования к каналам передачи информации, например, там, где могут возникнуть трудности с фрагментацией сообщений или MTU слишком мал[1].
Система Round5 на задаче RLWR
Обозначения
Пусть — целое положительное число, тогда за обозначим набор чисел . Для набора через обозначим случайный и равновероятный выбор из . Для рационального числа обозначим: — округление вниз до целого, а — округление до ближайшего целого. Взятие остатка от деления обозначим как , т. е. . Пусть — простое число. — циклотомический полином равный . Кольцо многочленов обозначим . Многочлен равен . — это набор многочленов степени меньших с коэффициентами из . называется троичным, если все его коэффициенты равны или . Для любого элемента вес Хемминга определяется как число ненулевых коэффициентов. определяется как множество троичных полиномов степени меньше с весом Хемминга . В Round5 такие многочлены к тому же еще являются сбалансированными и разреженными, то есть имеют ровно коэффициентов равных и столько же равных (сбалансированные), и при этом принимает фиксированное значение (разреженные)[2].
Схема шифрования
Основой Round5 является схема шифрования r5_cpa_pke, надежная в смысле IND-CPA. r5_cpa_pke похож на схему шифрования Эль-Гамаля.
Параметры схемы шифрования r5_cpa_pke: – целые положительные числа, – параметр безопасности (длина сообщения в битах), - многочлен, коэффициенты которого являются сообщением и равны или (). Модули являются степенями двойки, так что делит и делит . Требуется, чтобы , и . – вес Хемминга многочленов, являющихся секретными. – многочлен или [2].
Алгоритм создания ключа
Algorithm 1: r5_cpa_pke_keygen() |
---|
1. |
2. |
3. |
4. return |
Для создания ключа равновероятно выбираются открытый многочлен из множества многочленов степени не выше с коэффициентами из и многочлен , являющийся закрытым ключом, также равновероятно выбирается из множества . Затем вычисляется многочлен , являющийся закрытым ключом, следующим образом:
- Вычисляется произведение и по модулю
- К этому выражению прибавляется число
- Полученная сумма умножается на
- Коэффициенты полученного многочлена округляют к меньшим целым числам и уже округленные коэффициенты вычисляются по модулю [2].
Алгоритм шифрования
Algorithm 2: r5_cpa_pke_encrypt |
---|
1. |
2. |
3. |
4. return |
Для создания шифра необходимо выбрать случайно многочлен , являющийся секретным, из множества . Используя его и , вычисляется первая компонента шифротекста таким же образом как . Поскольку не все коэффициенты необходимы для шифрования -битового сообщения , для вычисления второй компоненты шифротекста используется функция , которая принимает на вход многочлен и на выходе выдает набор всех коэффициентов, соответствующих членам со степенью меньших :
Так же для уменьшение вероятности ошибок применяются функции кодирования при шифровании и декодирования при дешифровании . Функция преобразует многочлен в набор двоичных коэффициентов размера . Затем этот набор складывается с набором ошибок , где каждый равен или , причем количество единиц в наборе ошибок не должно быть больше чем для однозначного декодирования.
[2].
Алгоритм дешифрования
Algorithm 2: r5_cpa_pke_decrypt |
---|
1. |
2. |
3. |
4. return |
Где . Таким образом получаем исходное сообщение [2].
Достоинства Round5
Округление позволяет избежать дополнительного создания случайных величин - шума. Генерация шума может быть уязвимостью для атак по побочным каналам. Таким образом, отсутствие необходимости создания шума является дополнительным преимуществом[1].
Так как секретные ключи в Round5 являются разреженными, троичными и сбалансированными, снижается вероятность ошибок при расшифровки и ускоряются вычисления. Последнему факту также помогает то, что ненулевые коэффициенты многочленов равны либо +1, либо -1, что подразумевает, что умножения могут быть выполнены с использованием только сложений и вычитаний[2].
Благодаря тому, что модули и являются степенями двойки, упрощается реализация функции округления, поскольку её можно реализовать, отбрасывая младшие биты. Аналогично, модульные вычисления могут быть реализованы путем отбрасывания старших битов[1].
Возможные атаки на Round5
- Dual Attack[5]
Примечания
- ↑ 1 2 3 4 5 Hayo Baan, Sauvik Bhattacharya, Scott Fluhrer, Oscar Garcia-Morchon, ThijsLaarhoven, Rachel Player, Ronald Rietman, Markku-Juhani O. Saarinen, LudoTolhuizen, Jos ́e Luis Torre-Arce, and Zhenfei Zhang. Round5:KEM and PKE based on (Ring) Learning with Rounding (англ.) // round5.org : article. — 2019. — 28 March. — P. 153.
- ↑ 1 2 3 4 5 6 7 Hayo Baan, Sauvik Bhattacharya, Scott Fluhrer, Oscar Garcia-Morchon, Thijs Laarhoven, Ronald Rietman, Markku-Juhani O. Saarinen, Ludo Tolhuizen, and Zhenfei Zhang. [https://eprint.iacr.org/2019/090.pdf Round5: Compact and Fast Post-Quantum Public-Key Encryption] (англ.) // https://round5.org/ : article. — 2019. — P. 20.
- ↑ Hayo Baan, Sauvik Bhattacharya, Oscar Garcia-Morchon, Ronald Rietman, Ludo Tolhuizen. Round2: KEM and PKE based on GLWR. — 2017. — № 1183.
- ↑ Markku-Juhani O. Saarinen. HILA5: On Reliability, Reconciliation, and Error Correction for Ring-LWE Encryption // Selected Areas in Cryptography – SAC 2017. — Cham: Springer International Publishing, 2017-12-23. — С. 192–212. — ISBN 978-3-319-72564-2, 978-3-319-72565-9.
- ↑ Martin R. Albrecht. On Dual Lattice Attacks Against Small-Secret LWE and Parameter Choices in HElib and SEAL // Lecture Notes in Computer Science. — Cham: Springer International Publishing, 2017. — С. 103–129. — ISBN 978-3-319-56613-9, 978-3-319-56614-6.
Ссылки