数据窃听(嗅探):通信内容以明文形式传输,攻击者可通过网络嗅探工具获取用户发送的信息(如账号密码、银行卡信息等)。
数据篡改:攻击者可在数据传输过程中修改、插入或删除内容,例如在网页中注入恶意代码、篡改交易金额等。
身份伪造:无法验证通信对方的真实身份,可能导致用户访问到伪造的钓鱼网站,泄露敏感信息。
加密过程:HTTPS 使用对称加密和非对称加密结合的方式对数据进行加密。
非对称加密:服务器拥有公钥和私钥,公钥公开,私钥由服务器保密。客户端通过公钥加密数据,只有服务器的私钥能解密,确保数据传输过程中不被窃取。
对称加密:由于非对称加密效率较低,HTTPS 会在握手阶段协商出一个会话密钥,后续数据传输使用该密钥进行对称加密,提高加密效率。
效果:即使数据被截获,攻击者也无法解密内容,防止信息泄露。
证书机制:服务器需要向 CA(证书颁发机构)申请 SSL 证书,证书中包含服务器的域名、公钥、CA 的签名等信息。
验证过程:
客户端访问 HTTPS 网站时,服务器发送 SSL 证书。
客户端使用 CA 的根证书验证服务器证书的签名,确认证书的合法性(防止钓鱼网站伪造证书)。
验证通过后,客户端确认自己连接的是真实的目标服务器,而非恶意伪造的站点。
作用:避免用户被引导至钓鱼网站,防止身份伪造。
哈希算法与数字签名:HTTPS 在传输数据时,会通过哈希函数(如 SHA-256) 生成数据的摘要,并使用密钥对摘要进行签名(数字签名)。
验证完整性:客户端接收数据后,重新计算哈希值并与签名对比,若不一致则说明数据被篡改,直接丢弃数据,确保内容未被修改。
维度 | HTTP | HTTPS |
---|---|---|
传输方式 | 明文传输 | 加密传输(SSL/TLS 协议) |
身份验证 | 无 | 需通过 SSL 证书验证服务器身份 |
数据完整性 | 无保护,易被篡改 | 通过哈希和数字签名确保完整性 |
安全性 | 低,易受窃听、篡改、伪造 | 高,解决三大安全风险 |
端口 | 默认 80 端口 | 默认 443 端口(需 SSL 证书支持) |
性能影响 | 无额外开销 | 加密和解密会增加少量延迟 |
并非绝对安全:HTTPS 能防范大部分网络攻击,但无法解决所有安全问题(如服务器自身漏洞、用户设备中病毒等)。
证书信任链风险:若 CA 机构被攻击或颁发非法证书,可能导致信任链失效,需用户注意浏览器的安全提示(如 “证书不受信任” 警告)。
性能损耗:加密过程会增加服务器和客户端的计算开销,可能导致页面加载速度略有下降(可通过优化 SSL/TLS 配置缓解)。