Https协议运行过程

Https协议运行过程

SSL握手目的
  • 验证服务端, 客户端
  • 保证客户端和服务器加密算法一致
SSL握手示例图
Client Server Client Hello Server Hello Certificate Certificate(可选) Server key exchanged(可选) Server hello done Certificate(可选) Client key exchanged Change cipher spec Finished Change cipher spec Finished Data Data Client Server SSL握手示例图
SSL握手过程
1. Client Hello

客户端向服务器发起请求, 包括支持的密码组. 密码组包含密码算法和大小.

发送的数据中包含一个随机数

2. Server Hello

服务器选择客户和服务器支持的密码组到用户

发送的数据中包含一个随机数

3. Certficate

服务器发送一个证书或者一个证书链到客户端, 一个证书链开始于服务器公共钥匙证书并结束于证明权威的根证书. 这个消息是可选的, 但服务器证书需要时, 必须使用

4. Certificate Request(可选)

当服务器需要鉴别客户端时, 发送证书请求到客户端. 用于双端验证

5. Server key exchange(可选)

服务器发来的公共钥匙对钥匙交换不是很充分时, 需要发送服务器钥匙交换消息, 主要为DH算法

6. Server Hello Done

服务器通知客户端完成了初始化流通消息

7. Certificate(可选)

如果服务器要求客户端证书, 需要客户端发送证书

8. Client key exchange

客户产生用于对称算法的钥匙. 对RSA客户用服务器公钥加密这个钥匙信息, 并发送到服务器

生成一个随机数并用服务器公钥加密, 然后发送给服务器

9. Change cipher spec

客户发告诉服务器已改变加密模式, 后续数据交互使用对称加密

10. Finished

客户端告诉服务器已准备好加密通信

11. Change cipher spec

服务器告诉客户端已改变加密模式, 后续数据交互使用对称加密

12. Finished

服务器告诉客户端已改变加密模式, 后续数据交互使用对称加密, 为ssl握手最后一步

13. Encrypted Data

传输数据

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值