前言
一直想写一个关于网页安全的,因为平时网上注册付款,还是打开一些网站连接我都非常小心,一定要看看网页上有没有一把绿色的锁.由此来辨别网站的真假和安全.如果某个网站要求你填写个人信息,卡号等真实信息. 首先你要检查该网页是否使用 https 加密连接,如果没有,那么请不要输入任何敏感信息尤其是卡号 密码等
HTTPS是什么?
HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议,在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输增加安全性,HTTPS横空出世,1994年Netscape公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS.
简单说:HTTPS = HTTP + SSL (HTTPS 在 HTTP 应用层的基础上使用安全套接字层作为子层)
HTTPS与 http区别
HTTPS 原理介绍
HTTP 和 TLS 在协议层的位置以及 TLS 协议的组成如下图:
HTTPS 目前唯一的问题就是它还没有得到大规模应用,受到的关注和研究都比较少。至于使用成本和额外开销,完全不用太过担心。
一般来讲,使用 HTTPS 前大家可能会非常关注如下问题:
1.在哪里购买https证书,费用贵吗
需要通过代理机构到合法的第三方CA机构申请购买,证书其实不贵,而且现在也有了免费的证书机构,对于中小网站可以使用便宜甚至免费的数字证书服务(可能存在安全隐患),像著名的 verisign 公司的证书一般也就几千到几万块一年不等。当然如果公司对证书的需求比较大,定制性要求高,可以建立自己的 CA 站点,比如 google,能够随意签发 google 相关证书。
2.https缺点
https消耗 CPU 资源,需要增加大量机器。前面介绍过非对称密钥交换,这是消耗 CPU 计算资源的大户,此外,对称加解密,也需要 CPU 的计算。对于当代CPU来说,这点开销不值一提。
只要合理优化,https的机器成本也不会明显增加。对于中小网站,完全不需要增加机器也能满足性能需求。比如现在打开百度和淘宝有感觉比以前慢吗.阿里技术团队说比http还快了. 那缺点也就是增加了成本.
误区
https的安全保护依赖浏览器的正确实现以及服务器软件、实际加密算法的支持.
一种常见的误解是“银行用户在线使用https就能充分彻底保障他们的银行卡号不被偷窃。”实际上,与服务器的加密连接中能保护银行卡号的部分,只有用户到服务器之间的连接及服务器自身。并不能绝对确保服务器自己是安全的,这点甚至已被攻击者利用,常见例子是模仿银行域名的钓鱼攻击。少数罕见攻击在网站传输客户数据时发生,攻击者会尝试窃听传输中的数据。
商业网站被人们期望迅速尽早引入新的特殊处理程序到金融网关,仅保留传输码(transaction number)。不过他们常常存储银行卡号在同一个数据库里。那些数据库和服务器少数情况有可能被未授权用户攻击和损害。
全站https的到来
在海外,有数据统计,HTTPS流量已超过全网50%。相比国外而言,我国的HTTPS普及率还比较低,仅在支付、账号等领域有限的安全保护已无法满足网民需求。能否助力HTTPS在中国的进程,就要看像百度阿里这样起示范作用的大公司的推动效应了。