HTTPS,HTTPS和HTTP的区别以及HTTPS的加密算法

2019-06-10  本文已影响0人  _爱笑的eyes

HTTPS:

超文本传输安全协议.是以安全为目标的HTTP通道,简单讲是HTTP的安全版。

HTTPS,HTTP区别:

1.http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。

2.http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

3.http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

HTTPS的加密算法:

1.对称加密算法

就是使用相同的规则进行加密解密,两端通过同一个密钥进行明文的加密和解密,但是这种密钥的传输安全问题又无法得到保障。

具代表性的对称加密算法:DES,3DES,AES

DES:数据加密标准,不具备安全性,往往出现在一些介绍,案例或者一些比较老的软件文件中。

3DES:是DES向AES过渡的加密算法,它使用3条56位的密钥对数据进行三次加密。是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法。比起最初的DES,3DES更为安全。应用十分广泛,密钥长度增强,迭代次数高。

AES:高级加密标准。这个标准用来替代原先的DES,并且是最有效的标准。AES是目前使用最多的对称加密算法。解决了DES的安全问题和3DES的处理速度慢问题。AES通常用于移动通信系统加密以及基于SSH协议的软件。

2.非对称加密算法

非对称加密拥有一套匹配的公钥和私钥,明文可以使用公钥加密成密文,密文再用私钥进行解密成明文,也可以反过来,用私钥加密,公钥继续解密。

具代表性的非对称加密算法:DH,RSA,ElGamal

对称加密算法提供了数据的安全性,同时也带来了密钥管理复杂性,如果想要发送加密的信息,必须事先约定好相同的算法,双方持有相同的密钥。密钥传递过程复杂,一旦密钥泄露,数据将很快的被破解掉。这就是对称加密带来的困扰。

DH:密钥交换算法是通过构建本地密钥来解决这种对称加密带来的问题。

RSA:唯一广泛接收并实现的一个非常通用并公开的算法。

ElGamal:和RSA不同的是只提供公钥加密算法。jdk并没有提供给他的实现,他的实现是通过Bouncy Castle来提供的。构建密钥和RSA基本上是一致的。算是RSA的一种补充。

3.总结

对称加密:DES 安全度在现代已经不够高,后来又出现的3DES 算法强度提高了很多,但是其执行效率低下,AES算法加密强度大,执行效率高,使用简单,实际开发中建议选择AES 算法。实际android 开发中可以用对称加密(例如选择AES 算法)来解决很多问题。

非对称加密:高级,双保险,公钥,私钥。DH 密钥交换算法(是非对称加密的起源);RSA 基于因子分解(应用范围最广,既能用于数据加密,也能用于数字签名);ElGamal  基于离散对数。

上一篇下一篇

猜你喜欢

热点阅读