对称加密
1. 含义
client 用来加密的 password 和 server 用来解密的 password 相同,所以叫对称加密。
2. 优缺点
- 优点
加密简单,效率高。
- 缺点
不够安全,如果 client 的 password 被盗窃,就没有安全性了,例如 APP 中使用对称加密,APP 是可以被反编译的,就能拿到 password 了。
所以,非对称加密适合在后端服务接口调用时使用,不适合在对外暴露的客户端中使用。
常用的加密方式有 DES、AES。
非对称加密
1. 含义
client 用来加密的 password 和 server 用来解密的 password 不同,所以叫非对称加密。分为一对密钥(公钥 public key、私钥 private key 的组合),使用公钥加密,必须使用私钥解密。
使用步骤:
- 开发人员生成一对密钥,server保存私钥,公钥给client。
- Client 保存公钥,使用公钥加密。
- Server 保存私钥,使用私钥解密。
2. 优缺点
- 优点
安全性极高。
- 缺点
加密复杂度高,效率低。
所以,非对称加密适合使用在 APP 中,还有对安全性要求极高的支付、金融场景。
常用的加密方式主要是 RSA。