Рейтинг:1

Шифрование с аутентификацией с открытым ключом: crypto_box

флаг pk

я читал crypto_box шифрование и есть вопрос. В деталях алгоритма используется обмен ключами: X25519. Однако я не понимаю, почему им нужно использовать алгоритм обмена ключами.

Итак, мой вопрос: где и зачем им нужен алгоритм обмена ключами?

Рейтинг:2
флаг in

где алгоритм обмена ключами?

crypto_box просто crypto_box_curve25519xsalsa20poly1305 и состоит из двух частей;

Часть 1: пакетно-независимые предварительные вычисления;

  • Партия $А$ имеет 32-байтовый секретный ключ $sk_A$ и открытый ключ $pk_A$ куда $pk_A = [sk_A]G$

  • Партия $В$ имеет 32-байтовый секретный ключ $sk_B$ и открытый ключ $pk_B$ куда $pk_B = [sk_B]G$ и $G$ является базовой точкой X25519.

    здесь $[а]G$ скалярное умножение и означает сложение $G$ самому себе $а$-раз.

  • Партия $А$ использует $sk_A$ и $pk_B$ получить ключ с помощью X25519;

    $$k = Хэш(x([sk_A]pk_B))$$ Обратите внимание, что $pk_B$ является точкой на кривой, а X25519 использует только $х$ координаты точек для ECDH (отмечены $х(\кдот)$.

Как видите, однажды $А$ можно получить открытый ключ $В$ ключ $к$ можно построить сразу и аналогично для $В$, тоже. Это обмен ключами Диффи-Хеллмана на эллиптических кривых (ECDH).

Часть 2: вычисление для каждого пакета

  • $А$ выбирает 24-байтовый одноразовый номер $n$ (должен быть уникальным) и никогда не должен повторяться при общении с $В$. 24-байтовый одноразовый номер безопасно генерировать случайным образом.
  • $А$ развернуть ключ $к$ с одноразовым номером в ключевой поток с хсальса20
  • Сообщение шифруется потоком (просто x-or), где зарезервированы первые 32 байта.
  • Первые 32 байта используются для аутентификации зашифрованного сообщения с Поли1305.

зачем им алгоритм обмена ключами

Если у них нет механизма обмена ключами, им нужен симметричный механизм распределения ключей это было бременем симметричного шифрования до того, как было изобретено шифрование с открытым ключом.

Публичные ключи требуют проверки. Иногда они использовались как TOFU (доверие при первом использовании), а затем проверялись с помощью некоторых механизмов, таких как Signal. В некоторых более безопасных соединениях сначала проверьте открытые ключи.

Подробнее читайте

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

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