对称加密与非对称加密:有什么区别?
密码学是一门研究和实践安全通信的学科,需要保护通信免受对手攻击。密码系统可以利用复杂的数学,也可以像学校操场上经常出现的语言游戏 “猪拉丁文 “一样简单。密码学的用途是保护你想说的话不被爱管闲事的窃听者窃取。当然,我们日常使用的网上银行、ATM 卡和智能手机中的各种加密技术都是建立在一系列数学算法的基础上,这些算法的设计目的就是为了保证数字数据的安全。在这些算法中,主要有两种形式:对称加密和非对称加密。人们在听到间谍和密码时通常想到的概念就是对称加密,但事实上,在确保通信安全方面,对称加密要复杂得多。那么,对称加密和非对称加密有什么区别呢?让我们一探究竟。
对称密钥加密
对称密钥加密法之所以被称为对称密钥加密法,是因为它使用相同的秘密或密钥来加密和解密数据。对称密码有不同的形式,但如果加密和解密密钥相同,就属于这一类。
在这个例子中,我们看到爱丽丝使用相同的密钥加密文件,而鲍勃使用相同的密钥解密文件。
并非所有加密算法的功能都相同,对称加密主要有两种,即流密码和块密码。两者的主要区别在于数据位的加密方式。流密码会将所有数据字节与密钥流生成的伪随机数(因此得名)逐一单独加密,直到全部数据都加密为止。另一方面,分组密码会将不变数量的字节分组并加密。如果最后一组的大小小于其他区块,则会对该组进行 “填充”,使其达到相应的区块大小。流密码往往比块密码更快,也可以在功能较弱的硬件上运行,但更容易出现安全风险。
对称密钥加密技术的著名例子
最著名的对称密钥算法可能是 Rijnael/AES。AES(高级加密标准)是一种块密码,作为 DES 的替代品成为默认的对称加密协议。在赢得 NIST 的 DES 后继竞争后,AES 迅速成为行业标准。如今,AES256(具有 256 位密钥的 AES)已被密码学家和安全专家视为具有量子抗性。
AES 中的轮函数示例。
何时使用对称加密?
对称加密因其速度快,一般用于加密大量数据。例如,在 Tuta 中,所有用户数据都在客户端使用AES256 对称加密进行加密。如果您正在使用 WiFi 连接,您可能会在家中使用对称加密,因为 WPA 建立在对称加密系统的基础上。对称加密在与其他方通信时会遇到困难,因为必须有一种安全的方式来共享加密密钥。这就是非对称密钥加密发挥作用的地方。
非对称或公开密钥加密
1976 年,惠特菲尔德-迪菲(Whitfield Diffie)和马丁-赫尔曼(Martin Hellman)发表了一篇突破性的论文,非对称密钥交换首次进入公众视野。非对称加密也被称为 “公钥 “加密,它使用两个密钥而不是一个共享密钥。在公用密钥加密模式中,公用密钥可用于加密信息,而接收者的私人密钥将用于解密信息。非对称密钥加密特别适用于互联网通信,因为公钥的设计是公开的,不需要像对称加密密钥那样受到保护。
非对称密钥加密的流行例子
许多广为人知的加密算法都属于这一类。RSA 密码系统、SSH 和 TLS/SSL 协议以及 PGP 程序都是非对称加密技术的流行范例。RSA 一直是行业标准,但最近随着人们对创建抗量子加密技术的追求,RSA 已不再受青睐。
这幅图显示了爱丽丝和鲍勃如何使用私人和公共密钥对加密和解密数据。
何时使用非对称加密?
非对称加密主要用于在互联网上发送加密密钥。如果使用对称加密对信息内容进行了加密,则需要与信息接收者安全地共享秘密。这就是非对称加密。公钥加密比对称加密慢,因此加密和解密数据往往需要更多资源。由于结合使用不同种类的密钥(公钥和私钥)以满足更高的安全要求,因此具有更高的安全性,而且由于密钥的大小通常不会太大(与大型文档、图像或视频相比),因此可以用来安全地传输用于解密较大数据体的对称密钥。
这种混合密码系统通常用于信息应用中,使用对称密钥对数据体进行加密,而非对称加密则用于共享解密和访问加密数据所需的秘密。
密码学是网络隐私和安全的关键
密码学是一个庞大的领域,具有丰富的数学深度和复杂性。正确使用加密协议是保护数据和网络隐私的基石。您无需了解加密的复杂性,就可以开始夺回您的隐私。Tuta 让加密技术的使用变得快速而简单。
只需轻松点击几下,您就可以开始使用我们强大的后量子加密技术来夺回您的隐私权。
了解有关 Tuta 所用加密算法的更多信息,请查看我们的详细加密页面。