你會但願某黑客假冒你的銀行嗎?
近年來,量子計算機quantum computer已經出如今大衆的視野當中。量子計算機被認爲是第六類計算機,這六類計算機包括:
人力Humans:在人造的計算工具出現以前,人類只能使用人力去進行計算。而承擔計算工做的人,只能被稱爲「計算者」。
模擬計算工具Mechanical analogue:由人類製造的一些模擬計算過程的小工具,例如安提凱希拉裝置Antikythera mechanism、星盤astrolabe、計算尺slide rule等等。
機械工具Mechanical digital:在這一個類別中包括了運用到離散數學但未使用電子技術進行計算的工具,例如算盤abacus、Charles Babbage 的差分機Difference Engine等等。
電子模擬計算工具Electronic analogue:這一個類別的計算機多數用於軍事方面的用途,例如炸彈瞄準器、槍炮瞄準裝置等等。
電子計算機Electronic digital:我在這裏會稍微冒險一點,我以爲 Colossus 是第一臺電子計算機,1 :這一類幾乎包含現代全部的電子設備,從移動電話到超級計算機,都在這個類別當中。
量子計算機Quantum computer:即將進入咱們的生活,並且與以前的幾類徹底不一樣。
git
什麼是量子計算?算法
量子計算Quantum computing的概念來源於量子力學quantum mechanics,使用的計算方式和咱們日常使用的普通計算很是不一樣。若是想要深刻理解,建議從參考維基百科上的定義開始。對咱們來講,最重要的是理解這一點:量子計算機使用量子位qubit進行計算。在這樣的前提下,對於不少數學算法和運算操做,量子計算機的計算速度會比普通計算機要快得多。編程
這裏的「快得多」是按數量級來講的「快得多」。在某些狀況下,一個計算任務若是由普通計算機來執行,可能要耗費幾年或者幾十年才能完成,但若是由量子計算機來執行,就只須要幾秒鐘。這樣的速度甚至使人感到可怕。由於量子計算機會很是擅長信息的加密解密計算,即便在沒有密鑰的狀況下,也能快速完成繁重的計算任務。安全
這意味着,若是擁有足夠強大的量子計算機,那麼你的全部信息都會被一覽無遺,任何被加密的數據均可以被正確解密出來,甚至僞造數字簽名也會成爲可能。這確實是一個嚴重的問題。誰也不想被某個黑客冒充成本身在用的銀行,更不但願本身在區塊鏈上的交易被篡改得面目全非。ide
好消息工具
儘管上面的提到的問題很是可怕,但也不須要太擔憂。post
首先,若是要實現上面提到的能力,一臺能夠操做大量量子位的量子計算機是必不可少的,而這個硬件上的要求就是一個很高的門檻。 目前廣泛認爲,規模大得足以有效破解經典加密算法的量子計算機在最近幾年還不可能出現。區塊鏈
其次,除了攻擊現有的加密算法須要大量的量子位之外,還須要不少量子位來保證容錯性。測試
還有,儘管確實有一些理論上的模型闡述了量子計算機如何對一些現有的算法做出攻擊,可是要讓這樣的理論模型實際運做起來的難度會比咱們想象中大得多。事實上,有一些攻擊手段也是未被徹底確認是可行的,又或者這些攻擊手段還須要繼續耗費不少年的改進才能到達如斯恐怖的程度。加密
最後,還有不少專業人士正在研究可以防護量子計算的算法(這樣的算法也被稱爲「後量子算法post-quantum algorithms」)。若是這些防護算法通過測試之後投入使用,咱們就可使用這些算法進行加密,來對抗量子計算了。
總而言之,不少專家都認爲,咱們現有的加密方式在將來 5 年甚至將來 10 年內都是安全的,不須要過度擔憂。
壞消息
但咱們也並非高枕無憂了,如下兩個問題就值得咱們關注:
人們在設計應用系統的時候仍然沒有對量子計算做出太多的考量。若是設計的系統可能會使用 10 年以上,又或者數據加密和簽名的時間跨度在 10 年以上,那麼就必須考慮量子計算在將來會不會對系統形成不利的影響。
新出現的防護量子計算的算法可能會是專有的。也就是說,若是基於這些防護量子計算的算法來設計系統,那麼在系統落地的時候,可能會須要爲此付費。儘管我是支持開源的,尤爲是開源密碼學,但我最擔憂的就是沒法開源這方面的內容。並且最糟糕的是,在創建新的協議標準時(不論是事實標準仍是經過標準組織創建的標準),不管是故意的,仍是無心忽略,或者是沒有好的開源替代品,他們都極可能使用專有算法而排除使用開源算法。
咱們要怎樣作?
幸運的是,針對上述兩個問題,咱們仍是有應對措施的。首先,在整個系統的設計階段,就須要考慮到它是否會受到量子計算的影響,並做出相應的規劃。固然了,不須要如今就當即採起行動,由於當前的技術水平也無法實現有效的方案,但至少也要在加密方面保持敏捷性,以便在任何須要的時候爲你的協議和系統更換更有效的加密算法。4
其次是參與開源運動。儘量鼓勵密碼學方面的有識之士團結起來,支持開放標準,並投入對非專有的防護量子計算的算法研究當中去。這一點也算是當務之急,由於號召更多的人重視起來並加入研究,比研究自己更爲重要。
本文首發於《Alice, Eve, and Bob》,並在做者贊成下從新發表。
我認爲把它稱爲第一臺電子可編程計算機是公平的。我知道有早期的非可編程的,也有些人聲稱是 ENIAC,但我沒有足夠的空間或精力在這裏爭論這件事。 ↩
若是量子物理學家說很難,那麼在我看來,就很難。 ↩
並且我假設咱們都不是量子物理學家或數學家。 ↩
並且不只僅是出於量子計算的緣由:咱們現有的一些經典算法極可能會陷入其餘非量子攻擊,例如新的數學方法。 ↩