量子密码学

作者: Subhendu Bera

经典密码学基于未经证实的数学假设提供安全性,并依赖于窃听者可用的技术。但是,这些可能不足以在不久的将来保证网络安全。我们需要提供无条件安全性的东西。我们需要量子密码学。

想象一下,您想给朋友发送一条消息,并且您不希望其他人能够阅读该消息。您使用钥匙将消息锁定在一个盒子中,然后将盒子发送给您的朋友。您的朋友也有钥匙可以打开那个盒子,所以他可以轻松地打开盒子并阅读消息。一般来说,这是密码算法使用的技术。将消息锁定在盒子中就像加密,而解锁盒子就像解密。在将消息发送给接收者之前,使用加密算法和密钥对数据进行加密。在接收方,使用反向加密算法对加密数据进行解密。

经典密码算法主要依赖于数学方法来保护密钥传输。它们提供的安全性基于未经证实的假设,并取决于窃听者可用的技术。但是,快速增长的并行和量子技术可能在不久的将来对这些经典密码技术构成威胁。解决这些威胁的方案之一是量子密码学。

什么是量子密码学?量子密码学是一个复杂的话题,因为它引入了大多数人觉得难以理解的东西——量子力学。因此,首先,让我们关注一些您需要了解的基本量子物理学,以便理解本文。

简单的量子物理学

量子,在物理学中,是一个离散的自然单位,或能量、电荷、角动量或其他物理属性的包。例如,光在某些方面表现为连续的电磁波,但在亚微观水平上,它是以离散的量或量子发射和吸收的。这些类似粒子的光包(量子)被称为光子,这个术语也适用于其他形式的电磁能量的量子,例如 X 射线和伽马射线。

关于量子的一件独特的事情是,它们可以同时存在于所有可能的态中。这也适用于光子。这意味着,无论光子可以朝哪个方向自旋——比如,对角线、垂直和水平——它都会同时这样做。处于这种状态的光量子被称为非偏振光子。这就像有人同时向北、南、东、西、上和下移动。这种属性称为叠加。您应该记住的一件事是,测量处于叠加状态的事物会导致它坍缩成确定的状态(所有可能状态之一)。图 1 应该有助于描述叠加。

图 1. 内克尔立方体

查看图 1,您可以识别出四种可能性之一:要么两个正方形都向前突出,要么都向后突出,要么一个向前,另一个向后。每次您查看图表时,只有一种可能性是真的。在某种意义上,所有四种选择都同时存在,但是当您查看图表时,它会坍缩为只有一种。这就是量子叠加的本质。

通过使用偏振滤光片,您可以强制光子呈现其状态之一,或者从技术上讲,使其偏振。如果您使用垂直偏振滤光片,一些光子将被吸收,而另一些光子将从滤光片的另一侧出现。那些没有被吸收的光子将以垂直自旋从另一侧出现。因此,您可以使用合适的滤光片将光子偏振到您需要的方向。

图 2. 偏振光子

量子物理学的基础是不可预测性因素。这种不可预测性很大程度上是由海森堡不确定性原理定义的。该原理指出,某些物理属性对以某种方式相关,即测量一个属性会阻止观察者知道另一个属性的值。但是,当处理用于加密的光子时,海森堡原理可以用于您的优势。当测量光子的偏振时,选择测量方向会影响所有后续测量。关于光子的一点是,一旦它们被偏振,就无法再次准确测量它们,除非使用像最初产生它们当前自旋的滤波器。因此,如果通过对角线滤波器测量具有垂直自旋的光子,则光子要么不会通过滤波器,要么滤波器会影响光子的行为,导致它呈现对角线自旋。从这个意义上讲,关于光子原始偏振的信息丢失了。

图 3. 各种基对偏振光子的影响

在图 3 的图表中,我在最后两个案例中使用了错误的基,您可以看到我改变了两个光子的偏振。

量子信息

比特是经典计算和经典信息的基本概念。量子计算和量子信息建立在一个类似的概念之上:量子比特,或简称 qbit。正如经典比特具有 0 或 1 的状态一样,量子比特就像一个比特,但它处于 0 和 1 之间的叠加态。量子比特的两种可能状态是状态 "|0 >" 和 "|1 >" 。这种表示法称为狄拉克表示法。量子比特可以完全表示为:a|0 > +b|1 >,其中 a2 + b2 = 1。当我们测量量子比特时,我们得到 0 的概率为 a2,得到 1 的概率为 b2

现在考虑一台具有两个量子比特的量子计算机。有四种可能的状态:|00 >、|01 >、|10 > 和 |11 >,其叠加态为 a|00>+b|01>+c|10>+d|11>,其中 a2、b2、c2 和 d2 是在四种状态中的任何一种状态中找到两个量子比特的概率。在量子计算机中,两个比特同时处于所有可能的状态。因此,可以将一个数字添加到这两个比特,这意味着我们可以将该数字添加到 00, 01, 10, 11 并同时计算结果。这种一次操作所有状态的能力使其非常强大。

此处并行操作的数量取决于使用的量子比特的数量。如果使用 N 个量子比特,则可以并行完成 2N 个操作,这种固有的并行性使量子计算机如此之快。但问题是,如何将光子编码为量子比特?我们知道光子在所有可能的方向上都有其自身的自旋。与某些数字系统中一样,我们将 +5 伏视为 1,将 0 伏视为 0,我们可以使用光子的自旋特性将光子编码为量子比特。我们可以使用光子在特定方向上的自旋作为 1,在另一个方向上的自旋作为 0——例如,具有垂直自旋的光子将被视为 1,而具有角自旋的光子将被视为 0。

图 4. 将偏振光子编码为二进制值

量子密码学

在开始描述量子密码学是什么之前,让我介绍一下我在本文中使用的三个名字:Alice、Bob 和 Eve。Alice 发送消息,Bob 接收消息。Eve 在他们之间,试图拦截消息。Eve 所做的是以某种方式收集消息的密钥并解密它。现在,如果 Alice 能够以某种方式将消息的密钥发送给 Bob 而不被拦截,她就可以毫无问题地发送消息。

现在,让我讨论 BB84 协议。它基于发明者 Charles Bennet 和 Gilles Brassard 的名字,于 1984 年发明。量子密码学遵循两个步骤。第一步是发送密钥,第二步是发送消息。在这里,Alice 和 Bob 使用了两种根本不同的通信通道:经典通道和量子通道。经典通道是您在 Internet 上用于传输数据的通道。在经典通道中,Eve 可以观察比特流而不影响数据。但是,量子通道有所不同。它能够以量子的形式发送信息,Eve 无法在不影响数据的情况下观察数据。在 BB84 协议中,密钥通过量子通道发送,但消息通过普通通道发送,但由密钥加密。第一步称为量子密钥分发 (QKD)。在此步骤中,Alice 和 Bob 使用量子通道进行通信。

首先,让我们想象一下 Alice 和 Bob 之间没有 Eve。让我们假设 Alice 使用两种类型的偏振器:一种是对角线偏振器 (X),另一种是直线偏振器 (+)。在直线基中,具有自旋 "|" (即,从上到下)的光子被视为 1,而具有自旋 "-" (即,从左到右)的光子被视为 0。在对角线基中,具有自旋 "/" 的光子被视为 1,而 "\" 被视为 0。图 5 中所示的图表应该有助于您理解我如何将光子表示为二进制值。

图 5. 我的示例中光子的二进制编码

现在 Alice 有一个密钥,对于每个比特,她将选择一个随机基(对角线或直线)来编码要发送的比特。没有人,甚至 Bob 都不知道 Alice 使用的是什么基。Bob 将接收编码的量子比特,Bob 将使用随机基来解码量子比特。如果他使用相同的基,他将获得 Alice 发送的完全相同的比特;否则,他有 50% 的机会获得错误的比特。例如,如果 Alice 使用对角线基来编码 1,并且 Bob 也使用对角线基来解码它,那么他将得到 1。如果他使用直线基,则他有 50% 的机会得到 1,并且有 50% 的机会得到 0。由于 Bob 也使用随机基,因此他有 50% 的机会使用正确的基(即,他将使用 Alice 使用的基)并将准确解码 50% 的量子比特,而对于 50% 错误的基,他将准确解码 25% 的量子比特,这意味着 Bob 将准确解码 75% 的量子比特。

Alice 和 Bob 将使用普通通道交换他们用于每个比特的基,而不会泄露他们的比特。他们可以检查哪些比特他们都使用了相同的基,这些比特将用作密钥。考虑表 1 中所示的示例,其中 Alice 发送密钥 100101。

表 1. Alice 发送密钥 100101
Alice Bob
使用的基 +,X,+,+,X,X +,+,+,X,+,X

在这种情况下,Bob 将密钥解码为 1,0/1,0,0/1,0/1,1。因为 Bob 使用了一些错误的基来测量量子比特,所以在这些情况下他可能会随机获得 0 或 1。然后,他们将与其他人交换他们的基,他们会发现 Bob 在位置 2、4 和 5 中使用了错误的基。因此,他们将使用剩余的比特(第 1、3 和第 6 位)字符串作为密钥——即 101。其余部分很简单,只需使用该密钥加密消息并发送即可。

当 Eve 开始行动时,情况变得危急。由于他们使用公共通道连接,因此 Eve 很可能拦截通信。在这种情况下,与之前的情况一样,Alice 使用任何基编码比特信息并将其发送给 Bob,但现在 Eve 拦截了量子比特。与 Bob 一样,Eve 也有量子比特的解码器。但是 Eve 也不知道 Alice 使用的基,所以像 Bob 一样,她也随机使用基来解码量子比特。Eve 有 50% 的机会使用正确的基,而有 50% 的机会使用错误的基。对于正确的 50%,光子的自旋方向不会受到影响,但对于错误的 50%,光子的自旋方向会发生变化。对于 Eve 使用了正确基的 50% 量子比特,Bob 将使用 25% 的正确基和 25% 的错误基,对于正确的 25% 量子比特,他将获得 25% 的正确量子比特,而对于 Bob 使用的 25% 错误基,他将仅由于概率而获得 12.5% 的正确量子比特。这意味着从 Eve 使用了正确基的第一个 50% 中,Bob 将获得 37.5% 的正确量子比特。对于剩余的 50%,Bob 将再次使用 25% 的正确基和 25% 的错误基。由此,Bob 将获得 12.5% 和 12.5% 的概率,这意味着他将获得 25% 的正确量子比特。因此,当 Eve 在他们之间时,Bob 将有 37.5 + 25 = 62.5% 的准确率。图 6 展示了此计算。

图 6. Eve 拦截时 Bob 的准确率计算

在图 6 中,带有 "**" 的节点,如 C**,表示 Bob 正确解码量子比特的节点,带有 "*" 的节点,如 F*,表示 Bob 错误解码量子比特的节点。可能出现的一个问题是,当 Bob 使用错误的基时,为什么 Bob 获得 12.5% 的准确率(在 E, L 中)?请记住,当您使用错误的基来解码量子比特时,您有 50% 的机会获得 0,并且有 50% 的机会获得 1。按照这个逻辑,Bob 将从 D 获得 12.5% 的准确率。同样,在 I 的情况下,当 Bob 使用了正确的基(相对于 Alice 的基)但 Eve 已经使用错误的基改变了量子比特的偏振时,Bob 有 50% 的机会是正确的,也有 50% 的机会是错误的。

因此,总的来说,Bob 在 I 中获得 12.5% 的正确量子比特,在 J 中获得 12.5% 的错误量子比特。现在他们将匹配他们用于每个量子比特的基,他们将使用 Bob 使用了正确基的比特,并且他们将丢弃 Bob 使用了错误基的比特。现在他们需要检查 Eve 是否在监听。为此,他们将使用匹配密钥的子集(在丢弃 Bob 使用错误基的比特之后),并使用普通通道与其他人进行比较。如果 Eve 不在那里,Bob 将有 100% 的准确率;否则,Bob 在基比较中将有 75% 的准确率。如果准确率为 100%,他们将丢弃他们用于匹配的比特集,其余的比特字符串将用作加密消息的密钥。如果未观察到 100% 的准确率,他们将再次尝试使用 QKD 获取密钥。

在表 2 中,Alice 使用上述两种偏振类型向 Bob 发送密钥“01101011”。

表 2. Alice 使用两种偏振类型向 Bob 发送密钥 01101011
Alice 的基 + X + + X X X X
Alice 的数据 0 1 1 0 1 0 1 1
Eve 的基 + + X + X X X +
Eve 的数据 0 1 0 0 1 1 1 0
Bob 的基 + + + X + X X X
Bob 的数据 0 0 0 0 0 1 1 1

现在 Alice 和 Bob 将比较他们的基,他们会发现 Bob 正确猜测了第 1、3、7 和 8 个基。因此,他们将丢弃剩余位置的比特——即第 2、4、5 和 6 位。现在密钥是“0011”。他们将选择前两个比特进行匹配,然后他们会发现密钥中的第二个比特是不同的,这意味着 Eve 在他们之间。然后他们将重复相同的过程,直到他们获得 100% 的密钥匹配。当他们获得密钥后,他们可以轻松地使用密钥加密消息并通过公共网络发送它。

局限性

在实践中,量子通道也会受到噪声的影响,并且很难区分噪声和窃听。

如果 Eve 愿意,她可以拦截量子通道,只是为了不允许 Alice 和 Bob 通信。

光纤上没有使用放大器来传输量子信号。这样的设备会以与窃听者相同的方式中断通信。这反过来意味着 QKD 的范围是有限的。

根据不可克隆定理,QKD 只能提供 1:1 连接。因此,链接的数量将增加 N(N – 1)/2,其中 N 表示节点数。

研究

研究人员已经开发此类系统十多年了。DARPA 量子网络于 2003 年 10 月在 BBN 实验室全面投入运营,自 2004 年 6 月以来一直在六个节点上持续运行,通过哈佛大学、波士顿大学和 BBN 之间的电信光纤运行。DARPA 量子网络是世界上第一个量子密码网络,也可能是第一个在都市区域提供连续运行的 QKD 系统。

NIST 对光学量子比特的创建、传输、处理和测量进行核心研究。它展示了高速 QKD 系统,该系统使用一次性密码本密码生成用于信息加密和解密的密钥,并将其扩展到三节点量子通信网络。

东芝的 量子密钥分发系统 在基于量子密码学的基于光纤的计算机网络上为密码应用提供数字密钥。特别是,它允许在超过 100 公里长的标准电信光纤链路上进行密钥分发,并且比特率足以在 50 公里距离内生成每秒 1 兆比特的密钥材料——足以覆盖都市范围 ()。

日本量子密码学的现状包括基于 DPS-QKD 的城际 QKD 测试平台,在 97 公里上进行的单向 BB84 系统现场测试,具有无噪声 WDM 时钟同步等(“迈向新一代量子密码学——日本战略”,作者:Nukuikita,Koganei)。

中国的 973 计划和 863 计划资助了对 QKD 研究的支持(后量子密码学:第三届国际研讨会,Pqcrypto 2010,德国达姆施塔特,2010 年 5 月 25 日至 28 日,会议记录,第 1 版)。

在欧洲,基于量子密码学的安全通信 (SECOQC, 2004–2008) 项目也是为此目的而资助的 (http://vcq.quantum.at/publications/all-publications/details/643.html)。

2004 年,ID Quantique 成为世界上第一家将量子密钥分发系统推向商业市场的公司。ID Quantique 的 QKD 产品与第 2 层以太网加密结合使用,以确保日内瓦的选举安全。其他公司,如 MagicQ、QinetiQ 和 NEC,也正在该领域工作。各公司声称提供或正在开发 QKD 产品,但公开信息有限。然而,这种情况很可能在不久的将来发生变化。

资源

W. Chen, H.-W. Li, S. Wang, Z.-Q. Yin, Z. Zhou, Y.-H. Li, Z.-F. Han 和 G.C. Guo (2012)。“量子密码学”,应用密码学和网络安全,Jaydip Sen 博士(编辑),ISBN:978-953-51-0218-2,InTech,可从 http://www.intechopen.com/books/applied-cryptography-and-network-security/quantum-cryptography 获取

Adrian Cho 的“量子密码学进入快车道”:http://news.sciencemag.org/sciencenow/2010/04/quantum-cryptography-hits-the-fa.html

Peter Rohde 的“我们需要量子密码学吗?”:http://www.peterrohde.org/2012/06/29/do-we-need-quantum-cryptography

Douglas Eadline 的“量子计算的一点 (q)bit”:http://www.linux-mag.com/id/8753

Boaz Tamir 博士的“什么是量子计算机?”:http://thefutureofthings.com/column/5/what-is-a-quantum-computer.html

Michael A. Nielsen 和 Isaac L. Chuang 的量子计算和量子信息,剑桥大学出版社,2011 年。

“量子通信”:http://w3.antd.nist.gov/qin/index.shtml

加载 Disqus 评论