网络传输加密机制

HTTPS采用混合加密

一、对称加密

加密和解密同用一个密钥的方式就叫对称加密,也称为共享密钥加密

例如:A和B是进行通信的双方

假设A手握一把密钥 key1,那么A需要克隆一把相同的密钥 key1'

在第一次通信中,A将报文连同 key1'一起发送给B

此后:A和B则分别使用 key1、key1' 分别对接收/发送的报文进行解密/加密

对称密钥加密的优点在于:

加密算法公开、计算量小、加密速度快

缺点在于:

1、转发密钥的通信若被监听,则密钥可能落入攻击者之手

2、通信双方需要使用其他人不知道的密钥,这会使得双方持有的钥匙数量巨大,难以管理和维护

下面举个例子来简要说明一下对称加密的工作过程。甲和乙是一对生意搭档,他们住在不同的城市。由于生意上的需要,他们经常会相互之间邮寄重要的货物。为了保证货物的安全,他们商定制作一个保险盒,将物品放入其中。他们打造了两把相同的钥匙分别保管,以便在收到包裹时用这个钥匙打开保险盒,以及在邮寄货物前用这把钥匙锁上保险盒。

上面是一个将重要资源安全传递到目的地的传统方式,只要甲乙小心保管好钥匙,那么就算有人得到保险盒,也无法打开。这个思想被用到了现代计算机通信的信息加密中。在对称加密中,数据发送方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。接收方收到密文后,若想解读原文,则需要使用加密密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密。

二、非对称加密

通信双方使用一把私有密钥和一把公开密钥,也称为公开密钥加密

顾名思义:任何人都可以获得公开密钥,但私有密钥不能让其他人知道

例如:B希望自己发送给A的报文被加密

假设A手握公钥 key2 和私钥 key2'

首先,A将报文主体连同 key2 一起发送给B

此后,B向A发送的报文都将使用 key2 加密

而被 key2 上锁的报文 只有A手上的 key2' 才能解密

同理:当A想要回复B时,正好相反
此时A就使用B的公钥对数据进行加密
而B就用自己的私钥进行解密

非对称加密很好地解决了对称加密的问题:

它消除了通信双方交换密钥的需要,进一步保证了通信的安全性

然而,非对称加密的加密解密速度非常慢,算法复杂

HTTPS采用的混合加密机制 则充分利用了两者的优势

三、混合加密机制

在交换密钥的环节使用非对称加密,之后的通信则使用对称加密

例如:A手握一对非对称密钥(公钥key3、私钥key3'),B手握一对对称密钥(key4、key4')

阶段1:交换密钥-使用非对称加密

1、A将公钥 key3 发送给B

2、B将下一阶段加密/解密用的 key4' 放在报文中,并使用公钥 key3 对报文进行加密

3、A使用私钥 key3' 解密报文,得到 key4'

阶段2:数据通信-使用对称加密

A和B分别使用 key4' 和 key4对接收/发送的报文进行解密/加密


一方面,第一阶段的非对称加密 保证了对称密钥的安全性

另一方面,第二阶段的对称加密 可以提高加密/解密处理的速度,提高数据传输的效率


然而,这种混合加密机制还是存在一些问题

那就是:无法证明第一阶段派发的公钥 是货真价实的公钥

解决方式:请看 简述HTTPS(三):数字证书

链接:https://www.jianshu.com/p/add499400d95

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值