前端后端都是应该要加密的,前端可以发送一个hidden域的加密后的password到后台,后台再对这段数据进行再次加密的处理,两端的加密算法不一样,由双方自己掌握,但是明文密码按规矩是不可以直接传输的。
不要传输明文密码。 实际上你传过来到后台的数据。在我后台看来就是密码,我后台会对这段字符再次进行加密,数据库中会储存我加密后的密码值。校验的时候,从数据库取出加密后的密码,并获取前端传输过来的字符串,用相应的算法对两者进行比对就可以了。
你有没有发现MD5 加密之后的长度是一样的,不管原本的信息有多长?这是因为 MD5 是摘要算法,有点类似于从你要加密的信息中选取一部分信息出来加密,所以即使你得到了 MD5 加密之后的结果,也很难从一部分信息中反推出原本的完整信息。另外,MD5 也是存在被破解的情况,那就是最传统的破解方法,从一堆数据中一个个去试。所以, MD5 可以设置一个盐值,类似于干扰信息,可以降低被破解的概率。
相对来还是叫安全的,如果你说的是截获摘要,那么请问,截获一次摘要,截获者是几乎不可能破译摘要的内容,那么密码就无法修改,你下次登录就会出现异地登录的提示,这样你就该修改密码了,网上有人提供MD5的解密网站,说是解密,其实就是大量数据信息对比,你输个123456的MD值获取能破解,再复杂一点点就破解不了了
MD5是摘要算法,类似有损压缩一样,不能复原的,因此不能解密。
网上的使用一般是在用户点击提交的时候用js,或Java 加密后的密码存到数据库中,这时候别人如果打开数据库看也不知道你原来的密码是什么。但是你登录的时候输入密码后再重新用MD5摘要加密,看看出来的结果与数据库中是否一致,如果一致登录成功,不一致证明你输入错误了。
所以用MD5存密码,除了你谁都不知道密码是什么,但是如果你忘了也就不能去数据库看了,只能改密码,而不能找回。
来自百度 ,谢谢采纳
将密码加密后存储,增加安全性