Https 对称加密 非对称加密 ssl/tls精讲

HTTP

http协议是无状态的,每个请求对应一次连接一次响应,且数据透明,不安全,但速度快。

HTTPS

https在http的基础上增加了ssl/tls协议,数据被加密,安全。

非对称加密

非对称加密:有一对私钥和公钥,私钥能对数据进行加密,公钥能对数据进行解密。只有A知道私钥,具有对数据加密的能力。B、C都只知道公钥,只具有对数据解密的能力。A用私钥加密数据发给B,B用公钥解密得到数据。C也只有解密数据的能力,无法加密数据来伪装A。由此可知,非对称加密能解决信任性问题,能证明一个单位的身份。能用公钥解开,那就说明是具有私钥的单位发送过来的,只要私钥不被别人知道,其他人就无法顶帽身份。
也可以是私钥能解密,公钥能加密。客户端用公钥加密,服务器用私钥解密,其他人即使截获了客户端发给服务器的密文,因为没有私钥无法解密,所以客户端发送的密文很安全。

加密的私钥,解密的公钥可用于证明身份。解密的私钥,加密的公钥可用于保证密文安全。
优点:能证明身份或保证密文安全
缺点:加解密算法复杂,计算效率低

对称加密

对称加密:只有一个密钥,密钥能加解密数据。A、B、C都知道密钥,都具有加解密能力,显然C可以冒充A,因为C具有加密能力。但A与B使用密钥1通信, A与C使用密钥2通信。C即使截获了A、B间的密文,因为没有密钥1没有解密能力,也就无法窥探原文。对称加密依赖于密钥的保密
优点:双方能加密通信,加解密算法效率高
缺点:无法证明身份

非对称加密是一对多,对称加密是一对一。一对多能证明一方的身份,一对一能加密通信。

ssl/tls协议

https客户端、服务器通信过程涉及到两个非对称加密、一个对称加密。CA那有一对私加公解密钥,服务器有一对私解公加密钥,客户端与服务器建立会话后有一个会话密钥。CA的一对用于证明服务器的身份,服务器的一对用于保证客户端发来的会话密钥安全,会话密钥用于之后的加密通信。

https客户端、服务器的通信过程:
前提:引入第三方信任机构CA,CA具有一对私加公解密钥,服务器有一对私解公加密钥,服务器告知CA其公钥,CA对该公钥用摘要算法生成摘要,并用CA的私钥对摘要加密得到数字签名,写在证书上交给服务器。证书上有颁发机构、过期时间、服务器公钥、数字签名等。

  1. 客户端向服务器发起https请求
  2. 服务器接受请求,将证书发给客户端
  3. 客户端拿到证书,用CA的公钥对数字签名解密得到摘要,对证书上的服务器公钥用与CA相同的摘要算法生成摘要,若两个摘要相同则认证服务器身份,否则拒绝与该服务器通信
  4. 客户端生成一个会话密钥,用服务器的公钥加密会话密钥并发给服务器。
  5. 服务器用自己的私钥解密拿到会话密钥。
  6. 之后客户端与服务器用会话密钥进行通信。直到客户端断开连接。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值