全球知名加密通訊應(yīng)用程序Signal計劃使用英特爾Skylake芯片內(nèi)置的DRM(數(shù)字版權(quán)管理)Secure Enclave隱藏用戶的連接方式。
Signal由此解決了追蹤端對端加密通訊的隱私薄弱環(huán)節(jié)。這種弱點表現(xiàn)在:當(dāng)用戶希望了解其它聯(lián)系人是否也使用相同的服務(wù)時,可以使用常規(guī)的通訊應(yīng)用程序咨詢中心“社交圖譜”查看使用相同服務(wù)的聯(lián)系人。而Signal自身的加密功能會阻止通過這種方式讀取用戶的消息,因此能結(jié)束暴露聯(lián)系人的更多信息。
Signal加密工作原理
Signal不使用自己的集中化社交圖譜,而是通過用戶的通訊錄解決問題。
要了解在使用Signal的聯(lián)系人,Singal首先會將號碼變成刪減版的SHA256哈希,與中心哈希目錄匹配對比(與密碼驗證方式類似)。試圖攔截流量或入侵該目錄的任何人只會看到哈希碼,而非電話號碼。
黑客要利用被竊哈希碼的唯一方式是猜測電話號碼。黑客需猜測號碼,通過哈希算法運行號碼,并查看是否與被竊哈希匹配。若不匹配,就得繼續(xù)嘗試,直到匹配成功。
Signal開發(fā)商OpenWhisperSystems表示,這種做法存在一個問題,因為10位數(shù)的預(yù)映射空間(Pre-image Space)較小,轉(zhuǎn)化這些哈?;旧暇退闶且环N直接的字典式攻擊,換句話講,計算機可能會快速猜測出電話號碼,打破哈希的安全性。
字典式攻擊:
指在破解密碼或密鑰時,逐一償試用戶自定義詞典中的單詞或短語的攻擊方式。
Signal不會保存用戶執(zhí)行的查詢記錄,這讓用戶表示放心。
如果用戶信任Signal服務(wù)運行的是官方開源服務(wù)器源代碼,用戶就會認為就算遭遇黑客入侵,Signal也不會持久獲取用戶的“社交圖譜”。但如果實際上運行的并非Signal開源服務(wù)器源代碼,畢竟黑客可能會修改服務(wù)來記錄用戶的發(fā)現(xiàn)聯(lián)系人(Contact Discovery)請求。即使Signal毫無執(zhí)行這類操作的動機,但入侵Signal的黑客可能會修改該代碼來記錄用戶的尋找聯(lián)系人請求,亦或一些政府機構(gòu)可能會要求Signal修改服務(wù),以記錄發(fā)現(xiàn)聯(lián)系人的請求。
Open Whisper Systems的創(chuàng)始人Moxie Marlinspike(莫西·馬琳斯巴克)將英特爾芯片內(nèi)置的“軟件防護擴展”(Software Guard Extensions,SGX)功能視為DRM的Secure Enclave。
英特爾現(xiàn)代芯片支持“軟件防護擴展”(Software Guard Extensions,SGX)功能。SGX允許應(yīng)用程序提供與主機操作系統(tǒng)和內(nèi)核隔離的Secure Enclave,其與ARM的信任區(qū)技術(shù)類似。SGX區(qū)域還支持遠程認證功能,即為在遠程運行的代碼提供加密保證。
由于Secure Enclave會驗證遠程運行的軟件,以及遠程服務(wù)器和操作系統(tǒng)看不到Enclave的內(nèi)容,這幾乎相當(dāng)于客戶端設(shè)備在本地執(zhí)行請求。
因此Signal加密通訊應(yīng)用能夠進行更好的端對端佳迷通訊及隱私保護。