了解HTTPS的原理之前,我们要先理解下对称加密和非对称加密
在对称加密算法中,加密和解密使用的密钥是相同的。也就是说,加密和解密使用的是同一个密钥。因此,想要实现对称加密算法那么就必须要保证双方拥有同一个密钥,并且密钥不能泄漏
在非对称加密算法中,加密使用的密钥和解密使用的密钥是不相同的。一把是作为公开的公钥,另一把是作为谁都不能给的私钥。公钥加密的信息,只有私钥才能解密。私钥加密的信息,只有公钥才能解密
而这两种密钥中对称加密算法相比非对称加密算法效率要高、性能好,所以交互的场景下多用对称加密。但是如何能让之前毫无关联的客户端和服务端之间使用同一对私钥来进行交互呢?请看下方这个图:
根据对称加密和非对称加密两种算法的特点,假设你是一个黑客,在上面的这些过程中你可以攻破这个流程么