нет ли готовых библиотек умеренного размера, реализующих такую схему: сервер выдаёт форму логина с двумя полями: 1. поле для пароля пользователя. 2. скрытое поле для шифрованого пароля. когда пользователь сабмитит форму, из первого поля выдирается пароль, шифруется с помощью открытого ключа (переданного вместе с формой) и записывается в скрытое поле. то есть, получается, что пользователи браузеров с поддержкой явы не передают пароль открытым текстом. интересует собственно реализация шифрования. если к ней есть пара на пхп - совсем замечательно. В-) не, конечно, в случае с паролем можно и хэш вычислить. но хотелось бы использовать ту же схему для передачи и другой конфиденциальной информации. в том числе и от сервера ко клиенту. с ssl связываться тоже не хочется ибо это дополнительные неудобства, которые недопустимы для опциональной фичи. то есть, нужно опционально шыфровать данные, но так, чтобы пользователю это было абсолютно прозрачно.
вот тут есть довольно неплохая реализация алгоритма AES на JavaScript. Только зачем такие ухищрения? Неужени нельзя ssl заюзать? Какие там "дополнительные неудобства"?
к сожалению AES - это симметричный шифр а при использовании ssl: * пользователю выдаётся алерт при входе на зашифрованную страницу и при уходе с неё. * адресная строка окрашивается в пугающий юзера жёлтый цвет * отключается какое-либо кэширование * не все браузеры поддерживают защищённое соединение. * необходимый 443-й порт может быть заблокирован фаерволом.
А прикупить нормальный сертификат? Не видел ни одного юзера, пугающегося желтой адресной строки. И обычно там еще успокаивающий замочек появляется... Вам ведь шифрование нужно только на этапе аутентификации, так? Что мешает после логина послать юзера по обычному соединению? Хм, например? Opera mini? С этим согласен. По поводу ассиметричных алгоритмов на JS - я таких реализаций не встречал, да и вряд ли они есть в OpenSource, бо ненужно никому. Но всегда можно написать самому, благо спецификаций достаточно
Что то не понял. Танцующий меч военные тайны чтоли распространять собрался? Нафига такое мощное шифрование-то?
1. нормальный сертификат убирает сообщение "доверяете ли вы этому сертификату?". сообщения "вы вошли на защищённую страницу" и "вы вышли из защищённой страницы" никуда не денутся. 2. пользователи подсознательно воспринимают вдруг появляющийся кричащий цвет, как знак опасности. 3. нет. при передаче конфиденциальной информации. то есть в любой момент общения с сайтом. возможно даже аяксом. 4. например, мобильный ишак в 2003-ей винде. 5. самому писать долго и муторно. именно поэтому я и спрашиваю, нет ли готовых реализаций, чтобы без лишнего геморроя сделать всё шоколадно пс: танцор с мечами танцующий меч - это dancing sword
sword dancer - потдерживаю ... и как народ понять не может!!! купи сертификат! ага за свои!! ведь заказчика убедить что это супер, и зачем дополнительные расходы .... - очень сложно!!!!
Не, народ, ну если охота сделать совсем хорошо, то надо быть готовым к финансовым вложениям. В случае с заказчиком, если не уяснил - это уже его проблемы (ну, или плохо объясняли). В любом случае, чистый ssl будет на порядок надежнее самопальных крипто-библиотек, хотя бы потому, что работает на транспортном уровне. Но если уж очень хочется, то можно спросить в гугле. Мне вот на первой же странице попалась довольно интересная ссылока. Думаю, после доработки напильником эта вещь вполне будет удовлетворять требованиям тов. sword dancer З.Ы. Firefox опять отличился В нем есть встроенный объект crypto, можно попробовать с ним поиграться.
я просто высказался по принципиальному вопросу ! собственно когда мне подобное было нужно .. то тока для паролей .. и мд5 мне подошел .. чем и располагаю ! а вот к ссл - отношусь как к недружественной технологии ...и если админки ею шифровать (и другие супер секретный данные ) я еще пойду .. то для повышения уровня безопасности отдельных форм - нет! .. например вариант со скачиванием даунлоад менеджерами из личного кабинета !!! какой уж тут ССЛ ( было 2 года назад - щя может эти менеджеры подросли ?) собственно простите за почти офтоп!