量子计算(九)—— BB84 协议

假设 Alice 想与远方的 Bob 实现一次保密的通信。传统密码学通常利用一道“很难算”的数学题来实现加密:没有密钥的窃听者不一定算不出密钥,只是在可接受的时间里算不出来11 甚至算出密钥时,双方的通信内容早已不是秘密。但量子密钥分发(Quantum Key Distribution. QKD)却另辟蹊径,从另一个角度保证通信的安全性:只要通信者能够发现窃听,就能保证通信的保密性。

BB84 是最经典的量子密钥分发算法。Charles H. Bennett 和 Gilles Brassard 在 1984 年提出它 [1],因此协议取两人姓氏的首字母与年份命名。他们还在 1993年提出了量子隐形传态,该算法我们已在超密编码与量子隐形传态中详细介绍过。两位量子通信的先驱也于 2025 年获得了图灵奖。BB84 本身不负责加密长篇消息,它负责让 Alice 和 Bob 生成一串共享随机数,并判断生成过程中是否出现了过多的窃听或噪声。得到这串随机数之后,他们才把它交给一次一密等经典加密方法。

我们将首先介绍密码系统,了解保密性的层级、实现完美保密的一次一密方法,以及为什么当前经典加密方法不使用一次一密。然后介绍 BB84 协议是如何运行的,解释它为什么能实现发现窃听、且能使用不可信信道实现一次一密、最终实现完美保密。最后,我们将讨论 BB84 的实际实现问题,以及墨子号使用的诱骗态 BB84 如何解决这些问题。

图 1 Charles H. Bennett 和 Gilles Brassard

一、密码系统

1. 密码系统设计的目标

日常说一个密码“安全”,往往只是说:以目前公开的算法、设备和预算,无法在有效的时间内破解它。现代网络中的对称加密算法(Symmetric Encryption Algorithm)22 典型的如 Advanced Encryption Standard (AES)和公钥密码(Public-key Cryptography)33 典型的如 RSA大多属于这一类。它们的安全不是来自“数学上绝对不可能”,而是来自“攻击所需的计算量大得不现实”。这称为计算安全(Computational Security)。

计算安全已经足够支撑绝大多数现实系统,但它终究带着假设。新的算法、实现漏洞、更强的计算机,甚至大规模量子计算机,都可能改变原先的难度判断。例如, RSA 的安全性依赖于大整数分解的困难性,但 Shor 算法可以在量子计算机上高效分解大整数。若量子计算机足够强大,RSA 就不再安全。

还有一种更强的安全:即使窃听者 Eve 拥有无限算力,她看到密文以后,也无法获得任何关于明文的新信息。这称为信息论安全(Information-Theoretic Security)44 也称为无条件安全(Unconditional Security)或香农安全(Shannon Security)。其中最干净、最严格的情形称为完美保密(Perfect Security)。

2. 一次一密实现完美保密

设明文、密钥和密文分别记为随机变量 𝑀、𝐾 和 𝐶。所谓完美保密,可以这样通俗地理解:Eve 看完密文以后,对明文的判断和没看之前完全一样。

例如,在看到密文之前,Eve 认为某条消息有 10% 的可能出现;看完密文后,这个概率仍然是 10%。密文没有帮助她排除任何可能。写成概率公式就是:对任意可能的明文 𝑚 和已经出现的密文 𝑐,都有

𝑃(𝑀=𝑚|𝐶=𝑐)=𝑃(𝑀=𝑚).

这等价于说 𝑀 与 𝐶 相互独立,也可以写成互信息 𝐼(𝑀;𝐶)=0。

那么,完美保密应当如何实现?答案是一次一密(One-Time Pad,OTP)。在二进制体系下,一次一密的加密解密极其简单,把 𝑛 位明文 𝑀 与 𝑛 位密钥 𝐾 逐位异或即可:

𝐶=𝑀⊕𝐾.

对密文再异或一次同一把密钥即可解密:

𝐶⊕𝐾=𝑀⊕𝐾⊕𝐾=𝑀.

但一次一密之所以能实现完美保密,真正关键的不是异或运算本身,而是密钥必须满足三个条件:

注 1.(一次一密的三个条件)
  1. 每一位都来自均匀、独立且不可预测的随机过程;
  2. 密钥拥有不少于消息的熵;
  3. 同一段密钥只使用一次。

下面逐一说明为什么需要这些条件。

定理 1.(一次一密的完美保密性)
若 𝐾 与 𝑀 独立,并且在所有 𝑛 位字符串上等概率取值,那么 𝐶=𝑀⊕𝐾 对任意明文分布都满足完美保密。

证明. 假定明文是 𝑚、密文是 𝑐。要让 𝑚 加密后恰好变成 𝑐,密钥只能是 𝑘=𝑚⊕𝑐。因为全部 2𝑛 把密钥等可能出现,而且密钥的选择不受明文影响,所以

𝑃(𝐶=𝑐|𝑀=𝑚)=𝑃(𝐾=𝑚⊕𝑐)=12𝑛.

无论明文 𝑚 是什么,Eve 看到某个密文 𝑐 的概率都一样。由全概率公式,𝑃(𝐶=𝑐)=12𝑛。再使用 Bayes 公式:

𝑃(𝑀=𝑚|𝐶=𝑐)=𝑃(𝐶=𝑐|𝑀=𝑚)𝑃(𝑀=𝑚)𝑃(𝐶=𝑐)=𝑃(𝑀=𝑚).
这正是完美保密的定义。
□

3. 密钥的均匀性与独立性

如果某些密钥比另一些密钥更容易出现,上面的对称性就被破坏了。对一次一密来说,

𝑃(𝐶=𝑐|𝑀=𝑚)=𝑃(𝐾=𝑚⊕𝑐).

右边若不处处相等,某些“明文加密文”的组合就会比其他组合更常见,Eve 就可以据此调整猜测,从而获得关于明文的额外信息。

密钥还必须与明文独立。为了看出这一点,举一个简单的例子:考虑均匀出现的两位明文,并让密钥按下面的方式依赖明文:

𝑀𝐾𝐶=𝑀⊕𝐾
000000
011011
100111
111100

单独统计 𝐾,四种密钥各出现一次,看起来完全均匀。但 𝐶=00 会告诉 Eve:明文只能是 00 或 11;𝐶=11 则会把明文限制在 01 或 10。密文泄露了明文两位是否相同。问题就在于密钥虽然均匀,却不是独立生成的。

4. 密钥熵的下界

也许有人会想:要保护任意 𝑛 位消息,为什么不能用一把很短的密钥,再设计一种更聪明的算法来加密与解密?香农给出了答案:只要同时要求无误解密和完美保密,密钥的不确定性55 即信息熵,𝐻(𝑋)=−∑𝑥∈𝑋𝑝(𝑥)log𝑝(𝑥)就不能少于明文的不确定性 [2]。

定理 2.(香农密钥熵下界)

任何能够无误解密且满足完美保密的密码系统,都有

𝐻(𝐾)≥𝐻(𝑀).

证明. 完美保密意味着看到密文没有减少明文的不确定性,因此

𝐻(𝑀|𝐶)=𝐻(𝑀).

知道密钥和密文后能够无误解密,因此 𝐻(𝑀|𝐾,𝐶)=0。于是

𝐻(𝑀)=𝐻(𝑀|𝐶)≤𝐻(𝑀,𝐾|𝐶)=𝐻(𝐾|𝐶)+𝐻(𝑀|𝐾,𝐶)=𝐻(𝐾|𝐶)≤𝐻(𝐾).

所以密钥熵至少与明文熵一样大。

□

应当注意,这里比较的是熵,不是文件大小。把一个只有一百种可能的口令存进 256 位字段,不会让它自动拥有 256 比特熵。

5. 密钥复用的风险

若同一把 𝐾 加密两条消息,

𝐶1=𝑀1⊕𝐾,𝐶2=𝑀2⊕𝐾,

那么 Eve 把两个密文异或,密钥就被消掉了:

𝐶1⊕𝐶2=𝑀1⊕𝑀2.

她虽然还没直接得到两条明文,却已经知道它们之间的关系。而在现实中,自然语言、图片和文件头等等都有很强的规律;猜中其中一小段,就可能逐步猜出两条明文。若其中一条明文已知,密钥立刻可由 𝐾=𝐶1⊕𝑀1 得到,另一条消息也就随之暴露。

至此,虽然一次一密看上去既简单又完美,但真正麻烦的地方也已经暴露了:Alice 和 Bob 必须事先共享一串与消息同样长、真正随机、从未使用过的秘密密钥。但问题是:若他们本来就有一条能绝对安全地传输这些长密钥的信道,那么为什么不直接用那条信道传送明文呢?

这就是密钥分发难题。而 BB84 协议通过可检测窃听这一特性,使得通信双方能够在不可信信道上共享绝对安全的密钥,从而使得一次一密的完美保密成为可能。


二、BB84 协议

1. BB84 的量子态与测量基

BB84 协议在物理上可以用光子的偏振实现。为了把物理图像和量子计算记号对应起来,我们使用两组基:

𝑍={|0⟩,|1⟩},𝑋={|+⟩,|−⟩},

其中

|+⟩=|0⟩+|1⟩2,|−⟩=|0⟩−|1⟩2.

可以把 |0⟩,|1⟩ 想像成水平和垂直偏振(→,↑),把 |+⟩,|−⟩ 想像成 45° 和 135° 偏振(↗︎,↖︎)。

表 2 量子字母表

基比特量子态一种偏振约定
𝑍0|0⟩→
𝑍1|1⟩↑
𝑋0|+⟩↗︎
𝑋1|−⟩↖︎

字母表中最重要的特性是同一组基里的两个状态相互正交。Alice 若发送 |0⟩66 即使用了 𝑍 基, 而 Bob 在 𝑍 基下测量,那么他必定得到 0;但 Bob 若误用 𝑋 基以测量,就无法确定得到的是 0 还是 1 了,因为用 𝑋 基测量 |0⟩,得到 |+⟩ 与 |−⟩ 的概率各是 12。并且,测量完成以后,原来的 |0⟩ 也不复存在,状态已经坍缩到刚才测得的 𝑋 基状态。

这不是仪器不够精确,而是物理学在量子力学中镌刻下的铁律。BB84 正是利用这种现象实现窃听检测。接下来我们首先看看 BB84 的密钥生成流程,然后再分析为什么窃听会被发现。

2. 无窃听情况下 BB84 的密钥生成流程

现在我们先让 Alice 和 Bob 完整地通信一次,且不存在窃听者 Eve。假设她们使用一张“通信账本”记录了消息前六个位置上的信息77 包括随机比特、随机基、测量结果等;随着协议推进,账本会逐行增加。

在 BB84 协议中,Alice 与 Bob 之间实际需要两条信道:量子信道传输光子,Eve 可能在这里截获、测量或替换光子信号;经典信道用来公开讨论基和误码,它不需要保密,但必须经过身份认证,不允许 Eve 篡改消息或冒充通信者。

A.阶段一:Alice 制备并发送量子态

Alice
Alice
① 生成随机密钥 𝑆
② 生成随机测量基 𝑀𝐴
③ 按字母表制备光子
阶段一 · 量子发送
量子信道
Alice ⟶ Bob ,发送偏振态
Bob
Bob
④ 接收光子序列

Alice 先产生随机比特串 𝑆 作为密钥,再独立产生随机基串 𝑀𝐴。她把每一位的“比特”和“基”输入到前面的量子字母表 表 2 中查询,得到要发送的量子态。例如,第 2 位是比特 0、使用 𝑋 基,所以发送 |+⟩;第 3 位是比特 1、使用 𝑍 基,所以发送 |1⟩。

位置123456…
随机密钥 𝑆001101…
Alice 的基 𝑀𝐴𝑍𝑋𝑍𝑋𝑍𝑋…
发送的光子|0⟩|+⟩|1⟩|−⟩|0⟩|−⟩…

Alice 将这些量子态在量子信道上传输。注意:不是比特串 𝑆,也不是基串 𝑀𝐴。此时 Bob 和 Eve 都不知道 Alice 每一列选了哪一组基。

B. 阶段二:Bob 独立选择测量基

Alice
Alice
等待中
阶段二 · 随机测量
量子信道
Bob 逐个接收光子并测量
Bob
Bob
① 随机生成测量基串 𝑀𝐵
② 逐个测量光子并记录测量结果

Bob 在量子信道上每收到一个光子,就随机选择 𝑍 或 𝑋 基测量,并把基记为 𝑀𝐵。他不能等 Alice 公布 𝑀𝐴 后再测,因为量子态不能被可靠地复制并无限期保留;在通常的 BB84 流程中,他必须先完成测量,之后双方才开始经典讨论。

下面给出一次 Bob 可能的测量记录。第 2、5、6 位使用了错误的基,因此表中的结果只是本次测量碰巧得到的随机值;重新做一次实验,它们可能改变。

位置123456…
Alice 的基 𝑀𝐴𝑍𝑋𝑍𝑋𝑍𝑋…
接收的光子|0⟩|+⟩|1⟩|−⟩|0⟩|−⟩…
Bob 的基 𝑀𝐵𝑍𝑍𝑍𝑋𝑋𝑍…
Bob 的结果011100…

第 1、3、4 位中,Bob 与 Alice 使用同一测量基,信道若是理想信道88 即信道不会造成光子丢失、或概率性的偏振变化等,光子如何进入就如何传出,那么 Bob 必然恢复 Alice 的比特。第 2、5、6 位中两人的基不同,Bob 的测量结果就各有 12 概率为 0 或 1;即使结果碰巧与 Alice 相同,例如第 5 位,也不具有可靠性。

C. 阶段三:双方公开基并筛选比特

Alice
Alice
② 接收到 𝑀𝐵,对比我的基串 𝑀𝐴
③ 告知哪些位的基相同,并保留筛选秘钥
阶段三 · 公开测量基并筛选比特
经过认证的经典信道
Alice ← Bob ,测量基串 𝑀𝐵
Alice → Bob ,哪些位上的测量基相同
Bob
Bob
① 发送基串 𝑀𝐵
④ 收到相同测量基的位置,并保留筛选秘钥

量子传输全部结束后,Alice 与 Bob 才在经典信道上公开并对比 𝑀𝐴 和 𝑀𝐵。他们只比较基,不公开原始比特。基相同的列标记为“保留”,基不同的列标记为“丢弃”。

位置123456…
Alice 的比特001101…
Alice 的基 𝑀𝐴𝑍𝑋𝑍𝑋𝑍𝑋…
Bob 的基 𝑀𝐵𝑍𝑍𝑍𝑋𝑋𝑍…
Bob 的结果011100…
筛选决定保留丢弃保留保留丢弃丢弃…
筛选密钥0–11––…

删去第 2、5、6 位后,Alice 和 Bob 都得到筛选密钥(Sifted Key)99 也称作生密钥(Raw Key) 011。真实协议会发送大量量子态,从而能够留下足够长的筛选密钥和足够多的检测样本。

由于 Alice 和 Bob 选择的测量基各自独立且均匀,因此某一位被保留的概率是

𝑃(同基)=𝑃(𝑍,𝑍)+𝑃(𝑋,𝑋)=14+14=12.

所以发送 𝑁 个光子后,平均约有 𝑁2 位进入筛选密钥。

注 2.(公开测量基会泄露密钥吗?)
不会。知道某个位置使用 𝑍 基,只说明比特由 |0⟩ 或 |1⟩ 编码,并没有说明究竟是 0 还是 1。更重要的是,若 Eve 实施窃听,必须当即做测量1010 这是由于下一节将要讲到的量子不可克隆定理;而测量基要等量子传输结束后才公布,Eve 不能回到过去重新选择测量基。

D. 阶段四:双方公开样本并估计误码

Alice
Alice
我这里𝑥到𝑦的筛选秘钥是:
0110100011011010
阶段四 · 公开对比样本
经过认证的经典信道
Alice ⟷ Bob
逐位比较,若误码率低于阈值,则保留未公开部分,继续执行剩余步骤。
Bob
Bob
我这里𝑥到𝑦的筛选秘钥是:
0110100011011010
完全相同,误码率低于阈值,可以执行剩余步骤

Alice 与 Bob 从筛选密钥中随机抽取一部分位置,在经典信道上公开这些位置的比特。例如,假设抽到的样本如下,他们会看到两边完全一致1111 在理想情况下:

位置𝑥𝑥+1𝑦−1𝑦
Alice0110100011011010
Bob0110100011011010
比较相同相同相同相同

这些样本已经公开,不能再进入最终密钥,双方会把它们删除,保留的剩余串作为最终密钥,称为绝对安全密钥。

接下来我们在过程中引入窃听,并分析为什么窃听会被发现。

注 3.(误码率阈值的选择)

以上分析都假设信道是理想的。因此,只要 Alice 和 Bob 在比对中发现任何误码,就可以断定存在窃听者 Eve。但在现实世界中,由于不存在理想信道,信道噪声会导致光子在传输过程中发生偏振变化,从而产生误码,因此 BB84 协议还会允许一定的误码率。在考虑噪声影响后,本阶段“保留的剩余串”就不是最终密钥1212 因为还存在误码,而是仍然称为筛选秘钥。Alice 与 Bob 还需要通过纠错和隐私放大,才能得到最终的绝对安全密钥。

另一方面,窃听行为也会引入误码,因此依据误码率与阈值的比较、从而判断是否保留密钥,也是保证通信安全性的关键一步。那么误码率的阈值设置为多少呢?论文[3] 给出了一个理论上可行的上限 11%。原因我们之后分析。不过,结论是可以现在说明的:

  1. Eve 可以通过高明的窃听手段,将误码率控制在至多 25% 以下。她能窃听获得的信息越多,误码率就越高;
  2. 当误码率控制在大约 11% 时,Eve 获得的信息恰好等于 Alice 与 Bob 之间的纠错信息量;
  3. 当误码率低于 11% 时,Alice 与 Bob 仍然可以通过纠错和隐私放大处理筛选秘钥,得到一把 Eve 完全未知的绝对安全密钥;
  4. 当误码率高于 11% 时,Alice 与 Bob 无法通过纠错和隐私放大得到一把 Eve 完全未知的绝对安全密钥,因此必须放弃本次通信。

3. 量子不可克隆定理

窃听者 Eve 也许会想:我不测量,先把每个光子复制一份;等 Alice 公布基以后,再用正确的基测量副本。但很可惜,量子不可克隆定理堵住了这条路 [4]。

定理 3.(量子不可克隆定理)

不存在任何物理过程(即幺正演化)能够精确复制任意未知的量子态。具体而言,对于希尔伯特空间 ℋ︀ 中的任意未知量子态 |𝜓⟩,不存在幺正算符 𝑈 以及固定的辅助态 |Σ⟩,使得对于所有可能的 |𝜓⟩ 均有:

𝑈(|𝜓⟩|Σ⟩)=|𝜓⟩|𝜓⟩.
即不存在一个通用的量子克隆机,可以将任意输入态完整复制一份而不破坏原始态。

证明. 使用反证法。假设存在一个统一的酉操作 𝑈,能够复制任意未知状态:

𝑈(|𝜓⟩|Σ⟩)=|𝜓⟩|𝜓⟩,𝑈(|𝜑⟩|Σ⟩)=|𝜑⟩|𝜑⟩.

而酉操作保持内积,因此将上两式的左边和右边分别做内积,应当相等:

⟨𝜑|𝜓⟩=⟨𝜑|𝜓⟩2.
这个等式只在 ⟨𝜑|𝜓⟩ 为 0 或 1 时成立,也就是两个态是正交的、或是相同的态时才成立,即对一般的未知态几乎都不成立。
□

而 BB84 的跨基状态既不正交也不相同,例如 |⟨0|+⟩|=12,所以不存在一台能复制全部四种 BB84 状态的机器。Eve 想要复制光子、等待测量基公布后再进行测量获得密钥的美梦也就随之破碎了。

4. 窃听引发的误码率

窃听者 Eve 虽然不能复制光子,但她仍然可以通过以下三种方式实现窃听:

注 4.(三种窃听方式)
  1. 截获重发(Intercept-and-Resend):Eve 截获 Alice 发送的光子,测量后再将其发送给 Bob;
  2. 透明攻击(Transparent Attack):Eve 让探针与信号光子发生量子纠缠,不截断信道,随后延迟测量探针;
  3. 集体攻击(Collective Attack):Eve 对整批光子施加相同的幺正操作,并存储所有探针,最后联合测量所有探针。

(1) 截获重发攻击

首先来看最直观的截获重发攻击,这也是最笨重的一种。Eve 截住每个光子,随机用 𝑍 或 𝑋 基测量,再按照自己的结果制备一个新光子发给 Bob1313 Eve 只能将自己的测量结果依据自己选择的基来制备新光子。例如,假设 Eve 在 𝑍 基上测量得到 0,那么她只能在 𝑍 基上制备一个 0 状态的光子,即 |0⟩ 发给 Bob。。 1414 当然 Eve 不是不能在四种量子态中随机选择一个来发给 Bob,但她若想要降低误码率以减小被发现的风险,就只能这么做。(虽然从后续分析的视角来看,不论她是否有降低误码率的意愿,都必定会被发现窃听)

我们只需统计 Alice 和 Bob 选择同一测量基、最终留下的那些位。在这些位置上,Eve 的测量基有两种可能:

Eve 的测量基概率发生了什么Bob 出错概率
与 Alice 相同12Eve 得到正确比特,并按正确基重发0
与 Alice 不同12Eve 得到随机结果,原态被投影到错误的基12

在第二行中,前后两个 12 来自不同的原因。第一个是 Eve 猜错 Alice 基的概率;第二个则是错误基状态被 Bob 用正确基测量后,得到错误比特的概率。因此筛选密钥中的误码率就是

𝑃(错|Alice、Bob 同基)=12×12=14.

这便是常说的 25% 量子比特误码率(QBER)。

若 Eve 只截获比例为 𝑓 的信号,其余信号不动,那么误码率则变为

𝑄=𝑓4.

她少碰一些光子,确实可以减少误码,但同时也只能获得更少的信息。BB84 的关键不是让 Eve 无法靠近信道,而是把她获得的信息和她留下的扰动绑在一起。

假设 Eve 截获全部信号,Alice 和 Bob 随机公开检查 𝑚 个筛选位。每个样本没有暴露错误的概率是 34,所以所有样本都恰好没出错的概率为

𝑃(漏检)=(34)𝑚.

𝑚=20 时约为 0.00317,𝑚=50 时约为 5.66×10−7。因此,Alice 和 Bob 只要公开几十个样本,就能以极高的置信度发现窃听。

(2) 透明攻击与集体攻击

透明攻击是一种极为精巧的窃听方式。在这种攻击中,Eve 并不截断 Alice 和 Bob 之间的量子信道,也不替换或重发光子。相反,她为每一个经过的信号光子配备一个辅助量子比特——称为探针(Probe),初始态记为 |𝐸0⟩,并让该探针与信号光子发生一个幺正相互作用 𝑈𝐵𝐸,从而使两者产生量子纠缠。对于信号光子的计算基态,该幺正作用可一般性地表示为

𝑈𝐵𝐸|0⟩|𝐸0⟩=1−𝐷|0⟩|𝐸00⟩+𝐷|1⟩|𝐸01⟩,𝑈𝐵𝐸|1⟩|𝐸0⟩=1−𝐷|1⟩|𝐸11⟩+𝐷|0⟩|𝐸10⟩,

其中 𝐷∈[0,1] 刻画了Eve的探针与信号光子之间的纠缠强度,亦即为 Eve 的测量所引入的扰动幅度。由于Eve并未截断信道,信号光子依然能够到达 Bob 并被探测,因此信道宏观上呈现“透明”特征。然而,这一纠缠操作不可避免地引入误码:当 Alice 发送 |0⟩ 而 Bob 以 Z 基测量时,Bob 测得 |1⟩ 的概率恰好为 𝐷,因此透明攻击在 Z 基下引入的量子比特误码率即为 𝑄=𝐷。

Eve 面临一个基本的权衡关系。她希望从探针中提取尽可能多的信息,但又不想引入过高的误码率以致暴露自己。根据Holevo限,Eve能从单次透明攻击的探针中提取的最大信息量 𝐼𝐸 由探针系统的冯·诺依曼熵决定,其上界可近似写为二进制熵函数

𝐼𝐸≤𝐻2(𝐷)=−𝐷log𝐷−(1−𝐷)log(1−𝐷),

该函数随 𝐷 单调递增(在 𝐷≤0.5 区间内)。这意味着扰动越强,Eve能窃取的信息越多,但引入的误码率也越高。因此,透明攻击的实质是Eve在“信息获取量”与“可检测性”之间做出最优权衡。

与透明攻击对每个光子独立处理不同,集体攻击将攻击视野从单个量子比特扩展至整个密钥块。在集体攻击中,Eve仍然对每一个信号光子施加相同的幺正操作 𝑈𝐵𝐸⊗𝑁,但她不再将各探针视为独立个体。相反,Eve 将所有 𝑁 个探针作为一个整体纠缠态加以保存,并在获得 Alice 和 Bob 公开的全部经典信息之后,对整个探针系统执行一次联合测量,而非对每个探针单独测量。这种联合测量能够利用探针之间的量子关联提取出比单独测量更多的信息。在单粒子层面,集体攻击引入的误码率与透明攻击在形式上完全一致,仍然有 𝑄=𝐷。然而,两者的信息提取效率存在本质差异:透明攻击受限于单次测量的信息量,而集体攻击通过联合测量能够达到 Holevo 限所给出的最大信息提取量。因此,集体攻击被公认为比透明攻击更强的攻击模型,也是安全性证明中更严苛的测试标准。

无论是透明攻击还是集体攻击,安全密钥生成的条件都可以通过同一个判据来刻画,即量子比特误码率 𝑄 必须低于约 11% 的理论阈值 1515 设量子比特误码率为𝑄,则Bob的信息量为𝐼(𝐴:𝐵)=1−𝐻2(𝑄),而Eve在最优集体攻击下能获取的最大信息量达到Holevo限𝐼(𝐸:𝐵)=𝐻2(𝑄),其中𝐻2(𝑄)=−𝑄log2𝑄−(1−𝑄)log2(1−𝑄)为二元香农熵;安全密钥率𝑅=𝐼(𝐴:𝐵)−𝐼(𝐸:𝐵)=1−2𝐻2(𝑄),要求𝑅>0即𝐻2(𝑄)<1/2,解超越方程−𝑄log2𝑄−(1−𝑄)log2(1−𝑄)=0.5,数值得𝑄≈0.11,此即BB84协议约11%安全误码率阈值。 。该阈值源自 Shor 与 Preskill 的纠缠纯化安全性证明 [3],其核心逻辑由 Devetak-Winter 密钥率公式所刻画:当 𝑄<11% 时,Alice和Bob之间的互信息量超过了Eve所能获取的最大信息量,从而使得后续的纠错和隐私放大过程能够将Eve的信息量压缩到可忽略的水平,最终生成无条件安全的密钥。若协议能在集体攻击下被证明安全,则通过量子de Finetti定理可将该结论推广至最一般的相干攻击——即Eve对整串光子施加任意全局幺正操作的最强攻击形式,从而为量子密钥分发的安全性证明奠定严格的数学基础。

5. 纠错与隐私放大

QBER 参数估计只回答了“这次传输是否足够安全”,并不会自动消除筛选密钥中的差错,也不会抹去 Eve 已经获得的信息。Alice 和 Bob 还要在经过认证的经典信道上完成信息纠错与隐私放大,才能得到可供密码算法使用的绝对安全密钥。下面用一组 8 比特的筛选密钥说明整个过程;实际系统处理的字符串通常长得多。

(5) 纠错

Alice
Alice
𝑋𝐴=11001010
阶段五:纠错
经过认证的经典信道
Alice ⟷ Bob
公开校验信息,定位并修正差错
Bob
Bob
𝑋𝐵=11000010→11001010

纠错的目标是使双方密钥完全一致。假设 Alice 和 Bob 在参数估计后分别保留筛选秘钥

𝑋𝐴=11001010,𝑋𝐵=11000010.

这两串密钥的第 5 位不同。Alice 和 Bob 不能直接公开并逐位比较,否则 Eve 也会得到完整密钥。他们需要公开少量校验信息,在不暴露全部比特的前提下定位差错。

Cascade 是一种典型的交互式纠错方法 [5]。双方首先使用相同的随机置换重新排列密钥,再按照约定长度把密钥分块。对每个分块,双方只公开该块的奇偶校验值,即块内所有比特的模 2 和。若两个校验值不同,则该分块中含有奇数个差错;若两个校验值相同,则其中含有偶数个差错,也可能没有差错。

在这个例子中,双方比较后四位。Alice 的后四位是 1010,Bob 的后四位是 0010,相应的奇偶校验值为

1⊕0⊕1⊕0=0,0⊕0⊕1⊕0=1.

两个校验值不同,说明第 5–8 位之间存在奇数个差错。双方接着比较该分块的前一半,即第 5、6 位:

1⊕0=1,0⊕0=0.

校验值仍然不同,因此差错位于第 5、6 位之间。再比较其中一个位置便可确定第 5 位发生了翻转。Bob 修正该位后得到

𝑋𝐵=11001010=𝑋𝐴.

一次分块可能漏掉同一块中的偶数个差错,因此 Cascade 不会只执行一轮。双方会改变随机置换和分块长度,重复上述过程;如果后续轮次发现一个新差错,还要回查先前与该位置有关的分块。实际系统也常采用 LDPC 码代替 Cascade:Alice 公开校验矩阵 𝐻 对密钥计算出的伴随式 𝑠=𝐻𝑋𝐴,Bob 再结合 𝑠 和自己的密钥进行译码。两种方法的目的相同,区别在于 Cascade 需要多轮交互,而 LDPC 通常只需传送一次伴随式。

纠错算法结束后,双方还要验证结果是否确实一致。Alice 随机选取一个通用哈希函数 ℎver,公开函数标识和标签 𝑡𝐴=ℎver(𝑋𝐴);Bob 计算 𝑡𝐵=ℎver(𝑋𝐵)。若两个标签不同,双方立即丢弃本轮密钥;若标签相同,则接受纠错结果。只要标签足够长,两串不同密钥碰巧产生相同标签的概率就不超过预先选定的 𝜀cor。

奇偶校验值、LDPC 伴随式和验证标签都通过经典信道公开,Eve 同样能够看到。这些信息虽然没有直接给出完整密钥,却缩小了 Eve 的猜测范围,因此必须把公开信息总量记为 leakEC,并在隐私放大时扣除。此时 Alice 和 Bob 持有相同的密钥,称为协商密钥(Reconciled Key)。

(6) 隐私放大

Alice
Alice
𝑋𝐴=𝑋𝐵=11001010
阶段二:隐私放大
经过认证的经典信道
Alice ⟷ Bob
协商选择公开的二通用哈希函数处理协商密钥
Bob
Bob
𝐾𝐴=𝐾𝐵=001

此时双方已经拥有相同字符串,但 Eve 仍可能从量子窃听、纠错信息和验证标签中掌握一部分信息。隐私放大的任务,是主动舍弃一部分长度,把剩余的不确定性集中到一把更短的密钥中。

Alice 随机选取一个二通用哈希函数1616 二通用哈希函数族是一组哈希函数,使得从中随机选取一个函数时,任意两个不同输入被映射到任意指定输出对的联合概率不超过 1𝑚2,从而保证两个输出的统计独立性接近于理想均匀分布。其中 𝑚 是函数的输出空间大小。

ℎPA:{0,1}𝑛→{0,1}ℓ,ℓ<𝑛,

并通过认证的经典信道公开函数标识。哈希函数本身不需要保密;Alice 和 Bob 对相同的纠错后密钥应用同一个函数,便会得到相同的较短输出。二通用性保证任意两个不同输入发生哈希碰撞的概率不超过 2−ℓ,从而可以把 Eve 对长字符串掌握的局部信息压缩掉。

一种常见实现是使用随机 Toeplitz 二进制矩阵 𝑇,在模 2 意义下计算 𝐾=𝑇𝑋。例如,用下面的 3×8 矩阵把 8 bit 输入压缩为 3 bit:

𝑇=[101100100110100111000110],𝑋=[11001010].

逐行计算模 2 内积可得

𝐾=𝑇𝑋=[001].

因此,Alice 和 Bob 都把 11001010 压缩为最终密钥 001。公开矩阵不会削弱这一过程的安全性,因为安全性并不依赖 Eve 不知道 𝑇,而依赖输入密钥在给定 Eve 所持量子信息后仍然具有足够的条件最小熵。

压缩长度不能凭经验选择。量子剩余哈希引理给出一种典型的有限密钥界 [6]:

ℓ≤𝐻min𝜀(𝑋|𝐸)−leakEC−2log21𝜀PA.

𝐻min𝜀(𝑋|𝐸) 表示在考虑 Eve 所持量子信息后,字符串 𝑋 仍具有多少可提取的随机性;leakEC 是纠错与验证阶段公开的信息量;𝜀PA 控制隐私放大失败的概率。只要最终长度 ℓ 满足这一上界,输出密钥就与理想的均匀随机密钥足够接近,并且与 Eve 的信息近似独立。这里的“接近”由安全参数明确量化,而不是依靠主观判断。

以上所有经典消息都必须经过身份认证,否则 Eve 可以分别冒充 Alice 和 Bob,建立两条彼此独立的量子链路。QKD 因而通常消耗少量已有认证密钥,生成数量更多的新密钥;它解决的是可信身份之间的密钥持续更新,而不是在双方毫无认证基础时自动排除中间人。


三、墨子号与诱骗态 BB84

标准 BB84 的安全论证通常从理想单光子源出发,而高速量子通信系统普遍使用相位随机化的弱相干脉冲。后者能够稳定地产生高重复频率的光脉冲,但其光子数并不固定,其中的多光子成分会带来光子数分裂攻击。诱骗态方法通过随机改变脉冲强度,利用不同强度之间的联合统计约束单光子事件,从而把弱相干光源纳入可证明的安全分析 [7], [8]。墨子号星地量子密钥分发实验采用的正是这一方案。

1. 弱相干脉冲的多光子漏洞

平均光子数为 𝑥 的相位随机化弱相干脉冲,可以写成不同光子数态的统计混合:

𝜌𝑥=∑𝑛=0∞𝑃𝑥(𝑛)|𝑛⟩⟨𝑛|,𝑃𝑥(𝑛)=𝑒−𝑥𝑥𝑛𝑛!.

因此,其真空、单光子和多光子概率分别为

𝑃𝑥(0)=𝑒−𝑥,𝑃𝑥(1)=𝑥𝑒−𝑥,𝑃𝑥(𝑛≥2)=1−(1+𝑥)𝑒−𝑥.

墨子号信号态的平均光子数是 𝜇=0.8。代入以后:

𝑃𝜇(0)≈0.4493,𝑃𝜇(1)≈0.3595,𝑃𝜇(𝑛≥2)≈0.1912.

这意味着约 44.9% 的脉冲为真空态,约 36.0% 含有一个光子,另有约 19.1% 含有两个或更多光子。平均光子数小于 1 只描述大量脉冲的平均值,并不意味着每个非空脉冲都是单光子态。

多光子脉冲使光子数分裂攻击(photon-number-splitting attack, PNS)成为可能。Eve 可以先进行不破坏编码信息的光子数测量;若脉冲含有多个光子,她保留其中一个并把其余光子送往 Bob。Alice 公布编码基后,Eve 再用正确的基测量所保留的光子。由于同一脉冲中的光子携带相同的偏振编码,这种攻击能够泄露完整比特值,却不必像截获重发攻击那样引入 25% 的误码率。

在高损耗信道中,Eve 还可以阻断不利于窃听的单光子脉冲,只转发多光子脉冲,并把额外损失隐藏在正常链路损耗之中。因此,仅依据总探测率和总误码率,Alice 与 Bob 无法可靠地区分信道衰减和选择性攻击。这正是诱骗态分析必须解决的问题。

2. 诱骗态约束 PNS 攻击

诱骗态方案要求 Alice 在每个时钟周期随机选择若干种平均光子数。墨子号实验采用信号态、弱诱骗态和真空态三种强度:

脉冲类型平均光子数发送概率用途
信号态𝜇=0.850%主要用于形成密钥
弱诱骗态𝜈=0.125%帮助估计单光子事件
真空态𝜔=025%测量暗计数和背景光

光强选择与 BB84 的基、比特选择相互独立。三类脉冲使用相同的偏振编码规则;诱骗态既不是新的量子比特状态,也不是新的测量基。强度信息只用于传输后的统计分类。

安全分析依赖一个关键条件:除光子数分布外,不同强度脉冲在波长、脉宽、发射时刻和空间模式等自由度上应当不可区分。在给定光子数 𝑛 的条件下,Eve 因而不能判断脉冲原本来自信号态还是诱骗态。于是,同一个 𝑛 光子产额 𝑌𝑛 和误码率 𝑒𝑛 必须同时适用于各个强度类别。

Bob 完成探测后,Alice 才公布每个位置所用的强度。双方据此分别统计各类脉冲的探测率和误码率。由于三种强度对应不同的 Poisson 光子数分布,同一组 𝑌𝑛 和 𝑒𝑛 必须同时解释全部观测数据。任何针对特定光子数的选择性转发都会在多组统计量中留下相互关联的变化,因而受到可计算的约束。

3. 三强度统计估计单光子贡献

令 𝑌𝑛 表示 Alice 发出 𝑛 光子脉冲后 Bob 获得探测结果的条件概率,称为 𝑛 光子产额;令 𝑒𝑛 表示这类探测事件的误码率。对于平均光子数为 𝑥 的脉冲,实验直接测得的总增益 𝑄𝑥 和误码增益 𝐸𝑥𝑄𝑥 满足

𝑄𝑥=∑𝑛=0∞𝑒−𝑥𝑥𝑛𝑛!𝑌𝑛,
𝐸𝑥𝑄𝑥=∑𝑛=0∞𝑒−𝑥𝑥𝑛𝑛!𝑌𝑛𝑒𝑛.

𝑄𝑥 是发出强度 𝑥 后 Bob 获得探测结果的频率,𝐸𝑥𝑄𝑥 是其中错误探测所占的频率。真空态不携带编码光子,其探测主要来自背景光和探测器暗计数,因此可用来估计 𝑌0=𝑄0;这类随机探测通常满足 𝑒0≈12。

对满足 𝜇>𝜈>0 的真空加弱诱骗方案,可以由观测量 𝑄𝜇,𝑄𝜈,𝑄0 推出单光子产额的保守下界 [9]:

𝑌1𝐿=𝜇𝜇𝜈−𝜈2[𝑄𝜈𝑒𝜈−𝑄𝜇𝑒𝜇𝜈2𝜇2−𝜇2−𝜈2𝜇2𝑌0].

再利用弱诱骗态的错误统计,得到单光子误码率的上界:

𝑒1𝑈=𝐸𝜈𝑄𝜈𝑒𝜈−𝑒0𝑌0𝜈𝑌1𝐿.

信号态中由单光子造成的增益至少为

𝑄1𝐿=𝜇𝑒−𝜇𝑌1𝐿.

这些界限不需要识别某一个具体脉冲是否为单光子态,而是从全部强度类别的联合统计中,估计单光子探测事件的最小数量及其最大误码率。安全证明随后只把这一保守估计内的单光子贡献计入安全密钥,从而把 Eve 对信道的最不利操作包含在参数范围之内。

在渐近条件下,一个常用的信号态每脉冲密钥率下界为

𝑅≥𝑞[−𝑄𝜇𝑓(𝐸𝜇)ℎ2(𝐸𝜇)+𝑄1𝐿(1−ℎ2(𝑒1𝑈))].

式中,𝑞 是基筛选比例,𝑓(𝐸𝜇)≥1 是纠错效率因子。第一项扣除纠正全部信号态筛选密钥所需公开的信息,第二项给出单光子事件经隐私放大后可保留的安全信息。实际过轨数据长度有限,实验分析还必须根据给定的安全参数对统计涨落作有限密钥修正;不能直接把渐近公式当作最终密钥长度。

4. 墨子号的星地量子密钥分发

墨子号于 2016 年 8 月发射,运行在高度约 500km 的低地球轨道。星地 QKD 实验采用下行链路,由卫星发送量子态,河北兴隆地面站接收并测量。主要实验参数如下:

项目参数
量子光波长约 848.6nm,脉宽约 200ps
重复频率100MHz
平均光子数信号态 0.8、弱诱骗态 0.1、真空态 0
发送概率50%、25%、25%
望远镜口径星上发射端约 300mm,地面接收端约 1m
光束发散角约 10mu rad
过轨距离约 645km 到 1200km

星载发射机使用八个光纤耦合半导体激光器,其中四个产生信号态的四种 BB84 偏振,另四个产生弱诱骗态的四种偏振;选择真空态时不发送量子脉冲。不同激光器的波长、时序、空间模式和功率必须经过校准,以降低由旁信道特征造成的状态可区分性。该要求直接对应上一小节的安全假设:给定光子数后,脉冲类别不应被 Eve 从其他自由度识别。

在 100MHz 重复频率、50% 信号态概率和 𝜇=0.8 平均光子数下,信号态的平均发射光子数为

108×0.5×0.8=4×107.

因此,论文所述的每秒 4000 万个信号光子是统计平均光子总数,并不表示每秒产生 4000 万个确定的单光子脉冲。

星地链路的距离和相对运动在一次过轨期间持续变化,因而量子态传输还依赖若干配套系统。卫星与地面站利用信标光完成捕获、跟踪和瞄准,使量子光束保持在接收望远镜视场内;时间同步系统把探测限制在预期到达时刻附近,以抑制夜空背景和暗计数;动态偏振补偿则修正卫星姿态、望远镜指向和光学元件引起的参考系旋转。上述系统共同维持有效探测率和低误码率,是诱骗态统计能够成立的实验基础。

一次过轨按照以下顺序完成:卫星接近地面站后调整姿态,双方通过信标建立并锁定光链路;达到规定仰角后,星载光源发送随机交错的信号态、弱诱骗态和真空态;地面站记录有效探测的到达时间、测量基和测量结果;量子传输结束后,双方再经认证的经典信道完成强度公布、基筛选、诱骗态参数估计、纠错、错误验证和隐私放大。

2016 年 12 月 19 日的一次过轨中,有效数据采集持续 273s,星地距离由约 645km 增加到 1200km。测得的信号态 QBER 约为 1.1%,弱诱骗态 QBER 约为 1.8%;经过诱骗态估计和完整后处理后,实验得到 300939 bit 安全密钥 [10],对应平均安全成码率

300939 bit273 s≈1.10 kbit/s.

论文还报告了 2016 年 9 月至 2017 年 5 月间 23 次不同天气条件下的过轨结果,典型 QBER 约为 1% 至 3%。在约 1200km 距离下,星地链路的密钥传输效率比按 0.2dB/km 损耗估算的同长度直连光纤高约 20 个数量级。其原因不是自由空间不存在衰减,而是大部分传播路径位于真空中,主要损耗集中在有限的大气路径、光束衍射和收发端效率;这与光纤损耗沿全程累积的情形不同。

5. 墨子号的洲际可信中继

单次星地 QKD 只在卫星与当前可见的地面站之间建立密钥。要使两个相距遥远且无法同时与卫星建立量子链路的地面站共享密钥,墨子号实验采用可信中继。卫星先后与地面站 A、B 执行诱骗态 BB84,分别得到密钥 𝐾𝑆𝐴 和 𝐾𝑆𝐵,再通过认证的经典信道公布

𝑇=𝐾𝑆𝐴⊕𝐾𝑆𝐵.

地面站 A 已知 𝐾𝑆𝐴,因此可计算

𝑇⊕𝐾𝑆𝐴=𝐾𝑆𝐵,

从而获得与 B 相同的密钥。对于不知道任一星地密钥的外部窃听者,公开值 𝑇 不足以恢复 𝐾𝑆𝐴 或 𝐾𝑆𝐵。研究团队据此在地面距离约 7600km 的中国与奥地利之间建立共享密钥,并演示了一次一密图片传输和加密视频会议 [11]。

这一方案的安全边界由“可信”二字限定。卫星在协议执行期间能够接触两把星地密钥,因此卫星平台、密钥处理模块及存储过程都必须可信。如果卫星被攻破,攻击者可以恢复地面站之间的共享密钥。因此,该实验实现的是以可信卫星为中继的洲际密钥分发,而不是地面站之间的端到端量子安全,也不是设备无关量子密钥分发。

墨子号实验表明,诱骗态 BB84 可以在高损耗、距离快速变化的千公里星地链路上生成安全密钥,星载弱相干光源、微弧度量级跟踪、时间同步和动态偏振补偿也能够在轨协同运行。这个结论并不取消协议的安全前提:经典信道仍须认证,有限样本仍须进行统计涨落分析,筛选密钥仍须经过纠错和隐私放大,光源与探测器的实际偏差也必须纳入安全模型。

由此,三个层次形成完整的逻辑关系:一次一密规定了实现完美保密所需的密钥条件;BB84 利用量子态不可无扰动测量的性质生成并检验共享随机比特;诱骗态方法进一步处理弱相干光源的多光子成分,使单光子贡献能够从观测数据中得到保守估计;墨子号则验证了这套协议在地面光纤难以直接覆盖的洲际尺度上具有工程可行性。

  • [1] C. H. Bennett and G. Brassard, “Quantum Cryptography: Public Key Distribution and Coin Tossing,” in Proceedings of the IEEE International Conference on Computers, Systems and Signal Processing, Bangalore, India, 1984, pp. 175–179.
  • [2] C. E. Shannon, “Communication Theory of Secrecy Systems,” Bell System Technical Journal, vol. 28, no. 4, pp. 656–715, 1949, doi: 10.1002/j.1538-7305.1949.tb00928.x.
  • [3] P. W. Shor and J. Preskill, “Simple Proof of Security of the BB84 Quantum Key Distribution Protocol,” Physical Review Letters, vol. 85, no. 2, pp. 441–444, 2000, doi: 10.1103/PhysRevLett.85.441.
  • [4] W. K. Wootters and W. H. Zurek, “A Single Quantum Cannot Be Cloned,” Nature, vol. 299, pp. 802–803, 1982, doi: 10.1038/299802a0.
  • [5] G. Brassard and L. Salvail, “Secret-Key Reconciliation by Public Discussion,” in Advances in Cryptology – EUROCRYPT '93, in Lecture Notes in Computer Science, vol. 765. Springer, 1994, pp. 410–423. doi: 10.1007/3-540-48285-7_35.
  • [6] M. Tomamichel, C. Schaffner, A. Smith, and R. Renner, “Leftover Hashing Against Quantum Side Information,” IEEE Transactions on Information Theory, vol. 57, no. 8, pp. 5524–5535, 2011, doi: 10.1109/TIT.2011.2158473.
  • [7] X.-B. Wang, “Beating the Photon-Number-Splitting Attack in Practical Quantum Cryptography,” Physical Review Letters, vol. 94, no. 23, p. 230503, 2005, doi: 10.1103/PhysRevLett.94.230503.
  • [8] H.-K. Lo, X. Ma, and K. Chen, “Decoy State Quantum Key Distribution,” Physical Review Letters, vol. 94, no. 23, p. 230504, 2005, doi: 10.1103/PhysRevLett.94.230504.
  • [9] X. Ma, B. Qi, Y. Zhao, and H.-K. Lo, “Practical Decoy State for Quantum Key Distribution,” Physical Review A, vol. 72, no. 1, p. 12326, 2005, doi: 10.1103/PhysRevA.72.012326.
  • [10] S.-K. Liao, W.-Q. Cai, W.-Y. Liu, and others, “Satellite-to-Ground Quantum Key Distribution,” Nature, vol. 549, pp. 43–47, 2017, doi: 10.1038/nature23655.
  • [11] S.-K. Liao, W.-Q. Cai, J. Handsteiner, and others, “Satellite-Relayed Intercontinental Quantum Network,” Physical Review Letters, vol. 120, no. 3, p. 30501, 2018, doi: 10.1103/PhysRevLett.120.030501.