量子資訊與密碼學
量子金鑰分發(QKD)
量子金鑰分發是兩個人(不妨叫他們 Alice 和 Bob)生成一把共享金鑰的方法,它的安全性建立在物理定律之上,而不是某個難解的數學問題之上。Alice 發送一連串單個量子位元,每個都被製備成幾種可能狀態中的一種;Bob 對它們進行測量;之後兩人透過一條普通的公開通道核對各自的記錄,提煉出一串只有他們倆知道的位元。這把金鑰隨後被送入常規加密,用來打亂他們真正要傳的訊息。
巧妙之處在於他們如何抓住偷聽者。在量子力學中,你無法在不擾動一個未知量子位元的前提下測量它,也無法對它進行完美複製(這就是不可複製定理)。因此,竊聽者 Eve 一旦攔截並測量這些量子位元,就必然會留下痕跡:她會在 Alice 和 Bob 共享的位元裡引入錯誤。Alice 和 Bob 犧牲掉金鑰中隨機抽取的一部分、檢查其錯誤率,就能判斷是否有人在偷聽。如果錯誤足夠低,他們就保留這把金鑰;如果不夠低,就把它丟棄,重新再來一次。Eve 無法悄無聲息地竊取金鑰——偷聽是可以被察覺的。
要弄清楚 QKD 能做什麼、不能做什麼。它保護的是金鑰的交換過程,而不是你計算世界裡的其餘一切;而且在實際操作中,它還需要一條單獨經過身分認證的通道(否則 Eve 可以冒充 Bob),並且要在真實距離上使用真實硬體,這就限制了傳輸的距離和速率。它也不同於後量子密碼學:QKD 用量子物理來分享金鑰,而後量子密碼學則是一類普通的經典演算法,專門設計成能夠抵禦未來量子計算機的攻擊。兩者解決的問題有所重疊,所用的手段卻截然不同。
QBER above the agreed threshold (e.g. ~11% for BB84) => discard the key and restart
Alice 和 Bob 測量量子位元錯誤率(QBER);錯誤太多意味著可能存在竊聽者,於是他們中止本次分發。
QKD 用物理來保護金鑰分享這一步;後量子密碼學則是為抵禦量子攻擊而設計的經典數學——兩者並不能相互替代。
又稱
另見