前端安全】从需求分析开始,细化前端加密和验证签名的实际操作--踩坑盘点
最编程
2024-07-14 10:18:55
...
-
RSA 加密后的 密文需要使用 encodeURIComponent 转码后传给后端,因为密文中会存在 + 号之类的特殊符号,在接口传输过程中容易丢失; -
RSA 加密所使用的依赖 jsencrypt 因为包含 window 对象,我们在小程序中使用,需要进行 兼容性处理; -
刚开始选择提供 SHA256 算法的依赖包是最常用的 crypto-js,后面在小程序上使用的时候, 包体积直接爆掉,crypto-js 的体积为 434KB,而现在我们用的 hash.js 的体积只有 41.7KB,其实中间我还尝试过使用通过 js-sha256 来生成验签,虽然体积也比较小,但是经常会 出现验签后后端无法匹配上的问题,所以只能弃用。
下一篇: 力扣1249.移除无效的括号