对称加密
又称作私钥加密。(举例:家里大门开门和锁门用的是同一把钥匙)加密和解密使用相同的密钥。密钥:在加密算法当中,将明文转换为密文,或者密文转换为明文的时候,需要用到的参数。分为公钥和私钥。
常见的对称加密算法有:AES(wifi密码)、DES(wifie密码)、RC5(电视遥控器)
* DES Data Encryption Standard
* AES: Advanced Encryption Standard
特点:在对称加密算法中,双方使用的密钥相同,要求解密方事先必须知道加密密钥。其特点是算法公开、计算量小、加密速度快、加密效率高,适合加密比较大的文件。不足之处是,通信双方都使用同样的密钥,安全性得不到保证。此外,用户每次使用该算法,需要保证密钥的唯一性,使得双方所拥有的密钥数量很大,密钥管理较为麻烦。同样,只有一把密钥,如果密钥暴露,文件就会被暴露。
非对称加密
与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥和私有密钥。
每个人拥有这两个密钥,公开密钥对外公开,任何人都可以获得;私有密钥不公开,单独给指定用户的。
如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;
如果用私有密钥对数据进行加密,那么只有对应的公开密钥才能解密。
也就是说,如果某个用户得到了公钥加密后的信息,只能用该用户的解密私钥才能解密。
如果知道了其中一个,并不能计算出另外一个,因此如果公开了一对密钥中的一个,并不会危害到另外一个的秘密性质。
RSA加密算法是最常用的非对称加密算法。另外,还有美国国家标准局提出的DSA。
特点:非对称加密算法的保密性比较好,消除了最终用户交换密钥的需要,但加密和解密花费时间长、速度慢,它不适合于对文件加密而只适合于对少量数据进行加密。
单向加密
该算法在加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,密文无法解密。只有重新输入明文,并经过同样的加密算法处理,得到相同的密文并被系统重新识别后,才能真正解密。
特点:该算法计算复杂,通常只在数据量有限的情形下使用,如广泛应用在计算机系统中的口令加密。近年来,单向加密的应用领域正在逐渐增大。
常见的:MD5加密(RSA公司发明),SHA(Secure Hash Algorithm)(美国国家安全局设计)
私钥加密