关于接口AES加密的问题
之前总是听说数据加密,我有点不理解,我理解的方式有2种
- 保存数据库前加密,取出后解密,接口是明文传输,这种模式我理解的是数据库就是泄露也不会看到明文数据
- 后端保存的时候加密,接口返回密文,然后前端保存密钥,前端解密数据。这种方式有个疑问,如果是h5端,密钥不是很容易暴漏出去吗,这样还有什么意义?还有现在基本都是HTTPS协议,这种模式更没有意义了吧?好像大多数所谓的接口加密都是这样的模式
关于 LearnKu
当然,直接在 JS 里写 AES 密钥也太简单了,复杂的可能用 RSA(例如 Steam 每小时都会替换 RSA 公钥给前端加密用户密码)甚至自己实现一套密钥交换。
不过我是没遇到需要这么高安全性的场景,一般业务通常能用好 HTTPS 就很好了,没必要为了提高一丁点的攻击成本而引入无谓的复杂性。