一文讀懂機密計算SGX:區塊鏈、AI技術的一把安全鎖
圖片來源:視覺中國
區塊鏈夠安全嗎?
從其分布式存儲的特點來看,我們會給出一個肯定的回答,因為其避免了數據被篡改的可能性。
但從數據傳輸的角度,區塊鏈并不能阻止數據泄漏事件的發生,原因在于,區塊鏈在分布式存儲的過程中,數據在一定條件下仍然是公開可見的。
那么,在區塊鏈已經被廣泛應用的當下,我們應該如何保證“鏈”上數據的安全呢?
上周,來自清華大學的三人團隊歷經六個月的緊張研發,破解了這一難題。以李琦教授為代表的清華大學TrustFL團隊在“機密計算技術實踐及首屆 SGX 應用創意大賽”上獲得了一等獎。
獲獎作品以《基于 SGX 技術的可靠增強的聯邦機器學習》命名,顧名思義,該作品旨在通過SGX 技術解決聯邦機器學習過程中,參與者不按預期執行訓練任務,通過不訓練或少訓練來騙取獎勵,從而造成的模型污染或模型準確性降低的問題。
這聽起來有些抽象,所以如果要進一步介紹清華團隊這一作品背后透露出的,SGX技術在AI、大數據、區塊鏈等新興科技落地過程中凸顯出來的數據安全價值,我們可能要先從三個問題說起:
第一,SGX是什么,與聯邦機器學習、區塊鏈等新科技有著什么樣的關系;
第二,SGX技術行業現狀怎么樣,處于哪種發展階段;
第三,SGX發展還有哪些問題待解決?
本文將通過對清華大學李琦教授,以及大賽聯合發起單位、阿里云智能首席安全架構李曉寧的采訪試圖回答以上問題。
SGX與聯邦機器學習等的數據安全場景高度契合
SGX(Software Guard Extensions),是 Intel CPU 提供的可信執行環境,可以為云上數據代碼的完整性和保密性提供芯片級的安全保障。
業界也把SGX 作為“機密計算”的典型代表,因為機密計算技術可以支持云上用戶基于芯片硬件技術和云上虛擬映像和軟件工具,創建一個完全隔離的可信執行環境(安全區)。
由于機密計算可以對正在使用/執行中的數據進行加密,因此主機操作系統和云服務提供商都無法識別到這些安全區的敏感信息,從而防止任何第三方對正在執行中的數據進行篡改。
舉例來講,在某種生活或工作場景下,我們可能需要用身份證號或者手機號做認證,在輸入相關認證信息的過程中,我們的身份證或手機號可能存在被盜取的風險。
但是,假設我們可以把信息輸入的過程放在保險箱中加密,這種盜號的風險就會大大降低,而SGX就是一種構建保險箱,并對保險箱中的數據編碼輸入、解碼輸出的技術。這等于為數據傳輸上了一道安全鎖。
SGX的這一功能恰巧契合了聯邦機器學習、區塊鏈對數據安全的需求,這里重點以清華大學TrustFL團隊所討論的聯邦機器學習(FL)場景為例。
聯邦機器學習(FL)是AI、大數據技術合力促成的一項技術,簡單來講,“聯邦”有“眾籌”和“協作”之意。由于AI建模需要大量的數據用于訓練,但一般情況下A機構或企業都只有各自領域的數據,為了AI精確計算的需要,其對B機構、C企業的數據也有需求,但根據對用戶數據隱私保護的需求,不能粗暴地把幾方數據簡單加以合并。
于是FL想要做到的是各個企業的自有數據不出本地的情況下,聯邦系統可以通過加密機制下的參數交換方式建立一個虛擬的共有模型,這個模型之所以是虛擬的是因為數據本身并不移動,所以也不會泄漏用戶隱私。然而這樣的計算模型難以控制參與者的本地訓練過程,其容易受到模型污染攻擊和后門攻擊等等。例如,參與者可能會在不訓練或者少訓練的情況下騙取獎勵,從而導致模型訓練方的經濟損失。
SGX作為基于硬件的保護工具,可以有效且高效的保證機器學習訓練的正確執行。因此,通過應用SGX技術可以為聯邦機器學習提供有效的安全防護。
“本項目聚焦于將SGX技術與聯邦機器學習場景結合,在不影響FL計算模型對數據隱私保護的前提下,確保參與者按預期對本地數據進行訓練,從而提高整個聯邦機器學習網絡的可靠性。”李琦教授在接受鈦媒體采訪時說。
除了增強聯邦機器學習(FL)技術在實施過程中的數據安全性,SGX在區塊鏈安全領域的應用也尤為明顯。
在接受鈦媒體采訪時,大賽聯合發起單位、阿里云智能首席安全架構李曉寧分析,SGX技術會優先被區塊鏈領域采納用于解決問題,很大原因是今天的區塊鏈技術雖然解決了完整性與可用性問題,但是始終沒有解決機密性問題。
“機密是區塊鏈今天最大的一個空缺,所以當機密技術出來之后,大量區塊鏈公司通過SGX做保護,確保鏈上安全性。”
尚未完全成熟的高期待值技術
無論是在聯邦機器學習還是在區塊鏈領域,SGX都才剛剛開始做技術落地的探索。不過通過“機密計算技術實踐及首屆 SGX 應用創意大賽”,李曉寧身后的阿里云團隊也重新看到了SGX技術應用的新機會。
李曉寧坦言,清華大學這項基于SGX技術的可靠增強聯邦機器學習作品,的確為時下聯邦機器學習的熱門問題提供了一個解決思路。“印象很深刻,專家評委們對清華大學TrustFL團隊取得大賽第一名,沒有任何異議,爭議主要在第二、第三名的應用創新性上。”
他在回憶評獎環節時,仍然清楚記得獲得大賽第三名的作品中(第二名兩個,第三名三個),有團隊將 SGX 技術應用到了讓智能電視用戶通過聲紋,完成在線支付的場景中,該作品旨在保留聲音支付便捷性的同時保障聲紋支付的安全性。
“雖然提供了一個SGX的應用場景,但SGX技術在其中起到的是賦能作用,不是大家完全想不到的全新場景。”與此相反,專家評委團們對清華大學TrustFL作品的技術實現完整性、創新完整性、實用性都做出了一致肯定。
但就是這樣一個獲得一等獎的基于SGX技術的作品在真正商業化落地上仍然還需要一段時間。據李琦教授分析,清華大學這一獲獎作品目前只是完成了方案的可行性驗證:
要實現商業化落地,還需要實現靈活生成對任意FL模型的安全驗證模塊,并在SGX中移植輕量級高效安全的機器學習庫,然后根據用戶模型定義在enclave中生成相應的訓練代碼。這樣在不增加FL開發者的開發難度的情況下,為其提供安全驗證模塊,可能還需要半年多的優化。
將視野從清華大學TrustFL團隊的這一獲獎作品擴展到整個SGX行業,與TrustFL團隊的驗證類似,SGX技術的應用才剛剛邁出一小步,業界普遍還處于對SGX商業化應用的探索階段。
Gartner2019年云安全技術成熟度曲線首推機密計算
早在2017年阿里云就與英特爾聯合發布了基于 SGX 的加密計算技術,從芯片層面解決了云上客戶系統運行時環境可信這一業界難題。與阿里云同年,微軟Azure也在2017年宣布推出了公有云中首個支持SGX的服務器。
2018年,基于SGX技術,阿里云又推出了基于SGX技術的區塊鏈服務平臺;2019年的云棲大會,阿里云智能也與阿里云數據庫團隊聯合發布了全加密數據庫產品。此外業界便沒有更多關于SGX商業化的消息。
今年9月,Gartner發布了2019年云安全技術成熟度曲線報告中首度列入機密計算,這對正在探索SGX商業化道路的服務商來說無疑是一個利好消息。“我們目前已經感受到了AI技術的普惠,與AI一樣,SGX也是一項非?;尽⒂泻艽蟀l展潛力的能力,它可以讓不同的應用得到更好的保護。”
需要時間更需要技術突破
SGX技術如果要做到像AI技術一樣普惠,不僅需要時間,甚至還需要取得研發技術上的突破。李琦教授表示,單就《基于 SGX 技術的可靠增強的聯邦機器學習》這一獲獎作品來講,清華大學團隊就攻克了“聯邦機器學習中利用SGX技術確保參與者的誠實DNN訓練執行”這一問題,然而,直接在SGX內執行所有DNN訓練過程可能會導致極大的性能下降。
李琦教授將這一問題歸結為三個原因:
1.SGX廣泛集成在商用英特爾CPU處理器中,CPU進行機器學習訓練比當前GPU訓練效率低一到兩個數量級;
2.現在支持SGX的CPU只支持限制為128MB處理器保留內存(PRM)(應用程序可用的內存大約90MB)。當需要超過PRM限制的內存時,它們可能會導致顯著的換頁開銷;
3.enclave內的程序無法直接訪問操作系統服務如系統調用,如果enclave需要發起系統調用,會導致飛地/非飛地模式轉換,這也可能導致性能下降。因此,本項目的技術難點在于,在參與者端,不犧牲過多性能的情況下,利用SGX技術驗證參與者的本地機器學習訓練執行。
加速器的運用也是SGX面臨的另一項問題。李曉寧認為,從架構層面來講,今天有很多AI計算是在CPU和FPAG上進行的,如何將CPU與FPGA上的數據與SGX進行打通,形成無縫的開發環境或者運營環境,還有很多創新的東西需要做。”
今年8月,Linux基金會宣布推出了機密計算聯盟,里面包含了微軟、IBM、英特爾、阿里巴巴、騰訊等多家廠商,“技術如果不做布局,不跟進,很有可能導致戰略踩空的,我相信任何一個大企業,重要廠商,他們的技術領導都有職責和義務開這個技術,都是給用戶更好的保護。”李曉寧表示
時間推進至今,SGX技術未來在實際應用場景中還將如何落地,各個廠商在SGX技術上將會作出何種突破,都是值得期待的一件事。(本文首發鈦媒體,作者/秦聰慧)
更多精彩內容,關注鈦媒體微信號(ID:taimeiti),或者下載鈦媒體App