Асимметричное шифрование сообщений? Добрый день. Сейчас делаю небольшой проект, в котором пользователи общаются через WebRTC. Нужно добавить шифрование непосредственно сообщений. Для шифрования решил использовать AES, а для обмена ключами алгоритм Диффи-Хеллмана, но возникла проблема. Если пользователь задает слишком большой приватный ключ (более 3 цифр), то js уже не может его посчитать. А иначе мастер-ключ получается слишком простой. Как по вашему лучше организовать асимметричное шифрование? Читал про RSA, но, как я понимаю, я не смогу в браузере одновременно сгенерировать приватный и публичный ключи, а проект требует максимальной простоты для пользователя (т.е. без открываний терминала и генерирования ключей через такие страшные консольные команды). Заранее спасибо.
Для решения этой проблемы вы можете использовать библиотеки, которые предоставляют готовые решения для асимметричного шифрования в браузере, например, OpenPGP.js или SJCL. Эти библиотеки позволяют генерировать ключи, шифровать и дешифровать сообщения без необходимости вводить длинные приватные ключи.
OpenPGP.js, например, позволяет генерировать ключи, шифровать сообщения с помощью открытого ключа получателя и дешифровать их с помощью своего приватного ключа. SJCL также обладает похожими функциональными возможностями.
Таким образом, вы можете использовать библиотеки, которые предоставляют удобные методы для асимметричного шифрования в браузере, чтобы решить вашу проблему с простотой генерации и использования ключей.
Для решения этой проблемы вы можете использовать библиотеки, которые предоставляют готовые решения для асимметричного шифрования в браузере, например, OpenPGP.js или SJCL. Эти библиотеки позволяют генерировать ключи, шифровать и дешифровать сообщения без необходимости вводить длинные приватные ключи.
OpenPGP.js, например, позволяет генерировать ключи, шифровать сообщения с помощью открытого ключа получателя и дешифровать их с помощью своего приватного ключа. SJCL также обладает похожими функциональными возможностями.
Таким образом, вы можете использовать библиотеки, которые предоставляют удобные методы для асимметричного шифрования в браузере, чтобы решить вашу проблему с простотой генерации и использования ключей.