一。预备知识
1. 什么是 HTTPS?
HTTP 协议无论是使用 GET 还是 POST 方法传输数据,都是以明文形式进行传输,这意味着传输过程中的数据很容易被拦截或篡改。
HTTPS 协议则通过在应用层和传输层之间增加一个加密层(SSL/TLS),为数据传输提供安全保障。
HTTPS 的工作原理如下:
- 当用户通过 HTTPS 访问网站时,数据首先被加密层处理,进行加密后再交给传输层。
- 接收方在接收到数据后,同样通过加密层解密,解密后的数据再交给应用层使用。
- 在整个传输过程中,只有在用户层数据是明文的,而网络中的传输数据始终处于加密状态。
HTTPS 也是一个应用层协议。只是在 HTTP 协议的基础上引入了一个加密层。
加密方式的定义?
web 组织定义的
站在一个黑客角度
- 攻破成本>攻破后的收益,就可以认为是相对安全的
- ssl 有权威的官方的加密解密方案
2. HTTP 与 HTTPS 的区别
HTTP 与 HTTPS 在工作方式和应用场景上有显著区别:
- 端口不同:HTTP 使用 80 端口,而 HTTPS 使用 443 端口。
- 安全性:HTTP 是明文传输,不安全;HTTPS 则通过加密保证数据的安全性。
- 效率:由于 HTTPS 需要进行加密解密操作,因此效率略低于 HTTP。在内网等安全环境下,可以考虑使用 HTTP 提高效率。
3. 什么是加密?
加密是将明文数据通过一定的规则转换成密文的过程,从而保证数据在传输过程中不会被非法获取或篡改。
以下是加密相关的术语:
- 明文:未加密的原始数据。
- 密文:经过加密后的数据。
- 加密:将明文转换为密文的过程。
- 解密:将密文还原为明文的过程。
- 密钥:用于加密和解密过程的核心数据。
4. 常见的加密方式
4.1 对称加密
- 对称加密使用相同的密钥来进行加密和解密。
- 特点:算法公开、加密速度快、计算量小。
- 常见的对称加密算法:DES、AES、Blowfish 等。
4.2 非对称加密
- 非对称加密需要两个密钥:公钥和私钥。
- 公钥:用于加密,私钥:用于解密,或反向操作。
- 常见的非对称加密算法:RSA、DSA 等。
- 虽然非对称加密的安全性更高,但由于算法复杂,效率较低。
4.3 数据摘要与数据指纹
- 数据摘要通过 Hash 函数(如 MD5、SHA256)将信息运算生成一个固定长度的字符串。
- 摘要的作用:快速判断数据是否被篡改,但不能反推出原始信息。
- 和加密算法的区别是,摘要严格意义上不是加密,因为没有解密
4.4 数字签名
数字签名是对摘要进行加密后的结果,用来确保数据的完整性和身份验证。
通过非对称加密技术,使用私钥对摘要加密,接收方用公钥解密,经过比对,可以验证数据是否被篡改。
二。HTTPS 的工作方案
既然要保证数据安全,就需要进行'加密'。 网络传输中不再直接传输明文了,而是加密之后的'密文'。 加密的方式有很多,但是整体可以分成两大类:对称加密和


