对称加密
采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。
所谓对称,就是采用这种加密方法的双方使用方式用同样的密钥进行加密和解密。
对称加密的流程如下:
但是,因为加密和解密都使用同一个密钥,如何把密钥安全地传递到解密者手上就成了必须要解决的问题
对称加密的优缺点
优点:算法公开、计算量小、加密速度快、加密效率高
缺点:
- 交易双方都使用同样钥匙,安全性得不到保证
- 对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量呈几何级数增长,密钥管理成为用户的负担。
- 假设两个用户需要使用对称加密方法加密然后交换数据,则用户最少需要2个密钥并交换使用,如果企业内用户有n个,则整个企业共需要n×(n-1) 个密钥。密钥的管理和维护比较困难。
常见的加密算法主要有DES算法,3DES算法,TDEA算法,Blowfish算法,RC5算法,IDEA算法
非对称加密
非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。
对称加密和非对称加密的区别如下:
对称加密与非对称加密
公钥加密,私钥解密
非对称加密的流程:
- 甲方生成一对密钥并将公钥公开,需要向甲方发送信息的其他角色(乙方)使用该密钥(甲方的公钥)对机密信息进行加密后再发送给甲方;
- 甲方再用自己私钥对加密后的信息进行解密。
- 上述为乙方向甲方发送消息的流程。甲方向乙方发送消息流程也如此,甲方首先拿到乙方的公钥,将发送内容进行加密,然后发送给乙方,乙方用自己的私钥进行解密。
应用场景:比如A和B要进行通信,首先A和B都要先生成一对密钥对,并将公钥公开。A发给B消息的时候,A用B的公钥加密消息,用A的私钥签名,B接到消息后,首先用A的公钥验证签名,确认后用自己的私钥解密消息。
非对称加密体系不要求通信双方事先传递密钥或有任何约定就能完成保密通信,并且密钥管理方便,可实现防止假冒和抵赖,因此,更适合网络通信中的保密通信要求。
非对称加密的优缺点:
优点:
- 安全性更高,公钥是公开的,秘钥是自己保存的,不需要将私钥给别人
- 如果企业中有n个用户,企业需要生成n对密钥,并分发n个公钥。
缺点:非对称加密的缺点是加密和解密花费时间长、速度慢,只适合对少量数据进行加密。
参考文章:
网友评论