“一切都會出錯”是任何規劃都應該遵循的主要原則之一。
不穩定是事實
在解決密碼問題時,會出現不可抗力的情況。多年來,許多科學家都在考慮每一個細節,但現實往往會讓你感到驚訝。在很多方面,正是這種無休止的循環,由一系列開發新的密碼解決方案、識別漏洞,然后才發現漏洞是怎樣形成的,也才吸引人們去研究密碼學。
例如,著名的TLS協議在他的歷史發展進程中有一個很有趣的插曲:
在2001年,HugoKrawczyk首次對TLS1.1中使用的數據保護方案的安全性進行了數學證明,但不到一年后,出現了一種攻擊,表明該協議在數據保護方面存在不穩定性。
不幸的事,這樣的事件在密碼學中并不罕見,上面提到的漏洞問題,在TLS協議中肯定也不是最后一次出現。
每年,在密碼學會議和研討會上,都會出現一些令人驚奇的攻擊案例,這些攻擊乍一看,與理論研究相矛盾,此刻,有個問題就被提出:密碼學理論家的“失誤”原因是什么?
在回答這個問題之前,讓我們試著弄清楚密碼學的支柱是什么,對手的模型是什么,以及關于“信息安全”這樣一個復雜而多方面的概念的知識是如何在世界上形成和擴展的。
模型作為基礎
解決信息安全問題的系統的開發是一個極其復雜和耗時的過程。事實證明,理論研究知識此類系統生命中眾多階段中的一個。同樣重要的是系統的建模、實施和運行階段,從普通用戶的角度來說,運行階段才是最重要的,理論永遠是理論。
V神發推預測21世紀20年代密碼學大趨勢:金色財經報道,V神今日在推特上表示:2010年代密碼學的大趨勢是橢圓曲線、配對和通用ZKPs/SNARK;預測21世紀20年代的大趨勢將是(除了廣泛采用上述技術外)格(lattices)、LWE、多線性映射、同態加密、MPC和模糊處理。[2020/4/11]
每一個階段都是基于前一個階段,并且是前一個階段的邏輯延續:例如,理論研究階段沒有建模是不可能的,因為推理的嚴謹性需要對研究的屬性和對象進行形式化。
密碼學中的建模涉及到對正在開發的系統的所有屬性、用戶與之互動的所有可能方式的深入分析,有時甚至涉及到系統運行的物理條件。
建模的結果是系統的數學模型,其中特別包括所謂的對手模型,事實上,它決定了一個安全的穩定的系統意味著什么。
對手模型由三個部分組成:攻擊類型、威脅模型和關于對手可用資源的假設。這三個部分加在一起,使我們有可能清楚地定義我們的系統所處的世界:敵人如何與之溝通,他可以從對手那里學到什么,他究竟想要實現什么以及他擁有哪些資源。
攻擊類型決定了敵人在與分析系統交互方面的定性能力。因此,攻擊的類型決定了對手可以接收什么樣的系統信息,以及他可以如何干擾其運行過程。
一個例子是敵人可以攔截和修改通信渠道上的數據的攻擊類型。在這里,敵人的能力應該考慮到所有已知的違反所研究系統安全的實踐和理論方法,并盡可能接近在實踐中使用該系統時出現的方法。
動態 | The Block分析師評論“美國國家安全局致力于開發抗量子加密貨幣”:準確說是抗量子密碼學:The Block分析師針對cointelegraph的“美國國家安全局正致力于開發抗量子加密貨幣”的報道表示,”quantum-resistant crypto”意味著抗量子密碼學,不是抗量子加密貨幣。[2019/9/5]
威脅模型定義了違反安全屬性的任務,這是對手想要解決的。例子包括偽造信息簽名或泄露機密信息。如果敵人解決了指定的任務,他們就說他“意識受到了威脅”。威脅模型反映了哪些情況違反了特定系統的安全性的想法。
關于敵人資源的假設也是模型中極其重要的部分,現在其決定了敵人的定量能力。通常它們是由一整套因素決定的:敵人的時間和計算資源、程序的大小以及他可以通過與系統交互而接收的信息量。
如果沒有這些限制,談論實踐中使用的大多數系統的安全性是完全沒有意義的,因為,對他們來說,總有一個對手,擁有無限的資源,可以通過簡單的暴力手段找到所需的密鑰,而不使用任何復雜的方法。
客觀現實
一旦研究對象的數學模型出現,就有可能應用合適的數學方法,其結果是先驗絕對準確的。
使用這種方法可以揭示被研究對象的深層屬性,并且在對時間延長的過程的研究中,實際上可以預測它們的未來。
在物理學中,我們預測扔出的石頭會在多少秒內掉在地上,而在密碼學中,我們預測未來幾年密碼系統是否會被黑客入侵。
動態 | 谷歌將采用密碼學以保持數據集的私密性:據wired報道,谷歌將發布一個名為Private Join and Compute的開源加密工具。它有助于連接來自不同數據集的數字列,以計算在整個數學過程中加密和不可讀數據的總和,計數或平均值。只有計算結果才能被所有各方解密和查看 - 這意味著你只能獲得結果,而不能獲得你未擁有的數據。該工具的加密原理可以追溯到20世紀70年代和90年代,但谷歌已經重新利用并更新它們,以便與當今功能更強大、更靈活的處理器配合使用。[2019/6/21]
因此,如果研究的數學部分是準確進行的,其結果不包含錯誤,那么理論和實踐之間出現看似奇怪的矛盾的主要原因在于對手的模型和系統在實踐中運行的真實條件之間的差異。在這種情況下,模型被認為還是不相關的。
同時,也不應該把責任歸咎于負責建模的員工,在系統開發過程的任何階段,從想法到運行,模型都可能變得不相關。然而,現實和模型之間的差異可能出現在構成模型的三個部門中的任何一個。
攻擊類型不匹配
讓我們看一下TLS1.1中使用的數據保護方案的安全性的數學證明示例,看看現實與HugoKrawczyk在他的工作中使用的模型之間的差異發生在哪里,以及導致這種差異的錯誤發生在哪里。
2001年的相同工作證明了MAC-then-Encrypt認證加密方案的強度,其中首先將模擬插入附加到消息,然后在消息和插入的串聯之后以CBC模式加密。CBC加密模式的特殊性在于它只能處理可以分成一定固定大小的塊的字符串。
聲音 | 迅雷張驍:區塊鏈發展與密碼學的提升密不可分:據洞察網消息,迅雷鏈底層研發工程師張驍表示,區塊鏈之所以能夠解決人與人之間的信任問題,就是因為它的不可篡改性,而這種特性本質上又是基于密碼學算法來實現的。因此密碼學在區塊鏈中的地位很關鍵,區塊鏈作為信任的基石,密碼學則是區塊鏈的基石。
他相信,未來區塊鏈的發展與密碼學在安全領域上的提升是密不可分的,所以迅雷鏈也會緊密地去關注密碼學未來的發展。[2018/12/24]
因此,為了能夠處理任何長度的信息,通常采用填充法:在向信息中添加插入物后,根據一定的規則,將產生的字符串填充到所需的大小。在接收方處理信息時,首先進行解密和驗證加法的正確性,然后才檢查模擬的插入。
在HugoKrawczyk的作品發表不到一年,就出現了針對CBC模式的填充預言機攻擊,它利用對手在檢查解密消息的補碼時獲取有關接收方是否遇到錯誤的信息。
攻擊的結果是違反了傳輸數據的保密性。起初,人們認為TLS協議免受填充預言機攻擊,因為其中的錯誤僅以加密形式返回,因此添加中的錯誤與模擬插入中的錯誤無法區分。
然而,密碼分析者能夠確定,對于大多數實現,在錯誤添加的情況下發布錯誤的時間與發布其他錯誤的時間不同,因為在錯誤添加的情況下,錯誤會立即發布,并且沒有采取進一步行動。
這個時間差使得可以區分接收端返回的錯誤并將填充預言機攻擊應用于TLS協議。
紅燒肉在上海交大的密碼學及計算機安全實驗室發布了抗量子攻擊綱要:紅燒肉(HSR)在上海交大的密碼學及計算機安全實驗室發布了抗量子攻擊綱要 。[2017/12/19]
然而,在Krawczyk的模型中,沒有考慮到對手可以在解密期間接收有關錯誤發生位置的信息。
這種遺漏導致攻擊類型與敵人的實際能力不匹配,事實證明這比模型假設的要多。這種機會的出現是由于系統功能的特殊性出現在其實施階段。
因此,起初給這位受人尊敬的科學家的工作蒙上陰影的整個情況遠沒有那么可怕:Krawczy的證明是絕對正確的,只是進行證明的模型變得無關緊要。
威脅模型不匹配
同樣有趣的是威脅模型不匹配引起的漏洞。如果一些可能的情況沒有被認為是負面的,它們就會出現。這種漏洞的一個例子是能夠恢復加密的VoIP對話的近似轉錄,只知道加密數據包的長度。
最初,人們認為對手存在這種信息并不構成違反保密性的巨大威脅,最多只能揭示對話的語言或某些短語的存在。
但是北卡羅來納大學的科學家們發現,通過結合某些編碼語音信息的方法和保留消息長度的流密碼,使用計算語言學和統計方法,可以準確地重新創建整個對話的轉錄。
因此,識別威脅的錯誤在建模階段就悄悄出現了。由于該系統是專門為加密語音電話而創建的,這樣的威脅本可以在加密協議開發的初始階段就被注意到。
對敵方資源的假設不一致
反過來,Sweet32攻擊基于對敵人資源的假設不匹配而產生的漏洞。Sweet32攻擊破壞了機密性,并使用塊長度較小的塊密碼來針對CBC加密模式。
這種攻擊基于生日悖論,為了成功,需要保持與服務器的連接時間大約38小時,以發送大約785GB的流量。
其實,早在2000年,就有一篇發表的作品中已經給出了破解CBC模式的概率對加密數據量的依賴。在那個年代,即使使用64位分組密碼,加密如此大量的數據,足以打破CBC模式,實際上是不切實際的。
因此,基于64位分組密碼的CBC模式在實踐中被認為是強大的。然而,隨著時間的推移,實施Sweet32所需要的資源不再顯得那么出色。
只是沒有注意到,在操作階段,模型與現實之間存在不匹配。因此,在實踐中,敵人可用的資源比模型中假設的要多得多。
進化斗爭
應該注意的是,系統通發現任何漏洞的常見做法是:當所考慮的示例中描述的每個漏洞的出版物發布后,立即采取措施解決這些漏洞。
然而,在無誤的理論研究的前提下,發現的漏洞會觸發另一個同樣重要的過程:分析對手模型與實際情況的差異及其后續擴展,將作為新一輪理論研究的一部分,這個過程本質上是對手模型的演變。
因此,在現實中,一個系統的發展是一個封閉的循環,其中,在解決方案的整合之后,一個同樣重要的運行過程發生了,它也進行了自身的調整。
在操作過程中,我們對敵人能力和安全屬性的鏈接會顯著擴大,有時是根據第三方或內部要求的結果對系統進行黑客攻擊的結果,這樣的“發現”開始了系統生命周期的新迭代。
不完美是不可避免的
但是不應該將此開發順序流程視為不合理,應該將其周期性視為流程不完善的標志。密碼學與其他科學沒有什么不同,類似的情況隨處可見。
有一個例子是:人們對地球形狀的理解的發展,它是最有形和最廣為人知的模型之一。該模型經歷從平坦地球模型到球狀地球模型、自轉橢球模型和大帝水準面模型的演變。
在這種情況下,出現與理論預測不一致的情況類似于在實踐中破壞理論上穩定的密碼系統。
對手模型增加了這樣的可能性:在系統被破壞的情況下,發現的漏洞將加深我們對信息安全方面的總體理解。
還值得注意的是,理論研究允許在實際實施之前預測許多攻擊。例如,1997年表明使用具有可預測初始化向量的CBC模型是不安全的。
然而,由于所提出的攻擊似乎過于理論化,所以沒有對使用這種加密方法的協議的實施進行修改。
到2011年,盡管有大量研究警告對TLS進行此類攻擊的可能性,但該漏洞仍未得到修復,密碼分析人員提出了該攻擊的實際實現,稱為BEAST。直到那時漏洞才被關閉。
總之,在毛球科技看來,系統開發的每個階段都很重要,應該與前幾個階段相互作用,如此這樣的過程確保了知識的精確進化,而不僅僅是“修補漏洞”。因此,不要忽視任何一個階段,適當關注新模型的發展和理論研究是非常重要的。
量子威脅
大多數人認為,絕大多數支持分布式賬本交易的加密協議都容易受到強大的量子計算機的攻擊。
量子計算機主要是一種模擬計算系統,它利用量子力學所描述的物理現象來處理數據和傳輸信息。更具體點說,量子計算機使用量子疊加和量子糾纏來計算。
在數據不變性的層面上,區塊鏈得到了很好的保護,甚至不受量子力量的影響。有關交易的信息存儲在注冊表中,該數據的重復記錄可供區塊鏈的所有主體使用,所有參與者相互獨立。
在這方面,為了改變網絡上的數據以修改向交易,必須影響所有區塊,這在沒有百萬用戶確認的情況下是不可能發生的。
只要用戶的錢包才會出現問題和漏洞。這是由于在可預見的未來,量子計算機的力量可能足以成功攻擊64位數的私鑰,而這也是量子計算威脅的唯一假設真實機會。
基于理論假設,俄羅斯聯邦政府金融大學副教授弗拉基米爾·吉辛表示,在擁有100量子比特量子計算機的世界中,比特幣區塊鏈可能被黑客入侵。
現在,上面的都是基于理論假設,還沒有實際的量子計算機出現,就算谷歌制造的49位量子位設備的存在也尚未被證實。
總有一天我們會回顧20世紀,想知道為什么我們會擁有這么多東西。 這是《時代》雜志上一篇名為“改變世界的10個想法”的文章的第一行,該文章寫于2011年.
1900/1/1 0:00:00BUIDLNFT功能是Hackerlink平臺上對開源開發者的一種資助方式。每一個上傳到Hackerlink的BUIDL都可以被鑄造成為一個NFT;BUIDLNFT生成后,可持續被交易,出價高者.
1900/1/1 0:00:00過去半個世紀,集成電路產業在摩爾定律的指引下飛速發展,算法效率一直保持著大跨度提升。2018年世界上最快的計算機IBMSummit比1945年世界第一臺電子計算機ENIAC計算速度提高了近30萬.
1900/1/1 0:00:00第四章美國的加密貨幣政策 加密貨幣政策曾以極快的速度發展。交易所和托管錢包一直處在全球幾十個監管機構的監督之下,代幣團隊從最開始就在證券監管機構的監視下運作.
1900/1/1 0:00:00撰文:Footprint分析師Simon(simon@footprint.network)日期:2021年11月28日-12月04日數據來源:WeeklyReport(https://footp.
1900/1/1 0:00:00撰文:Vincy@FootprintAnalytics日期:2021/09/09隨著7月月報July2021Report數據分析,7月的市場逐步恢復.
1900/1/1 0:00:00