首页 > Web开发 > 详细

https加密

时间:2020-04-02 23:00:46      阅读:65      评论:0      收藏:0      [点我收藏+]
https是一种http与SSL证书共同协作构建的网络协议,https优势就在于能够保证网络传输高效的同时,可以很好的维护网络传输过程的安全。https加密就是得益于SSL证书的保障,使得网站的安全等级得到提高。
这涉及到了对SSL证书的申请,不同类型的网站所需的SSL证书类型不同,申请这一数字证书需要向数字证书颁发机构验证域名的所有权以及公司相关的信息,这也是为什么网站部署了SSL证书之后就拥有了一个安全可信的形象。完成申请之后,根据申请证书的教程,完成下载以及安装。这就实现了对http到https的转变,即完成了https加密。
在采用 SSL 后,HTTP 就拥有了 HTTPS 的加密、证书和完整性保护这些功能。

技术分享图片

为什么需要https

当我们往服务器发送比较隐私的数据(比如说你的银行卡,身份证)时,如果使用http进行通信。

首先数据在传输的过程中,数据可能被中间人抓包拿到,那么数据就会被中间人窃取;

其次数据被中间人拿到后,中间人可能对数据进行修改或者替换,然后发往服务器;

最后服务器收到数据后,也无法确定数据有没有被修改或替换,当然,如果服务器也无法判断数据就真的是来源于客户端;

总结下来,http存在三个弊端:

1)无法保证消息的保密性;

2)无法保证消息的完整性和准确性;

3)无法保证消息来源的可靠性。

对称加密

这种方式加密和解密同用一个密钥。加密和解密都会用到密钥。没有密钥就无法对密码解密,反过来说,任何人只要持有密钥就能解密了。

服务器每次发送真实数据前,会先生成一把密钥传输(密钥容易被劫持)给客户端,服务器给客户端发送的真实数据会先用这把密钥进行加密,客户端收到加密数据后再用密钥进行解密(客户端给服务器发送数据同理)。

技术分享图片

非对称加密

公开密钥加密使用一对非对称的密钥。一把叫做私有密钥,另一把叫做公开密钥。顾名思义,私有密钥不能让其他任何人知道,而公开密钥则可以随意发布,任何人都可以获得。使用公开密钥加密方式,发送密文的一方使用对方的公开密钥进行加密处理,对方收到被加密的信息后,再使用自己的私有密钥进行解密。利用这种方式,不需要发送用来解密的私有密钥,也不必担心密钥被攻击者窃听而盗走。

服务器在给客户端发送真实数据前,先用客户端明文传输给服务器的公钥进行加密,客户端收到后用自己的私钥进行解密,反之同理

技术分享图片

对称加密+非对称加密

https使用对称加密+非对称加密(以非对称加密的方式传输对称加密密钥),接着就可使用对称加密的密钥传输数据。

鉴于非对称加密在加密时速度特别慢,对称加密又不够安全。可以将对称加密与非对称加密结合起来,充分利用两者各自的优势,将多种方法组合起来用于通信。在交换密钥环节使用非对称加密方式,之后的建立通信交换报文阶段则使用对称加密方式。具体做法是:发送密文的一方使用对方的公钥进行加密处理“对称的密钥”,然后对方用自己的私钥解密拿到“对称的密钥”,这样可以确保交换的密钥是安全的前提下,使用对称加密方式进行通信。所以,HTTPS 采用对称加密和非对称加密两者并用的混合加密机制。

数字证书

可以使用使用数字证书(即找到一个大家都认可的认证中心CA)证明客户端接收的公钥是属于服务器的。

服务器在给客户端传输公钥的过程中,会将公钥+服务器个人信息通过hash算法生成信息摘要,为防止信息摘要被掉包服务器会用CA提供的私钥对信息摘要加密形成数字签名。最后还会将设有进行hash算法计算的服务器个人信息+公钥和数字签名合并在一起形成数字证书

技术分享图片

 

 

https加密原理

我们了解对称加密与非对称加密的特点和优缺点,以及数字证书的作用。https没有采用单一的技术去实现,而是根据他们的特点,充分的将这些技术整合进去,以达到性能与安全最大化。这套整合的技术我们称之为SSL(Secure Scoket Layer 安全套接层)。
所以https并非是一项新的协议,它只是在http上披了一层加密的外壳。
技术分享图片

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 

一定要用https吗?

https那么的安全,是不是我们在什么场景下都要去使用https进行通信呢?答案是否定的。

1)https虽然提供了消息安全传输的通道,但是每次消息的加解密十分耗时,消息系统资源。所以,除非在一些对安全性比较高的场景下,比如银行系统,购物系统中我们必须要使用https进行通信,其他一些对安全性要求不高的场景,我们其实没必要使用https。

2)使用https需要使用到数字证书,但是一般权威机构颁发的数字证书都是收费的,而且价格也是不菲的,所以对于一些个人网站特别是学生来讲,如果对安全性要求不高,也没必要使用https。

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
原文:

https加密

原文:https://www.cnblogs.com/xjy20170907/p/12622723.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!