简单来说:Http是超文本传输协议,明文传输,无加密、无身份验证,安全性差;Https是Http+SSL/TLS协议的组合,基于对称加密+非对称加密实现数据加密传输,有身份验证,安全性高,是目前主流的传输协议。
核心区别
1. 安全性
• Http:明文传输,数据在客户端和服务器之间传递时,未经过任何加密处理(比如用户名、密码、接口参数等),容易被中间人拦截、窃取、篡改,安全性极低,适合非敏感数据传输(如静态页面展示)。
• Https:基于SSL/TLS协议进行加密,实现“数据加密+身份验证”双重保障:
-
数据加密:采用「非对称加密(握手阶段)+ 对称加密(传输阶段)」结合的方式,避免数据被窃取、篡改;
-
身份验证:通过数字证书验证服务器(或客户端)的真实身份,防止中间人伪造服务器(比如钓鱼网站)。
后端开发中,我们需要配置SSL证书(如Let’s Encrypt免费证书),并在服务器(Nginx、Tomcat)中配置HTTPS监听,确保加密生效。
协议基础与端口
• Http:基于TCP协议,默认端口是80,无加密层,协议头简单,传输效率略高(但差距可忽略)。
• Https:基于TCP协议,在Http(应用层)和TCP(传输层)之间增加了SSL/TLS加密层,默认端口是443,协议头包含加密相关字段(如SSL版本、加密算法)。
加密原理
• Http:无任何加密机制,数据直接以明文形式传输,中间人可直接捕获并读取数据。
• Https:加密流程分两步(面试简化版,无需展开太多细节):
非对称加密用于握手阶段(传递对称密钥),对称加密用于数据传输阶段,兼顾安全性和传输效率;私钥由服务器保管,不可泄露,否则会导致加密失效
证书要求
• Http:无需任何证书,只要服务器开启80端口,即可提供Http服务,开发和部署成本低。
• Https:必须配置数字证书(由权威CA机构颁发,如Symantec、Let’s Encrypt),证书用于验证服务器身份,防止伪造。如果证书过期、无效,浏览器会提示“不安全”,影响用户访问。
后端如何配置Https:1. 从CA机构获取证书(含公钥、私钥);2. 在服务器(如Nginx)中配置ssl_certificate(证书路径)、ssl_certificate_key(私钥路径),监听443端口;3. 配置Http请求自动跳转至Https
性能开销
• Http:无加密、无握手过程,传输效率略高,资源消耗少(但差距不大)。
• Https:由于增加了SSL/TLS握手和数据加密、解密过程,会产生一定的性能开销(约10%-20%),对服务器的CPU资源有一定要求。
适用场景
• Http:适合非敏感数据传输,比如静态网站(博客、资讯)、公开的接口(无需登录即可访问的接口),开发部署简单,成本低。
• Https:适合敏感数据传输,比如用户登录、支付、个人信息查询等场景(如电商、金融、社交后端),是目前互联网业务的主流选择,也是浏览器(如Chrome)强制要求的(未使用Https的网站会被标记为“不安全”)。
常见问题
问1:Https的握手过程具体是什么样的?
问2:后端如何配置Https?以Nginx为例说明。
首先从CA机构获取证书文件(.pem格式)和私钥文件(.key格式);然后修改Nginx配置文件,监听443端口,配置ssl_certificate指向证书路径,ssl_certificate_key指向私钥路径;最后配置rewrite规则,将80端口的Http请求自动跳转至443端口的Https,重启Nginx即可生效。
问3:Https一定安全吗?为什么?
不一定绝对安全,但要比Http安全得多。可能存在的安全风险:1. 证书被伪造(但权威CA机构颁发的证书很难伪造,且浏览器会验证);2. 中间人攻击(如果客户端未验证证书,可能被伪造服务器拦截);3. 私钥泄露(服务器私钥泄露,会导致加密失效)。后端可以通过定期更新证书、保管好私钥、启用TLS1.3版本等方式,进一步提升Https的安全性。
问3:什么是SSL/TLS?
SSL/TLS 是用于数据加密传输的安全协议,TLS 是 SSL 的升级版本,核心作用是为 Https 提供加密和身份验证 —— 加密 Http 数据、验证服务器身份,避免数据泄露和伪造,是 Https 实现安全传输的基础。
![[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战-171主机测评](https://www.171host.com/wp-content/uploads/2026/10/20261030203301-6ae4fefdb54f3-220x150.png)
![[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战-171主机测评](https://www.171host.com/wp-content/uploads/2026/10/20261030202745-6ae4fdc1556bf-220x150.png)

