什么是加密?加密分为算法和秘钥两部分。算法是不变的,秘钥是变化的,看下面的例子。
秘钥:abcedfgh->12345678。
算法:明文中每一位都换成秘钥表中的另一个位。
例如adfh经过加密后为1568。
加密密钥K和解密密钥K’是一样的则为对称加密。
对称加密的优点:加密速度快。
对称加密的缺点:密钥传输不安全。
什么是非对称加密,如下图:
加密密钥K和解密密钥K‘是不一样的则为非对称加密。
非对称加密的优点:不存在密钥传输安全问题。
非对称加密的缺点:加密速度比较慢。
在非对称加密中,加密密钥又叫公钥,解密密钥又叫私钥。看下图:
首先,老王产生了公钥和私钥,然后老王把公钥发给了小张,小李,小林。他们可以对明文加密传输给老王,只有老王有私钥可以进行解密,才能够看到原文。
结合对称加密和非对称加密的优点,在实际的应用中,是怎么样使用的呢?
对称加密密钥传输不安全,那我们就使用非对称加密来传输对称加密的密钥。
非对称加密加密速度慢,我们就使用对称加密来加密数据。
两者结合后,是这样工作的:
1、首先老王产生非对称加密的公钥和私钥。发送公钥给小李。
2、小李产生对称加密的密钥,通过非对称加密的公钥传递给老王。
3、老王使用非对称加密的私钥解密小李传递给他的对称加密的密钥。
4、小李和老王,通过对称加密的密钥来传递数据。