✧(≖ ◡ ≖✿
目录
HTTPS加密
基本概念
1.运营商劫持
2.常见加密算法
2.1对称加密
2.2非对称加密
2.2.1公钥、私钥
3.数据摘要(数据指纹)
4.签名认识
4.1CA机构
签名与验证逻辑
非对称加密+数字签名+对称加密
☆总结
HTTPS加密
HTTPS = HTTP + TLS/SSL(一种安全协议)。它本质上是给HTTP协议穿上了一层盔甲,确保数据在传输中是完整的、加密的,并且实现了正规服务端、客户端之间的身份验证。
基本概念
注意:双向箭头明文通过密钥变成密文,密文也可以通过密钥变成明文。
1.运营商劫持
指在数据传输中,如果数据不进行加密导致常见问题——访问被中间人(运营商)中途劫持,导致访问偏差。(是一种很低劣的手段)
2.常见加密算法
2.1对称加密
密钥数:一个(整体)
加密/解密速度:快
加密/解密限制:使用一个密钥进行加/解密。
2.2非对称加密
密钥数:2个(通信间成对2/4/6等)每对分作公钥、私钥。
加/解密速度:慢
加/解密限制:A方加密必定A'解密。(A A' 代表公钥及与之对应的私钥)
2.2.1公钥、私钥
公钥:甚至可以传播。
私钥:决对不能有第二人知道。
3.数据摘要(数据指纹)
作用:判断数据是否被篡改。
原理:单向散列函数(Hash函数),生成一段固定长度(16/32/64)的数字摘要。(并非一种加密算法)
特性:常用于区分多份数据是否具有完全一致性。
4.签名认识
数据摘要(指纹)被签名者私钥加密后的数据。
数字签名:作为网络传输的直接数据。(简单拼接了原始数据+签名的数据)
4.1CA机构
管理加/解密的权威机构,提供公钥私钥。证书等。
签名与验证逻辑
加密数据。
验证数据在传输过程中是否被篡改过。
非对称加密+数字签名+对称加密
☆总结
HTTPS工作过程中涉及到三组密钥。其中一组是通信的核心:(第三组-对称密钥)
第一组(非对称加密):用于校验证书是否被篡改。服务器持有私钥(私钥在形成CSR文件和申请证书时获得),客户端持有公钥(操作系统(浏览器)包含默认的可信任的CA机构,同时持有对应的公钥)。服务器在客户端请求时,返回携带签名的证书。客户端通过这个公钥来检查证书的验证,保证证书的合法性,进一步保证证书中携带公钥的权威性。
第二组(非对称加密):用于协商生成对称加密的密钥。客户端用收到的CA证书中的公钥(是可被信任的)给随机生成的对称加密的密钥加密,传输给服务器。服务器通过私钥(CA中的)解密获取到对称密钥。
第三组(对称加密):客户端、服务端自此均通过此对称密钥加/解密。
其实一切的关键都是围绕最后一组对称加密的密钥。其他机制均是辅助
- 第二组对称加密的密钥是为了让客户端吧这个对称密钥传递给服务器。
- 第一组非对称加密的密钥是为了让客户端拿到第二组非对称加密的公钥。
| 组别 | 密钥类型 | 密钥对名称(正式/别名) | 持有方 | 核心用途 |
|---|---|---|---|---|
| 第一组 | 非对称加密 | CA根证书密钥对 (公钥: CA根证书公钥 / 私钥: CA根证书私钥) | 公钥:内置在浏览器/操作系统 私钥:由权威CA机构严格保管 | 身份验证:验证服务器证书的“数字签名”,确保你访问的网站是真实可信的,而非伪造。 |
| 第二组 | 非对称加密 | 服务器证书密钥对 (公钥: 服务器证书公钥 / 私钥: 服务器证书私钥) | 公钥:放在服务器证书中,公开 私钥:由网站服务器管理者严格保管 | 密钥交换:客户端使用此公钥加密“预主密钥”,服务器使用配对的私钥解密,从而安全地交换双方后续通信的核心秘密。 |
| 第三组 | 对称加密 | 会话密钥 (临时密钥,无固定密钥对) | 客户端和服务器在握手完成后各自独立计算得出,并共同持有。 | 加密通信:用于加密和解密所有实际的HTTP应用数据(如网页内容、表单数据)。这是保证通信机密性的最终执行者。 |
感谢支持,长期连载
欢迎关注