微信小程序上线已经有很长一段时间了,而开发者在接入小程序的过程中,会遇到一些问题,例如小程序要求必须通过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. js中数字的4种遍历方式

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title> ...

  2. 【LeetCode 】N皇后II

    [问题]n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击. 上图为 8 皇后问题的一种解法.给定一个整数 n,返回 n 皇后不同的解决方案的数量. 示例: ...

  3. Ubuntu 安装VirtualBox 虚拟机

    转载 1.终端命令 编辑sources.list ? 1 sudo gedit /etc/apt/sources.list 2.添加 软件源 将下面的地址加入sources.list 的末尾,保存并退 ...

  4. 【机器学习实战学习笔记(1-2)】k-近邻算法应用实例python代码

    文章目录 1.改进约会网站匹配效果 1.1 准备数据:从文本文件中解析数据 1.2 分析数据:使用Matplotlib创建散点图 1.3 准备数据:归一化特征 1.4 测试算法:作为完整程序验证分类器 ...

  5. recipe for target 'vmnet.ko' failed

    /tmp/modconfig-60OpuH/vmnet-only/bridge.c:639:4: error: invalid preprocessing directive #atomic_inc ...

  6. 寒假day19

    今天编写了人才动态模块,同时刷了一些算法题.

  7. [BJDCTF2020]Easy MD5

    0x00 知识点 password='".md5($pass,true)."' 链接: https://www.jianshu.com/p/12125291f50d  ffifdy ...

  8. redis(二)----基本操作

    1. redis介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset( ...

  9. Springboot过滤器注解简笔

    对多个过滤的注解      @WebFilter(filterName="FirstFilter",urlPatterns={"*.do","*.js ...

  10. 69.ORM查询条件:isnull和regex的使用

    首先查看数据库中的article表的数据: 定义模型的文件models.py中的示例代码如下: from django.db import models class Category(models.M ...