- 网关
网关可以在不同协议间移动数据,可以简单理解为边界路由器。路由器是在不同网络间移动数据,相当于传统上所说的ip网关。
- 代理服务器
介于浏览器(客户端)和web服务器质检的一台服务器。代理网络用户去获得网络信息(网络信息的中间站)
- http代理
诸如使用浏览器访问网页、下载数据都是利用http代理来实现的 - socks代理
相应的,采用socks协议的代理服务器就是SOCKS服务器,是一种通用的代理服务器。Socks代理与应用层代理、http代理不同,知识简单的传递数据包,而不必关系使用的是何种协议(如HTTP,FTP)。因此,Socks代理快很多,通常绑定在1080端口。
-
https通信
1.客户端发起https请求
用户发出一个https请求, 连接到服务端的443端口
2.服务端的配置
采用https协议的服务器必须要有一套数字证书, 可以自己制作, 也可以向相关组织申请, 区别就是自己颁布的证书需要客户端验证通过, 才可以继续访问, 而使用受信任的组织申请的证书则不会弹出提示页面
3.传送证书(公钥)
这个证书其实就是公钥(其实这个就是非对称加密产生的公钥), 包含了很多信息, 如证书的颁发机构, 过期时间等.
4.客户端解析证书
这里是由客户端的SSL(TSL)来完成的, 首先会检验公钥是否有效, 如果发现异常, 则会弹出一个警告框, 提示证书存在问题, 如果证书没有问题那么就生成一个随机值(对称加密生成的私钥), 然后使用证书对该随机值进行加密(使用非对称产生的公钥加密对称加密生成的私钥保证了私钥的安全性).
5.传送加密信息
这里传送的是用证书加密后的随机值, 目的就是让服务端得到这个随机值(服务端获取到和客户端一样的私钥), 以后客户端和服务端的通信就可以通过这个随机值来进行加密解密了.
6.服务端解密信息
服务端使用生成证书时产生的私钥解密, 得到了客户端传来的随机值(对称加密产生的私钥), 然后把响应内容通过该随机值进行对称加密. 这样服务端和客户端都有私钥, 就能进行加密和解密了.
7.传输加密后的信息
这部分信息是服务端使用私钥加密后的信息, 可以在客户端利用私钥被还原.
8.客户端解密信息
客户端使用之前生成的私钥来解密服务端传来的加密信息, 获取正确内容, 整个过程第三方即使获取了数据, 也无法解密.
RSA:
RSA算法是公开密钥系统的代表, 采用公钥加密, 私钥加密, 是非对称加密。
- 优点:安全性极高. 但是加解密速度慢,
- 缺点:不适合大量数据加密.
AES:
AES是对称加密, 在密钥管理方面, 要求通信前双方都有私钥才能进行加解密。
- 缺点:安全性没有RSA高
- 优点:但是加解密速度要优于RSA, 适合大量数据加密.
https通信是使用RSA加密传输AES密钥,使用AES密钥传输数据。
是一种综合发挥AES和RSA的优点同时避免它们的缺点来实现一种加密方案了.
网友评论