Google 的研究人員剛剛創(chuàng)造了計(jì)算機(jī)加密學(xué)在 2017 年的第一個(gè)里程碑:他們攻破了 SHA-1 安全加密算法。
實(shí)驗(yàn)的關(guān)鍵研究者是來自荷蘭 CWI 研究機(jī)構(gòu)的馬克·斯蒂文斯 (Marc Stevens),他在哈希算法方面發(fā)布過大量優(yōu)秀的研究成果。從 2013 年開始在學(xué)界展現(xiàn)出攻克 SHA-1 算法的決心,之后陸續(xù)發(fā)布了一系列新成果和改進(jìn)方法。通過和 Google 進(jìn)行合作,他獲得了實(shí)現(xiàn)本次攻破的關(guān)鍵資源:強(qiáng)大的計(jì)算能力。
這件事相當(dāng)重要,令人激動(dòng)。原因還要從 SHA-1 到底是個(gè)什么東西說起。
SHA-1 是什么?SHA-1(全稱 Secure Hash Algorithm-1)是一種安全加密算法,最主要的用途是數(shù)字簽名。
舉個(gè)例子:你肯定在電腦上下載過軟件吧?是否記得,文件的上傳者曾提醒過你,在下載后要校驗(yàn)文件?有沒有見過類似下圖中的文字?
這是因?yàn)?,使?SHA-1、MD5 這樣的哈希算法,對(duì)文本文檔、表格、音樂mp3、PDF、可執(zhí)行文件或其他任何文件等進(jìn)行計(jì)算,都會(huì)得出像上圖中這樣的字段(哈希值)。在過去只要文件不同,對(duì)應(yīng)的哈希值都絕對(duì)不一樣,就像是給每個(gè)文件都加上了數(shù)字的簽名。
而 SHA-1 哈希值應(yīng)該是 40 個(gè)英/數(shù)字:比如上面這張圖片對(duì)應(yīng)的 SHA-1 值是:
1E2FF30C5FD327C438F76C3ACBE97AAFB9AEDF7E
對(duì)于下載者來說,原文件的哈希值很重要:當(dāng)你下載了一個(gè)軟件,用文件校驗(yàn)工具查看它的 SHA-1/MD5 值,如果和原文件的不一樣,你就得小心了,因?yàn)槲募@然被修改過了,而里面可能包含了病毒或其他惡意代碼。
文件哈希值校驗(yàn)實(shí)例
SHA-1 和 MD5 是世界上最為常用的文件校驗(yàn)加密算法,過去一直被認(rèn)為是比較安全和可靠的算法——直到今天。
Google 和 CWI 一起研究出了一種方法,能夠讓兩個(gè)不同的文件采用 SHA-1 演算之后,呈現(xiàn)出完全一致的哈希值。
怎樣攻破的?
這次攻破被命名為 SHAttered attack。研究者提供了兩張內(nèi)容截然不同,在顏色上存在明顯差異,但 SHA-1 哈希值卻完全相同的 PDF 文件作為證明:
在博客中,研究者寫道:
哈希碰撞(hash collision,即兩個(gè)不同文件哈希值一致,也有譯作哈希沖突)本來不應(yīng)該發(fā)生。但實(shí)際上,當(dāng)哈希算法存在漏洞時(shí),一個(gè)有足夠?qū)嵙?/strong>的攻擊者能夠制造出碰撞。進(jìn)而,攻擊者可以用去攻擊那些依靠哈希值來校驗(yàn)文件的系統(tǒng),植入錯(cuò)誤的文件造成惡果。舉個(gè)例子,兩份條款完全不同的保單。
本次 Google 對(duì)其進(jìn)行攻破花費(fèi)了巨量的算力:總計(jì)9,223,372,036,854,775,808——超過 9 兆(億億)次演算。
破解分為兩個(gè)階段,分別需要一個(gè) CPU 進(jìn)行 6500 年,和一個(gè) GPU 進(jìn)行 110 年的計(jì)算才可以完成。這是因?yàn)檠芯空卟捎昧俗孕醒邪l(fā)的 Shattered 破解方法,其效率遠(yuǎn)勝于使用暴力破解。而且 Google 云平臺(tái)提供的大規(guī)模計(jì)算技術(shù),顯著減輕了負(fù)擔(dān)。
這也是為什么必須“有足夠?qū)嵙Φ墓粽?rdquo;才能攻破……
需要恐慌嗎……
2012 年安全技術(shù)專家布魯斯·施奈爾曾經(jīng)估計(jì),完成一次 SHA-1 碰撞在 2012 年需要耗費(fèi) 277 萬美元,到 2015 年則降到 70 萬美元,2021 年只需要 4.3 萬美元。他還暗示,到 2018 年就會(huì)有犯罪集團(tuán)具備偽造 SHA-1 簽名證書的能力。
但至少目前,人們并不需要恐慌。首先就事件本身而言,普通網(wǎng)友不需要擔(dān)心有人會(huì)用它做壞事,因?yàn)?Google 漏洞披露政策規(guī)定,本次 SHAttered attack 的研究者需要等待 90 天才能發(fā)布原始代碼。就算掌握了代碼,至少也得有 Google 這種水平的大規(guī)模計(jì)算能力……
另外,研究者上線了一個(gè)網(wǎng)站shattered.io,網(wǎng)友可以上去了解更多技術(shù)細(xì)節(jié),還可以上傳自己的文件,測試自己的文件是否安全。
作為一種老舊的哈希算法,SHA-1 正在被其后來者,比如 SHA-2 和 SHA-3 新算法以及它們的各種變體所取代。三大瀏覽器 Chrome、微軟 Edge/IE 和火狐瀏覽器都決定棄用 SHA-1。
Google 早在 2014 年就未雨綢繆,宣布了逐漸放棄 SHA-1 的決定。去年開始,Google 的 Chrome 瀏覽器已經(jīng)不再支持 SHA-1 證書,會(huì)將其標(biāo)記為不安全。當(dāng)證書過期之后,瀏覽器將無法訪問這些網(wǎng)站。Google 方面也推薦 IT 人士采用 SHA-256 等更安全的算法。所以今天的實(shí)驗(yàn)結(jié)果宣布,也算是給 SHA-1 補(bǔ)上遲來的一刀了……
微軟 Edge 瀏覽器團(tuán)隊(duì)此前在其博客中表示,將于 2017 年中開始棄用 SHA-1。但據(jù)《福布斯》網(wǎng)絡(luò)版報(bào)道,另一位安全專家凱文·貝爾蒙特則在 Twitter 上指出,棄用 SHA-1 的 Windows 安全更新本應(yīng)該在 2 月早些時(shí)候推送,但仍處于延期發(fā)布的狀態(tài)。
去年 10 月,火狐瀏覽器的開發(fā)商 Mozilla 也宣布了同樣的決定。
最后再送上:一張圖看懂 SHAttered attack(Google 官方制作)
好文章,需要你的鼓勵(lì)
新加坡國立大學(xué)研究團(tuán)隊(duì)開發(fā)了SPIRAL框架,通過讓AI與自己對(duì)弈零和游戲來提升推理能力。實(shí)驗(yàn)顯示,僅訓(xùn)練AI玩簡單撲克游戲就能讓其數(shù)學(xué)推理能力提升8.6%,通用推理提升8.4%,且無需任何數(shù)學(xué)題目作為訓(xùn)練材料。研究發(fā)現(xiàn)游戲中的三種推理模式能成功轉(zhuǎn)移到數(shù)學(xué)解題中,為AI訓(xùn)練提供了新思路。
同濟(jì)大學(xué)團(tuán)隊(duì)開發(fā)的GIGA-ToF技術(shù)通過融合多幀圖像的"圖結(jié)構(gòu)"信息,創(chuàng)新性地解決了3D相機(jī)噪聲問題。該技術(shù)利用圖像間的不變幾何關(guān)系,結(jié)合深度學(xué)習(xí)和數(shù)學(xué)優(yōu)化方法,在合成數(shù)據(jù)集上實(shí)現(xiàn)37.9%的精度提升,并在真實(shí)設(shè)備上展現(xiàn)出色泛化能力,為機(jī)器人、AR和自動(dòng)駕駛等領(lǐng)域提供更可靠的3D視覺解決方案。
伊利諾伊大學(xué)研究團(tuán)隊(duì)通過對(duì)比實(shí)驗(yàn)發(fā)現(xiàn),經(jīng)過強(qiáng)化學(xué)習(xí)訓(xùn)練的視覺語言模型雖然表現(xiàn)出"頓悟時(shí)刻"現(xiàn)象,但這些自我糾錯(cuò)行為并不能實(shí)際提升推理準(zhǔn)確率。研究揭示了AI模型存在"生成-驗(yàn)證差距",即生成答案的能力強(qiáng)于驗(yàn)證答案質(zhì)量的能力,且模型在自我驗(yàn)證時(shí)無法有效利用視覺信息,為AI多模態(tài)推理發(fā)展提供了重要啟示。
MIT等頂尖機(jī)構(gòu)聯(lián)合提出SparseLoRA技術(shù),通過動(dòng)態(tài)稀疏性實(shí)現(xiàn)大語言模型訓(xùn)練加速1.6倍,計(jì)算成本降低2.2倍。該方法使用SVD稀疏性估計(jì)器智能選擇重要計(jì)算部分,在保持模型性能的同時(shí)顯著提升訓(xùn)練效率,已在多個(gè)任務(wù)上驗(yàn)證有效性。