陳珍珠 周純毅 蘇 铓 高艷松 付安民
1 (南京理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 南京 210094)
2 (廣西可信軟件重點(diǎn)實(shí)驗(yàn)室(桂林電子科技大學(xué))廣西 桂林 541004)
伴隨網(wǎng)絡(luò)通信、云計(jì)算、人工智能技術(shù)的快速發(fā)展,大數(shù)據(jù)已經(jīng)融入醫(yī)療、教育、金融、電商等多個(gè)行業(yè)領(lǐng)域,新技術(shù)應(yīng)用屢見(jiàn)不鮮.智能醫(yī)療、智能交通、智能電網(wǎng)等一系列泛在計(jì)算應(yīng)用場(chǎng)景的普及標(biāo)志著云計(jì)算和機(jī)器學(xué)習(xí)技術(shù)在智能終端數(shù)據(jù)處理上已融為一體[1].盡管近年來(lái),終端智能化衍生出分布式計(jì)算模式,推動(dòng)計(jì)算由云端趨向邊端和終端,但是終端數(shù)據(jù)過(guò)載和傳輸速率提高也給云計(jì)算帶來(lái)新的生機(jī)[2].目前,云計(jì)算仍然呈現(xiàn)蓬勃發(fā)展態(tài)勢(shì).據(jù)Statista 的統(tǒng)計(jì)數(shù)據(jù)[3]顯示,全球云計(jì)算市場(chǎng)持續(xù)增長(zhǎng),在2021 年的銷售額接近4 000 億美元,而預(yù)計(jì)到2023 年底這一數(shù)額將達(dá)到5 917.9 億美元.
眾所周知,云計(jì)算是一種按需配給資源的商業(yè)計(jì)算模式[4].通過(guò)配備大量商用計(jì)算機(jī)群,云服務(wù)商可以為用戶提供可伸縮的計(jì)算資源和靈活的綜合云服務(wù),包括但不限于服務(wù)器、存儲(chǔ)、數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)、軟件、數(shù)據(jù)分析和商業(yè)智能等.企業(yè)采用按需付費(fèi),無(wú)需大量的前期投資即可快速訪問(wèn)所需的計(jì)算資源,更快研究和開(kāi)發(fā)創(chuàng)新產(chǎn)品,并有效降低研發(fā)成本[5].此外,集成軟件即服務(wù)(software as a service,SaaS)、平臺(tái)即服務(wù)(platform as a service,PaaS)和基礎(chǔ)設(shè)施即服務(wù)(infrastructure as a service,IaaS)的云供應(yīng)商可以為企業(yè)提供從創(chuàng)新到運(yùn)營(yíng)所需的一切技術(shù)和服務(wù),迎接數(shù)字時(shí)代的挑戰(zhàn),其中包括人工智能、區(qū)塊鏈和物聯(lián)網(wǎng)等創(chuàng)新技術(shù).特別是,隨著大數(shù)據(jù)時(shí)代的到來(lái),數(shù)據(jù)處理的計(jì)算開(kāi)銷和資源消耗越來(lái)越大,計(jì)算任務(wù)變得日益復(fù)雜.面對(duì)產(chǎn)品以及業(yè)務(wù)智能需求時(shí),資源有限的企業(yè)可以將機(jī)器學(xué)習(xí)任務(wù)外包給云服務(wù)商,通過(guò)借助云計(jì)算的處理能力和分析技術(shù),完成信息挖掘和數(shù)據(jù)處理,同時(shí)節(jié)省升級(jí)計(jì)算設(shè)備帶來(lái)的高昂費(fèi)用.
機(jī)器學(xué)習(xí)是一種使機(jī)器模仿智能人類行為能力的人工智能技術(shù)[6].通過(guò)輔以數(shù)字、照片或文本數(shù)據(jù),機(jī)器學(xué)習(xí)算法讓計(jì)算機(jī)通過(guò)經(jīng)驗(yàn)學(xué)習(xí)進(jìn)行編程(即構(gòu)建模型).數(shù)據(jù)越多,模型性能越好.因此,機(jī)器學(xué)習(xí)模型訓(xùn)練需要強(qiáng)大的數(shù)據(jù)存儲(chǔ)和處理能力.通過(guò)資源連接,云計(jì)算可以承接該計(jì)算服務(wù),幫助用戶輕松試驗(yàn)各種機(jī)器學(xué)習(xí)技術(shù).此外,企業(yè)還可以將機(jī)器學(xué)習(xí)模型托管在云端,經(jīng)由API 接口為目標(biāo)客戶提供推理服務(wù).相比于點(diǎn)對(duì)點(diǎn)(peer to peer,P2P)模式,云端托管可以減少因網(wǎng)絡(luò)帶寬或服務(wù)器故障出現(xiàn)的訪問(wèn)延遲問(wèn)題,高效執(zhí)行任務(wù).同時(shí),云端資源的可擴(kuò)展性為托管模型的調(diào)整和改進(jìn)提供可能,避免了數(shù)據(jù)遷移帶來(lái)的額外開(kāi)銷.
盡管將機(jī)器學(xué)習(xí)任務(wù)外包給云服務(wù)商優(yōu)點(diǎn)眾多,但由于云端計(jì)算不透明且缺少有效監(jiān)管,外包計(jì)算的數(shù)據(jù)隱私性和計(jì)算安全性仍受到外界質(zhì)疑.為了解決面向機(jī)器學(xué)習(xí)外包計(jì)算的安全難題,學(xué)術(shù)界和產(chǎn)業(yè)界人員著手做了一系列研究.不同于模冪運(yùn)算[7]、矩陣計(jì)算[8-9]等傳統(tǒng)基礎(chǔ)計(jì)算的外包安全研究,面向機(jī)器學(xué)習(xí)外包安全研究更著重于技術(shù)應(yīng)用,平衡安全與性能.此外,云提供商也開(kāi)始致力于安全技術(shù)研究,以應(yīng)對(duì)潛在的威脅和滿足用戶的監(jiān)管要求.公有云、私有云、混合云以及多云合作的復(fù)雜計(jì)算模式和終端設(shè)備整體計(jì)算能力的提升都給外包計(jì)算安全帶來(lái)更復(fù)雜的挑戰(zhàn)[10].
因此,本文重點(diǎn)調(diào)研和分析了2018—2022 年網(wǎng)絡(luò)與信息安全領(lǐng)域的四大頂級(jí)會(huì)議(IEEE S&P,ACM CCS,NDSS,USENIX Security)以及IEEE TDSC,TIFS等著名安全期刊論文.基于這些研究成果,本文梳理了這5 年來(lái)研究者提出的面向機(jī)器學(xué)習(xí)的安全外包計(jì)算方案,文獻(xiàn)來(lái)源分析統(tǒng)計(jì)如圖1 所示.可以發(fā)現(xiàn),面向機(jī)器學(xué)習(xí)的安全外包計(jì)算研究成果總量不多,呈逐年持平態(tài)勢(shì)且每年都有頂級(jí)會(huì)議論文產(chǎn)出.從圖1(b)關(guān)于文獻(xiàn)的研究主題可以看到,這5 年的研究主要關(guān)注邏輯回歸、樸素貝葉斯分類、支持向量機(jī)、決策樹(shù)和神經(jīng)網(wǎng)絡(luò)等典型機(jī)器學(xué)習(xí)算法.研究文獻(xiàn)的統(tǒng)計(jì)情況反映了面向神經(jīng)網(wǎng)絡(luò)的安全外包研究隱藏著大量尚待發(fā)掘的問(wèn)題值得研究人員繼續(xù)跟進(jìn).
Fig.1 Statistics analysis of research literature source from 2018 to 2022圖1 2018—2022 年調(diào)研文獻(xiàn)來(lái)源統(tǒng)計(jì)分析
本文的主要貢獻(xiàn)包括3 個(gè)方面:
1)給出了安全外包計(jì)算的通用框架和威脅模型,結(jié)合目前機(jī)器學(xué)習(xí)安全外包研究成果,從外包的機(jī)器學(xué)習(xí)任務(wù)階段和云服務(wù)商數(shù)量,對(duì)計(jì)算模型進(jìn)行了分類,總結(jié)了不同分類模式下的外包模型特點(diǎn).
2)重點(diǎn)從邏輯回歸、貝葉斯分類、支持向量機(jī)、決策樹(shù)和神經(jīng)網(wǎng)絡(luò)等機(jī)器學(xué)習(xí)典型算法深入分析了現(xiàn)有安全外包計(jì)算研究進(jìn)展,并對(duì)面向機(jī)器學(xué)習(xí)的安全外包計(jì)算研究進(jìn)行了對(duì)比分析與探討.
3)結(jié)合機(jī)器學(xué)習(xí)和云計(jì)算技術(shù)發(fā)展特點(diǎn),分析了現(xiàn)有機(jī)器學(xué)習(xí)安全外包研究工作存在的不足,并重點(diǎn)從數(shù)據(jù)安全與效率平衡、計(jì)算完整性保護(hù)和遷移學(xué)習(xí)安全外包3 個(gè)方面探討了機(jī)器學(xué)習(xí)外包安全研究面臨的挑戰(zhàn)以及未來(lái)研究方向.
本節(jié)簡(jiǎn)要介紹了外包計(jì)算威脅模型以及安全外包計(jì)算的系統(tǒng)框架.
外包計(jì)算通過(guò)將計(jì)算問(wèn)題委托給云服務(wù)商處理,無(wú)需額外購(gòu)買和升級(jí)計(jì)算設(shè)備,解決了用戶資源受限的困境.不過(guò),外包計(jì)算并未考慮服務(wù)提供商的安全可靠性.云服務(wù)商是營(yíng)利商業(yè)個(gè)體,可能因逐利而非法收集用戶數(shù)據(jù).此外,由于云端操作的無(wú)監(jiān)督和不透明,用戶獲取的計(jì)算結(jié)果可能因硬件故障或外部攻擊而不符合要求.如圖2 所示,外包計(jì)算主要包含半可信云服務(wù)商和惡意云服務(wù)商2 種威脅模型[11].
Fig.2 Threat model for outsourced computing圖2 外包計(jì)算威脅模型
1)半可信云服務(wù)商.誠(chéng)實(shí)遵守外包協(xié)議,正確進(jìn)行計(jì)算.一旦獲得正確的結(jié)果,半可信云服務(wù)商向用戶發(fā)送結(jié)果.盡管如此,由于用戶的外包數(shù)據(jù)和計(jì)算結(jié)果可能含有對(duì)半可信云服務(wù)商有用的信息,因此,云服務(wù)商可能覬覦用戶的數(shù)據(jù),私自留存進(jìn)行轉(zhuǎn)賣或商業(yè)分析.
2)惡意云服務(wù)商.相當(dāng)于一個(gè)惡意的攻擊者,在計(jì)算過(guò)程中可能偏離外包協(xié)議的正確流程.惡意云服務(wù)商不僅試圖從用戶的數(shù)據(jù)中學(xué)習(xí)隱私信息,而且還會(huì)故意偽造結(jié)果,欺騙用戶以節(jié)省計(jì)算資源.
外包計(jì)算面臨的威脅主要包括數(shù)據(jù)泄露和結(jié)果不可靠.因此,外包計(jì)算安全主要包括2 個(gè)方面[12]:
1)數(shù)據(jù)機(jī)密性.指對(duì)用戶外包給云服務(wù)商的輸入和輸出數(shù)據(jù)進(jìn)行保護(hù),使其隱私信息不被非授權(quán)者(即云服務(wù)商)獲取和利用的特性.
2)計(jì)算完整性.指對(duì)計(jì)算輸出結(jié)果進(jìn)行驗(yàn)證,保證數(shù)據(jù)按照用戶指定要求進(jìn)行處理,計(jì)算任務(wù)沒(méi)有被未經(jīng)授權(quán)的方式進(jìn)行修改,其輸出結(jié)果滿足計(jì)算任務(wù)的要求.
云服務(wù)商可能受利益驅(qū)使損害外包計(jì)算的數(shù)據(jù)機(jī)密性和計(jì)算完整性.為了外包計(jì)算服務(wù)的良好發(fā)展,提供保護(hù)用戶利益的安全外包方案需要著重考慮數(shù)據(jù)機(jī)密性和計(jì)算完整性保護(hù)問(wèn)題.
安全外包計(jì)算系統(tǒng)包含2 個(gè)不同實(shí)體:用戶和云服務(wù)器.用戶加密數(shù)據(jù)后將計(jì)算任務(wù)外包給云服務(wù)器處理,云服務(wù)器完成計(jì)算后,將計(jì)算結(jié)果發(fā)送給用戶進(jìn)行驗(yàn)證和解密[13].因此,安全外包計(jì)算通用模型[1]一般包含5 個(gè)模塊:密鑰生成、數(shù)據(jù)加密、任務(wù)計(jì)算、結(jié)果驗(yàn)證和數(shù)據(jù)解密.5 個(gè)模塊以鏈?zhǔn)铰?lián)結(jié),模型框架如圖3 所示.
Fig.3 General model for secure outsourced computing圖3 安全外包計(jì)算通用模型
1)密鑰生成.根據(jù)外包協(xié)議設(shè)計(jì),密鑰生成模塊會(huì)設(shè)計(jì)相應(yīng)的密鑰生成算法生成密鑰(單個(gè)密鑰或公私鑰對(duì))并完成密鑰的分配.該模塊可以由用戶或者可信第三方完成.
2)數(shù)據(jù)加密.對(duì)用戶需要外包的計(jì)算問(wèn)題,數(shù)據(jù)加密模塊會(huì)對(duì)問(wèn)題中涉及的隱私數(shù)據(jù)進(jìn)行加密.數(shù)據(jù)加密算法的設(shè)計(jì)需要考慮用戶輸入和輸出的隱私安全.考慮到數(shù)據(jù)安全性,該模塊一般只由用戶完成.
3)任務(wù)計(jì)算.當(dāng)用戶將加密后的計(jì)算任務(wù)委托給云服務(wù)商后,云服務(wù)商根據(jù)用戶要求完成計(jì)算.
4)結(jié)果驗(yàn)證.對(duì)云服務(wù)商返回的結(jié)果,結(jié)果驗(yàn)證模塊會(huì)驗(yàn)證結(jié)果輸出的正確性,判定云服務(wù)商是否如約履行計(jì)算.該模塊確保了計(jì)算完整性.
5)數(shù)據(jù)解密.數(shù)據(jù)解密模塊是對(duì)驗(yàn)證后的計(jì)算結(jié)果進(jìn)行解密操作,獲取計(jì)算結(jié)果的明文.該模塊由用戶完成,因此在確保云服務(wù)商返回的結(jié)果滿足要求后,該模塊才生效,以免給用戶增加不必要的計(jì)算開(kāi)銷.
本節(jié)分別從外包的機(jī)器學(xué)習(xí)任務(wù)階段和云服務(wù)商數(shù)量等不同分類模式下,詳細(xì)闡述機(jī)器學(xué)習(xí)安全外包計(jì)算模型的特點(diǎn).
一個(gè)機(jī)器學(xué)習(xí)模型的完整任務(wù)階段包括模型訓(xùn)練和模型推理.模型訓(xùn)練是通過(guò)揭示數(shù)據(jù)相關(guān)性從而構(gòu)建利用該相關(guān)性評(píng)估目標(biāo)數(shù)據(jù)的模型.因此,模型訓(xùn)練需要通過(guò)機(jī)器學(xué)習(xí)算法輸入樣本數(shù)據(jù),利用機(jī)器學(xué)習(xí)算法幫助識(shí)別和學(xué)習(xí)數(shù)據(jù)特征屬性,特別是將處理后的數(shù)據(jù)輸出與樣本輸出相關(guān)聯(lián),利用相關(guān)性的結(jié)果對(duì)模型進(jìn)行了修正,從而使模型得到預(yù)期輸出.模型推理是模型通過(guò)簡(jiǎn)化并使用訓(xùn)練獲得的能力對(duì)待驗(yàn)證的目標(biāo)數(shù)據(jù)執(zhí)行推理,獲得預(yù)期結(jié)果.
在機(jī)器學(xué)習(xí)中,模型訓(xùn)練由于相比模型推理資源消耗更多,因此也是用戶??紤]外包的計(jì)算任務(wù).不過(guò)隨著產(chǎn)業(yè)智能化發(fā)展,模型推理的商用場(chǎng)景增多,用戶也會(huì)將推理任務(wù)委托給云服務(wù)商,以節(jié)省時(shí)間和計(jì)算資源.考慮到用戶的需求即委托給云服務(wù)器的任務(wù)不同,面向機(jī)器學(xué)習(xí)的安全外包計(jì)算研究一般可分為模型訓(xùn)練和模型托管2 種模式,如圖4 所示.
Fig.4 Two modes classified by task phase of machine learning圖4 按機(jī)器學(xué)習(xí)任務(wù)階段分類的2 種模式
1)模型訓(xùn)練模式,如圖4(a)所示.模型訓(xùn)練中,一般包含2 類個(gè)體:用戶和云服務(wù)商.用戶擔(dān)任數(shù)據(jù)提供者角色,云服務(wù)商承擔(dān)模型訓(xùn)練任務(wù).出于對(duì)數(shù)據(jù)保護(hù)的需要,用戶會(huì)將訓(xùn)練數(shù)據(jù)加密后再發(fā)送給云服務(wù)商,要求其訓(xùn)練目標(biāo)模型.云服務(wù)商需要在密文數(shù)據(jù)上構(gòu)建模型,期間可能與用戶進(jìn)行計(jì)算交互.為了確保有效的數(shù)據(jù)保護(hù)和密文計(jì)算,模型中也會(huì)引入可信實(shí)體進(jìn)行密鑰生成和分發(fā).此外,方案中也可能引入多個(gè)云服務(wù)商共同承擔(dān)計(jì)算任務(wù).
2)模型托管模式,如圖4(b)所示.與模型訓(xùn)練模式不同,模型托管外包場(chǎng)景下的用戶并非模型所有者,而是查詢者.模型所有者將訓(xùn)練好的模型托管到云端,要求云服務(wù)商代理模型推理任務(wù).用戶發(fā)送查詢數(shù)據(jù)給云服務(wù)商,云服務(wù)商根據(jù)模型推理,向用戶返回查詢結(jié)果.為了保護(hù)數(shù)據(jù)隱私,用戶將查詢數(shù)據(jù)進(jìn)行加密,且要求查詢結(jié)果對(duì)云服務(wù)商保密.推理過(guò)程一般不要求模型所有者參與,即支持模型所有者離線.
盡管這2 種模式中用戶數(shù)據(jù)需要進(jìn)行加密,但是模型訓(xùn)練模式的協(xié)議設(shè)計(jì)側(cè)重云端密文計(jì)算的實(shí)現(xiàn);模型托管模式則專注用戶和云服務(wù)商之間的交互.針對(duì)同一種機(jī)器學(xué)習(xí)算法,雖然2 種模式分管機(jī)器學(xué)習(xí)任務(wù)的不同階段,但是兩者的算法計(jì)算操作相似,其安全計(jì)算協(xié)議可以相互拓展和借鑒.
針對(duì)數(shù)據(jù)機(jī)密性保護(hù),機(jī)器學(xué)習(xí)外包計(jì)算研究采用了多種方法,如全同態(tài)加密(fully homomorphic encryption,F(xiàn)HE)、差分隱私、安全多方計(jì)算(multiparty computation,MPC)等.根據(jù)采用的數(shù)據(jù)保護(hù)方法,需要考慮采用單個(gè)云服務(wù)商模式還是多個(gè)云服務(wù)商模式幫助用戶完成外包計(jì)算任務(wù).因此,考慮到涉及的云服務(wù)商數(shù)量,面向機(jī)器學(xué)習(xí)的安全外包計(jì)算研究還可分為單云(云服務(wù)器數(shù)量為1)模式和多云(云服務(wù)器數(shù)量大于等于2)模式,如圖5 所示.
Fig.5 Two modes classified by the number of cloud service providers圖5 按云服務(wù)商數(shù)量分類的2 種模式
1)單云模式,如圖5(a)所示.單云模式中,用戶將機(jī)器學(xué)習(xí)計(jì)算任務(wù)(模型訓(xùn)練或者推理)外包給一個(gè)云服務(wù)商進(jìn)行處理.用戶不需要考慮數(shù)據(jù)分割或模型切割.因此,單云模式的最大優(yōu)點(diǎn)在于其簡(jiǎn)單高效,更容易協(xié)調(diào).不過(guò),單云模式通常采用FHE 加密實(shí)現(xiàn)數(shù)據(jù)保護(hù),而該密文操作資源消耗極大,會(huì)極大地增加用戶的訓(xùn)練費(fèi)用或查詢時(shí)間.
2)多云模式,如圖5(b)所示.多云模式中,機(jī)器學(xué)習(xí)計(jì)算任務(wù)交由多個(gè)云服務(wù)商共同處理.云服務(wù)商通過(guò)一系列安全多方協(xié)議完成模型訓(xùn)練或推理.各個(gè)云服務(wù)商以用戶的部分?jǐn)?shù)據(jù)作為輸入,并在整個(gè)計(jì)算過(guò)程中保持?jǐn)?shù)據(jù)隱私性,然后將結(jié)果返回給用戶.多云模式可以幫助用戶采用非密碼學(xué)工具,如加性秘密共享方式來(lái)保護(hù)數(shù)據(jù)隱私.因此,云服務(wù)商可以更快地處理計(jì)算任務(wù).此外,多云模式可以避免單點(diǎn)故障,即使其中一個(gè)模塊無(wú)法訪問(wèn),用戶仍然可以執(zhí)行一些關(guān)鍵任務(wù).不過(guò),多云模式安全假設(shè)高,一般要求云服務(wù)商之間不串通共謀.
單云模式和多云模式的選擇取決于計(jì)算和通信的取舍.單云模式不需要用戶與多個(gè)云服務(wù)商交互,亦不需要云服務(wù)商之間的交互,因此通信開(kāi)銷較小.但是,支持單云下的密文計(jì)算一般只能選擇FHE.多云模式可以通過(guò)數(shù)據(jù)分割實(shí)現(xiàn)隱私保護(hù),避免了復(fù)雜的密文計(jì)算,但同時(shí)計(jì)算過(guò)程中也需要用戶與云服務(wù)商之間的交互,同時(shí)增加了多個(gè)云服務(wù)商的多輪交互計(jì)算.因此,出于實(shí)用性考慮,單云模式和多云模式的選擇要同時(shí)考慮具體機(jī)器學(xué)習(xí)算法和計(jì)算場(chǎng)景,并做好安全性和效率的權(quán)衡.
通過(guò)對(duì)2018—2022 年這5 年機(jī)器學(xué)習(xí)的安全外包相關(guān)文獻(xiàn)采用的模型進(jìn)行統(tǒng)計(jì),發(fā)現(xiàn)機(jī)器學(xué)習(xí)的安全外包計(jì)算研究重點(diǎn)由模型訓(xùn)練趨向模型托管,單云模式與多云模式的應(yīng)用情況基本持平,如圖6所示.從2021—2022 年的研究情況來(lái)看,機(jī)器學(xué)習(xí)安全外包研究已經(jīng)趨向多云模式.相比于面向基礎(chǔ)計(jì)算的外包計(jì)算研究多采用同態(tài)加密(homomorphic encryption,HE),且因通信問(wèn)題和共謀威脅而較少采用MPC 支持多云模式,而面向機(jī)器學(xué)習(xí)的安全外包研究偏向應(yīng)用型,MPC 協(xié)議在多云模式中也嶄露頭角.外包計(jì)算是用戶用金錢換取計(jì)算資源,因此安全外包計(jì)算方案的設(shè)計(jì)需要考慮數(shù)據(jù)機(jī)密性和計(jì)算完整性保護(hù)之外,還需要平衡計(jì)算效率.例如,高安全性的FHE 支持云服務(wù)商進(jìn)行任意密文計(jì)算,但是計(jì)算高昂,不利于模型在云端的訓(xùn)練和應(yīng)用部署.因此,模式的選擇與數(shù)據(jù)隱私保護(hù)和計(jì)算效率的平衡密不可分.
Fig.6 Model statistics of machine learning security outsourced research圖6 機(jī)器學(xué)習(xí)安全外包研究模型統(tǒng)計(jì)
根據(jù)統(tǒng)計(jì)調(diào)研,表1 給出了機(jī)器學(xué)習(xí)外包計(jì)算模型應(yīng)用趨勢(shì)特點(diǎn),具體總結(jié)為4 個(gè)方面:
Table 1 Features of Machine Learning Outsourced Computing Modes表1 機(jī)器學(xué)習(xí)外包計(jì)算模型的特點(diǎn)
1)云服務(wù)器和數(shù)據(jù)源由單個(gè)趨向多個(gè).機(jī)器學(xué)習(xí)模型的訓(xùn)練和推理涉及多種計(jì)算,包括線性計(jì)算和非線性計(jì)算.單云模式中一般采用FHE 來(lái)支持多種運(yùn)算,保護(hù)數(shù)據(jù)隱私,但FHE 會(huì)嚴(yán)重拖慢模型計(jì)算進(jìn)程.多云模式的引用可以分?jǐn)傆?jì)算,加快計(jì)算進(jìn)程.此外,機(jī)器學(xué)習(xí)基于數(shù)據(jù)建立統(tǒng)計(jì)模型進(jìn)行分析預(yù)測(cè),算法由數(shù)據(jù)驅(qū)動(dòng).因此,用戶趨向聚集多源數(shù)據(jù)或者多個(gè)用戶共同委托云服務(wù)器訓(xùn)練模型來(lái)提高機(jī)器學(xué)習(xí)模型性能.不過(guò),多數(shù)據(jù)源場(chǎng)景中需要考慮不同密鑰加密的密文對(duì)模型計(jì)算的影響.
2)用戶端計(jì)算由在線趨向離線.面向機(jī)器學(xué)習(xí)的安全外包計(jì)算方案需要考慮現(xiàn)實(shí)應(yīng)用場(chǎng)景.模型所有者將模型托管在云端以降低實(shí)施和運(yùn)行成本,同時(shí)用戶期望減少查詢等待時(shí)間(即響應(yīng)時(shí)間).因此,機(jī)器學(xué)習(xí)安全外包研究考慮將用戶與云服務(wù)器的交互計(jì)算轉(zhuǎn)移到云服務(wù)器之間,以支持用戶離線.
3)外包階段由訓(xùn)練趨向推理,模型托管由明文趨向密文.隨著分布式學(xué)習(xí)[14]的興起,機(jī)器學(xué)習(xí)模型訓(xùn)練方式趨向分布式.受此影響,面向機(jī)器學(xué)習(xí)的安全外包研究將重點(diǎn)轉(zhuǎn)向模型托管的安全問(wèn)題.在模型托管中,相比私有評(píng)估(即明文模型托管),密文模型托管外包除了需要保護(hù)查詢數(shù)據(jù)和結(jié)果隱私外,還需要考慮模型機(jī)密性保護(hù)問(wèn)題,安全性更高.
4)威脅模型主要考慮半可信.隨著監(jiān)管規(guī)范要求和競(jìng)爭(zhēng)加大,機(jī)器學(xué)習(xí)安全外包研究主要考慮半可信威脅,去掉了計(jì)算完整性考慮.但是,驗(yàn)證模塊的缺失并沒(méi)有為用戶節(jié)省很多計(jì)算開(kāi)銷,而多云和多用戶模式的引入增加了隱私泄露的風(fēng)險(xiǎn).
這些趨勢(shì)表明了機(jī)器學(xué)習(xí)外包計(jì)算面臨的安全威脅多元且復(fù)雜.根據(jù)應(yīng)用場(chǎng)景,針對(duì)性選擇模型部署模式,定制設(shè)計(jì)算法模塊對(duì)機(jī)器學(xué)習(xí)安全外包研究至關(guān)重要.
本節(jié)根據(jù)機(jī)器學(xué)習(xí)常見(jiàn)的不同算法,對(duì)2018—2022 年的相關(guān)安全外包計(jì)算研究工作進(jìn)行了梳理和分析,總結(jié)了目前研究存在的問(wèn)題及不足之處.
邏輯回歸[15]是一種統(tǒng)計(jì)模型,是監(jiān)督學(xué)習(xí)中常用的預(yù)測(cè)二元結(jié)果的分類器.邏輯回歸本質(zhì)是將線性回歸的輸出用Sigmoid 函數(shù)進(jìn)行映射來(lái)估計(jì)事件發(fā)生的概率,即輸出結(jié)果數(shù)值在0 和1 之間.給定變量X和模型參數(shù)θ,邏輯回歸模型表示為
文獻(xiàn)[16]針對(duì)模型訓(xùn)練提出了一個(gè)基于HE 的邏輯回歸安全外包方案.相比于之前的邏輯回歸外包研究工作[17-18],該方案主要解決了2 個(gè)問(wèn)題:1)由于計(jì)算量較小,基于推理階段的安全外包難以應(yīng)用于訓(xùn)練階段;2)云端的密文計(jì)算量大,并隨著多項(xiàng)式級(jí)數(shù)增加呈指數(shù)增長(zhǎng).該方案采用近似FHE 方案和近似Bootstrapping 方法來(lái)減少計(jì)算開(kāi)銷.一方面,通過(guò)支持高效的近似計(jì)算的FHE 方案加密訓(xùn)練數(shù)據(jù),同時(shí)采用Nesterov 加速梯度法作為優(yōu)化方法和最小二乘擬合方法模擬Sigmoid 函數(shù),可以快速計(jì)算出復(fù)雜操作的近似結(jié)果并避免密文除法操作.另一方面,設(shè)計(jì)并行化Bootstrapping 操作算法,將密文分割成多個(gè)小塊,并行執(zhí)行Bootstrapping,可以顯著提高整體性能.此外,該方案通過(guò)對(duì)訓(xùn)練數(shù)據(jù)集分區(qū),將子數(shù)據(jù)集打包成一個(gè)密文,避免了密文重構(gòu)的額外開(kāi)銷.實(shí)驗(yàn)證明,該方案具有較好的性能提升,但引入的加密方案對(duì)訓(xùn)練模型的精度和性能的影響并不顯著.
文獻(xiàn)[19]重點(diǎn)探討了生物醫(yī)學(xué)場(chǎng)景中的邏輯回歸模型在公共云環(huán)境下的訓(xùn)練問(wèn)題,提出了SecureLR框架,幫助研究人員利用云計(jì)算對(duì)生物醫(yī)學(xué)數(shù)據(jù)進(jìn)行學(xué)習(xí)和預(yù)測(cè).基于HE 和軟件保護(hù)擴(kuò)展SGX 的安全硬件,SecureLR 考慮采用雙云模式,一個(gè)執(zhí)行HE計(jì)算,另一個(gè)支持安全硬件計(jì)算.相比于文獻(xiàn)[16]的方案,SecureLR 采用了HE 和安全硬件相結(jié)合的混合模式,提供了一種多層面的數(shù)據(jù)提供方法.文獻(xiàn)[16]和文獻(xiàn)[19]都采用了密文批處理,用一種單指令多數(shù)據(jù)(single instruction multiple data,SIMD)的方式實(shí)現(xiàn)并行處理,提高計(jì)算效率.
跟進(jìn)研究[20-21]延續(xù)了應(yīng)用FHE 加密數(shù)據(jù)和模擬Sigmoid 函數(shù)的設(shè)計(jì),但是在細(xì)節(jié)上略有差異.文獻(xiàn)[20]改用泰勒展開(kāi)式進(jìn)行逼近Sigmoid 函數(shù),而文獻(xiàn)[21]仍然選用最小二乘法.除此之外,文獻(xiàn)[21]提出的P2OLR 方案允許數(shù)據(jù)所有者和云服務(wù)器在訓(xùn)練過(guò)程中交互,判斷密文訓(xùn)練的模型是否滿足要求,避免錯(cuò)誤訓(xùn)練浪費(fèi)資源.不過(guò)盡管FHE 支持密文加法和乘法,但逼近Sigmoid 函數(shù)的多項(xiàng)式每一次運(yùn)算都會(huì)疊加噪聲,而B(niǎo)ootstrapping 操作雖然可以重置噪聲,但計(jì)算成本極大.為此,文獻(xiàn)[22]提出了一種不同的隱私保護(hù)方法支持邏輯回歸的安全外包.該方法不需要用多項(xiàng)式逼近Sigmoid 函數(shù)以及預(yù)先確定多項(xiàng)式級(jí)數(shù),而是將其轉(zhuǎn)化為對(duì)應(yīng)的嶺回歸邏輯函數(shù)并采用層次HE 方法.如圖7 所示,該方案包括3 個(gè)步驟:1)用未加密的數(shù)據(jù)集D1訓(xùn)練教師模型fs,從目標(biāo)標(biāo)簽中提取概率;2)利用加密教師模型推導(dǎo)出加密數(shù)據(jù)集D2的邏輯值,通過(guò)均值匹配進(jìn)行優(yōu)化;3)在D2上訓(xùn)練嶺回歸.具體來(lái)說(shuō),該方案通過(guò)將加密變量和非加密變量的運(yùn)算分開(kāi)從而采用免Bootstrapping 的層次HE 方法實(shí)現(xiàn)數(shù)據(jù)保護(hù),同時(shí)采用均值匹配緩解了由于未加密數(shù)據(jù)和加密數(shù)據(jù)分布差異而導(dǎo)致的模型性能下降問(wèn)題.實(shí)驗(yàn)表明,應(yīng)用層次HE 方法不僅具有更好的分類效果,且計(jì)算時(shí)間更短.
Fig.7 Training logistic regression by ridge regression圖7 通過(guò)嶺回歸訓(xùn)練邏輯回歸
表2 總結(jié)了已有的邏輯回歸外包方案的對(duì)比情況.可以看到,現(xiàn)有的邏輯回歸外包方案主要采用單云模式且重點(diǎn)考慮模型訓(xùn)練階段的外包安全問(wèn)題.盡管現(xiàn)有方案都傾向采用密文打包,用SIMD 實(shí)現(xiàn)并行化處理以提高計(jì)算效率,但是在實(shí)際應(yīng)用中FHE帶來(lái)的計(jì)算開(kāi)銷不容樂(lè)觀.此外,現(xiàn)有的方案都假定參與實(shí)體為半可信或可信且不共謀,但是在現(xiàn)實(shí)世界中仍然存在惡意參與者破壞或竊取模型.因此,如何在惡意敵手假設(shè)下提高外包方案的安全性并降低計(jì)算開(kāi)銷需要進(jìn)一步研究.
Table 2 Comparison of Logistic Regression Outsourced Schemes表2 邏輯回歸外包方案對(duì)比
樸素貝葉斯分類[23]是基于貝葉斯定理的分類算法集合,通過(guò)對(duì)數(shù)據(jù)屬性集和數(shù)據(jù)類之間建立概率關(guān)系判定數(shù)據(jù)的類別.給定數(shù)據(jù)X=(x1,x2,…,xd)、類別集{c1,c2,…,cm}、先驗(yàn)概率{P(C=c1),P(C=c2),…,P(C=cm)}和條件概率是類ci時(shí)的第j個(gè)屬性為v的概率),則樸素貝葉斯分類定義為
文獻(xiàn)[24]專注樸素貝葉斯分類的推理外包,提出了一種樸素貝葉斯分類模型的安全托管方案.如圖8 所示,模型所有者采用Paillier 算法對(duì)分類器進(jìn)行加密后將其托管到云端,并向用戶授權(quán)查詢令牌和私鑰.授權(quán)用戶用私鑰加密查詢數(shù)據(jù),而云服務(wù)器存儲(chǔ)加密模型,并對(duì)授權(quán)用戶的查詢做出響應(yīng).該方案通過(guò)加法HE 同時(shí)完成分類器模型和用戶數(shù)據(jù)的機(jī)密性保護(hù).不過(guò),該方案需要用戶和服務(wù)器頻繁交互,通信開(kāi)銷較大,對(duì)資源受限的用戶并不友好.因此,文獻(xiàn)[25]提出了改進(jìn)方案.改進(jìn)方案引入了一個(gè)可信處理器,承接原本查詢過(guò)程中用戶需要完成的解密操作,使用戶在與服務(wù)器不超過(guò)2 次的交互后即可獲得查詢結(jié)果.
Fig.8 Naive Bayes classification model hosting framework圖8 樸素貝葉斯分類模型托管框架
文獻(xiàn)[26]指出文獻(xiàn)[24]的方案容易遭受替換攻擊,被竊取模型信息,即查詢用戶可以在執(zhí)行argmax協(xié)議期間特意替換一些值從而恢復(fù)模型參數(shù).針對(duì)這一漏洞,文獻(xiàn)[26]引入了盲化技術(shù),向模型添加特定的擾動(dòng)值,使惡意用戶無(wú)法在執(zhí)行替換攻擊后獲得模型參數(shù)的有效信息.此外,方案改用OU 加密算法[27],減少了用戶與服務(wù)器之間的交互次數(shù),提高了計(jì)算效率.實(shí)驗(yàn)證明,該方案可以在防止替換攻擊造成的信息泄露下有效降低計(jì)算成本和通信負(fù)擔(dān).
文獻(xiàn)[28]重點(diǎn)關(guān)注樸素貝葉斯分類的訓(xùn)練外包.針對(duì)現(xiàn)有研究[29-30]中存在的不支持多個(gè)數(shù)據(jù)提供者和統(tǒng)計(jì)信息泄露的問(wèn)題,文獻(xiàn)[28]將Paillier 加密算法和差分隱私技術(shù)相結(jié)合,提出了多數(shù)據(jù)源的樸素貝葉斯學(xué)習(xí)外包方案.該方案通過(guò)Paillier 算法加密數(shù)據(jù),支持不同數(shù)據(jù)所有者上傳的密文加法計(jì)算,利用差分隱私向訓(xùn)練模型中添加噪聲,使模型使用者無(wú)法從訓(xùn)練器判定數(shù)據(jù)所有者是否擁有某個(gè)樣本.不過(guò),文獻(xiàn)[28]的作者未在實(shí)驗(yàn)中提供模型性能的評(píng)估結(jié)果,尚無(wú)法確定差分隱私對(duì)模型準(zhǔn)確度是否產(chǎn)生影響.
針對(duì)在線疾病風(fēng)險(xiǎn)診斷,文獻(xiàn)[31]基于貝葉斯分類設(shè)計(jì)了支持模型動(dòng)態(tài)更新的疾病風(fēng)險(xiǎn)評(píng)估CARER方案.CARER 方案實(shí)現(xiàn)了云服務(wù)器上的模型訓(xùn)練到模型推理的承接.模型提供商可以收集多個(gè)醫(yī)療中心的密文數(shù)據(jù)進(jìn)行模型訓(xùn)練和更新,同時(shí)為用戶提供疾病風(fēng)險(xiǎn)預(yù)測(cè)服務(wù).CARER 方案引入了一個(gè)可信實(shí)體用來(lái)分發(fā)密鑰.相比于之前的研究,CARER 方案通過(guò)將密鑰切割和聚合,防止模型提供商恢復(fù)醫(yī)療中心的數(shù)據(jù)統(tǒng)計(jì)信息,同時(shí)支持模型的明文訓(xùn)練,提高了模型計(jì)算效率.
表3 總結(jié)了已有的樸素貝葉斯分類外包方案的對(duì)比情況.可以看到,現(xiàn)有的樸素貝葉斯分類外包方案都采用單云模式,但會(huì)考慮引入可信實(shí)體承擔(dān)密鑰處理工作以增加安全性.考慮到樸素貝葉斯分類算法中以加法操作為主,大部分方案選用Paillier加密算法保護(hù)數(shù)據(jù)和模型的機(jī)密性.不過(guò),與邏輯回歸外包研究類似,現(xiàn)有方案都只考慮半可信安全,盡管文獻(xiàn)[26]考慮了存在惡意用戶情況,但是僅針對(duì)文獻(xiàn)[24]的漏洞,不具有普適性,計(jì)算完整性保護(hù)問(wèn)題仍待解決.
Table 3 Comparison of Naive Bayesian Classification Outsourced Schemes表3 樸素貝葉斯分類外包方案對(duì)比
支持向量機(jī)[32]是一種常見(jiàn)的監(jiān)督機(jī)器學(xué)習(xí)模型,它主要用來(lái)解決二分類問(wèn)題.支持向量機(jī)通過(guò)訓(xùn)練數(shù)據(jù)集在高維空間尋找超平面分隔數(shù)據(jù)點(diǎn)來(lái)確定決策邊界.支持向量機(jī)也可以通過(guò)為每一類數(shù)據(jù)創(chuàng)建一個(gè)分類器,解決多分類問(wèn)題.假設(shè)訓(xùn)練集包含N個(gè)樣本即{(x1,y1),(x2,y2),…,(xN,yN)},其中yi∈{-1,1},i∈{1,2,…,N}.對(duì)線性可分問(wèn)題,可以直接尋找決策超平面w·x+b=0.分類器模型定義為
盡管之前關(guān)于支持向量機(jī)外包安全研究[33-34]已經(jīng)采用相關(guān)隱私保護(hù)技術(shù),如隨機(jī)擾動(dòng)、加法同態(tài)和安全多方計(jì)算,嘗試解決了外包訓(xùn)練中存在的數(shù)據(jù)隱私問(wèn)題,但是后續(xù)的研究發(fā)現(xiàn)它們?nèi)匀淮嬖诳煽啃院桶踩詥?wèn)題.比如,文獻(xiàn)[35]指出文獻(xiàn)[34]的Paillier 密文計(jì)算中由于存在溢出風(fēng)險(xiǎn),[[zmod10l]]*[[rmod10l]](*表示同態(tài)密文乘法)不一定等于[[(z+r)mod10l]],因此云服務(wù)器可能返回錯(cuò)誤的分類結(jié)果.為了解決這一問(wèn)題,文獻(xiàn)[35]采用了一種混合方法,將HE 和混淆電路(garbled circuits,GC)結(jié)合,避免溢出風(fēng)險(xiǎn),減少計(jì)算時(shí)間.
針對(duì)模型僅支持單個(gè)數(shù)據(jù)所有者的問(wèn)題[34],文獻(xiàn)[36]則在制藥應(yīng)用場(chǎng)景下探討了多數(shù)據(jù)源的支持向量機(jī)訓(xùn)練外包安全問(wèn)題,提出了POD 方案.POD方案支持云服務(wù)器采用多個(gè)數(shù)據(jù)所有者的數(shù)據(jù)來(lái)訓(xùn)練支持向量機(jī)模型,并提供查詢.為了解決多用戶采用不同密鑰加密的密文不支持同態(tài)計(jì)算的問(wèn)題,POD 方案特別設(shè)計(jì)安全域轉(zhuǎn)換算法,將不同密鑰中的密文轉(zhuǎn)換為一個(gè)域,支持密文計(jì)算.同時(shí),針對(duì)密文的明文長(zhǎng)度存在溢出的問(wèn)題,設(shè)計(jì)了分?jǐn)?shù)近似協(xié)議減小明文長(zhǎng)度.然而,文獻(xiàn)[37]認(rèn)為只給定密文情況下無(wú)法判定明文長(zhǎng)度,因此該分?jǐn)?shù)近似協(xié)議并不實(shí)用.為此,設(shè)計(jì)了一種控制浮點(diǎn)數(shù)在安全計(jì)算過(guò)程中比特長(zhǎng)度的協(xié)議,強(qiáng)化了分?jǐn)?shù)近似協(xié)議,消除了預(yù)知消息長(zhǎng)度的前提.
除此之外,文獻(xiàn)[38]針對(duì)現(xiàn)有研究[39]中存在計(jì)算開(kāi)銷大的問(wèn)題,提出了PPSVM 方案.該方案通過(guò)使用SIMD 技術(shù)來(lái)加速支持向量機(jī)中內(nèi)積求和操作,即線性計(jì)算,同時(shí)使用近似方法來(lái)計(jì)算符號(hào)函數(shù),即非線性計(jì)算部分.文獻(xiàn)[40]考慮了惡意云服務(wù)器偽造結(jié)果欺騙用戶的情況,針對(duì)半可信和惡意威脅模型提出了解決方案AADP.該方案綜合使用安全哈希函數(shù)、Householder 變換和隨機(jī)排列,保證了數(shù)據(jù)機(jī)密性、模型機(jī)密性以及結(jié)果可驗(yàn)證性.文獻(xiàn)[41]則考慮了惡意用戶對(duì)模型隱私的影響,提出了一種基于多分類支持向量機(jī)的隱私保護(hù)醫(yī)療診斷方案.該方案采用DT-PKC 和BGN 密碼系統(tǒng),保護(hù)用戶數(shù)據(jù)隱私,同時(shí)提出了用戶認(rèn)證機(jī)制用于規(guī)避非法用戶對(duì)診斷系統(tǒng)的惡意攻擊.如圖9 所示,方案AADP 要求對(duì)每個(gè)用戶身份進(jìn)行真實(shí)性驗(yàn)證(如醫(yī)療資質(zhì)),驗(yàn)證通過(guò)后會(huì)分發(fā)給用戶一個(gè)包含公鑰、頒發(fā)者、過(guò)期日期等信息的文件.發(fā)送查詢請(qǐng)求時(shí),用戶需要在第三方的協(xié)助下發(fā)送時(shí)間戳和證明文件.但是,由于方案AADP 采用的BGN 加密算法是基于雙線性映射,增加了同態(tài)乘法的計(jì)算開(kāi)銷,降低了方案的計(jì)算效率.
Fig.9 User authentication mechanism圖9 用戶身份認(rèn)證機(jī)制
表4 總結(jié)了已有的支持向量機(jī)外包方案的對(duì)比情況.可以看到,現(xiàn)有的支持向量機(jī)外包方案大多采用HE 技術(shù).但是由于計(jì)算中涉及非線性操作,部分方案采用在線交互的模式.通過(guò)用戶與服務(wù)器多次交互對(duì)中間結(jié)果進(jìn)行加解密完成非線性計(jì)算,給用戶帶來(lái)額外的計(jì)算和通信開(kāi)銷.盡管有研究[40]考慮解決了支持向量機(jī)外包中的計(jì)算完整性保護(hù)問(wèn)題,但是提出的方案對(duì)矩陣盲化的數(shù)據(jù)大小比較缺乏正確性推導(dǎo).因此,文獻(xiàn)[40]方案的有效性也存在質(zhì)疑,支持向量機(jī)外包中的計(jì)算完整性保護(hù)問(wèn)題仍值得后續(xù)跟進(jìn).
Table 4 Comparison of Support Vector Machine Outsourced Schemes表4 支持向量機(jī)外包方案對(duì)比
決策樹(shù)是一種樹(shù)形結(jié)構(gòu)的非參數(shù)監(jiān)督學(xué)習(xí)算法,是目前最流行的機(jī)器學(xué)習(xí)算法之一,用于回歸和分類.決策樹(shù)包含1 個(gè)根節(jié)點(diǎn)、多個(gè)內(nèi)部節(jié)點(diǎn)和葉節(jié)點(diǎn),節(jié)點(diǎn)之間通過(guò)分支連接,每個(gè)節(jié)點(diǎn)通常有2 個(gè)或多個(gè)從其延伸的節(jié)點(diǎn).分支是連接節(jié)點(diǎn)的箭頭,通過(guò)在根節(jié)點(diǎn)和內(nèi)部節(jié)點(diǎn)上采用閾值比較,決定分支走向,形成決策路徑.目前常用的決策樹(shù)生成算法有ID3,C4.0,C5.0 等[42].
早先關(guān)于決策樹(shù)的外包安全研究[43-45]主要集中在私有評(píng)估上,即云服務(wù)器持有明文形式的模型.大多數(shù)方案依賴FHE,GC,ORAM 保護(hù)用戶的查詢數(shù)據(jù),計(jì)算開(kāi)銷較大.文獻(xiàn)[46]探討了私有評(píng)估中3 個(gè)子協(xié)議:特征選擇、比較和路徑評(píng)估,分析并評(píng)估了分別使用加性HE 和GC 時(shí)協(xié)議的效率,發(fā)現(xiàn)采用混合協(xié)議可以有效提高模型的評(píng)估效率.文獻(xiàn)[47]則針對(duì)協(xié)議執(zhí)行輪次進(jìn)行改進(jìn),通過(guò)將樹(shù)表示為一個(gè)數(shù)組,將執(zhí)行深度控制在樹(shù)的深度.
文獻(xiàn)[48]提出了一種密文模型托管的安全外包方案.該方案基于雙云模式,采用加性秘密共享方法解決了模型托管和推理過(guò)程中的安全輸入特征選擇、決策節(jié)點(diǎn)評(píng)估和推理結(jié)果生成保護(hù)問(wèn)題.具體而言,查詢用戶將特征向量分成2 個(gè)秘密共享,分別分發(fā)給2 個(gè)云服務(wù)器,云服務(wù)器收到數(shù)據(jù)后進(jìn)行交互計(jì)算運(yùn)行決策樹(shù)算法,并發(fā)送結(jié)果給用戶解密.整個(gè)查詢過(guò)程不需要用戶在線.之后,研究人員又在拓展版文獻(xiàn)[49]中提出了一個(gè)基于多項(xiàng)式的結(jié)果生成算法,進(jìn)一步降低了用戶的通信開(kāi)銷.不過(guò),文獻(xiàn)[50-51]指出文獻(xiàn)[49]方案的計(jì)算成本隨節(jié)點(diǎn)數(shù)量呈指數(shù)增長(zhǎng),不適用于大規(guī)模樹(shù),并提出了優(yōu)化方案.針對(duì)密文模型托管,文獻(xiàn)[52]也提出了一種決策樹(shù)分類外包方案.不同的是,該方案采用了單云模式,并將決策樹(shù)轉(zhuǎn)換為決策表,如圖10所示.決策樹(shù)轉(zhuǎn)換可以將模型推理轉(zhuǎn)換為決策表查找.具體來(lái)說(shuō),模型所有者通過(guò)將決策樹(shù)分類器轉(zhuǎn)換為一個(gè)決策表,并采用可搜索對(duì)稱加密對(duì)其處理后再托管到云服務(wù)器上.用戶加密數(shù)據(jù)特征后再發(fā)送給服務(wù)器進(jìn)行查詢.云服務(wù)器通過(guò)對(duì)比加密表格搜索預(yù)測(cè)值,并發(fā)給用戶.相比其他方案,該方案在保證模型和數(shù)據(jù)機(jī)密性的同時(shí)也降低了用戶和云服務(wù)器之間的通信開(kāi)銷.文獻(xiàn)[53]則在此基礎(chǔ)上,考慮了惡意用戶威脅,引入了用戶身份認(rèn)證協(xié)議.
Fig.10 Decision tree transformation圖10 決策樹(shù)轉(zhuǎn)換
針對(duì)現(xiàn)有方案不支持密文數(shù)據(jù)上的模型訓(xùn)練問(wèn)題,文獻(xiàn)[54]提出了一個(gè)具有隱私保護(hù)的外包方案支持決策樹(shù)的訓(xùn)練和預(yù)測(cè).該方案采用FHE,并利用密鑰管理服務(wù)(key management service,KMS)提供密鑰支持多個(gè)云服務(wù)器在密文數(shù)據(jù)上進(jìn)行模型訓(xùn)練和模型預(yù)測(cè).不過(guò)該方案需要滿足密鑰一致性,可能存在不適用于多數(shù)據(jù)源場(chǎng)景.文獻(xiàn)[55]將重點(diǎn)轉(zhuǎn)向多數(shù)據(jù)源場(chǎng)景下的模型訓(xùn)練外包,構(gòu)建了PPDT 方案,并針對(duì)私有評(píng)估提出了PPDE 方案.這2 個(gè)方案都采用了DT-PKC 加密算法保護(hù)數(shù)據(jù)隱私.此外,考慮到云服務(wù)器無(wú)法對(duì)密文數(shù)據(jù)集進(jìn)行最佳屬性劃分,設(shè)計(jì)了不分割數(shù)據(jù)集的決策樹(shù)訓(xùn)練方法,分別滿足3種隱私級(jí)別:2 個(gè)服務(wù)器都知道數(shù)據(jù)屬性頻率;只有1 個(gè)服務(wù)器知道數(shù)據(jù)屬性頻率;2 個(gè)服務(wù)器都不知道數(shù)據(jù)屬性頻率.在模型訓(xùn)練后,經(jīng)過(guò)訓(xùn)練的云服務(wù)器得到?jīng)Q策樹(shù)模型以提供私有評(píng)估服務(wù).
文獻(xiàn)[56]提出了由多個(gè)模型所有者托管決策樹(shù)進(jìn)行聯(lián)合決策的外包方案,即隨機(jī)森林安全外包方案.相比于單個(gè)決策樹(shù)分類器托管,隨機(jī)森林安全外包方案需要對(duì)多個(gè)決策樹(shù)分類結(jié)果進(jìn)行聚合得到最后結(jié)果.因此,該方案需要模型所有者們創(chuàng)建一個(gè)聯(lián)合密鑰,然后用分密鑰加密模型再托管到云端.在收到用戶的查詢請(qǐng)求后,云服務(wù)器會(huì)對(duì)單個(gè)加密的隨機(jī)森林安全外包方案模型執(zhí)行推理并計(jì)算聚合的結(jié)果.
考慮到現(xiàn)實(shí)世界中數(shù)據(jù)流的存在,文獻(xiàn)[57]將模型訓(xùn)練和推理過(guò)程動(dòng)態(tài)連接在一起,即模型可以針對(duì)標(biāo)簽數(shù)據(jù)和無(wú)標(biāo)簽數(shù)據(jù),在訓(xùn)練和推理中來(lái)回切換,并提出了EnclaveTree 方案.該方案包含2 個(gè)執(zhí)行區(qū)以及2 個(gè)緩沖區(qū):透明訓(xùn)練區(qū)、透明推理區(qū),訓(xùn)練緩沖區(qū)和推斷緩沖區(qū).緩沖區(qū)用于接收加密的帶標(biāo)簽和無(wú)標(biāo)簽數(shù)據(jù),分別進(jìn)行訓(xùn)練和推理.EnclaveTree方案會(huì)周期性讀取一批數(shù)據(jù)樣本進(jìn)行訓(xùn)練,并用矩陣盲化技術(shù)進(jìn)行加密.與現(xiàn)有的決策樹(shù)方案相比,EnclaveTree 不僅支持?jǐn)?shù)據(jù)流處理,且通信和計(jì)算開(kāi)銷更小.此外,文獻(xiàn)[58]結(jié)合樹(shù)編碼方法、共享無(wú)關(guān)選擇功能和安全計(jì)算構(gòu)造了決策樹(shù)外包方案,隱藏決策樹(shù)評(píng)估過(guò)程中被訪問(wèn)節(jié)點(diǎn),并將通信復(fù)雜性優(yōu)化到O(d).
表5 總結(jié)了現(xiàn)有決策樹(shù)外包方案對(duì)比情況.通過(guò)分析可以發(fā)現(xiàn),現(xiàn)有的決策樹(shù)外包研究主要關(guān)注模型托管安全問(wèn)題,而且主要采用HE 或秘密共享實(shí)現(xiàn)數(shù)據(jù)機(jī)密性保護(hù).決策樹(shù)推理主要包括3 個(gè)部分:特征選擇、比較和路徑評(píng)估.對(duì)模型托管,尤其是密文模型托管,需要考慮密文比較協(xié)議和路徑評(píng)估協(xié)議的設(shè)計(jì),避免比較次數(shù)增多帶來(lái)的通信開(kāi)銷和路徑暴露帶來(lái)的信息泄露.
Table 5 Comparison of Decision Tree Outsourced Schemes表5 決策樹(shù)外包方案對(duì)比
神經(jīng)網(wǎng)絡(luò)[59]是機(jī)器學(xué)習(xí)中最為常用的監(jiān)督學(xué)習(xí)算法,也是深度學(xué)習(xí)算法的核心.神經(jīng)網(wǎng)絡(luò)由多個(gè)人工神經(jīng)元聯(lián)結(jié)組成,包括輸入層、1 個(gè)或多個(gè)隱藏層和1 個(gè)輸出層.除了輸入層外,其他層神經(jīng)元都會(huì)進(jìn)行數(shù)據(jù)處理.單層的神經(jīng)網(wǎng)絡(luò)也稱為單層感知機(jī),其只包含輸入層和輸出層,是最小學(xué)習(xí)單元,其模型表示為
其中w和b是模型參數(shù),σ(·)是輸出神經(jīng)元的激活函數(shù).神經(jīng)網(wǎng)絡(luò)可以看作由多個(gè)感知機(jī)聯(lián)結(jié)而成.
文獻(xiàn)[60]針對(duì)單層感知機(jī)(single layer perceptron,SLP)的訓(xùn)練和推理提出了一種安全外包方案.該方案利用矩陣盲化技術(shù)加密訓(xùn)練數(shù)據(jù)和查詢數(shù)據(jù),保證了數(shù)據(jù)機(jī)密性.不過(guò),文獻(xiàn)[61]指出該方案中用戶端計(jì)算開(kāi)銷為O(n3),并沒(méi)有為用戶節(jié)省開(kāi)銷.對(duì)此,文獻(xiàn)[61]將盲化矩陣替換為稀疏矩陣,并設(shè)計(jì)了結(jié)果驗(yàn)證協(xié)議,在降低用戶計(jì)算開(kāi)銷的同時(shí)保護(hù)了計(jì)算完整性.不過(guò)由于單層感知機(jī)的應(yīng)用較少,不適用于大規(guī)模數(shù)據(jù),因此未有其他外包安全研究繼續(xù)跟進(jìn).
文獻(xiàn)[62]針對(duì)深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和推理提出了一種基于多密鑰的安全外包方案.該方案支持多個(gè)用戶加密數(shù)據(jù)上傳給云服務(wù)器進(jìn)行模型訓(xùn)練和推理.多密鑰技術(shù)的采用使得云服務(wù)器可以進(jìn)行密文轉(zhuǎn)換,完成模型訓(xùn)練.文獻(xiàn)[63]引入了雙云模式,采用加性秘密共享和數(shù)據(jù)分割完成了區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(region convolutional neural network,R-CNN)的安全訓(xùn)練外包.相比采用多密鑰和秘密共享對(duì)訓(xùn)練數(shù)據(jù)加密引入了額外的計(jì)算開(kāi)銷,文獻(xiàn)[64]借鑒了聯(lián)邦學(xué)習(xí)的思想,將深度神經(jīng)網(wǎng)絡(luò)(deep neural network,DNN)的訓(xùn)練分為2 部分.多個(gè)用戶在本地訓(xùn)練DNN的初始層進(jìn)行特征提取,然后上傳特征,將剩余層訓(xùn)練外包給云服務(wù)器.該方案可以避免數(shù)據(jù)加密操作的同時(shí)防止數(shù)據(jù)泄露.除此之外,文獻(xiàn)[65]采用秘密共享,引入了3 個(gè)云服務(wù)器完成DNN 的模型訓(xùn)練;而文獻(xiàn)[66]采用了矩陣盲化技術(shù)加密訓(xùn)練樣本,降低了用戶和云端的計(jì)算開(kāi)銷.不過(guò)文獻(xiàn)[66]方案并未對(duì)模型更新中的非線性計(jì)算部分給出說(shuō)明,其方案有效性存在疑問(wèn).
除了模型訓(xùn)練外包外,文獻(xiàn)[67]還考慮了分布式學(xué)習(xí)框架下模型訓(xùn)練后的托管問(wèn)題.為了避免模型的泄露,引入了一個(gè)監(jiān)管者共同托管模型,監(jiān)管者和云服務(wù)器同構(gòu)MPC 協(xié)議,重構(gòu)乘法和非線性LReLU 激活函數(shù),并分享基于查詢數(shù)據(jù)的計(jì)算結(jié)果.文獻(xiàn)[68]提出了一種用于醫(yī)療診斷的神經(jīng)網(wǎng)絡(luò)推理外包方案MediSC,該方案針對(duì)神經(jīng)網(wǎng)絡(luò)中的線性層和非線性層設(shè)計(jì)了計(jì)算協(xié)議,同時(shí)采用秘密共享技術(shù),減少了服務(wù)器和用戶之間的交互,降低了延遲.除了醫(yī)療場(chǎng)景外,文獻(xiàn)[69-70]還分別考慮了移動(dòng)式磁感測(cè)定系統(tǒng)中的特征提取和圖像去噪服務(wù).此外,文獻(xiàn)[71]針對(duì)模型推理過(guò)程中存在的延遲問(wèn)題做出了改進(jìn),但是方案的計(jì)算和通信開(kāi)銷較大,跟進(jìn)研究[72-73]對(duì)此做了改進(jìn).文獻(xiàn)[74]考慮了惡意用戶存在的情況;文獻(xiàn)[75-80]引入了雙云設(shè)置加快計(jì)算進(jìn)程.如圖11 所示,雙云模式中,數(shù)據(jù)采用秘密共享協(xié)議進(jìn)行分割,然后分別發(fā)給2 個(gè)云服務(wù)商.服務(wù)商之間采用MPC協(xié)議進(jìn)行模型計(jì)算,得到的結(jié)果也采用秘密共享形式分別發(fā)給用戶.最后,用戶組合得到結(jié)果.除此之外,文獻(xiàn)[81-84]也考慮了惡意云存在的情況,將雙云設(shè)置拓展到多云設(shè)置,解決了在誠(chéng)實(shí)多數(shù)環(huán)境下的模型推理安全問(wèn)題.
Fig.11 DNN inference in two cloud modes圖11 雙云模式下的DNN 推理
表6 總結(jié)了已有的神經(jīng)網(wǎng)絡(luò)外包方案的對(duì)比情況.可以看到,神經(jīng)網(wǎng)絡(luò)外包方案已經(jīng)逐漸由單云模式轉(zhuǎn)向多云模式.相比于其他的分類模型,神經(jīng)網(wǎng)絡(luò)的模型訓(xùn)練和計(jì)算更為復(fù)雜.因此,多云模式可以引入秘密共享協(xié)議,比密文計(jì)算更能提升方案計(jì)算效率.相對(duì)于單云模式,多云模式中常采用GC 和秘密共享,在實(shí)用性方面其通信開(kāi)銷仍然較大.現(xiàn)有采用多云模式的外包方案已經(jīng)考慮了惡意云服務(wù)商的威脅,但是其解決方案是引入多云,且沒(méi)有考慮出現(xiàn)共謀情況下的數(shù)據(jù)和模型隱私安全.
Table 6 Comparison of Neural Network Outsourced Schemes表6 神經(jīng)網(wǎng)絡(luò)外包方案對(duì)比
通過(guò)對(duì)典型機(jī)器學(xué)習(xí)安全外包計(jì)算研究深入調(diào)研,可以發(fā)現(xiàn)面向應(yīng)用型的外包計(jì)算研究已經(jīng)從簡(jiǎn)單模型拓展到復(fù)雜模型,但是由復(fù)雜的訓(xùn)練外包轉(zhuǎn)向模型托管.盡管目前大多數(shù)外包方案主要基于半可信威脅,但是仍有研究嘗試解決惡意云服務(wù)器和惡意用戶存在下的數(shù)據(jù)隱私保護(hù)問(wèn)題.相比針對(duì)基礎(chǔ)計(jì)算的安全外包方案,機(jī)器學(xué)習(xí)安全外包計(jì)算研究在數(shù)據(jù)保護(hù)技術(shù)的選擇和協(xié)議構(gòu)建上更注重實(shí)際應(yīng)用.比如,決策樹(shù)外包研究在解決模型托管問(wèn)題時(shí),主要采用HE 或秘密共享而非計(jì)算開(kāi)銷極大的FHE.除此之外,單云模式中引入可信實(shí)體以及采用多云模式分擔(dān)計(jì)算,也是為適應(yīng)實(shí)際模型計(jì)算中的數(shù)據(jù)機(jī)密性保護(hù)做出的努力.
根據(jù)調(diào)研分析,總結(jié)3 個(gè)機(jī)器學(xué)習(xí)安全外包計(jì)算研究進(jìn)展趨勢(shì):
1)數(shù)據(jù)保護(hù)技術(shù)由單一趨向混合.面向簡(jiǎn)單分類模型的外包方案一般采用單一的加密技術(shù),如FHE或加性HE,而面向決策樹(shù)和神經(jīng)網(wǎng)絡(luò)的外包方案較多采用HE、GC 和秘密共享的兩者結(jié)合或三者結(jié)合.混合技術(shù)的使用避免了開(kāi)銷過(guò)大的密文計(jì)算,同時(shí)也減少了用戶與云服務(wù)器的交互,易于方案的實(shí)際部署.
2)問(wèn)題的解決思路多樣化.基礎(chǔ)計(jì)算的安全外包方案按照計(jì)算類型設(shè)計(jì)數(shù)據(jù)保護(hù)協(xié)議,但面向機(jī)器學(xué)習(xí)的外包方案中由于每種模型涉及的計(jì)算操作不同,較多且復(fù)雜,因此協(xié)議設(shè)計(jì)可以依據(jù)模型特點(diǎn)做出改變.比如,在決策樹(shù)外包計(jì)算研究中可以將決策樹(shù)模型轉(zhuǎn)換成決策表,由密文搜索代替密文比較.在支持向量機(jī)外包計(jì)算研究中則可采用增加用戶和服務(wù)器交互,對(duì)中間結(jié)果進(jìn)行加解密,解決密文的非線性計(jì)算問(wèn)題.
3)威脅模型開(kāi)始討論惡意云服務(wù)器和惡意用戶的存在.盡管在面向簡(jiǎn)單模型的安全外包研究中較少考慮惡意云服務(wù)器和惡意用戶對(duì)數(shù)據(jù)隱私的威脅,但是有研究已經(jīng)針對(duì)惡意用戶提出了身份認(rèn)證的要求,且考慮引入多云解決惡意云服務(wù)器對(duì)模型計(jì)算安全造成的威脅.不過(guò)與傳統(tǒng)的計(jì)算完整性保護(hù)不同,現(xiàn)有研究提出的解決方案主要針對(duì)隱私保護(hù),即數(shù)據(jù)隱私和模型隱私,未針對(duì)驗(yàn)證問(wèn)題提出相應(yīng)的驗(yàn)證機(jī)制.
通過(guò)對(duì)現(xiàn)階段機(jī)器學(xué)習(xí)安全外包研究現(xiàn)狀的深入調(diào)研,發(fā)現(xiàn)機(jī)器學(xué)習(xí)安全外包研究雖然已經(jīng)取得了一些顯著的成果,但是仍然存在不足之處.本節(jié)從待改進(jìn)、未解決和新出現(xiàn)3 個(gè)層面分析總結(jié)機(jī)器學(xué)習(xí)安全外包研究面臨的問(wèn)題和挑戰(zhàn)以及潛在機(jī)遇.
為了保護(hù)數(shù)據(jù)機(jī)密性,目前大多數(shù)機(jī)器學(xué)習(xí)安全外包方案大多采用犧牲通信或計(jì)算來(lái)?yè)Q取數(shù)據(jù)安全,即采用多云模式結(jié)合數(shù)據(jù)分割或者單云模式結(jié)合HE.但是,從外包計(jì)算的實(shí)用角度來(lái)看,密文計(jì)算或多云租賃不僅對(duì)用戶的本地計(jì)算提出挑戰(zhàn),也增加了云端消耗,即用戶花費(fèi).特別對(duì)于模型托管中的查詢用戶來(lái)說(shuō),查詢前的數(shù)據(jù)加密操作和查詢過(guò)程密文計(jì)算造成的延遲都可能降低用戶的模型使用意愿,不利于模型所有者的商業(yè)發(fā)展目的.因此,如何同步平衡外包方案中的計(jì)算和通信開(kāi)銷、減少用戶本地消耗、降低用戶和云服務(wù)器的交互輪次,是機(jī)器學(xué)習(xí)安全外包研究目前待改進(jìn)的問(wèn)題.
計(jì)算完整性保護(hù)是外包計(jì)算安全研究的核心之一,但是面向機(jī)器學(xué)習(xí)的安全外包方案大部分只考慮半可信威脅,即數(shù)據(jù)隱私問(wèn)題.盡管有研究者探索了在惡意云環(huán)境下的安全性問(wèn)題,但是只涉及簡(jiǎn)單分類器,如支持向量機(jī)[40]、單層感知機(jī)[61],面向復(fù)雜模型(如神經(jīng)網(wǎng)絡(luò))的計(jì)算完整性保護(hù)工作仍存在空白.現(xiàn)實(shí)世界中,單云模式中可能因?yàn)槌霈F(xiàn)單點(diǎn)故障而計(jì)算錯(cuò)誤.多云模式中如果一方出現(xiàn)惡意計(jì)算,則會(huì)因?yàn)楸O(jiān)管缺失無(wú)法判定責(zé)任所屬.此外,模型訓(xùn)練中的計(jì)算完整性也同樣重要.關(guān)于機(jī)器學(xué)習(xí)的模型安全研究[85]已經(jīng)發(fā)現(xiàn)后門攻擊可以在不破壞模型性能的情況下對(duì)模型安全造成影響.盡管目前后門攻擊只涉及明文模型,但是這也說(shuō)明僅通過(guò)驗(yàn)證數(shù)據(jù)集判定模型性能是否良好不足以保護(hù)計(jì)算完整性.因此,為用戶設(shè)計(jì)模型完整性和結(jié)果正確性驗(yàn)證機(jī)制可以有效增強(qiáng)機(jī)器學(xué)習(xí)外包方案的安全性,這也是機(jī)器學(xué)習(xí)安全外包研究目前未解決的問(wèn)題.
現(xiàn)有的機(jī)器學(xué)習(xí)安全外包研究已經(jīng)考慮了多用戶多數(shù)據(jù)源場(chǎng)景下的模型訓(xùn)練外包問(wèn)題,說(shuō)明數(shù)據(jù)多樣性有助于模型性能提升.但是,多用戶場(chǎng)景存在用戶異構(gòu)性,即用戶數(shù)據(jù)、計(jì)算能力和需求不同,異構(gòu)性會(huì)影響外包方案的實(shí)際部署.為解決這一問(wèn)題,可以考慮遷移學(xué)習(xí)的安全外包.遷移學(xué)習(xí)可以在較少訓(xùn)練數(shù)據(jù)情況下訓(xùn)練高性能模型,同時(shí)減少訓(xùn)練時(shí)間和計(jì)算資源.在公眾數(shù)據(jù)安全意識(shí)提高和數(shù)據(jù)獲取困難的情況下,用戶可以在較少數(shù)據(jù)時(shí)利用遷移學(xué)習(xí)訓(xùn)練模型.因此,設(shè)計(jì)遷移學(xué)習(xí)安全外包方案,幫助模型所有者安全托管教師模型,支持多用戶采用云資源按需訓(xùn)練學(xué)生模型,以及如何實(shí)現(xiàn)數(shù)據(jù)短缺下的模型訓(xùn)練,是機(jī)器學(xué)習(xí)安全外包研究新出現(xiàn)的挑戰(zhàn).
機(jī)器學(xué)習(xí)技術(shù)推動(dòng)了現(xiàn)代社會(huì)的數(shù)字化發(fā)展,企業(yè)借助云資源完成產(chǎn)品和服務(wù)的智能化優(yōu)化,具有廣泛應(yīng)用,然而云計(jì)算安全問(wèn)題逐漸顯露引起了學(xué)術(shù)界的廣泛關(guān)注.本文通過(guò)深入調(diào)研面向機(jī)器學(xué)習(xí)的安全外包研究成果,按任務(wù)階段和云服務(wù)商數(shù)量對(duì)模型進(jìn)行分類,總結(jié)了不同分類模式下外包模型的特點(diǎn).同時(shí)發(fā)現(xiàn),現(xiàn)有研究的外包模型趨向模型推理,且較多采用多云模式.然后,集中分析了國(guó)內(nèi)外的相關(guān)研究工作,按邏輯回歸、樸素貝葉斯分類、支持向量機(jī)、決策樹(shù)和神經(jīng)網(wǎng)絡(luò)等算法討論了目前取得的研究進(jìn)展.最后,從不同角度分析和討論了目前機(jī)器學(xué)習(xí)安全外包研究待改進(jìn)、未解決以及新出現(xiàn)的問(wèn)題,并探討了未來(lái)面臨的挑戰(zhàn)和機(jī)遇.
作者貢獻(xiàn)聲明:陳珍珠提出了整體框架,負(fù)責(zé)內(nèi)容設(shè)計(jì)、論文撰寫(xiě)和最后版本修訂;周純毅負(fù)責(zé)完成文獻(xiàn)整理、分析和最終審核;蘇铓針對(duì)論文框架和表述提出指導(dǎo)意見(jiàn)并修改論文;高艷松針對(duì)研究進(jìn)展分析提出了指導(dǎo)意見(jiàn)并進(jìn)行了完善;付安民針對(duì)整體論文提出了指導(dǎo)意見(jiàn)并修改論文.