Как зашифровать данные постов при использовании ajax и JQuery? - PullRequest
3 голосов
/ 17 апреля 2009

На стороне сервера мы можем аутентифицировать пользователя, но я хочу защитить данные, когда ajax или JQuery отправляют данные. Как и на стороне клиента, кто-то может видеть параметры любого вызова только в зашифрованном формате. Так как мне это сделать. Я видел этот сценарий на этом сайте.

EDIT

мы можем игнорировать шифрование данных, когда они поступают с сервера. Но по крайней мере при отправке времени это требуется. см. пример на этом сайте в настройках , устанавливающих флажки для уведомлений. Просматривать запрос можно с помощью надстройки Firebug в Mozilla Firefox.

Ответы [ 3 ]

6 голосов
/ 17 апреля 2009

Вы не можете.

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

Вы можете делать SSL-запросы для шифрования соединения с сервером, скрывая данные от третьих лиц.

3 голосов
/ 17 апреля 2009

Вы можете зашифровать данные с помощью некоторых библиотек, таких как http://home.versatel.nl/MAvanEverdingen/Code/, но, как было упомянуто выше, они могут быть подвергнуты обратному анализу кем-то, кто использует отладчик для просмотра ключа.

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

javascript затем расшифровывает симметричный ключ с помощью открытого ключа.

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

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

Итак, да, вы можете сделать это, но это может быть переработано.

2 голосов
/ 17 апреля 2009

Если ваша проблема заключается в шифровании данных, отправленных пользователем, используйте SSL на сервере, чтобы соединения с ним были зашифрованы. Ваш URL AJAX будет https://myserver.com/Ajax/Endpoint или что-то еще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...