-
袁嵐峰:量子保密通信好與壞?別把“李鬼”當(dāng)“李逵”!
關(guān)鍵字: 量子通信量子保密量子糾纏算法密碼術(shù)金融安全體系RSA由于密碼算法的使用必須得到國家和軍隊某委員會的批準,因此我們向他們提出了鑒定申請,結(jié)果卻被駁回。
若對此不服,給他們說:你們憑什么認為我這個算法不夠安全,有本事你們破解試試?
他們的回答是:我們沒本事破解,但不代表敵人沒本事破解,你給我證明下敵人無法破解。
然后我就懵逼了,最后只能繼續(xù)使用上級配發(fā)的加密算法,這樣即使出了問題也沒我的責(zé)任。
加密算法就是這樣,你很難證明它安全,也很難證明它不安全。
加密算法的強度依賴的是數(shù)學(xué)難題的難度,即使是大家公認的極難解決的數(shù)學(xué)難題,也備不住躲在陰暗角落的某個天才數(shù)學(xué)家已經(jīng)破解,而數(shù)學(xué)問題的破解就如同窗戶紙一樣,一捅破就全完了。
很可能敵方已經(jīng)據(jù)此設(shè)計了完美的破解方法,這種可能雖然可能性極小,但終歸無法杜絕!因此,在傳遞絕密信息時,誰都不敢拍胸脯保證,只能去賭概率,這是令人非常非常痛苦的!”
現(xiàn)在,我們的主角出場了。量子密碼術(shù),改變了密碼攻防的基本格局。
我就是美貌與智慧并重,英雄與俠義的化身:唐伯虎
不通過信使,讓通信雙方直接分享密鑰,這意味著什么呢?意味著原本只具有理論意義的一次性便箋保密法起死回生了,變成一個可以實用的方法了!這種保密方法,封死了通過數(shù)學(xué)破解密碼的可能性!
因此,“奧卡姆剃刀”在講完上面那個故事之后,結(jié)論是:
“而量子通信解決了這個問題,它從理論和實踐上都證明了不可破解,令人把懸著的心放回肚里,這是上千年密碼術(shù)的重大突破,功莫大焉!”
回到魔王與公主的比喻,現(xiàn)在公主又變成了滿世界亂跳,而且這次可以放心大膽地這么做了!魔王徹底失去了追上公主的希望,無論他的計算能力再強都無濟于事。因為,這壓根就不是計算的事兒。
魔王:算你狠,我舉白旗還不行嗎?我看看還有沒有其他的辦法……
量子密碼術(shù)的出現(xiàn),并不意味著信息安全的問題已經(jīng)完全解決了。最明顯的,策反情報人員這一招就仍然存在。我的朋友、美國新墨西哥大學(xué)數(shù)學(xué)與統(tǒng)計系助理教授黃宏年博士認為,現(xiàn)在網(wǎng)絡(luò)安全體系最大的弱點并不在于密碼,在這方面增強不能解決主要問題。現(xiàn)在的操作系統(tǒng)過于復(fù)雜,許多地方用溢出攻擊等粗淺的手段就可以攻破。
我的理解是,信息安全問題是個很長的鏈條,量子密碼術(shù)只是保證了其中一個環(huán)節(jié)的安全,即密鑰分享和密文傳送這一環(huán),敵方仍然可以去攻擊其他的環(huán)節(jié)。但是,能保證一個環(huán)節(jié)的安全已經(jīng)是相當(dāng)重大的進步了,至少你泄密時可以排除這方面的問題,集中排查其他方面。正如中國工程院院士鄔江興所說:中國的網(wǎng)絡(luò)安全幾乎是“裸奔”,量子密碼術(shù)給它穿上了一條內(nèi)褲。
如果你問我,量子密碼術(shù)有什么缺點?最明顯的,就是慢。由于密鑰是通過單光子的發(fā)射和接收產(chǎn)生的,條件十分苛刻,所以生成密鑰的速度目前都是在每秒多少k的量級。在一次性便箋加密中,明文跟密鑰一樣長,所以傳輸信息的速度就等于生成密鑰的速度。每秒不到一兆的速度就像回到了撥號上網(wǎng)用“貓”的時代,只能傳送少量最重要的文本。如果用AES、DES之類不等長加密的對稱密碼算法(用一段密鑰加密一個長得多的文件),速度倒是上去了,但又有可能被數(shù)學(xué)破解了。此外,量子密碼術(shù)的成本應(yīng)該也不低,雖然我沒有具體數(shù)據(jù)。
除了慢和貴之外,作為一個新技術(shù),量子密碼術(shù)的問題想必還有許多。不過我既不是工程專家,也沒有打算自學(xué)成一個工程專家(估計學(xué)也學(xué)不成),我的興趣主要在理論方面,因此對我來說,最重要的是:量子密碼術(shù)的安全性是能在原理層面證明的,而目前其他的密碼體系都不能。這就是量子密碼術(shù)無可替代的價值。
由此還可以引出一點值得強調(diào)的:量子密碼術(shù)從來沒有說要完全代替?zhèn)鹘y(tǒng)的密碼術(shù)。作為一個新生事物,量子密碼術(shù)不是一上來就宣布“這個魚塘我承包了”(正經(jīng)的科技工作者不會這樣說話的),而是“我有這樣一個能力,可能對保密有用,歡迎大家一塊來討論,看看什么地方能用上”。你可以列舉一千個不適合用量子密碼術(shù)的地方,這都沒問題,但只要有一個地方適合用量子密碼術(shù),就算是進步了。用了量子密碼術(shù),也不意味著排斥經(jīng)典密碼術(shù),雙方完全可以結(jié)合使用,取長補短。
用不用量子密碼術(shù)的選擇權(quán),當(dāng)然在于用戶。如果你對保密的要求高于一切,那么量子密碼術(shù)是你的好選擇。如果你沒有高價值的秘密需要保護,那有什么理由像某些企業(yè)宣傳的那樣,花很高的成本去追逐“量子小鎮(zhèn)”之類的噱頭呢?
量子計算機對這幅圖景有什么影響?
基本的回答是:非本質(zhì)的影響。你看,我前面說了那么多,壓根就沒提到“量子計算機”這個詞嘛!
傳統(tǒng)計算機的基本單元是比特(bit),指的是一個體系有且僅有兩個可能的狀態(tài),往往用0和1來表示。而量子計算機的基本單元是量子比特(quantum bit,縮寫為qubit或qbit),指的是一個體系可以處于兩個狀態(tài)|0>和|1>以及它們的任何疊加態(tài)a|0> + b|1>。這里的|>叫做狄拉克符號,在其中填入數(shù)字或文字,就可以表示量子狀態(tài)。
做一個比喻:經(jīng)典比特是“開關(guān)”,只有開和關(guān)兩個狀態(tài),而量子比特是“旋鈕”,有無窮多個狀態(tài)。因此,量子計算機可以做到所有的經(jīng)典計算機可以做的事,還有可能做到一些經(jīng)典計算機做不了的事。
這里需要強調(diào)一點,常有文章把量子計算機描寫成無所不能,都快成神了,這是重大的誤解。量子計算機仍然是需要算法的,而只對于某些特定的問題,人們才設(shè)計出了超越經(jīng)典計算機的算法。因此,量子計算機不是因為普遍性的算得快,所以干什么都比經(jīng)典計算機強,而是針對某些特定的問題算得快,只在這些問題上比經(jīng)典計算機強。
到目前為止,人類找到的這樣的問題并不是很多。但在這為數(shù)不多的能夠讓量子計算機大展拳腳的問題中,其中一個恰恰就是——因數(shù)分解。
前面說對因數(shù)分解,迄今還沒有能在多項式時間內(nèi)分解的算法,但那指的是經(jīng)典計算機。1994年,肖爾(Peter Shor)發(fā)明了一種量子算法,把因數(shù)分解的計算量減少到了多項式級別。這是一個革命性的進步!分解300位和5000位的數(shù)字,量子算法會把所需時間從15萬年減到不足1秒鐘,從50億年減到2分鐘!在理論上,RSA已經(jīng)被量子計算機攻克了!
不過這只是理論上,因為真正能用的量子計算機還沒有造出來。到目前為止,在實驗上分解的最大的數(shù)是291,311 = 523 × 557,是由中國科學(xué)技術(shù)大學(xué)的杜江峰院士和彭新華教授等人在2017年實現(xiàn)的。這離分解上千位的密碼還遠著呢。
量子計算機是當(dāng)前全世界的科研熱門。許多研究機構(gòu)和企業(yè)在激烈地競爭,紛紛放出風(fēng)來要在近年內(nèi)實現(xiàn)“量子制霸”,實際意思就是前面說的,對于某些問題超越現(xiàn)有的經(jīng)典計算機。有發(fā)展的眼光的人,都會關(guān)注這方面的消息。
顯然,量子計算的進步,增加了人們對量子密碼術(shù)的需求。但是,如果沒有量子因數(shù)分解算法,甚至壓根沒有量子計算機的概念,量子密碼術(shù)是不是就沒有價值了呢?
當(dāng)然不是!
量子密碼術(shù)的基本價值來自它的完美安全性,這是其他任何密碼體系都沒有做到的。無論計算技術(shù)有沒有進步,這個價值始終存在。量子因數(shù)分解或者任何其他的計算技術(shù)進步,只是起到錦上添花或者說“補一刀”的作用,對這個基本圖景并沒有影響。
徐令予老師在文章中說:
“為什么要開發(fā)量子保密通信技術(shù)?因為從理論上講,如果未來量子計算機建成,如果建成的量子計算機有足夠的Qbit和足夠的穩(wěn)定性,那么今天密碼系統(tǒng)中的公鑰密碼RSA有可能被破解?!?
根據(jù)以上的分析,我們知道這個理解是錯誤的。實際上,最早的量子密碼術(shù)協(xié)議BB84是在1984年發(fā)明的,而量子因數(shù)分解算法是在10年之后的1994年發(fā)明的。難道在1994年之前,人們會覺得BB84協(xié)議沒有意義嗎?
《后量子RSA》說了些什么?
徐老師在文章中對這篇論文的介紹是:
“數(shù)月前出現(xiàn)這樣一篇論文:‘后量子時代的RSA’[2],該文發(fā)表后被多家相關(guān)雜志轉(zhuǎn)載和引用,這些文章給出的共同結(jié)論是:目前使用的非對稱性密碼RSA不會因為量子計算機的出現(xiàn)而消亡?!?
如前所述,經(jīng)過饒有興味的研讀之后,我大致理解了此文的框架。此文的四位作者Daniel J. Bernstein、Nadia Heninger、Paul Lou、Luke Valenta(以下簡稱為BHLV)表現(xiàn)出了很強的數(shù)學(xué)功力和創(chuàng)意,令我十分敬佩。那么,BHLV實際說了些什么呢?
他們說的是:目前版本的RSA在量子算法面前不堪一擊,他們提出了一種改進的版本,在某種意義上可以對抗已知的量子算法。
在什么意義上呢?合法用戶加密解密也是需要計算量的,而肖爾的量子算法強大到了這種程度:破解RSA跟合法用戶解密幾乎一樣快,具體而言,計算量都大約是n的平方(n是要分解的那個合數(shù)的二進制位數(shù))。對RSA密碼體系來說,這簡直是輸?shù)眠B底褲都快沒有了。
傳統(tǒng)的RSA是把兩個質(zhì)數(shù)相乘。BHLV提出,通過一系列數(shù)學(xué)技巧(快速的乘法以及隨機生成質(zhì)數(shù)的方法等等),可以把加密解密的計算量都控制在正比于n,然后把非常多的質(zhì)數(shù)相乘,使得n非常大,就可以讓破解的計算量顯著地超過加密解密的計算量。簡而言之,就是把加密解密的計算量(n)降低到了破解的計算量(n的平方)之下。他們把這種改進版RSA稱為后量子RSA。
呃……原來我們說的是,破解的計算量指數(shù)增長才算安全?,F(xiàn)在標準降得這么低,破解的計算量比加密解密增長得快就算安全,——這幾乎是可以定義的最低級別的安全性了。
原文對此說得很清楚:
“Post-quantum RSA does not qualify as secure under old-fashioned security definitions requiring asymptotic security against polynomial-time adversaries. However, post-quantum RSA does appear to provide a reasonable level of concrete security.”
【翻譯:在老派的安全性定義下,即面對多項式時間敵手時的漸近安全性的定義下,后量子RSA沒有達到安全的標準。然而,后量子RSA看起來確實提供了一個合理水平的具體的安全性。】”
后面還有一個更具體的解釋:
“Note that, for theoretical purposes, it is possible that (1) there are no public-key encryption systems secure against polynomial-time quantum adversaries but (2) there are public-key encryption systems secure against, e.g., essentially-linear-time quantum adversaries. Post-quantum RSA is a candidate for the second category.”
【翻譯:請注意,對于理論的目的,以下兩點是有可能的:(1) 沒有任何公鑰密碼體系在多項式時間的量子敵手的面前是安全的;但是(2)有公鑰密碼體系在比如說基本上是線性時間的量子敵手的面前是安全的。后量子RSA是第二類的一個候選者。】”
如果你看不懂,我來簡單解釋一下。給定問題的規(guī)模n,如果你允許量子計算機運行對n的任意高階多項式的時間,那么大概所有的公鑰密碼體系都會被擊敗。而如果你只允許量子計算機運行n的時間,那么就可能有公鑰密碼體系扛得住。后量子RSA是后一類中的一個候選者。為什么只說是候選者,而不是直接就是呢?因為你無法保證人們不發(fā)展出新的量子算法甚至是經(jīng)典算法,在n的時間內(nèi)破解后量子RSA。
從破解跟解密一樣快,改進到加密解密比破解快,這個進步好比贏回了一條底褲?;蛘哌@么說:一個低手跟一個高手下圍棋,從分先到讓先,到倒貼目,到讓二子,到讓三子,一路被打得降級,現(xiàn)在提高了棋藝,在讓三子的情況下贏了一盤,回到了讓二子。這當(dāng)然可喜可賀,不過如果把這理解成他可以跟高手分庭抗禮,甚至超過了高手,那就大錯特錯了。
用網(wǎng)絡(luò)語言說:BHLV對RSA使用挽尊卡,為RSA挽回了尊嚴!效果:密碼術(shù)經(jīng)驗+5。
對于后量子RSA的價值,原文有一個生動的比喻:
“RSA has enough flexibility to survive the advent of quantum computers — beaten, bruised, and limping, perhaps, but not dead.”
【翻譯:RSA有足夠的柔韌性來挺過量子計算機的來臨——被打擊,被挫傷,一瘸一拐地走,都有可能,但不是死亡?!俊?
再來看看BHLV用什么樣具體的例子演示后量子RSA。目前常用的RSA是用兩個質(zhì)數(shù)相乘,每個質(zhì)數(shù)用二進制表示是1024位或2048位。他們生成了2的31次方(2,147,483,648,即大約21億)個質(zhì)數(shù),每個質(zhì)數(shù)用二進制表示有2的12次方(即4096)位。這21億個質(zhì)數(shù)乘起來,得到了2的43次方(8,796,093,022,208,即大約8.8萬億)長度的一個密鑰,也就是1 T字節(jié)長度的一個數(shù)字。想想看1 T容量足夠放下多少部電影,現(xiàn)在居然只是用來存放一個數(shù)字!
處理如此巨大的數(shù)字,加密解密當(dāng)然也很不容易。生成21億個隨機的質(zhì)數(shù),花費了一個1400核的機群4個月的時間??雌饋磉@是最耗時間的一步,后邊的質(zhì)數(shù)相乘、加密、解密等步驟,花費的時間都是以天計,而不是以月計的。徐老師的文章說“費時一共為五天”,大概是只看了其中的一步。
根據(jù)BHLV的估算,肖爾的量子算法分解這個1 T字節(jié)長度的數(shù)字,需要的量子比特操作數(shù)是2的100次方。2的43次方平方就得到2的86次方了,再考慮到其他一些細節(jié),2的100次方是可以理解的。徐老師在這里似乎出現(xiàn)了一個硬傷,把量子比特操作的數(shù)目看成了量子比特的數(shù)目,然后以此為根據(jù)做了一番討論:
“假設(shè)量子計算機已經(jīng)建成,再假設(shè)量子計算機的量子位(Qbit)可以無限擴展,進一步假設(shè)該量子計算機的運行成本與現(xiàn)在通用電子計算機的成本可以相比,用這樣一臺超級想象出來的量子計算機來破解長度為Terabyte(太字節(jié),等于1024 GB)的RSA非對稱密鑰需要量子計算機的Qbit為2^100(2的100次方)。
2^100是一個什么概念?這個數(shù)大于我們星球上所有生物細胞的總數(shù)!而今天為了建成兩位數(shù)Qbit的量子計算機,專家們已經(jīng)弄得焦頭爛額,多年來一籌莫展。當(dāng)然使用長度為Terabyte的RSA公鑰確實也有點離譜,但論文作者在今日的電子計算機上產(chǎn)生了這樣的公鑰,并用它來加密和解密,費時一共為五天。按目前的技術(shù)水平,長度為Terabyte的RSA公鑰雖然并不實用,至少還是可以實現(xiàn)的,但是還在紙上的量子計算機即使明天就建成,要破解這樣的RSA公鑰也無一線希望?!?
其實原文是“2100 qubit operations”,不是“2100 qubits”。這個錯誤的性質(zhì),相當(dāng)于認為一個量子比特只能操作一次,然后就報廢了。這當(dāng)然是不對的。因此,拿2的100次方去跟細胞的總數(shù)相比,跟專家想建成多少位的量子計算機相比,都對錯號了。
- 原標題:量子保密通信好與壞?別把“李鬼”當(dāng)“李逵”! 本文僅代表作者個人觀點。
- 責(zé)任編輯:武守哲
-
最新聞 Hot
-
五角大樓高官:臺灣非生死攸關(guān)問題,成本大于收益
-
又一位頂尖科學(xué)家從英回國
-
“給美國打了20分鐘電話,英國也忍了”
-
特朗普長子突訪塞爾維亞,與武契奇會面
-
“廢”教育部需國會批準?特朗普:先裁一半再說
-
羅生門在國外失聯(lián)超2周,警方介入
-
加拿大“軟”了,特朗普“退”了…
-
特朗普連發(fā)100多條帖子自夸
-
美政府官網(wǎng)被“屠版”:真對中國船這么干,“也絕不用美國船運貨”
-
菲總統(tǒng)馬科斯首次發(fā)聲
-
伊朗總統(tǒng):威脅我?你愛咋樣就咋樣
-
“中國比過去更從容,會對美國說:咱們走著瞧”
-
被中方反制敲醒了:討好美國整中國,沒好果子吃
-
特朗普不給豁免,澳總理“認慫”
-
美官方披露:華盛頓撞機同類險情3年15000起
-
特朗普放狠話:對特斯拉施暴就是國內(nèi)恐怖主義
-