微信小程序上线已经有很长一段时间了,而开发者在接入小程序的过程中,会遇到一些问题,例如小程序要求必须通过HTTPS完成服务端通信,开发者需搭建HTTPS服务,进行 SSL 证书申请、部署,完成HTTPS服务搭建。

不仅仅是小程序,苹果 iOS 平台,Google,Android 在今年也逐步强制要求开发者使用 HTTPS 接入。HTTPS 似乎是一个绕不开的“劫”,让不少开发者费心不已。

为什么开发者绕不开“HTTPS”

如果要绕开HTTPS那么就一定要说说HTTP协议,HTTP 协议是一个非常简单和高效的协议,互联网大部分的应用默认都是使用的HTTP。由于性能和上个世纪 90 年代使用环境的限制,HTTP 协议本身并不是一个为了安全设计的协议,既没有身份认证,也没有一致性检验,最不符合现在安全要求的是HTTP所有的内容都是明文传输的。

另一方面,互联网是一个发展快速的行业,各类的应用已经渗透到人们的生活中,不管是游戏、金融、购物、社交还是用到最多的搜索,这些服务都能带给人们极大的便捷,提升生活质量和效率。

但遗憾的是,大多通过HTTP服务的应用都隐藏着巨大的安全隐患,它不安全。这些安全隐患又集中表现在如下两方面:

1、隐私泄露

由于HTTP本身是明文传输,用户和服务端之间的传输内容都能被中间人查看。也就是说你在网上搜索、购物、访问的网点、点击的内容信息等,都可以被“中间人”获取。由于国内对于隐私保护的重视度不高,而风险又比较隐性,造成的损失及后果也不太好评估。已知的一些比较严重的隐私泄露事件包括:

QQ登陆信息被不法分子窃取,然后在异地登陆,进行广告宣传和欺诈行为。

用户手机号和身份信息泄露。用户在页面中的搜索行为泄露。比如搜索了一所医院,很快就会有人打电话进行推广(非效果广告)。

2、页面劫持

隐私泄露的风险不易发现,用户感知度很低。但另外一类劫持的影响就非常明显而直接了——页面劫持,也就是直接篡改用户的浏览页面。有很多页面劫持是非常简单粗暴的,直接插入第三方广告或者运营商的流量提示信息。

HTTPS 是解决劫持的核武器:HTTPS 为什么能很好的解决劫持呢?主要是三大武器:

1、身份认证—防假冒,防抵赖

每次建立一个全新的 HTTPS 连接时,都需要对身份进行认证,确保用户访问的是正确的目的网站。

2、内容加密—防窃听

内容加密意味端对端的通信内容全都是密文,中间人不能直接查看到内容,HTTPS所有的应用层内容都是通过对称加密来实现加密和解密的。

3、一致性校验—防篡改

通过对数据和共享密钥的MAC码来防止中间人篡改内容,确保数据的完整性和一致性。

通过以上介绍,相信开发者明白了为什么微信小程序,苹果 iOS 平台,Google, Android都希望大家部署SSL证书,这个开发者绕不开的“劫”并不是真正的劫,而是信息安全传输的加密者保护者,是个不能绕开的,“保护者”在互联网中担任着非常重要的角色使信息不被泄露,篡改,窃听及劫持。

了解SSL证书从HTTPS开始 开发者绕不开的“劫”的更多相关文章

  1. spring boot / cloud (五) 自签SSL证书以及HTTPS

    spring boot / cloud (五) 自签SSL证书以及HTTPS 前言 什么是HTTPS? HTTPS(全称:Hyper Text Transfer Protocol over Secur ...

  2. Linux下Nginx配置阿里云 SSL证书实现HTTPS访问

    这篇文章主要介绍了nginx配置ssl证书实现https访问的示例 1.服务器系统:Centos 2. 阿里云申请SSL证书 选择“免费版DV SSL”,点击立即购买: 下载证书 列表中找到已签发的证 ...

  3. 最新阿里云服务器免费SSL证书配置HTTPS的两种方法(图文教程二)

    在大家学习如何利用免费SSL证书配置网站HTTPS之前,我们先要搞清楚为什么要开启HTTPS,这个绿色的小锁真的有用吗?所谓的HTTPS其实是(安全套接字层超文本传输协议)是以安全为目标的HTTP通道 ...

  4. 在IIS下部署SSL证书实现HTTPS

    在IIS下部署SSL证书实现HTTPS   HTTPS是以安全为目标的HTTP通道,简单讲是HTTP的安全版.谷歌已经制定了一项长远的计划,它的最终目标是将所有通过HTTP协议呈现的网页标为“不安全” ...

  5. 阿里云服务器Centos上Apache安装SSL证书配置Https

    首先我们先去阿里云申请一个免费的SSL证书(https://common-buy.aliyun.com/?spm=5176.7968328.1266638..5e971232BzMSp5&co ...

  6. SSL证书部署HTTPS站点Apache/Nginx配置

    SSL证书及HTTPS协议 SSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现:1.数据信息在客户端和服务器之间的 ...

  7. windows系统配置Nginx使用SSL证书实现Https反向代理

    Nginx反向代理服务,可以代理接收请求,并把请求转发到设置好的其他服务器上. 例如,Nginx服务器为 100.101.102.103,A服务为 100.101.102.104 ,通过Nginx配置 ...

  8. SSL证书与Https应用部署小结

    为了提高网站的安全性,一般会在比较敏感的部分页面采用https传输,比如注册.登录.控制台等.像Gmail.网银等全部采用https传输. https/ssl 主要起到两个作用:网站认证.内容加密传输 ...

  9. phpstudy 安装Apache SSL证书实现https连接

    Windows phpstudy安装ssl证书教程. 工具/原料   phpstudy 集成环境 申请的SSL证书 方法/步骤     首先申请免费的ssl证书,很多地方都可以申请.我是在腾讯云!如图 ...

随机推荐

  1. 大数据之虚拟机配置和环境准备及hadoop集群搭建

    一.VMnet1和VMnet8路由器 VMware-workstation软件选择默认安装时,会自动创建VMnet1和VMnet8路由器设备.(安装失败使用CCleaner清理vm软件) VMnet1 ...

  2. zTree的学习

    最近要做一个有关权限的东西,原理和数据库都已经知道了,就是树状图困难. 原先是打算用layui的,因为我孤陋寡闻……吃了大亏,弄了3个小时,屁都没有.只能说是…… 后来百度找到了zTree,进去学习了 ...

  3. java反射的学习

    1.类的 类类型(ClassType) 类的类类型可以用来做很多事,我们可以通过它获取到类的名称,类的路径,类的成员变量,类的方法等等,还可以通过它获得类的实例化对象. 我们可以通过 类名.class ...

  4. 17. react redux的中间件

    1. redux 数据流程图 View 会派发一个 Action Action 通过 Dispatch 方法派发给 Store Store 接收到 Action 连同之前的 State 发给  Red ...

  5. filter滤镜兼容ie的rgba属性

    要在一个页面中设置一个半透明的白色div.这个貌似不是难题,只需要给这个div设置如下的属性即可: background: rgba(255,255,255,0.1); 但是要兼容到ie8.这个就有点 ...

  6. JAVAEE 和项目开发(第四课:HTTP的响应格式和响应状态码)

    HTTP 协议之响应 响应格式的结构: 响应行(状态行):HTTP 版本.状态码.状态消息 响应头:消息报头,客户端使用的附加信息 空行:响应头和响应实体之间的,必须的. 响应实体:正文,服务器返回给 ...

  7. 《新标准C++程序设计》2.4-2.6(C++学习笔记4)

     1.对象的内存匹配 一般来说,在C++中,一个对象占用的内存空间大小等于其成员变量所占用的内存空间的大小之和.(对象只包含成员变量,不包含成员函数) 每个对象都有各自的存储空间.一个对象的某个成员变 ...

  8. 吴裕雄--天生自然C++语言学习笔记:C++ 常量

    常量是固定值,在程序执行期间不会改变.这些固定的值,又叫做字面量. 常量可以是任何的基本数据类型,可分为整型数字.浮点数字.字符.字符串和布尔值. 常量就像是常规的变量,只不过常量的值在定义后不能进行 ...

  9. CodeForces - 748B Santa Claus and Keyboard Check

    题意:给定两个字符串a和b,问有多少种不同的字母组合对,使得将这些字母对替换字符串b后,可以变成字符串a.注意字母对彼此各不相同. 分析:vis[u]记录与u可形成关系的字母,若u与v不同,则形成字母 ...

  10. idea 2019.3 最新破解补丁和激活码,可破解至2089年!

    链接:https://blog.csdn.net/qq_42914528/article/details/85617901 上面方法失效了,请尝试以下方式激活(2020.1.6更新) idea激活码( ...