1.为什么要对明文密码做两次md5然后再入库?
第一次md5是为了防止明文密码直接在网络上进行传输,第二次md5的目的是:假如数据库本身被泄露,那么可以增加被破解的难度,因为就算还原出来也只是一个md5以后的串,而不是用户的原始密码本身。
2.两次MD5就一定安全了吗?
不是的。如果想安全,目前通用的做法是使用https,如果想再安全一点,那就只能使用浏览器的插件比如ActiveX来实现了,比如网银的那些安全控件,控件对数据做加密,因为控件本身破解的难度很高,因此相对来说是非常安全的,但是仅仅依靠js是无法做法数据安全的,因为js本身都是明文的。