前言:
突然发现自己没有做过这类的加密传输,匆匆恶补一下基本知识,这门学科真是复杂,做个笔记纯作了解
吐槽:拿babel编译一遍,拿webpack打包一遍,再拿uglify压缩一遍,再拿eval加密一遍(https://www.zhihu.com/question/47047191)
分析一下密码泄漏威胁情况和解决方案
情况一:密码保存在前端泄漏
解决方案:不要保存在前端
情况二:密码输入时泄漏
解决方案:输入密码时,以***代替
情况三:传输到后端泄漏
解决方案:SSL、HTTPS
情况四:服务器泄漏
解决方案:VPN内网防范+给数据库里每一个密码配不同的盐
加密总结:
前端加密:
①输入密码时以*代替,如
②给明文密码加盐加随机码,随机码带有时间戳,这提高安全性而且成本低,好像有些复杂还是hash算法js加密,不懂代码的无法根据前端编写的js函数反破译
③HTTPS传输;
后端加密:加密力度必须要够强
前端JS加密一般是MD5加密
前端很有必要的,通过提高应用算法门槛,破解时间来保护密码.
加密安全引用文章
看不太懂,这就是专业门槛吧
https://www.zhihu.com/question/25539382