对称加密和非对称加密(to be continued)

1:对称加密

对称加密的加密方和解密方需要约定一个相同的秘钥(加密秘钥和解密秘钥相同)数据发信方将原始数据和加密秘钥一起经过加密算法处理后,将复杂的加密结果发送给接收方。收信方使用同一份秘钥,相同的算法的逆算法来对密文进行解密

特点:算法公开,计算量小,加密速度快,加密效率高

缺点:双方使用同一份秘钥,安全性得不到保证,每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量呈几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。

具体算法:DES,算法3DES算法......


2:非对称加密

对称加密算法在加密和解密时使用的是同一个秘钥;而非对称加密算法需要两个密钥来进行加密和解密,这两个秘钥是公开密钥(publickey,简称公钥)和私有密钥(privatekey,简称私钥)。

公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。

基本过程:

1、乙方生成一对密钥(公钥和私钥)并将公钥向其它方公开。

2、得到该公钥的甲方使用该密钥对机密信息进行加密后再发送给乙方。

3、乙方再用自己保存的另一把专用密钥(私钥)对加密后的信息进行解密。乙方只能用其专用密钥(私钥)解密由对应的公钥加密后的信息。

在传输过程中,即使攻击者截获了传输的密文,并得到了乙的公钥,也无法破解密文,因为只有乙的私钥才能解密密文。

在非对称加密中使用的主要算法有:RSA

(类似于三次握手)

B想要向A发数据

B-->> AB:我想向你发数据,请给我你的公钥)

A-->> BA:我生成了一对公私钥,我把公钥发给你,你用公钥加密数据)

B-->> AB:我已经用你给我的公钥加密了数据,请接受)

B-->> A A:从我的公钥池中找到匹配的公钥,然后去找公钥对应的私钥,然后用私钥解密)


猜你喜欢

转载自blog.csdn.net/ivalue/article/details/79927508