公开密钥加密也称为非对称密钥加密,该加密算法使用两个不同的密钥:加密密钥和解密密钥。前者公开,又称公开密钥,简称公钥。后者保密,又称私有密钥,简称私钥。这两个密钥是数学相关的,用某用户的文件加密密钥加密后所得的文件只能用该用户的解密密钥才能解密。

公开密钥给文件加密的过程:

假设两个用户A,B进行文件传输,A先发送文件给B,然后B发送文件给A。

1. B先产生一对加密密钥k1a和k1b,前者用来给文件加密,后者用来解密。
2. B把加密密钥k1a发送给A;(因为k1a只能用来加密文件,截获方无法通过它来解密文件并读取密文)
3. A用加密密钥k1a加密一个文件,使之变成加密文件c1;
4. A把加密文件c1发送给B;
5. B用解密密钥k1b解密文件,并读取解密后的文件;
6. A产生一对加密密钥k2a和k2b,前者用来加密文件,后者用来解密文件。
7. A把加密密钥k2a发送给B;
8. B用加密密钥k2a加密一个文件,使之变成加密文件c2;
9. B把加密文件c2发送给A;
10. A用解密密钥k2b解密文件,并读取解密后的文件;

公开密钥加密的优点:

与对称密钥加密相比,优点在于无需共享的通用密钥,解密的私钥不发往任何用户。即使公钥在网上被截获,如果没有与其匹配的私钥,也无法解密,所截获的公钥是没有任何用处的。

公开密钥加密与对称密钥加密的区别:

在对称密钥加密中,对一个文件的加密密码和解密密码都是相同的,所以发送者需要发送一个加密文件之前,必须先发送密钥给接收者,这样接收者才能解密这条文件。

小知识之密钥:密钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的数据。