前端实现后端返回数据解密,密文传参及敏感字段加密。
方案:
1、获取公钥一及密钥二(公钥和密钥不是一对,不然就可以自己加解密)
2、选择加密算法(本人用的是:RSA)
流程:
遇到的问题:
1、加解密字符长度(以往文章有写过RSA超长字符加解密)
2、JavaScript RSA算法框架不能实现公钥加密公钥解密
3、一次性发送多次请求算法延迟(会导致同时发送出去的请求数据一样,通过异步加解密解决)
4、后端或前端会出现解密数据失败(目前通过重新加载本接口解决)
缺点:
1、列表数据量大影响前端性能(数据量大可能会要1-3秒的时间来解密,目前通过加遮罩层解决)
2、生产版本遇到BUG比较难找问题
优点:
1、数据不容易被盗取及抓包(针对数据比较重要的企业)
2、保护用户隐私