Рейтинг:1

Генерация симметричного ключа для ECDH

флаг st

Пытаемся реализовать механизм односторонней передачи зашифрованных строковых значений с помощью ECC.

  • Предположим, что существует фиксированный секретный недоступный закрытый ключ FPK, а открытый ключ FP для него доступен приложению.
  • Когда пользователь вводит значение, генерируется новый закрытый ключ, а затем создается общий ключ путем обмена им с FP. Результирующий ключ обмена каждый раз разный.
  • Ключ симметричного шифрования DSK получается из общего ключа с использованием KDF (Scrypt или HKDF).

Возможный вариант - следовать гибридной схеме ECDH, как описано здесь

введите описание изображения здесь

Есть ли какое-либо преимущество в создании здесь дополнительного случайного симметричного ключа RK для шифрования значения, а затем шифрования RK с помощью DSK (и оплаты дополнительных накладных расходов на передачу), или достаточно безопасно просто использовать DSK напрямую для симметричного шифрования значения?

kelalaka avatar
флаг in
Отвечает ли это на ваш вопрос? [Хеширование точек важно для безопасности композиции ECDH с другой криптосистемой.](https://crypto.stackexchange.com/questions/30367/ecdh-security-when-no-kdf-is-used). Зачем вам генерировать новую случайность, если у вас уже была случайность из ECDH? Тогда какова цель ECDH?
флаг st
Отредактировал вопрос для ясности, KDF используется в обоих случаях.
Рейтинг:1
флаг es

Изображение, которое вы включили в свой ответ (которое также взято с предоставленной вами веб-страницы), сбивает с толку и отличается от «схемы гибридного шифрования на основе ECC», которая затем описана на этой веб-странице.

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

Однако то, что описано в тексте на веб-странице как «схема гибридного шифрования на основе ECC», просто создает пару эфемерных ключей шифрования, выполняет обмен ECDH, а затем извлекает симметричный ключ шифрования из общего секрета ECDH.

Ваш вопрос заключается в том, безопасен ли последний метод. Да, это безопасно, и их реализация мне кажется надежной.

Рейтинг:0
флаг va

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

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

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