我感觉是题主误解了加密的原因,不管什么摘要加密算法,算法都是是固定的,不存在说谁家独一份,因为没意义,JS加密只能放在前端是明文的。 后台拿到加密后的密码,是反解不出来的,因为是摘要加密,而不是对称加密。服务端在用户注册的时候就保存了一份加密后的密码,两相对比,就知道是否是正确的。这样即使DB被泄露,至少还有保证没有泄露真实密码,一般为了添加安全性,会额外在密文的基础上加盐再做一次加密,这是题外话。 加密的目的是为了防止网络劫持。(并不能防止木马攻击。)在提交之前做好加密,在网络中传输的就是密文,这样即使有人劫获账户密码,但是并不能拿到真实的密码。 你可能会疑惑,反正拿到了加密后的密码,它只要模拟个POST请求就可以了伪装用户了。首先,如果你的网络被劫持,你做什么事都不存在安全一说,所以不要胡乱链接免费WIFI其次,加密的原因是不让你的账户密码被泄露,因为劫持者可以拿着你的用户密码去碰撞其他资源,绝大多数人都是同一套账户密码。当然即使只能拿到加密后的密码,也可以采用HASH碰撞来逆推密码,不过这个成本就高了,而且不同的网站会有不同的加密算法,逆推不一定有意义。
我感觉是题主误解了加密的原因,不管什么摘要加密算法,算法都是是固定的,不存在说谁家独一份,因为没意义,JS加密只能放在前端是明文的。
后台拿到加密后的密码,是反解不出来的,因为是摘要加密,而不是对称加密。服务端在用户注册的时候就保存了一份加密后的密码,两相对比,就知道是否是正确的。这样即使DB被泄露,至少还有保证没有泄露真实密码,一般为了添加安全性,会额外在密文的基础上加盐再做一次加密,这是题外话。
加密的目的是为了防止网络劫持。(并不能防止木马攻击。)
在提交之前做好加密,在网络中传输的就是密文,这样即使有人劫获账户密码,但是并不能拿到真实的密码。
你可能会疑惑,反正拿到了加密后的密码,它只要模拟个POST请求就可以了伪装用户了。
首先,如果你的网络被劫持,你做什么事都不存在安全一说,所以不要胡乱链接免费WIFI
其次,加密的原因是不让你的账户密码被泄露,因为劫持者可以拿着你的用户密码去碰撞其他资源,绝大多数人都是同一套账户密码。当然即使只能拿到加密后的密码,也可以采用HASH碰撞来逆推密码,不过这个成本就高了,而且不同的网站会有不同的加密算法,逆推不一定有意义。