对称加密算法与非对称加密算法的区别

对称加密算法与非对称加密算法的区别
对称加密算法
对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。
对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。此外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。在计算机专网系统中广泛使用的对称加密算法有DES、IDEA和AES。

不对称加密算法
不对称加密算法使用两把完全不同但又是完全匹配的一对钥匙—公钥和私钥。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。不对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。显然,采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已随机生成的公钥送给发信方,而自己保留私钥。由于不对称算法拥有两个密钥,因而特别适用于分布式系统中的数据加密。广泛应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA。以不对称加密算法为基础的加密技术应用非常广泛。
来自:http://blog.712100.com/23611/viewspace-16217
个人理解与总结:
1、基于DES加密算法理解对称加密算法
从DES加密算法可以体会到:对称加密算法在对数据进行加密和解密的过程中,都是使用了数据接收方的密钥(公钥和私钥),具体做法就是,数据发送方使用接受方的公钥加密数据,而数据接收方使用自己的私钥机密数据,其实围绕的就是数据接收方的密钥。
2、基于RSA加密算法理解非对称加密算法
通过上面对非对称加密算法的叙述,我感觉理解不是很深刻。总体的感觉就是:
(1) 基于RSA加密算法比较麻烦,因为RSA加密算法是基于一个大数n的,需要计算出一个密钥对(公钥和私钥),但是这里公钥和私钥还是一对数,即公钥为(e,n),私钥为(e,d).
(2) 在数据发送方与接受发执行数据传输之前,保证了双方公钥的分发管理,加强了公钥的安全性(比之于在对称加密算法中:公钥就是完全公开的),这个特点确实加强了加密数据的发送方的身份真实性。
还有待于继续深入理解。

猜你喜欢

转载自jadymrhu.iteye.com/blog/1981570