通过 jQuery 使用 Web 服务器验证 HTML 表单
我正在构建一个简单的网络应用程序。 我无法使用 SSL 来保护与客户端的通信。
现在的流程是:
用户第一次注册:
1) 用户选择用户和密码(HTML 表单)
2) 密码通过哈希函数和密钥进行哈希处理(带连接盐)(jQuery)
3)哈希结果被发送到服务器并存储在数据库
在任何登录中:
1)在欢迎页面 - 密码正在被哈希,结果是被发送到服务器
并被计算与来自数据库的哈希结果。 2) 如果密码正确,则会将身份验证令牌发送到客户端并 存储在 cookie 中。
3) 在每个页面中,令牌都会发送到服务器并进行验证。
** 我的问题是: **
1) 我的数据加密方式是好是坏(与 SSL 相比)?
2) 如何防止 XSS(跨站点脚本)——从用户 cookie 中提取令牌并使用 to 从服务器检索数据而不提供用户和密码?
I am building a simple web application.
I don't have the ability of using SSL to secure the communication with the client.
Right now the flow is:
First time the user is registering:
1) The user is choosing a user and a password (HTML form)
2) The password is being hashed by a hash function and a key (with concatenated salt) (jQuery)
3) The hash result is being sent to the server and stored in the DB
In any login:
1) In the welcome page - The password is being hashed and the result is being sent to the server
and being compered with the hash result from the the DB.
2) If the password is correct' a authentication token is being sent to the client and being
stored in a cookie.
3) In every page the token is sent to the server and being validated.
** My Questions are: **
1) Is my way of encrypting the data is good or is it lack (comparing it to SSL)?
2) How can I prevent XSS (cross site scripting) - steeling the token from the user cookie and using to to retrieve data from the server without supplying user and password?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不会。散列密码实际上是真实密码,并且以明文形式发送。
使用保护您的站点免受 XSS 侵害的常用机制,即清理/转义您输出的所有数据,以便脚本无法从客户端注入。
No. The hashed password is effectively the real password and is sent in the clear.
With the usual mechanisms for protecting your site against XSS, i.e. sanitising / escaping all the data you output so scripts can't be injected from clients.