HTTPs中为什么要使用非对称加密和对称加密两种加密方式?
非对称加密的性能相对对称加密来说会慢,比较消耗系统资源。https将两种加密结合了起来。
对称加密
加密和解密共用同一个密钥的方式称为对称加密,也叫做共享密钥加密
非对称加密
非对称加密又称作公开密钥加密,它很好的解决了对称加密密钥被截取的问题。
非对称加密采用一对非对称的密钥,一把叫做私有密钥,一把叫做公开密钥。
使用非对称加密,发送密文一方使用对方的共有密钥进行加密处理;对方收到加密信息后,再使用自己的私有密钥进行解密。
HTTPS采用混合加密机制
HTTPS采用非对称加密和对称加密混合的加密机制。

非对称加密
优点:
非对称加密采用公有密匙和私有密匙的方式,解决了http中消息保密性问题,而且使得私有密匙泄露的风险降低。
因为公匙加密的消息只有对应的私匙才能解开,所以较大程度上保证了消息的来源性及消息的准确性和完整性。
缺点:
非对称加密时需要使用到接收方的公匙对消息进行加密,但是公匙不是保密的,任何人都可以拿到,中间人也可以。
那么中间人可以做两件事,第一件是中间人可以在客户端与服务器交换公匙的时候,将客户端的公匙替换成自己的。这样服务器拿到的公匙将不是客户端的,而是中间人的。服务器也无法判断公匙来源的正确性。
中间人可以不替换公匙,但是他可以截获客户端发来的消息,然后篡改,然后用服务器的公匙加密再发往服务器,服务器将收到错误的消息。
网友评论