Кривая448
Curve448 — это кривая Эдварда, определенная над простым числом Солинаса. $p = 2^{448} – 2^{224} – 1$ с уравнением $$x^2+y^2 = 1-39081x^2y^2$$
Базовая точка
Базовая точка $G$ of Curve448 имеет простой порядок как Curve25519. Он имеет кофактор $ч=4$ это значит, что $$h = \dfrac{|\#E|}{ord(G)}$$ Получатель чего-то $G$ является $$\small ord(G) = 2^{446} - 13818066809895115352007386748515426880336692474882178609894547503885$$
ECDH
Теперь обратимся к ECDH, в котором у Алисы есть закрытый ключ (целое число) $k_A$ и открытый ключ $[k_A]G$ (точка на кривой) и у Боба есть закрытый ключ $k_B$ и открытый ключ $[k_B]G$.
Что происходит, когда Алиса и Боб обмениваются открытыми ключами (не считая человека посередине)? Нижеприведенное;
$$[k_A k_B]G$$
Таким образом, если базовая точка верна, любые 56-байтовые значения из действительного открытого ключа. Нет необходимости в проверке, поскольку у нас есть
$$[k_A]G = [k_A \bmod \operatorname{ord}(G)]G$$
$$[k_A k_B]G = [k_A k_B \bmod \operatorname{ord}(G)]G$$
Мы не будем рассматривать никогда не случившееся событие, когда у двух пользователей будет один и тот же закрытый ключ.
Атака малой подгруппы
Как насчет того, чтобы Боб выполнил небольшую атаку подгруппы (Активные атаки Лима-Ли небольшими подгруппами)?
В атаке небольшой подгруппы атакующий Боб выбирает небольшой порядок $P$ как общедоступная точка, где дискретный логарифм легко.Во время протокола законный пользователь Алиса раскроет $[k_A]P$ к нападающему. Теперь, сколько информации может узнать злоумышленник о $k_A$ от $[K_A]P$?
- Ответ дан в виде информации, раскрытой $[K_A]P$ самое большее $\lceil log_2 ч\rceil$ биты.
Поскольку кофактор равен 4, можно раскрыть не более двух битов закрытого ключа. Если вы опасаетесь, что потеря 2 бит из 224 опасна, проверьте, что $P$ нет порядка 2 или 4, проверив $[4]P \overset{?}{=}\mathcal{O}$
Твист Безопасность
Изюминка Curve448 $4$ в качестве кофактора, поэтому он безопасный поворот, тоже.
Примечание: в этой статье Оптимизированные архитектуры для криптографии на основе эллиптических кривых по сравнению с Curve448 упомянул, что
Кроме того, открытые ключи Curve448 достаточно короткие и не требуют проверки, если результирующий общий секрет не равен нулю.
и Майк Гамбург знал об этой статье до публикации, так как в Благодарности
Мы также благодарим Майка Гамбурга за его конструктивные комментарии.