JS 代码安全保护
最初原因是有防爬的需求,因此需要对于 web 应用进行安全防护,从最初的数据对称加密(aes) ,到字体混淆(fontmin) ,再到后面的非对称加密(rsa + sm4) ,以及 js 代码混淆(javascript-obfuscator) 。做的越多越是觉得前端所能做其实很有限,以上种种都避不开一个问题,js 最终是要在浏览器运行的并且界面也要响应用户的交互行为的,甚至爬虫不用关心你的底层逻辑,直接执行你的代码即可拿到最终数据, 这个结论无疑是令人沮丧的,但是转念一想不能因为锁能被撬开,就连门都不关了。防爬,准确来说攻防相关是一个循环往复的过程,只能不断提升攻击者的攻破的成本,拦截掉一大部分,非专业人士的爬取。那我们先抛开整个风控系统不谈,思考一下前端还能做些什么。
