JavaScript MD5 hashing vs Java Applet MD5 hashing?



最近我遇到了一个使用MD5哈希在登录时发布用户名和密码的项目。但我看到的有点奇怪,他们同时使用Applet和JavaScript进行哈希处理,就像如果Applet不存在,那么JavaScript就可以工作。

代码如下:

var username=document.getElementById('username');
var password=document.getElementById('password');
try { 
    encUsername = appletObject.encryptMessage(username);
    encPassword = appletObject.encryptMessage(password);
} catch (e) { 
    encUsername = hex_md5(username);
    encPassword = hex_md5(password);
}
//post encUsername & encPassword for validation
  1. 此方法仅用于JS和Applet的浏览器兼容性,还是用于MD5哈希的小程序相对于javascript的任何优势?
  2. 在这种情况下,小程序有什么安全优势吗?

在客户端对密码和用户名(?)进行哈希处理没有任何安全目的。在服务器上存储散列密码的最大好处是,如果密码数据库遭到破坏,则不会泄露实际的有效密码。但是,当密码在客户端进行哈希处理时,哈希实际上是一个密码 - 一个以明文形式存储在服务器上的密码,因此不提供任何安全优势。

关于使用小

程序,我不确定小程序的实现是什么,但它似乎并没有为使用内置函数提供任何额外的好处。

最新更新