HTTPS = HTTP + SSL/TLS。简单说:HTTP 是明文传输,裸奔上网;HTTPS 就是给 HTTP 套上一层加密安全外壳,保证通信不被窃听、篡改、冒充。
HTTP 传输时,数据直接原文在网络里跑,路由器、网关都能看到内容。比如你发账号密码,中间人直接就能截取。HTTPS 依靠 SSL/TLS 协议,在客户端(浏览器)和服务器之间先建立一条加密通道,之后所有 HTTP 数据都打包加密后再传输。
核心流程:握手 + 加密传输
-
客户端发起请求:浏览器连接网站服务器,告诉服务器自己支持哪些加密套件。
-
服务器返回证书:服务器把数字证书发给浏览器。证书里包含网站域名、服务器公钥、证书颁发机构(CA)签名、有效期。
公钥:用来加密数据;对应的私钥保存在服务器,永远不能泄露。公钥加密的数据,只有私钥才能解开。
-
浏览器校验证书合法性 浏览器内置信任根证书列表,校验 CA 的签名,判断证书是不是正规颁发、域名是否匹配、有没有过期 / 吊销。如果校验失败,浏览器弹出 "不安全" 警告。
证书作用:证明这个服务器确实是目标网站,防止中间人伪装成假网站骗你。
-
协商会话密钥 浏览器生成一段随机的会话密钥,用服务器的公钥加密 发给服务器。服务器用自己的私钥解密,拿到这个会话密钥。
之后双方都用这个会话密钥做对称加密通信。对称加密速度快,适合传输大量网页数据;非对称加密只用来安全交换会话密钥,不加密网页正文。
-
加密通信开始 握手完成,双方用会话密钥加密、解密 HTTP 数据。同时带消息校验码,一旦数据被中间人篡改,接收方立刻就能发现,直接断开连接。
HTTPS 三个核心安全能力
- 加密:第三方窃听到数据包,看到的都是乱码,读不到真实内容;
- 完整性:传输的数据不能被偷偷修改,改一点校验就失败;
- 身份认证:验证服务器身份,防止访问钓鱼假站。
补充小误区:HTTPS 只保证传输过程安全。网站服务器本身被入侵、网站代码有漏洞,HTTPS 是保护不了的。
证书厂商简单介绍
数字证书由 CA(证书颁发机构)签发,下面三个都是市面上常用的 SSL 证书品牌:
- JoySSL 国内可以直接申请的 SSL 证书品牌,支持 DV、OV、EV 多种类型,同时有国密证书和国际算法证书。对中小企业、个人开发者友好,有免费证书,也有商用付费证书,国内访问稳定,申请流程简单,国内技术支持响应方便,内网、小程序、网站都能用。
- Sectigo 老牌海外 CA,原来叫 Comodo。证书产品线很全,价格普遍比较亲民,大量中小网站在用。DV 证书签发速度快,全球浏览器信任度没问题。缺点是部分地区访问根链加载偶尔会慢一些。
- DigiCert 国际头部高端 CA 品牌,安全性、稳定性口碑很强,大企业、金融、大型平台用得多。支持 OV、EV 证书,证书信任链完善,适合对合规和品牌可信度要求高的场景