简单的异或消息(Javascript/Tcl)?
我需要在通过 HTTP GET/POST 发送之前在客户端对用户名/密码进行加扰。服务器将在检查数据库之前使用 Tcl 对其进行解码。
目前我正在考虑在客户端使用 JavaScript。 Java Applet 也可以。
有什么方法可以使用简单异或或任何其他方法轻松实现它? (示例将不胜感激)
我在 C/Python/.NET/Java 中找到了一些示例...但在 JavaScript 和 Tcl 中没有找到。
遗憾的是,SSL 不是一个可用的选项。
I need the username/password to be scrambled at the client-side before sending it over via HTTP GET/POST. And the server will decode it with Tcl, before the checks against database.
Currently I'm thinking about using JavaScript for the client-side. Java Applet will also do.
Is there any way, that I can easily achieve it, using Simple XOR or any other methods? (Examples would be much appreciated)
I've found the few samples in C/Python/.NET/Java... But not in JavaScript and Tcl.
SSL is not an option to use, sadly.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果 ssl 不是一个选项,那么我建议使用以下方案,许多站点都使用该方案来代替 SSL:
以下是关于如何使用 MD5 计算哈希值的建议:
如何使用它:
If ssl is not an option, then I suggest the following scheme, which many sites use instead of SSL:
Here is a suggestion on how to calculate the hash using MD5:
How to use it:
superNobody,
您应该考虑在数据库中存储纯文本密码的替代方案。请参阅:
您应该考虑在 Javascript 中进行 SHA1 哈希,而不是在 Javascript 中对密码进行编码,然后在 Tcl 中解码密码以与数据库进行比较,并将 SHA1 哈希值存储在数据库中。
javascript 中有几个可用的 SHA1 哈希函数示例(仅 Google 'sha1 javascript')。 tcllib Tcl 库具有 SHA1 支持。
正如 HaiVu 提到的,您还应该考虑散列/存储不仅仅是直接的密码散列,而是使用 SHA1(用户名 + 网站名 + 密码)之类的东西。您可以在客户端用 Javascript 计算此值,并将其存储在数据库中。
superNobody,
You should consider alternatives to storing plain-text passwords in the database. See:
Instead of encoding the password in Javascript, then decoding the password in Tcl to compare with the database, you should consider SHA1 hashing in Javascript, and storing SHA1 hashed values in the database.
There are several available examples of a SHA1 hash function in javascript (just Google 'sha1 javascript'). The tcllib Tcl library has SHA1 support.
As HaiVu mentioned, you should also consider hashing / storing more than just a straight password hash, but instead use something like SHA1( username + websitename + password ). You can calculate this on the client in Javascript, and store it in the db.