HTTPS

2020-09-20  本文已影响0人  有腹肌的豌豆Z

Android-加密机制详解

什么是HTTPS?

HTTPS并非是应用层的一种新协议。只是HTTP通信接口部分用SSL和TLS协议代替而已。

通常,HTTP直接和TCP通信。当使用SSL时,则演变成先和SSL通信,再由SSL和TCP通信了。简言之,所谓HTTPS,其实就是身披SSL协议这层外壳的HTTP。

在采用SSL后,HTTP就拥有了HTTPS的加密、证书和完整性保护这些功能。也就是说HTTP加上加密处理和认证以及完整性保护后即是HTTPS。

HTTPS 协议的主要功能基本都依赖于 TLS/SSL 协议,TLS/SSL 的功能实现主要依赖于三类基本算法:散列函数 、对称加密和非对称加密,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性。


介绍一下https的握手过程


为什么https数据传输使用对称加密?


介绍下https中间人攻击的过程

这个问题也可以问成 为什么需要CA认证机构颁发证书?
我们假设如果不存在认证机构,则人人都可以制造证书,这就带来了"中间人攻击"问题。
中间人攻击的过程如下:

简单来说,中间人攻击中,中间人首先伪装成服务端和客户端通信,然后又伪装成客户端和服务端进行通信(如图)。 整个过程中,由于缺少了证书的验证过程,虽然使用了https,但是传输的数据已经被监听,客户端却无法得知。


HTTPS 握手过程中,客户端如何验证证书的合法性

CA证书中会包含颁发机构信息、公钥、公司信息、域名、有效期等信息,浏览器验证证书:

概要以上任意一步都满足的情况下浏览器才认为证书是合法的


HTTPS的一次握手

上一篇 下一篇

猜你喜欢

热点阅读