HTTP : 超文本传输协议
HTTPS : 在http协议的基础上使用了SSL/TLS协议加密传输数据,文本数据使用客户端随机生成的密钥进行对称加密解密,客户端随机生成的密钥 使用数字证书提供的公私钥进行非对称加密解密
数字证书 : 由第三方受信任的CA机构颁发的证书,提供公钥和私钥进行非对称加密
HTTPS保证数据安全的方式
1.client 向 server 发起HTTPS请求时,server 会返回给 client 一个数字证书(包含了公钥)
2.client 生成 随机密钥 对 传输数据 进行对称加密,再使用数字证书提供的公钥对随机密钥进行加密,发送发给 server
3.server 通过证书的私钥 解密 随机密钥,使用随机密钥 对 传输数据 进行对称解密
后续client和server通过该 随机密钥 进行对称加密数据传输,保证了 随机密钥 的安全性,传输数据被攻击时,由于攻击者无法获取 数字证书提供的私钥,无法破解随机密钥,从而无法破解数据
HTTP请求格式内容
请求行
请求头
空行
请求体
HTTP返回格式
状态行
相应头
空行
相应体