原文:TechCPP/problems/对称加密和非对称加密的区别都有那些?.md
参考:密码学笔记
密钥
- 对称加密/单钥加密(private key cryptography):使用同一个密钥进行加密和解密。这意味着加密方和解密方必须事先共享同一个密钥,并且保证这个密钥的安全。
- 非对称加密/双钥加密(public key cryptography):使用一对密钥,一个公开密钥(公钥)用于加密,一个私有密钥(私钥)用于解密。公钥可以公开分享,而私钥必须保持私密。
加密速度
- 对称加密:通常更快,因为它使用较简单的算法来处理大量数据。
- 非对称加密:由于其复杂的数学运算,尤其是在处理大量数据时,比对称加密慢得多。
安全性
- 对称加密:虽然对称加密算法通常很难破解,但密钥的管理和分发过程可能导致安全漏洞。
- 非对称加密:提供了更高的安全性,因为即使公钥被公开,没有私钥也无法解密信息(从公钥推算出私钥,是很困难或者是不可能的)。不过,实现上更为复杂,需要更小心地保护私钥。
使用场景
- 对称加密:适用于需要快速处理大量数据的场景,如文件加密、数据库加密、网络数据传输加密等。
- 非对称加密:常用于安全敏感的通信中,如数字签名、SSL/TLS 证书验证、安全电子邮件等。由于其速度较慢,通常用于加密少量数据或用于加密对称加密中使用的密钥。
典型算法
- 对称加密算法:AES(高级加密标准)、DES(数据加密标准)、3DES(三重数据加密算法)、RC4 等。
- 非对称加密算法:RSA、ECC(椭圆曲线密码学)、Diffie-Hellman 密钥交换协议、ElGamal 等。
通用的单钥加密算法为 DES(Data Encryption Standard),通用的双钥加密算法为 RSA(Rivest-Shamir-Adleman)。
标签:私钥,密钥,对称,非对称,加密算法,加密 From: https://www.cnblogs.com/Higurashi-kagome/p/18416721