當前,量子保密通信主要有兩種方式:量子密鑰分發和量子隱形傳態。前者是目前廣泛研究的量子通信方式,被認為是量子通信領域最有可能率先投入商用的技術;後者是量子通信領域最引人矚目的研究方向,近年來在理論和實踐上均已取得重要突破。
這裡我們只講量子密鑰分發。什麼是量子密鑰分發?想要回答這個問題,我們首先要知道什麼是加密通信,什麼是密鑰。
加密通信,主要包括三個部分,明文、密鑰、密文。信息發送者實際要傳遞的信息就是明文,信息接收者接收到的信息是密文,當然竊聽者也只能接收到密文。那麼明文怎麼樣就變成密文了呢?收到密文又怎麼翻譯成明文呢?
這就需要密鑰出手了,信息發送者通過密鑰將明文變成密文,信息接收者同樣也要利用密鑰將密文變成明文。
舉一個簡單的例子,來看看經典的密碼術是如何工作的。讀中學的時候,同桌跟班花戀愛了,他們愛的瘋狂,經常在上課的時候也要互傳紙條,但是又怕老師或同學截取他們的聊天信息,就自製了一套密碼本(就是密鑰),同桌傳給班花最多的一張紙條就是「r olev blf 」,然後班花會傳回一張紙條「nv gll」,他們這一串密文,當年單純的我很想去看懂,但是我沒能看懂,也許這就是我單身的預兆。其實根據下面這張密鑰,其實就很容易翻譯出密文了,不知道你們看懂了沒?
這是一個非常簡單的例子,這種密碼被稱為代換密碼,即固定不變地使用一個符號代替另一個符號。當然,這種密碼的保密性很低,很容易被破解。但是這個簡單的例子告訴我們一些重要的基本概念,例如,需要共享安全的密鑰,就是同桌跟班花是都掌握了這份密鑰的,然後根據密鑰進行信息的加密和解密。
前面同桌與班花的例子,我們看到他們兩個共用同一套密鑰,這種發送者和接受方使用同一套密鑰就叫做對稱密鑰。
對稱密鑰有什麼缺點?
第一,共享密鑰的過程危險。同桌和班花要讓對方了解這套密鑰,起碼得約個地方,討論一下這套密鑰,比如這個對應那個,那個對應這個,這個互相確認的過程是存在危險性的,不是說他們會幹什麼危險的事情,而是我們學校是禁止談戀愛的,他們約會討論密鑰這個過程是可能被發現的。
第二,信息可能被篡改。前面說到我看不懂他們的紙條,那是因為我沒有那張密碼本,假如我也掌握了密碼本,我就可以邪惡的冒充同桌跟班花傳紙條了,同桌和班花的關係就可能被我破壞。
如果同桌和班花懂得非對稱密鑰,就不用擔心被我破壞了。非對稱密鑰不再是單一的密鑰,而是有一對密鑰,即公鑰+私鑰。
在現代密碼體制中加密和解密是採用不同的密鑰,也就是非對稱密鑰密碼系統,每個通信方均需要兩個密鑰,即公鑰和私鑰,這兩把密鑰可以互為加解密。公鑰是公開的,不需要保密,而私鑰是由個人自己持有,並且必須妥善保管和注意保密。
比如同桌想把一段明文通過雙鑰加密的技術傳遞給班花,班花有一對公鑰和私鑰,那麼加密解密的過程如下:
1、班花將她的公鑰告訴給同桌,同時也公開給我;
2、同桌用班花的公鑰加密他的紙條,然後傳遞給班花;
3、班花用他的私鑰解密同桌的紙條;
上面的過程中,同桌使用班花的公鑰進行加密,班花用自己的私鑰進行解密。而我,雖然也知道了班花的公鑰,但是並沒有卵用,仍然不能知道他們在聊些什麼愛情!
公鑰私鑰有以下原則:
1、一個公鑰對應一個私鑰;
2、一對密鑰中,讓大家都知道的是公鑰,不告訴大家,只有自己知道的,是私鑰;
3、如果用其中一個密鑰加密數據,則只有對應的那個密鑰才可以解密;
4、如果用其中一個密鑰可以進行解密數據,則該數據必然是對應的那個密鑰進行的加密;
那有人會問,既然公鑰是公開的,那有沒有可能通過公鑰推導出私鑰?
答案是:在當前科技下,不可能。
因為知道公鑰和密碼算法要推測出私鑰在計算上是不可行的,就算用當前最先進的超級計算機來計算,可能得花數萬或者數百萬年時間。這樣,只要私鑰是安全的,那麼加密就是可信的。
對於傳統對稱密碼而言,密文的安全性完全依賴於密鑰的保密性,一旦密鑰洩漏,將毫無保密性可言。
但是公鑰密碼體制徹底改變了這一狀況。在公鑰密碼體制中,公鑰是公開的,只有私鑰是需要保密的。
顯然,對稱密碼和非對稱密碼都需要保證密鑰的安全,不同之處在於密鑰的管理和分發上面。
在對稱密碼中,必須要有一種可靠的手段將加密密鑰(同時也是解密密鑰)告訴給解密方,就是說同桌必須把密鑰通過一種可靠的手段告訴給班花;
而在公鑰密碼體制中,這是不需要的。班花只需要保證自己的私鑰的保密性即可,對於公鑰,無論是對同桌而言還是對我而言都是 公開的,故無需考慮採用可靠的通道進行密碼分發。這使得密鑰管理和密鑰分發的難度大大降低了。
前面說到,知道公鑰和密碼算法要推測出私鑰在計算上是不可行的,就算用當前最先進的超級計算機來計算,可能得花數萬或者數百萬年時間。
但是,如果量子計算機投入使用,從公鑰和密碼算法推測出私鑰,會成為一件輕而易舉的事情。在量子計算機面前,當前的保密通信就完全沒有保密性可言!
那怎麼辦呢?關鍵問題是密鑰分發上。
量子密鑰分發,是用量子力學知識開發出的一種不能被破譯的密碼系統,量子密鑰是應用量子力學的基本特性(如量子糾纏、量子不可克隆和量子不可測量等)來確保密鑰安全。它能夠使通信的雙方產生並分享一個隨機的、安全的密鑰,用來加密和解密信息。量子密鑰實際上是一種對稱密鑰。
量子密碼系統是從20世紀下半葉逐漸建立起來的。為什麼說量子密碼是不可破解的呢?這是因為它以量子效應作為安全模式的關鍵。談到這裡,需要涉及量子力學中的海森伯「測不準關係」和「單量子不可複製定理」。「單量子不可複製定理」是測不準關係的一個推論,它是指在不知道量子狀態的情況下複製單個量子是不可能的。這是因為想要複製就得進行測量,而一旦進行測量,則必然會改變量子的狀態。
量子密鑰分配的過程大致如下:
單個光子通常作為偏振或相位自由度的量子比特,可以把欲傳遞的0,1隨機數編碼到這個量子疊加態上,比如,事先約定,光子的圓偏振代表1,線偏振代表0。
光源發出一個光子,甲方隨機地將每個光子分別製備成圓偏振態或線偏振態,然後發給合法用戶乙方,乙方接收到光子,為確認它的偏振態(即0或1),便隨機地採用圓偏光或線偏光的檢偏器測量。
如果檢偏器的類型恰好與被測的光子偏振態一致,則測出的隨機數與甲所編碼的隨機數必然相同,否則,乙所測得的隨機數就可能與甲方發射的不同。乙方把甲方發射來的光子逐一測量,記錄下測量的結果。
然後乙方經由公開信道告訴甲方他所採用的檢偏器類型。這時甲方便能知道乙方檢測時哪些光子被正確地檢測,哪些未被正確地檢測,可能出錯,於是他告訴乙方僅留下正確檢測的結果作為密鑰,這樣雙方就擁有完全一致的0,1隨機數序列,即擁有了密鑰,而且這個密鑰其他人是不可能知道的。
實際上,竊聽者想要截獲某個信息的行為對於被竊聽的信息來說就是一種外來的測量,一旦有測量,那麼原來的系統就會被破壞,這樣竊聽者獲得的信息實際上就是毫無用處的。同時,一旦原有的量子態被改變,接收者就可以很容易判斷出傳輸的信息已經被動了手腳。所以,憑著量子態的「一觸即變」,便可以研製出不可破解的密碼系統。應該明確指出,密碼系統只用於產生和分發密鑰,並不負責傳輸任何實質的信息。
狗血結局:自從同桌和班花擁有了量子密鑰分發,他們再也不需要密碼本了,也再也不用擔心我知道他們的聊天信息了,他們又愉快的肆無忌憚的繼續戀愛了!