加密是可逆的
算数基本定理: 质因数分解形式是唯一的
但是对于 一个大数 完成质因数分解目前依旧没有多项式算法,甚至无法知道其属于什么复杂度
对称加密: 每一个传输对象都是不同的秘钥,存储秘钥就是一个问题; 同时如何在一个不安全的传输通道中交换相同的秘钥,陷入了一个 ”蛋鸡悖论“
非对称加密:
- 公钥加密 私钥解密:加密场景使用 , 甲给乙发送一个加密的数据,应该是甲乙各自都存在一个私钥,甲先使用乙的私钥加密数据,然后使用自己的私钥加密加密后的数据进行发送;确保内容不会被读取,也不会被篡改
- 私钥加密 公钥解密: 签名场景 , 让公钥所有者验证私钥所有者的身份; 如果签名者私钥不对,那么解密失败。
非对称加密因为存在性能问题和不支持分组加密模式(即加密的数据长度不能超过秘钥长度)
所以一般加密都是结合对称加密和非对称加密的优点:
非对称加密安全传输秘钥 DM 密钥交换算法 、对称加密安全高效的传输大量数据