«Пожалуйста, не говорите мне использовать HTTPS, этого недостаточно для обеспечения передачи данных в клиент-серверном приложении»
Ну, извините, но это именно то, что я собираюсь сделать. SSL гораздо безопаснее, чем все, что вы можете сделать с помощью JavaScript. При использовании не-SSL вы отправляете открытый текст клиенту / серверу, а это означает, что если я вижу пакеты, человек, находящийся в середине атаки (например, вы в моей кофейне, мой беспроводной маршрутизатор), не так жесткий . Как бы вы сделали что-нибудь более безопасным в JavaScript?
Вы будете отправлять все ключи назад и вперед по текстовому соединению, сводя на нет точку безопасности, которую, по вашему мнению, это добавляет. Это похоже на добавление дополнительной засова к вашей входной двери, это делает ее более безопасной? Не совсем, потому что вы только что дали мне копию ключа:)
Является ли SSL идеальным? Нет , были найдены дыры, как и все остальное. Является ли способ более безопасным, чем любое шифрование, где ключи свободно видны, например, JavaScript через незашифрованное соединение? Да .
jCryption , который вы упоминаете, не является заменой SSL, вам не нужно верить мне, хотя, посмотрите на комментарии его автора , просто прокрутите вниз.
Это правда, что он уязвим для атак MITM, но я упомянул, что jCryption в его текущем состоянии не предлагает способа аутентификации и что он не заменяет SSL. jCryption должен быть простым в установке плагином, который предлагает базовый уровень безопасности.
Или прочитайте FAQ :
На мой взгляд, jCryption намного проще в установке и настройке. Хотя я не думаю, что jCryption является заменой SSL. Это может быть хорошим дополнением для вашей контактной формы или страницы входа, чтобы просто сделать его более безопасным. Если вам нужна высочайшая безопасность, вы должны использовать SSL, потому что jCryption не предлагает способа аутентификации.