稍微深入地談談BB84(二)
這次主要談一談有關PNS攻擊的內容
構建系統安全分析需要引入的記號
為了引入PNS攻擊以及GLLP分析理論, 需要首先進行一些約定.
初始碼速率: QKD協議進行過程中, Alice需要向Bob發送光子, Bob的探測器響應率稱為初始碼, 其產生率為初始碼速率, 記為 , 滿足 , 其中 為光源重複頻率, 為探測器的響應率.
篩選碼速率: 基矢比對後, 剩餘的共享數據稱為篩選碼, 其速率稱為篩選碼速率, 記為 ,滿足 , 由協議決定, 例如BB84協議 .
安全碼速率: 經過糾錯和隱私放大過程後最終剩餘的數據稱為安全碼, 其速率稱為安全碼速率, 記為 , 滿足 . 為了簡化問題, 通常假設通信系統對稱, 即Z和X誤碼率相等, 於是便有 , 稱為成碼率.
響應率
我們首先談談響應率.
假設Alice發給Bob的並不是單光子脈衝, 而是不同光子數Fock態的混合, 那麼Alice發射出的態便可以用 表示, 其中 便是脈衝中含有 個光子的概率.
於是, 我們可以定義Alice發射出 光子脈衝時, Bob端探測器有響應的概率為 .
故, 便表示Alice發出的脈衝含有 個光子, 且Bob端探測器有響應的概率, 我們稱之為 光子信號增益.
Alice發射脈衝Bob端響應的概率即將所有光子數可能性求和 .
通過上面分析我們能發現, 響應率 由兩個因素決定:
- , 該項取值由光源性質決定, 不會重點分析.
- , 該項由線路以及設備損耗, 探測器的暗計數等因素決定, 下面將重點分析.
分三種情況討論
- 時, 無光子, Bob端若有響應那一定是暗計數, 設暗計數幾率為 , 其量級約為 . Bob端共有兩個探測器, 假設其暗計數一樣, 那麼至少有一個探測器響應的概率為 .
- 時, 設總效率為 (稍後詳細分析), 則 即為Alice發射一個光子的情況下, Bob端有響應的概率, 但我們應考慮暗計數, 於是 .
- 時, 至少一個光子有響應, 則Bob端就有響應, 故 . 考慮暗計數, 則有 .
下面說說 . 損耗包括兩部分, 線路損耗 和Bob端總損耗 , 於是 . 其中線路損耗與線路長度 和線路衰減係數 有關, 具體表達式為 . Bob端損耗則包括兩個部分, 設備損耗 和探測效率 , 於是 .
例子
相干光源的光子數分布滿足泊松分布 , 其中 為平均光子數. 則
當系統衰減較為嚴重或者平均光子數較低時, .
誤碼率
定義 為Alice發送 光子信號Bob有響應時, Bob測到結果與Alice發送量子態不符的概率. 於是定義總誤碼率 為 . 於是, 我們只需討論 .
誤碼主要來源於兩個方面
- 設備不理想, 為了簡單, 我們用一個參數 來概括, 稍後我們會看到怎麼用它.
- 暗計數.
暗計數二探測器隨機響應, 故 .
若 , 誤碼由系統不理想和暗計數兩個因素造成, 於是 .
例子
理想單光子源, .
相干光源
.
光子數分離(PNS)攻擊
實際系統中實現BB84協議往往採用弱相干光或參量下轉換光, 這就使得信道中實際傳輸的脈衝有較大概率包含多個光子. 但是理想BB84協議要求通信過程使用單光子源, 從而保證量子不可克隆定理的有效性. 故實際BB84系統往往存在多光子漏洞, 該漏洞結合系統的線路損耗, 系統中使用閾值型探測器不可分辨光子數這兩個特性, 使得竊聽者可能實施光子數分離(Photon Number Splitting, PNS)攻擊.
在PNS攻擊中, 我們假設竊聽者能夠進行光子數非破壞性測量, 擁有一條無損量子信道以及量子存儲器; Bob的探測裝置不能分辨光子數目, 只能根據閾值判斷是否有光子.
PNS攻擊方法
- 竊聽者非破壞性測量(QND)脈衝中包含光子數目.
- 若該脈衝不含光子, 不操作; 若該脈衝包含一個光子, 根據QKD系統總效率 選擇 , 以概率 阻止該單光子脈衝通過; 若脈衝包含多個光子, 則取出一個光子保存在量子存儲器中, 剩餘光子通過無損信道發送給Bob.
- Alice與Bob基矢比對之後, 竊聽者選擇正確基矢測量其量子存儲器中保存的光子, 獲取多光子信號所攜帶的密鑰信息.
當信道衰減很高時, 竊聽者可以阻止所有單光子脈衝的通過, 使Bob僅能探測多光子信號, 且保持其響應率不變.
下面定量分析PNS攻擊的過程(忽略暗計數的影響).
假設系統光源為弱相干光, 光子數滿足泊松分布(表達式見上文), 無竊聽者時, Bob端響應率為
.
竊聽者對相干態做PNS攻擊後, 其密度矩陣記為 , 其中
竊聽者擁有無損信道, 為了保證Bob端響應率不變, 應有
上式中 與之前定義類似.
假設竊聽者能力超群, 甚至能夠控制Bob手中設備的損耗(令 ), 於是 . 為了使Bob端的響應率不變, 就應該有
解得 , 從中可見, 如果信道無損, 則 此時竊聽者無法攔截單光子信號, 否則會被Bob察覺; 但實際使用的信道必然有損耗, 且損耗與通信長度成正相關, 這就使得給定平均光子數 , 在 即竊聽者能攔截所有單光子信號時, 必然能解出 , 當信號損耗大或等於該 時, Bob不會接收到單光子信號且不會察覺, 通信失敗. 這個 所對應的信道長度即為BB84協議的最遠安全傳輸距離, 記為 .
即便竊聽者不能控制Bob手中設備的損耗, 由於其擁有者無損信道, 故總可以保證PNS攻擊的成功進行. 同樣的道理, 當Bob與Alice間距很大時, 他認為自己的信道有巨大的損耗, 對其手中探測器響應率有很低預期, 此時竊聽者截取全部單光子信號便成為可能, 在此條件下同樣可解出最大通信距離.
即便Bob擁有了光子數可分辨探測器, 有理論工作證明, 竊聽者只需對PNS攻擊協議做出一點點調整, 便可使Bob完全察覺不到其探測到光子的分布發生了變化.
多光子情形下的GLLP安全性分析
光源的多光子漏洞在QKD過程中無法忽視, 2004年, Gottesman, Lo, Lukenhaus和Preskill四人提出了針對PNS攻擊的安全性分析理論, 簡稱GLLP安全性分析理論. GLLP安全性分析要引入一個假設, 即探測器在探測光子前對光子進行了一個所謂"squash"操作, 其含義為:
- 入射0或1個光子是探測器不做任何操作
- 入射光子數目大於1時, 探測器將該信號能量壓縮為1光子, 且不造成任何信息泄漏.
在此假設下, 根據Csiszar-Korner定理, 有
其中 為QKD系統的安全碼率下界. 這個表達式直觀上容易理解, 碼率就是Alice和Bob的互信息減去Alice(或Bob)與竊聽者Eve的互信息. 在下面的推導中我們不妨取
接下來的事情便是估算互信息. 首先分析 :
- 當Bob端探測器沒有響應或者選錯基矢的時候, 顯然與Alice沒有相關性, 即 .
- Bob探測器選對基矢且有響應時, .
為基矢選擇正確, 且探測到光子的概率, 綜上:
之後分析 , 於竊聽者而言, 情況會被Bob丟棄, 故不能得到任何信息, 此時 ; 時, 分三種情況:
- 當Bob端響應是由暗計數引起時, 竊聽者不能從這個隨機信號得到任何互信息, 故暗計數低對竊聽者有利. 於是我們乾脆假設竊聽者能夠控制Bob探測器的暗計數, 使得其發生概率 .
- 當Bob端響應由單光子信號引起時, 由理想BB84安全性分析的結論, 竊聽者夠獲得信息量為 .
- Bob端響應由多光子信號引起時, 竊聽者獲得全部信息.
綜上, 可得:
.
於是, 我們可以得到 的表達式:
其中 , 這便是GLLP安全碼率公式. 考慮到安全碼率為負無論如何也不可能達成安全通信, 因此凡是 均可認為安全碼率為0. 故, GLLP安全碼率公式可以進一步表達成:
考慮到實際還存在一個糾錯碼率 , 於是進一步地:
這個公式在實際應用時, 一般會使用可觀測參數 來估計 的下界和上界. GLLP分析用了兩個最壞的假設估計這兩個參數:
- 所有損耗全來自單光子信號, .
- 多光子信號不引入誤碼, .
在這樣的假設下, 我們能夠發現, 在optimal的情況下通信距離也不過幾十公里, 這說明原始的BB84協議存在一些問題, 這個問題主要在於, 我們對成碼率(即 )的估計不夠精細, 這就使得由GLLP公式得到的成碼率下限過低.
針對這個問題, 誘騙態技術被提出了, 誘騙態技術能夠通過加入誘騙脈衝的方法, 卓有成效地給出更好的成碼率估計, 從而放低了通信對實際信道條件和探測條件的要求, 一舉將安全通信距離提升至了百公里量級, 從而較為有效地解決了PNS攻擊的安全性問題.
推薦閱讀:
※鄙人認為量子衛星是大騙局,可是不知道專業人士是什麼看法?請賜教。
※為什麼天宮二號也要進行「量子密鑰分配試驗」?
※如何看待日本超小型衛星SOCRATES量子通信實驗成功?
※什麼是反事實量子通信?
※如何用通俗語言解釋什麼是量子通信?