HTTPS

作者: jiayuiii | 来源:发表于2019-01-27 21:00 被阅读0次

由于hhtp是明文传输,所以对于一些敏感信息存在许多的安全隐患    ,所以要对HTTP进行加密处理

HTTPS =HTTP    +    加密+    认证    +完整性保护

HTTPS就是身披SSL(secure socket  layer)外套的HTTP,它并不是新的协议,而是Http的通信接口部分用ssl和tls协议代替了而已

加密:通过共享密钥来进行加密传输

共享密钥:加密算法是公开的,每种算法对应着它的密钥,所以密钥一定要保密;

但是如果想要在服务器与客户端之间传输密钥的话就有可能被窃听的风险,那么安全就无从谈起,

所以我们引进了另外一种技术来传输密钥;就是公开密钥技术

公开密钥:每一个公开密钥对应着一把私有密钥,顾名思义公开密钥就是大家都可以知道的,私有密钥就是不能让任何人知道的;

就是私有密钥只存放在服务器端,由客户端发送公开密钥,然后用私有密钥才能解开,那么私有密钥就一直存放在服务器端而不会泄露。

但是这样又存在另外一个问题,就是人家截取了你的公开密钥,然后换掉你的公开密钥,这样就无法证实这条钥匙是不是真的了,也就是说别人叫你用它的公开密钥写信它,那你的信息就发过去,不知道是不是你请求的那个服务器了。

所以你要证明你发起https请求后,对你响应的那个服务器是不是你要请求的服务器,那个服务器用的是什么公开密钥,就要通过证书来确定了。

证书:由专门的数字证书认证机关颁发公开密钥

1、持有人将公钥以及身份信息发送给权威机构。

2、权威机构负责对持有人的身份进行验证,确保公钥和持有人的信息准确无误。

3、权威机构使用自己私钥对持有人公钥进行数字签名,生成数字证书。

4、为了确保证书不被篡改,权威机构对数字证书进行hash计算(指纹算法),生成摘要(指纹),使用自己的私钥对摘要进行数字签名,放到数字证书中。

但是它的公钥是集成到操作系统中的。别人无法知道。所以持有人的公钥通过证书的私钥进行加密之后,只有操作系统解得开,就可以确保公钥是是真正的服务器发过来的。(别人的也是公钥,但是没有证书加密,不可信)

使用方法

使用混合加密方式,就是通过公开密钥和证书来传送 共享密钥,然后数据通过共享密钥进行加密传输。

因为公开密钥配合私有密钥解密要比共享密钥慢。

但是https本身就要比http慢,因为解密要消耗cpu资源,所以不涉及敏感信息的网页一般不用http加密

相关文章

  • https VS https

    HTTPS=SSL+HTTPHTTP协议传输的数据是未加密的 ,也就是明文,因此使用HTTP协议传输隐私信息非常不...

  • HTTPS

    什么是HTTPS HTTPS(全称:Hypertext Transfer Protocol over Secure...

  • HTTPS

    HTTP 有以下安全性问题: 使用明文进行通信,内容可能会被窃听;(请求时,需加密) 不验证通信方的身份,通信方的...

  • HTTPS

    站点证书的有效性 SSL 自身不要求用户检查Web服务器证书,但大部分现代浏览器都会对证书进行简单的完整性检查,并...

  • Https

    我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采...

  • HTTPS

    1.为什么要有HTTPS2.HTTPS的工作原理3.密码学4.HTTPS的优缺点5.在iOS中使用HTTPS 为什...

  • HTTPS

    精悍小文:https是如何工作的? - 简书 急速开发系列——打造完善的https使用方案 - 简书

  • https

    摘自[白话Https]https://www.cnblogs.com/xinzhao/p/4949344.html...

  • HTTPS

    一、背景 对于大规模的购物、银行事务或访问机密数据来说,这些重要的事务需要将 HTTP和数字加密技术结合起来使用,...

  • HTTPS

    在 HTTP 协议中有可能存在信息窃听或身份伪装等安全问题。使用 HTTPS 通信机制可以有效地防止这些问题。本篇...

网友评论

      本文标题:HTTPS

      本文链接:https://www.haomeiwen.com/subject/sxsnjqtx.html