加密算法
明文data--加密(key1)-->密文--解密(key2)-->明文data
对称算法:key1=key2(加密和解密使用同一个密钥)
特性:
缺陷:
常见对称加密算法:
明文data--加密(key1)-->密文--解密(key2)-->明文data
非对称算法:key1 != key2 (通信双方都有两个key,一个公钥public key ,一个私钥:secret key,private key)
非对称加密:密钥是成对出现
特点:
功能:
缺点:
常见非对称加密算法:
哈希算法:也称为散列算法,将任意数据缩小成固定大小的“指纹”,称为digest,即摘要
特性:
功能:验证数据完整性
常见算法
常用工具
4.1 实现数据加密
4.1.1 实现数据加密,无法验证数据完整性和来源
4.2实现数字签名
4.2.1不加密数据,可以保证数据来源的可靠性、数据的完整性和一致性
4.3 综合加密和签名
4.3.1 即实现数据加密,又可以保证数据来源的可靠性、数据的完整性和一致性
方法1:Pb{Sa[hash(data)]+data}
方法2:对称key{Sa[hash(data)]+data}+Pb(对称key)
应用比较广泛
总结:
加密数据:公钥加密,私钥解密
数字签名:私钥加密,公钥解密
HTTPS 协议:就是“HTTP 协议”和“SSL/TLS 协议”的组合。HTTP over SSL 或 HTTP over TLS ,对http协 议的文本数据进行加密处理后,成为二进制形式传输
1、HTTPS 结构
2、HTTPS 工作的简化过程
1、客户端发起HTTPS请求
2、服务端把自己的证书发送给客户端
3、客户端解析验证服务器证书并生成随机值
4、客户端再用证书中公钥对该随机值进行非对称加密给传服务器
5、服务端用自己的私钥解密得到随机值作为后续的会话密钥来进行加密数据
6、客户端用之前生成的随机值解密服务端传来的数据,于是获取了解密后的内容
原文:https://www.cnblogs.com/chailonggang/p/12918084.html