量子計算從概念走入現實,公鑰加密是否岌岌可危
原文連結:
摘要: 量子計算,夢幻概念走進現實,那如果走向商業化呢? 量子計算的概念起源於20世紀80年代,量子物理學蓬勃發展引發了量子計算的概念。利用量子物理學來重構計算機系統,思考量子演算法的理念不僅在當時,在今天聽起來也像是某種夢幻。
量子計算,夢幻概念走進現實,那如果走向商業化呢?
量子計算的概念起源於20世紀80年代,量子物理學蓬勃發展引發了量子計算的概念。利用量子物理學來重構計算機系統,思考量子演算法的理念不僅在當時,在今天聽起來也像是某種夢幻。越來越多的科學研究結果之下,美國 NIST 研究機構自去年起設立的量子阻抗計劃也在持續推進中。量子計算從概念走入現實,強大計算能力甚至可以突破網際網路時代的安全防護,未來時代的安全是否是岌岌可危的呢?
本文整合分析了量子計算的重要概念,詳細講述其對於公開金鑰加密 RSA 的威脅、以及美國 NIST 機構提出的量子阻抗計劃如何應對這種遠在未來的威脅。
從薛定諤的貓到量子計算
在量子力學理論中,微觀粒子有時會顯示出波的性質,有時又會顯示出粒子的性質,在不同條件下分別表現出波動或粒子的性質,這種稱為 波粒二象性 的量子行為是微觀粒子的基本屬性之一。
經典的雙縫干涉實驗:我們窺探到量子世界的奧秘
微觀粒子一旦遭到 觀測,量子狀態會由某種狀態坍縮成特定的狀態,觀察者也會得到一個觀測值。當然,這種變化特徵可以用一個微分方程薛定諤方程來描述。但這種量子的“一觀測就坍塌”的特點,還是和宏觀世界的常識違背。
而關於這一點,我們平常最常看到的通俗例子就是薛定諤那隻“不死不活”的貓,例子中將微觀粒子的特徵衍生至宏觀物體上,以詮釋量子力學與正常物理常識的違背。
薛定諤的貓:死去活來
普通計算機使用一個位元(bit)中 0 與1的兩種狀態儲存資料,透過高電壓和低電壓兩種狀態控制半導體及積體電路記錄及運算資訊;而量子計算機的儲存單位,量子位元(qubit)雖然也可具有兩個邏輯態 0 和 1 ,但與經典計算機的不同點則在於它可以實現多個狀態的 相干疊加態 。所以,製造出來的量子計算機就可以透過控制原子或小分子的狀態,記錄和運算資訊,儲存和運算能力都能超越經典計算機。
舉例來說,一個量子位元的狀態可以表現成 ,其中(因為是複數,需要取模平方)。也就是說,它的狀態並非簡單的非黑即白,而是一定機率的 0 態和一定機率的 1 態。
那麼如果是 k 個量子位元,即會有 2k 個的疊加態(0 至 2k-1),能描述個複數,遠遠大於傳統計算機中 k 個位元所能描述的 個整數。
所以說,在經典世界中我們不可能疊加 001 態和 100 態,因為這兩個狀態的電壓疊加之後,我們無法區分原來的態,而只能得到一個全新的 101 態。然而,在量子世界之中多種狀態的疊加可以區分處理,一個操作可以同時對疊加態中的所有態進行處理,因此如果找到行之有效的對應演算法,就像進行並行運算一樣,可以顯著降低時間成本。
憑藉量子計算機的力量,快速傅立葉變換(FFT)的複雜度可以降低到 O(log2(n)) 這麼快,由於我們只需要利用 log(n) 個量子位元就可以描述 n 維向量了,所以當因數分解的複雜度迅速降低後,RSA 加密就會失效了。當然,如果需要在現實生活中看到或者運用量子計算的能力,一方面需要量子演算法,另一方面則也需要物理層面實現的量子計算機。
量子計算對公鑰加密的威脅
我們對於一項技術有一點了解的時候,通常對於這項技術在未來獲得商業可行性的時間上知之甚少, “這項技術是什麼” 指的是量子計算所蘊含的強大計算能力。 而 “什麼時候實現” 目前普遍認為,會是在未來 15 到 30 年的一段時間內。
去年,來自 Google 和 NASA 的科學家們認為,D-Wave 量子技術可以提供比當前傳統技術快1億倍的計算能力。(儘管 D-wave 不是通用型量子計算機,而只是一臺用於 量子退火特定演算法 的量子計算機。)但未來的量子計算機的算力依舊能夠超越想象,輕鬆打破當前的公鑰密碼系統。
那麼面對飛速發展的技術,我們不得不思考現在的量子加密問題:如果現行的加密技術可以被破解,我們應該如何 考慮改進 當前的公鑰加密?
1994 年 Peter Shor 的因數分解量子演算法
1980 年量子計算理論提出後的十年間,在實踐上曾遭遇過一段時間的沉寂。直到 1994 年,彼得·肖爾(Peter Shor)才開發了量子演算法來確定大素數。Shor演算法可以非常高效地進行大數因子分解,而這一點恰恰是目前多數行業所用的公鑰 RSA 系統的安全依靠。
正常計算機對數 N 進行因數分解,運算時間隨輸入長度指數增長,而採用Shor演算法則可以在不到一秒的時間內實現 1000 位數字的因數分解,但由於缺乏量子計算機,該演算法對密碼系統的影響在當時並不被認為是一個急需解決的問題。
然而今天,量子計算的發展讓我們更接近這個問題的答案。如果量子計算在未來15年內在商業上逐漸變得可行,那麼加密技術就會重新面臨這個難題:受到目前世界上最受歡迎的公鑰密碼系統 RSA 保護的資料將會變得可讀,也就是說量子計算機面前,RSA 體系幾乎是透明的!如果商業化過程還要更久的時間,如需要近30年的話,那麼我們可能還有時間來思考和解決這個問題。
可能失效的密碼與可能抵禦量子攻擊的密碼
當然,現在已經陸續有各種 理論假設 提出——如何設計一款無法被量子攻破的安全加密方法?目前提出的方案。已有如基於網格的密碼,基於編碼的密碼,和基於多變數算式的密碼等等,學術研究正在迅速跟進,彌補技術發展帶來的新突破。
問題的關鍵在於開發和測試一款全新加密技術所需要的時間究竟會需要多長,其次在於如何將全新的可抵禦量子攻擊的密碼應用到現有的基礎設施之上。
這項密碼技術上的全新解決方案主要還是為儘快建立量子安全的公鑰密碼系統。對於對稱金鑰密碼系統來說,它們面臨的危險還不是那麼緊迫:對稱金鑰密碼系統可以透過使用較大的金鑰來解決這個問題,如 AES 和 Triple DES 等對稱演算法,可以使用雜湊函式得到較長的輸出。
2016 年 NIST 的量子阻抗計劃
而在去年,美國國家標準技術研究所(NIST)宣佈了一項新的計劃來開發 量子阻抗公鑰密碼術。
他們回顧了過去大約四十年的加密體系,某些數學問題的“難度”被用作大多數公共金鑰加密方案的基本假設。
公開金鑰密碼體制是現代密碼學的基石,而現在量子計算的發展改變了我們傳統意義上對於問題的 “難度” 的定義。因此,我們自1980s以來所有運用公鑰加密的系統需要改成能夠 應對量子攻擊 的密碼系統。
接著,NIST 繼續分析了目前量子計算的 發展狀態 ,發現量子計算的出現打破的是過去密碼學對於問題 “難度” 的定義,對於常規計算機而言較為困難或棘手的數學問題的複雜度在量子計算機看來不值一提,因此直接導致 1980s 後部署的公鑰加密是可被量子攻擊的不安全加密手段。
如果大規模量子計算機今後能夠普及,那麼將能夠打破目前正在使用的許多公鑰密碼系統,並將嚴重影響網際網路及各地數字通訊的保密性和完整性。
他們提出應當將這部分密碼系統替換成可抵禦量子攻擊的量子阻抗密碼。而鑑於一種密碼系統理念從理論走向可行應用,再到最終成為通用標準的這條漫漫長路所需要花費的時間,還需要考慮很多事情的周全。
- 現行的公開金鑰密碼體制 肯定是要替換 的
- 新的密碼系統成為通用標準會花費 很久 的時間
- 同時需要做到 向後保證安全
- 當今 時代 和20世紀80年代 不同(網路、電子支付)
- 需要能夠進行安穩而平滑的 過渡
這個量子阻抗計劃具體想要實施的步驟還是分為兩大塊,一塊是接受提案,尋找到對於量子計算機而言也足夠難的問題,在這些困難問題中識別哪些可以運用在公鑰系統中的( lattice based 之類)。但由於每個種類的方案都提出特定的難題(既有理論,也有實用方案),還是需要同步進行很多分析,還會面臨許多挑戰。
我們可以看到 NIST 還是制定了非常細緻的專案計劃,收集提案、組織會議、進行議題的推進和學術分享。
NIST 計劃在 2016 年秋季開始接受建議書的提交,最終截止期限為 2017 年 11 月 30 日。根據計劃,他們預計將會持續 3 – 5 年的專案分析階段,而在完成分析後的 2 年時間後推出量子阻抗公鑰密碼的標準草案。 NIST 的計劃已經在 2016 年 12 月 15 日開始接受建議提交。目前該計劃仍處於公開徵求、評估和標準化量子阻抗公鑰密碼演算法的過程中,該過程將持續到今年的 11 月 30 日。完整的細節可以在徵集投標書公告中看到。
現階段的大型量子計算機何時建成的問題還不明確答案,許多科學家也認為通用型量子計算機的建立會是重大的工程挑戰。甚至有工程師預測,在未來二十年的時間內,才能建立能夠打破目前公鑰模式的量子計算機。但從歷史上看,仍然需要近二十年的實踐才能真正部署更先進的現代公鑰密碼基礎設施。
因此,無論我們是否能夠估計量子計算時代到達的確切時間,我們現在都必須開始準備我們的資訊保安系統,以抵禦量子計算攻擊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1978/viewspace-2801475/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 量子科技概念大火,國內現狀如何?國盾量子撐起量子通訊,華為BAT均入局量子計算BAT
- IBM 警告:量子計算機可分分鐘破解現有的加密技術IBM計算機加密
- 劍橋量子推出量子增強型加密金鑰生成平臺加密
- 在量子計算時代,企業資料的加密該何去何從?加密
- C# Rsa加密(私鑰加密、公鑰解密、金鑰格式轉換、支援超大長度分段加密)C#加密解密
- 從基礎量子位到當下火熱的量子計算機,一文助你入門量子計算計算機
- 量子計算與現有的安全體系
- 支付介面教程——公鑰與私鑰,雙鑰加密和數字簽名加密
- IBM的野心:量子計算機也能實現摩爾定律IBM計算機
- 雲端計算安全需要將加密金鑰進行控制加密
- 使用公鑰和私鑰實現LINUX下免密登入Linux
- 私鑰和公鑰到底是誰來加密、誰來解密?加密解密
- 谷歌實現量子霸權論文曝光,圈內人士:量子計算的里程碑事件谷歌事件
- 入門量子計算
- 前沿科技:量子計算
- nodeJS之crypto模組公鑰加密及解密NodeJS加密解密
- iOS端基於RSA公鑰加密和解密iOS加密解密
- 非對稱加密演算法RSA中的公鑰和私鑰加密演算法
- 『現學現忘』Docker相關概念 — 1、雲端計算概念Docker
- 一週雲事|雲端計算走入“深水區”
- 量子圖形加密演算法的MATLAB程式碼實現加密演算法Matlab
- 公鑰加密、數字簽名、訊息認證加密
- Amazon Braket 與量子計算
- 公鑰私鑰
- IBM量子計算機亮相 距離標準量子計算機相距甚遠IBM計算機
- IBM推進量子計算機商業化,預計年底對公眾開放20量子位處理器IBM計算機
- 國密2 (sm2)非對稱加密解密工具--支援生成公鑰私鑰對及加密解密加密解密
- MSSQL-最佳實踐-使用非對稱金鑰實現列加密SQL加密
- 拓撲學與物理學結合,量子計算機正在成為現實計算機
- 量子計算新進展,騰訊量子實驗室設計新演算法進行量子近似最佳化演算法
- 讓量子計算走近大眾:潘建偉、陸朝陽團隊證實盲量子計算的可行性
- 新質互融,算力共振:玻色量子釋出新一代550計算量子位元相干光量子計算機計算機
- 橢圓曲線加密演算法中公鑰與私鑰互換性分析加密演算法
- 學習筆記 -《量子計算與程式設計入門》- 量子計算機硬體基礎筆記程式設計計算機
- 來談談限流-從概念到實現
- C#通過java生成的RSA公鑰加密和解密C#Java加密解密
- 量子計算與區塊鏈碰撞後——量子區塊鏈區塊鏈
- 雲端計算教程學習入門影片課件:雲端計算的加密與金鑰管理詳解加密