前言

网站如何支持https协议访问

 

一、对称加密

缺陷

数据发送和和接收方加密解密公用同1个会话秘钥,在公开网络中进行秘钥交互,中间容易被泄露和截获。

二、非对称加密

公钥私钥对加密

缺陷

私钥虽然不容易泄露但是,公钥信息容易被伪造,造成中间人攻击。

三、证书

1.证书结构

029f5d539c4945f19993d3d7f19b9e42

 

 

网站证书解决了网站身份识别的问题,避免了中间人攻击。

┌───────────────┐                            ┌───────────────┐
│   客户端       │                            │    服务器      │
└───────┬───────┘                            └───────┬───────┘
        │ 1. Client Hello                            │
        │   - TLS版本                                 │
        │   - 加密套件列表                             │
        │   - 客户端随机数                             │
        ├───────────────────────────────────────────>│
        │                                            │
        │                           2. Server Hello  │
        │                             - 选定加密套件   │
        │                             - 服务器随机数   │
        │                           3. Certificate   │
        │                             - 证书链        │
        │                           4. Server Key Exchange
        │                             (ECDHE参数)    │
        │                           5. Server Hello Done
        │<──────────────────────────────────────────--┤
        │                                             │
        │ 6. 验证证书内容完整性+是否由权威CA签发真实性       │
        │   - 客户端基于证书内容计算出指纹                 │
        │   - 客户端使用操作系统内置的CA机构的公钥解密证书的数字签名       │
        │   - 对比客户端计算指纹和证书中记录的数字签名是否一致│
        │                                             │
        │ 7. Client Key Exchange                      │
        │   - 预主密钥 (RSA加密或DH参数)                 │
        ├───────────────────────────────────────────>│
        │                                            │
        │ 8. 生成会话密钥【三要素】                      │11. 生成相同会话密钥
        │   • 客户端随机数                             │   • 客户端随机数
        │   • 服务器随机数                             │   • 服务器随机数
        │   • 预主密钥                                │   • 预主密钥
        │                                            │
        │ 9. Change Cipher Spec                      │
        ├───────────────────────────────────────────>│
        │10. Finished (加密的握手摘要)               │
        ├───────────────────────────────────────────>│
        │                                            │12. Change Cipher Spec
        │                                            │<─────────────────────┤
        │                                            │13. Finished          │
        │<───────────────────────────────────────────┤
        │                                            │
        │14. 加密HTTP请求                             │
        │   (使用会话密钥)                             │
        ├───────────────────────────────────────────>│
        │                                            │15. 加密HTTP响应      │
        │<───────────────────────────────────────────┤

 

 

 

优势

证书由权威机构颁发并包含了网站服务器的公钥信息

服务端公钥内置在操作系统内不容易被伪造

参考

posted on 2025-06-21 22:39  Martin8866  阅读(11)  评论(0)    收藏  举报