撸代码

HTTPS:别让网站被Chrome标记为“不安全”

2019-03-27 00:00:28 作者:码工0组
HTTPS已经是网站标配了。谷歌Chrome浏览器对非HTTPS网站,直接在地址栏标记为“不安全”。微信也宣布,从2017年12月30日起,微信公众号API正式抛弃HTTP,仅支持HTTPS调用。

HTTP的缺点是,内容是明文传输的。这意味着,在你和服务器之间的位置,黑客可以看到你与网站的每个交互内容,包括但不局限于姓名、微信号、电话号码、家庭住址等详细信息。


HTTPS是什么呢?HTTPS=HTTP+SSL。
HTTPS就是在HTTP上面加了一层SSL协议,在HTTP站点上部署SSL数字证书就变成了HTTPS。HTTPS能防止你的数据在网络传输过程中不被其他人窃取。

SSL,Secure Sockets Layer,位于TCP/IP协议与各种应用层协议之间,利用数据加密技术,确保数据在网络传输过程中不会被截取、窃听。值得一提的是,SSL协议是Netscape网景公司发明的。该公司还发明了CSS、JS这两大网页基础设施。不过,1998年11月,网景被美国在线(AOL)收购了。


HTTPS工作的步骤如下:
(1)浏览器向服务器发送建立连接消息,消息中包含加密算法等。
(2)服务器对浏览器回应消息,消息中包含证书信息。
(3)验证通过之后,如果服务器已经成功验证,浏览器开始发送交换应该用于此会话的随机密钥。
(4)服务器接收到到随机秘钥,然后开始进行数据交换。
认证中心CA(Certificate Authority),发证书的,国内有几十家吧。很多是收费的。这也就是HTTPS普及不快的原因。
如何获取SSL证书?以阿里云为例。最简单的是,可以一键部署到CDN。
也可以在服务器上安装SSL证书。以Apache标准配置为例,假如证书文件名是a_public.crt,证书链文件是a_chain.crt,私钥文件是a.key。其余按照文档提示操作即可。

HTTPS:别让网站被Chrome标记为“不安全”(图1)