這篇博文介紹一下量子通信中的一個(gè)小小的知識(shí)點(diǎn):BB84合同。其實(shí)它是與令人望而生畏的“量子”相關(guān)的知識(shí),并且弄清最最基本的原理也并不是很難。本篇博文大部份內(nèi)容來(lái)自知乎上的一篇科普簡(jiǎn)單版科普[1]和公眾號(hào)“混知”的文章《Stone小知識(shí)》–量子衛(wèi)星究竟是干嘛的?[2]。更深入的相關(guān)知識(shí),網(wǎng)上有好多深入科普(例如有篇深入版科普[3]),而且我全都看不懂,所以不做深入介紹。
為何須要量子秘鑰分發(fā)
BB84合同是一種“密鑰分發(fā)合同”,所以從功能上來(lái)講,它要實(shí)現(xiàn)的目標(biāo)與之前的一篇密碼學(xué)專欄里介紹的RSA加密算法一樣,都是安全地傳遞秘鑰。相信你們也據(jù)說(shuō)過(guò),RSA算法從原理上來(lái)講并不是不可破解的而是“很難破解”的,即通過(guò)私鑰破解加密的密文并不是不可能做到,而是通過(guò)私鑰破解密文很難,可能須要成百上千年。這就相當(dāng)于讓破解者做一道很難算的物理題,等破解者算下來(lái),此次通信早已結(jié)束,對(duì)稱秘鑰早已棄用(RSA加密的通常是對(duì)稱加密算法的秘鑰,詳見(jiàn)之前的一篇密碼學(xué)專欄),破解早已沒(méi)有意義了。
并且可以想見(jiàn)的是,隨著計(jì)算機(jī)性能的不斷提高,原先須要成百上千年才會(huì)做下來(lái)的物理困局如今說(shuō)不定只用幾秒才能算下來(lái),但是新興的量子估算也對(duì)RSA加密算法構(gòu)成恐嚇,理論上講,秘鑰為1024位長(zhǎng)的RSA算法,用一臺(tái)512量子比特位的量子計(jì)算機(jī)在一秒內(nèi)即可破解。
而本篇博文介紹的BB84合同就是一種比RSA更可靠的秘鑰分發(fā)機(jī)制(更確切地說(shuō),BB84是一種秘鑰協(xié)商機(jī)制,但我們暫時(shí)不分辨“密鑰分發(fā)”與“密鑰協(xié)商”的區(qū)別)。
通信工具
首先,BB84合同要求通訊雙方擁有一條量子信道的同時(shí),還擁有一條傳統(tǒng)信道。
之后在量子信道上,信息發(fā)送方須要4種狀態(tài)的量子作為信使,信息接收方須要2種量子接收器。為了避免高深的量子知識(shí),我們想像4種量子信使是4種姿態(tài)不同的飛鏢,我們把飛鏢分成兩組:“橫豎”組和“撇捺”組。
兩組量子信使須要分別使用兩種不同的接收器來(lái)接收。“橫豎”組對(duì)應(yīng)“+”形接收器,“撇捺”組對(duì)應(yīng)“x”形接收器。
基本通信
我們規(guī)定每組量子中有一種姿態(tài)代表0,另一種代表1。比如,我們規(guī)定,接收到“橫”代表0,這么,接收到“豎”代表1。同理,規(guī)定接收到“撇”代表0,接收到“捺”代表1。

如今若果我們選購(gòu)正確的接收器,這么我們能正確地接收到信息發(fā)送者想發(fā)給我們的信息。比如,我們假如用“+”形接收器來(lái)接收姿態(tài)為“橫”的量子,這么我們得到的訊號(hào)就是“橫”,這么發(fā)送者想傳遞的“0”這個(gè)訊號(hào)都會(huì)被我們正確地接收到。
假如我們沒(méi)有用正確的接收器會(huì)發(fā)生哪些呢?假如我們用“x”形接收器接收姿態(tài)為“橫”的量子會(huì)發(fā)生哪些呢?量子信使會(huì)撞在接收器的入口上,造成接收器接收不到信使嗎?不一定。
下邊是這篇博文里惟一與量子熱學(xué)相關(guān)的知識(shí):姿態(tài)為“橫”的量子經(jīng)過(guò)“x”形接收器時(shí),有可能會(huì)改變自己的姿態(tài),弄成能通過(guò)接收器的姿態(tài),也就是姿態(tài)為“橫”的量子經(jīng)過(guò)“x”形接收器時(shí),姿態(tài)可能變?yōu)椤捌病保部赡茏優(yōu)椤稗唷保@么傳達(dá)的信息有可能還是發(fā)送者想傳達(dá)的0,但也可能弄成了相反的1。
錯(cuò)誤地使用“+”形接收器接收“撇捺”組量子信使同理,信息接收者難以區(qū)分起初信息的發(fā)送者想傳遞的到底是0還是1。
BB84合同
有了前面的鋪墊,我們可以開(kāi)始了解BB84合同的具體內(nèi)容。容我重復(fù)一次,BB84合同要求通訊雙方有兩條信道:一條量子信道,一條傳統(tǒng)信道。
按密碼學(xué)傳統(tǒng),我們把信息發(fā)送者稱作Alice,信息接收者稱作Bob。如今她們要用BB84合同,為她們的通訊確定一個(gè)秘鑰。
在量子信道上的通信似乎就結(jié)束了,接出來(lái)的步驟4-7都是在傳統(tǒng)通訊信道上進(jìn)行的。我們覺(jué)得傳統(tǒng)信道意味著功擊者可能監(jiān)聽(tīng)并更改信道中會(huì)話內(nèi)容。
第五步,Alice收到Bob的檢測(cè)方式后,對(duì)比自己的發(fā)送量子信使的情況,告訴Bob他在什么位上偶然用了正確的接收器。我們把正確檢測(cè)的位的集合稱為C,Alice把C發(fā)送給Bob。
第六步,Bob收到Alice的信息,曉得了自己什么位的檢測(cè)方法是正確的,即曉得了集合C。他在自己檢測(cè)正確的這些位中,隨機(jī)選購(gòu)出一部份位,把檢測(cè)到的結(jié)果發(fā)送給Alice。我們把Bob從C中挑出的那一部份叫集合D。

第七步,Alice收到信息后核實(shí)自己在6、17、45位上發(fā)送的信息是不是如Bob所說(shuō)的1、1、0。若果是,這么Alice發(fā)送信息給Bob示意沒(méi)問(wèn)題,這么雙方會(huì)在Bob一開(kāi)始檢測(cè)正確的位(集合C)中,剔除第六步Bob發(fā)回給Alice的這些位(集合D),剩下的位(集合CD)作為雙方通訊的秘鑰。
為何這樣做能避免通信被監(jiān)聽(tīng)
在傳統(tǒng)信道上的監(jiān)聽(tīng)
根據(jù)密碼學(xué)傳統(tǒng),我們稱監(jiān)聽(tīng)者為Eve。假如Eve在傳統(tǒng)信道上監(jiān)聽(tīng)量子通訊的原理,她會(huì)在上述第四步看到Bob的檢測(cè)方法,并且Bob沒(méi)有發(fā)送檢測(cè)結(jié)果。Eve就會(huì)看到Bob一部份正確檢測(cè)位以及測(cè)出的結(jié)果(上述第六步中,Eve會(huì)看到集合D以及對(duì)應(yīng)的檢測(cè)值),并且最后Alice與Bob選擇通訊秘鑰時(shí)會(huì)完全遺棄集合D,即完全遺棄在傳統(tǒng)信道交流過(guò)的這些位。到最后,Eve只曉得Alice與Bob使用了S的什么位用作通信秘鑰,而且Eve不曉得這種位上的具體數(shù)值是多少。
在量子信道上的監(jiān)聽(tīng)
Eve遇見(jiàn)里面的困難,心一橫,決定去監(jiān)聽(tīng)量子信道上Alice一開(kāi)始傳給Bob的二補(bǔ)碼串S。并且首先Eve就碰到一個(gè)問(wèn)題:她不曉得該選用哪些接收器序列來(lái)接收量子信使(連Bob都不曉得)。
Eve又心一橫,用了一組隨機(jī)的量子接收器序列接收量子信使。這樣一來(lái)Eve必然使用了好多不合適的接收器,這樣也就引起了一些量子信使的狀態(tài)被改變,這種改變會(huì)在Alice-Bob后續(xù)的交流中被察覺(jué)。
比如,S在某一位上的值是1,Alice用豎姿態(tài)量子信使發(fā)送了這一位信息,并且Eve錯(cuò)用“x”形接收器接收這一位信息,這樣此量子可能弄成了撇量子(或捺量子),但Bob在這一位上剛好猜對(duì)了,他用“+”形接收器接收經(jīng)過(guò)Eve監(jiān)聽(tīng)過(guò)的量子信使(撇或捺量子信使),結(jié)果量子信使弄成了橫姿態(tài)量子信使(其實(shí)也有接收成豎姿態(tài)量子,信息偶然正確地被傳遞了,這時(shí)這一位不會(huì)導(dǎo)致Alice-Bob的注意),原先是1的值Bob用合適的接收器接收卻得到了0。
之后在上述合同的第六步,文集合C的時(shí)侯,假如Bob剛好把這一位選中發(fā)給了Alice,這么Alice都會(huì)發(fā)覺(jué)Bob在這一位上明明使用了正確的接收器卻沒(méi)有得到正確的值。
這些情況出現(xiàn)頻度超過(guò)某個(gè)閥值,Alice都會(huì)察覺(jué)有人在監(jiān)聽(tīng)量子信道。
所以雖然BB84合同只能保證通信被監(jiān)聽(tīng)的時(shí)侯,通信雙方能及時(shí)發(fā)覺(jué),然后要么切換信道量子通訊的原理,要么中止通訊。
