非对称加密:密钥分为加密密钥和解密密钥两种。发送者用加密密钥对消息进行加密(私钥),接收者用解密密钥对密文进行解密(公钥)
非对称加密算法: RSA和RSA2
- RSA: 对密钥的长度不限制,推荐使用2048位以上
- RSA2:强制要求RSA密钥的长度至少为2048
公钥和私钥在项目中的调用关系
发送者 | 接收者 |
---|---|
发送者用私钥进行加密请求数据 -> | 用发送者的公钥进行解密 |
用接收者的公钥解密响应数据 | <- 接收者用私钥进行加密 |
从上面的调用关系中可以看到,任何一方只需要两个密钥就可以,一个是自己的私钥,一个是对方的公钥。
在写代码的时候,将密钥明文编码到代码中是不可取的,需要一个存放密钥存储的中心进行管控(专业人士来搞)