JavaScript MD5哈希与Java Applet MD5哈希?

时间:2012-09-19 05:48:33

标签: java javascript security applet md5

最近我遇到了一个使用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的浏览器兼容性,还是applet over javascript用于MD5哈希的任何优势?
  2. 在这种情况下applet是否有任何安全优势?

1 个答案:

答案 0 :(得分:2)

在客户端散列密码和用户名(?)不起作用。在服务器上存储散列密码的最大好处是,如果密码数据库被泄露,则不会泄漏实际的有效密码。但是,当密码在客户端进行哈希处理时,哈希实际上是一个密码 - 一个密码,存储在服务器上的clear中,因此没有任何安全优势。

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