当前位置: 首页 > news >正文

多合一网站建设小视频制作软件

多合一网站建设,小视频制作软件,个人如何注册网址,wordpress 移动版商城上一篇博客(HTTP详解_徐憨憨!的博客-CSDN博客)详细讲解了关于HTTP的知识,了解到HTTP协议下的数据传输是一种明文传输,既然是明文传输,可能导致在传输过程中出现一些被篡改的情况,此时就需要对所…
上一篇博客(HTTP详解_徐憨憨!的博客-CSDN博客)详细讲解了关于HTTP的知识,了解到HTTP协议下的数据传输是一种明文传输,既然是明文传输,可能导致在传输过程中出现一些被篡改的情况,此时就需要对所传输的数据进行加密,达到数据安全的效果,所以在HTTP协议的基础上引入了另一种应用层协议——HTTPS协议(升级版的HTTP协议)!

一,HTTP中的“运行商劫持”问题

我们通过网络传输的任何数据包都会经过运营商的网络设备(路由器,交换机等),由于是明文传输,那么我们的数据对于运营商网络设备来说就是公开的,运营商的网络设备就可以解析出传输的数据内容,从而进行数据篡改,如图所示:

不止运营商可以劫持,其他黑客也可以用类似的手段进行劫持,来窃取用户隐私信息或者篡改内容,如果黑客在用户登录支付宝的时候获取到用户账户余额,甚至获取到用户的支付密码,后果不堪设想,所以明文传输是比较危险的事情!

二,HTTPS

  1. HTTPS的加密

1.概念

为了避免HTTP协议明文传输数据的危险,HTTPS协议在HTTP协议的基础上进行了加密,进一步的来保护用户的信息安全。

2.加密

加密就是把明文(要传输的信息)进行一系列变换,变成密文

解密就是把密文再进行一系列变换,还原成明文

在这个加密和解密的过程中,往往需要一个或者多个中间的数据,辅助进行这个过程,这样的数据称为密钥!

2.HTTPS的工作过程

既然要保证数据的安全,就需要进行“加密”,网络传输中不再直接传输明文了,而是加密之后的“密文”,加密的方式有很多,但是整体可以分成两大类:对称加密和非对称加密!

对称加密

对称加密其实就是通过同一个“密钥”,把明文加密成密文,并且也能把密文解密成明文

一个简单的对称加密, 按位异或
假设明文 a = 1234, 密钥 key = 8888
则加密 a ^ key 得到的密文 b 为 9834.
然后针对密文 9834 再次进行运算 b ^ key, 得到的就是原来的明文 1234.
(对于字符串的对称加密也是同理, 每一个字符都可以表示成一个数字)
当然, 按位异或只是最简单的对称加密. HTTPS 中并不是使用按位异或,HTTPS中更复杂

引入对称加密后,即使数据被截获,由于黑客不知道密钥是啥,因此就无法进行解密,也就不知道请求的真是内容是什么了,但是密钥从何而来呢?服务器还是客户端呢?假设客户端生成一个密钥,此时客户端就需要把密钥告知服务器:

客户端生成密钥发送给服务器,由于密钥刚刚生成,服务器还不知道,密钥只能明文传输,此时密钥可能就被黑客给截获了,一旦黑客获取到了密钥,后续对传输的数据进行加密操作都可以被黑客解密,因此密钥的传输也必须加密传输!

但是要想对密钥进行对称加密,就仍然需要先协商确定一个“密钥的密钥”,这就变成了“无限套娃”的问题了,此时密钥的传输就不也可以用对称加密,就需要引入非对称加密!

非对称加密

非对称加密要用到两个密钥,一个叫做“公钥”,一个叫做“私钥”;

公钥和私钥是配对的,最大的缺点就是运算速度非常慢,比对称加密要慢很多。

通过公钥对明文加密, 变成密文;
通过私钥对密文解密, 变成明文.
反过来也可以:
通过私钥对明文加密, 变成密文;
通过公钥对密文解密, 变成明文.
  • 客户端在本地生成对称密钥,通过公钥加密,发送给服务器;

  • 由于中间设备密钥私钥,即使截获了数据,也无法还原出内部的原文,也就无法获取到对称密钥;

  • 服务器通过私钥解密,还原出客户端发送的对称密钥,并且使用这个对称密钥加密给客户端返回的响应数据;

  • 后续客户端和服务器的通信都只用对称加密即可,由于该密钥只有客户端和服务器两个主机知道,其他主机/设备不知道密钥,即使截获数据也没有意义;

  • 由于对称加密的效率非常比非对称加密高很多,因此只是开始阶段协商密钥的时候使用非对称加密,后续的传输操作让然使用对称加密.

现在的加密方式还存在一个小问题:

  1. 客户端如何获取到公钥?

  1. 客户端如何确定这个公钥不是黑客伪造的?

引入证书

在客户端和服务器刚一建立连接的时候,服务器给客户端返回一个证书,这个证书包含了刚才的公钥,也包含了网站的身份信息.

当客户端获取到这个证书之后,会对证书进行校验(防止证书是伪造的)

  • 判定证书的有效期是否过期;

  • 判定证书的发布机构是否受信任(操作系统中已内置的受信任的证书发布机构);

  • 验证证书是否被篡改:从系统拿到证书发布机构的公钥,对签名解密,得到一个hash值(称为数学摘要),设为hash1,然后计算整个证书的hash值,设为hash2,对比hash1和hash2是否相等,如果相等,则说明证书是没有被篡改过.

总结

HTTPS工作过程涉及到的密钥有三组:

第一组(非对称加密): 用于校验证书是否被篡改. 服务器持有私钥(私钥在注册证书时获得), 客户端持有公

钥(操作系统包含了可信任的 CA 认证机构有哪些, 同时持有对应的公钥). 服务器使用这个私钥对证书的

签名进行加密. 客户端通过这个公钥解密获取到证书的签名, 从而校验证书内容是否是篡改过;

第二组(非对称加密): 用于协商生成对称加密的密钥. 服务器生成这组 私钥-公钥 对, 然后通过证书把公钥

传递给客户端. 然后客户端用这个公钥给生成的对称加密的密钥加密, 传输给服务器, 服务器通过私钥解密

获取到对称加密密钥;

第三组(对称加密): 客户端和服务器后续传输的数据都通过这个对称密钥加密解密.

其实一切的关键都是围绕这个对称加密的密钥. 其他的机制都是辅助这个密钥工作的:
第二组非对称加密的密钥是为了让客户端把这个对称密钥传给服务器;
第一组非对称加密的密钥是为了让客户端拿到第二组非对称加密的公钥.

http://www.yayakq.cn/news/577416/

相关文章:

  • 大什么的网站建设公司网站建设的例子
  • wordpress整站源码带数据上海外贸进出口有限公司
  • 推荐昆明做网站建设电脑培训学校在哪里
  • 网站开发常遇到客户问题网站全站开发
  • 房地产网站建设招商广元市建设局官方网站
  • seo排名工具站长长沙网页建站
  • 那个网站卖做防水的烤枪门户网站建设进展情况
  • 江苏省城市建设信用手册网站做修车行业需要在哪个网站做推广
  • 上饶网站开发凡客诚品商城
  • 做网站的教程wordpress 拼音
  • 做网站工资高不高惠州市建设工程交易中心网站
  • 网站建设计划书范文个人养老保险app下载
  • 网站建设文化服务公司治多县网站建设公司
  • 湖南智能网站建设平台新增网站和新增接入
  • 做网站意义和目的phpstudy配置wordpress
  • 手机数据线东莞网站建设技术支持北京seo推广服务
  • 大浪做网站公司给教育类做网站
  • 信阳网站开发建设公司哪些网站需要做分享按钮
  • 红色基调的网站wordpress头像设置方法
  • 怎么做整人网站wordpress制作客户端
  • 响应式网站开发 三合一建站做一个网站团队需要哪些人员
  • 电子商务网站建设策划书腾讯服务器做网站
  • 广东智能网站建设费用在百度云上做网站
  • 漂亮大气网站华侨大学英文网站建设
  • 竞价网站做推广方案wordpress hooks
  • 婚纱网站策划书有了域名与服务器怎么建网站
  • 中文网站建设中做外贸用什么网站好
  • 个人网站推广广告微信小网站制作
  • 商务网站规划与网页制作广州凡科互联网科技股份有限公司
  • 网站开发语言用到天津滨海新区大爆炸