加密双重性:一把钥匙与两把钥匙

我花了多年时间在加密领域中摸索,我不断惊讶于有多少人真正不理解对称加密和非对称加密之间的基本区别。让我为你详细解说,没有典型的企业粉饰。

今天的密码学基本上分为两个阵营:对称世界和非对称世界。非对称方面有两个主要应用——加密和数字签名。

关于这些系统,有一个简单的真相:

  • 对称加密:一个密钥完成所有操作
  • 非对称加密: 两个具有不同角色的不同密钥

关键区别 (故意的)

核心区别简单明了,却深具影响力。对称系统使用单一密钥来加密和解密数据。非对称系统则使用两个数学相关的密钥——一个公钥,一个私钥。

这个看似微小的差异创造了一个完全不同的安全范式。我看到无数开发者在这个概念上挣扎,因为他们没有理解其含义。

当我用对称密钥加密某些东西时,我实际上是在把我房子的主钥匙交给某人,当我分享那个密钥。如果爱丽丝使用对称加密给鲍勃发消息,她必须以某种方式安全地将相同的密钥传递给鲍勃。如果有人在传输过程中截取了那个密钥 - 游戏结束!你的安全性完全被破坏了。

使用非对称加密,我可以将我的公钥给任何人而无需担心。如果爱丽丝使用他的公钥给鲍勃发消息,只有鲍勃的私钥才能解密它。即使黑客获取了鲍勃的公钥,他们仍然无法访问。这种优雅的解决方案解决了困扰对称系统的密钥分发问题。

没有人提到的安全权衡

有一点是教科书通常轻描淡写的:非对称密钥必须比对称密钥长得多才能达到相同的安全性。为什么?因为密钥之间的数学关系。

128位对称密钥提供的安全性大致相当于2048位非对称密钥。这不是打字错误——非对称密钥需要长16倍!这种巨大的差异在现实世界中产生了许多加密爱好者方便地忽视的性能影响。

速度与安全:永恒的斗争

我已经实现了这两个系统,性能差异非常明显。对称加密速度非常快,只需最少的计算资源。它的致命弱点是密钥分发——你如何安全地共享那个密钥?

非对称加密巧妙地解决了分发问题,但在性能上付出了沉重的代价。这些系统在计算上非常昂贵,与其对称对应物相比,速度令人痛苦地慢。

现实世界应用

实用的解决方案?混合系统!像TLS (这样的实际应用程序为安全网站)提供支持,使用非对称加密安全地交换对称密钥,然后切换到更快速的对称加密进行大容量数据传输。

美国政府依赖于AES (对称算法)来处理机密数据,因为它的速度和安全性。同时,加密邮件系统利用非对称加密,因为安全密钥交换比速度更重要。

加密货币误解

我经常遇到的一个让人烦恼的神话是,比特币和其他加密货币使用非对称加密。其实并不是!虽然它们确实使用公钥-私钥对,但这些是用于数字签名,而不是加密。

比特币的数字签名算法 (ECDSA) 并不加密任何东西。您可以在不加密消息的情况下进行数字签名 - 这些是人们不断混淆的两个独立概念。

随着计算威胁的进步,这两种加密方法将继续发展。每种方法在安全生态系统中都有其位置,且都不太可能在短期内消失。未来可能会带来更复杂的混合方法,利用这两种系统的优势。

BTC1.37%
查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
0/400
暂无评论
交易,随时随地
qrCode
扫码下载 Gate App
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)