Рейтинг:4

Параметры билинейной пары эллиптической кривой для 80-битного уровня безопасности

флаг us

Я читаю статью, основанную на группах билинейных пар эллиптических кривых. Автор определил размер закрытого ключа, открытого ключа и т. д. с точки зрения $|\mathbb{G}_1|, |\mathbb{G}_2|$ и $|\mathbb{G}_T|$.

Для 80-битного уровня безопасности, каковы размеры $|\mathbb{G}_1|, |\mathbb{G}_2|$ и $|\mathbb{G}_T|$ в битах? Я хочу рассчитать реальный размер ключей.

Спасибо.

Aman Grewal avatar
флаг gb
@DannyNiu, это неправильно. Существуют более сильные атаки на целевую группу ($\mathbb{G}_T$) с использованием сита числового поля, поэтому вам нужно использовать кривую большего размера. Размеры $\mathbb{G}_2$ и $\mathbb{G}_T$ могут различаться, но обычно (iirc) $\mathbb{G}_2$ имеет компактное представление, которое занимает всего вдвое больше битов, чем элемент. в $\mathbb{G}_1$ и $\mathbb{G}_T$ займет в 12 раз больше битов, чем элемент в $\mathbb{G}_1$.
DannyNiu avatar
флаг vu
Мои знания о пейринге ограничены, и я с удовольствием узнаю об этом больше. Подумайте о том, чтобы опубликовать полный ответ.
Shweta Aggrawal avatar
флаг us
@AmanGrewal, не могли бы вы опубликовать полный ответ или предоставить ссылку на утверждение о том, что G2 имеет компактное представление, которое занимает всего в два раза больше битов, чем элемент в G1, а GT будет занимать в 12 раз больше битов, чем элемент в G1. Это было бы слишком любезно с твоей стороны,
Aman Grewal avatar
флаг gb
Мои познания тоже ограничены, к сожалению. Мне нужно было бы посмотреть, какие размеры подходят для 80-битной безопасности. 2x и 12x для $\mathbb{G}_2$ и $\mathbb{G}_T$ не являются жесткими быстрыми правилами.Существуют и другие допустимые значения, но это общие значения, которые хорошо уравновешивают атаки во всех трех группах. Я найду ссылки и опубликую их в ближайшее время.
Рейтинг:5
флаг gb

Размер элемента

При выборе параметров эллиптической кривой существует большая свобода. Что касается размера элементов, стоит отметить два основных параметра: $р$, а степень вложения, $к$.

Если $\mathbb{G}_1$ представляет собой эллиптическую кривую над $F_p$,1 тогда $\mathbb{G}_2$ представляет собой эллиптическую кривую над $F_{p^k}$, и $\mathbb{G}_T$ является подгруппой $F_{p^k}$.

Итак, элементы $\mathbb{G}_2$ и $\mathbb{G}_T$ требовать $к$ раз больше объема памяти как элемента $\mathbb{G}_1$.

Однако все кривые допускают компактное представление $\mathbb{G}_2$, используя скручивание кривой, так что элемент $\mathbb{G}_2$ можно представить точкой на $E'\влево(F_{p^\frac{k}{d}}\вправо)$, куда $д$ равно 2, 3, 4 или 6. Все кривые поддерживают $д=2$. Кривые, используемые для криптографических операций, будут поддерживать большие $д$ потому что стоимость преобразования между представлениями дешева.

Размер ключа и размер подписи

Подписи BLS основаны на функции сопряжения $e: \mathbb{G}_1 \times \mathbb{G}_2 \стрелка вправо \mathbb{G}_T$.

Позволять $G_1$ быть генератором для $\mathbb{G}_1$ и $G_2$ генератор для $\mathbb{G}_2$.

Закрытый ключ, $х$, это просто целое число между $0$ и $|\mathbb{G}_1|$, что равно $|\mathbb{G}_2|$. Открытый ключ, $Х$, является либо элементом $\mathbb{G}_1$ или же $\mathbb{G}_2$. Чтобы подписать сообщение, сообщение хэшируется в элемент другой группы, умножается на закрытый ключ и сопоставляется с генератором, т.е. $\sigma = e(G_1, xH(m))$. Подпись, $\сигма$, является элементом в $\mathbb{G}_T$. Верификатор вычисляет пару хэша сообщения с открытым ключом как $е(Х, Н(м))$. Если это равно $\сигма$, то подпись действительна.

В качестве альтернативы объем передаваемых данных может быть уменьшен, а объем работы, выполняемой подписывающей стороной, может быть уменьшен за счет того, что проверяющая сторона будет выполнять больше работы. Вместо отправки $\сигма$, подписывающий просто отправляет $хН(м)$, и верификатор вычисляет обе пары.

Выбор открытого ключа

Открытый ключ может находиться либо в $\mathbb{G}_1$ или же $\mathbb{G}_2$. Элементы в $\mathbb{G}_1$ меньше. Операции в $\mathbb{G}_2$ стоят дороже.

Примеры

Возьми BLS12-3812, который часто упоминается как имеющий 128-битную безопасность. $р$ составляет 381 бит. Степень вложения, $к$, равно 12, что делает $p^k$ иметь 4569 бит. Элемент в $\mathbb{G}_1$ для представления требуется 382 бита (381 бит для 1 координаты плюс 1 бит для знака). Элемент в $\mathbb{G}_2$ для представления требуется 762 бита, потому что это компактное представление. Элемент в $\mathbb{G}_T$ для его представления требуется 4596 бит.

С той же страницы2, MNT4-298 имеет примерно 77-битную безопасность. Для этой кривой элемент в $\mathbb{G}_1$ потребуется 299 бит; в $\mathbb{G}_T$, 1192 бит.


1 Технически, $\mathbb{G}_1$ также определяется над $F_{p^k}$, но с тех пор $E(F_p)$ является подгруппой $E(F_{p^k})$, это не совсем важно.

2 Эти цифры исходят из https://members.loria.fr/AGuillevic/pairing-friendly-curves/. Ниже приведены пояснения к названиям некоторых столбцов.

Имена столбцов

$к$ это степень вложения.
$Д$ комплексный дискриминант умножения (я думаю).
$u$ сложнее. Я не совсем уверен, что это правильно. Каждое из этих семейств кривых (например, BLS или BN) относится $р$, $г$, и другие в "начальный" параметр, $u$.
$р$ – размер характеристики поля и размер элемента в $\mathbb{G}_1$.
$г$ размер порядка кривой.
$p^\frac{k}{d}$ размер компактного представления элемента в $\mathbb{G}_2$
$p^k$ это размер элемента в $\mathbb{G}_T$.

fgrieu avatar
флаг ng
Этот отличный ответ был бы еще полезнее, если бы он объяснял, что такое $r$; и что определяет размер подписи, открытого ключа и (естественного) закрытого ключа в эталонном приложении: подпись BLS.
Aman Grewal avatar
флаг gb
Я могу добавить размеры подписи и другие вещи. Что вы подразумеваете под $r$?
fgrieu avatar
флаг ng
Если бы я знал! Я имею в виду вещь с размером в битах справа от $p$ во многих таблицах [вашей ссылки] (https://members.loria.fr/AGuillevic/pairing-friendly-curves/).
Aman Grewal avatar
флаг gb
Я понимаю. Я почти уверен, что это порядок кривой, но я перепроверю.
Aman Grewal avatar
флаг gb
Добавлено больше информации. Я все еще хочу перепроверить, что такое $D$ и $u$. И я хочу добавить стоимость/выгоды того, в какой группе находится открытый ключ.
Shweta Aggrawal avatar
флаг us
Применяются ли эти правила, когда мы берем пары типа $G_1\times G_1 \rightarrow G_1$
Aman Grewal avatar
флаг gb
@ShwetaAggrawal, нет, это для пар типа 3. Для пар типа 1 ($\mathbb{G}_1\times\mathbb{G}_1 \to \mathbb{G}_T$) требуются суперсингулярные кривые, поэтому элемент в $\mathbb{G}_T$ в два раза больше, чем элемент в $\mathbb{G}_1$. Я не знаю, какие размеры ключей необходимы для обеспечения безопасности.
Shweta Aggrawal avatar
флаг us
@AmanGrewal Спасибо.Было бы слишком любезно с вашей стороны, если бы вы могли привести источник того факта, что размер элемента в целевой группе в два раза больше, чем элемент в G1.
Aman Grewal avatar
флаг gb
Пейринги для начинающих, Крейг Костелло. https://static1.squarespace.com/static/5fdbb09f31d71c1227082339/t/5ff394720493bd28278889c6/1609798774687/PairingsForBeginners.pdf Разделы 4.2 и 6.2 наиболее важны для этого последнего утверждения.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.