HTTPS传输协议原理

我们常常在使用网上银行时看到的连接都是以“https”开始的,那么这个https是什么呢?这其实是表示目前连接使用了SSL进行加密,能保证客户端到服务器端的通信都在被保护起来,那么浏览器是如果实现的呢?下面让我们来介绍一下SSL基本的实现方法。

两种基本的加密算法类型

1、对称加密

对称加密:密钥只有一个,加密解密为同一个密码,且加解密速度快,典型的对称加密算法有DES、AES等,示意图如下:
HTTPS传输协议原理_第1张图片
对称加密

2、非对称加密(公私钥加密)

密钥成对出现(且根据公钥无法推知私钥,根据私钥也无法推知公钥),加密解密使用不同密钥(公钥加密需要私钥解密,私钥加密需要公钥解密),相对与对称加密速度较慢,典型的非对称加密算法有RSA、DSA等,示意图如下
HTTPS传输协议原理_第2张图片
image

HTTPS如何加密

根据上面的两种加密方法,现在我们就可以设计一种无法让他人在互联网上知道你的通讯信息的加密方法:

  • 1、在服务器端存在一个公钥及私钥
  • 2、客户端从服务器取得这个公钥
  • 3、客户端产生一个随机的对称密钥
  • 4、客户端通过公钥对对称密钥加密(非对称加密)
  • 5、客户端发送到服务器端
  • 6、服务器端接受这个密钥并且以后的服务器端和客户端的数据全部通过这个密钥加密(对称加密)
    HTTPS传输协议原理_第3张图片
    HTTPS通信时序图

你可能感兴趣的:(HTTPS传输协议原理)