SSL单向认证原理

参考博客:https://www.bilibili.com/read/cv17305873

  1. SSL/TLS单向认证:客户端会认证服务器端身份,服务器端不对客户端进行认证
  2. SSL/TLS双向认证:客户端和服务端都会互相认证,即双发之间要证书交换
    HTTPS是如何进行SSL单向认证的?带着这个问题我们来了解HTTPS原理:
    HTTPS是工作于SSL层之上的HTTP协议,SSL(安全套接层)工作于TCP层之上,向应用层提供了两个基本安全服务:认证和保密
    SSL有三个子协议:握手协议,记录协议和警报协议。
    握手协议实现服务器与客户端的认证与密钥交换
    记录协议进行数据加密并保证数据的完整性
    警报协议则规定了错误类型和处理机制
    客户端通信过程
    1.客户端向服务器请求HTTPS连接

2.服务器确认并返回证书(证书含有公钥)

3.客户端验证服务器发来的证书

4.确认成功,生成随机密钥A,用公钥进行加密后发给服务器

5.服务器用私钥解密出随机密钥A,并发出确认,握手完成

使用握手时协商好的共享密钥进行保密通信

单向认证 SSL 协议不需要客户拥有CA证书。双方具体的通讯内容,是加过密的数据,如果有第三方攻击,获得的只是加密的数据,第三方要获得有用的信息,就需要对加密的数据进行解密,这时候的安全就依赖于密码方案的安全。而幸运的是,目前所用的密码方案,只要通讯密钥长度足够的长,就足够的安全。这也是我们强调要求使用128位加密通讯的原因。

一般Web应用都是采用SSL单向认证的,原因很简单,用户数目广泛,且无需在通讯层对用户身份进行验证,一般都在应用逻辑层来保证用户的合法登入。但如果是企业应用对接,情况就不一样,可能会要求对客户端(相对而言)做身份验证。这时就需要做SSL双向认证。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值