摘 要:跨部門、跨地域、跨系統(tǒng)間的數(shù)據(jù)共享是充分發(fā)揮分布式數(shù)據(jù)價值的有效途徑,但是現(xiàn)階段日益嚴峻的數(shù)據(jù)安全威脅和嚴格的法律法規(guī)對數(shù)據(jù)共享造成了諸多挑戰(zhàn)。聯(lián)邦學習可以聯(lián)合多個用戶在不傳輸本地數(shù)據(jù)的情況下協(xié)同訓練機器學習模型,是實現(xiàn)數(shù)據(jù)安全共享的新范式。對聯(lián)邦學習的工作原理及與其密切相關的技術進行了簡要介紹,并系統(tǒng)地總結(jié)聯(lián)邦學習的隱私安全性以及其與區(qū)塊鏈結(jié)合的研究現(xiàn)狀,最后對下一步的研究方向做出了展望。 伴隨著云計算、邊緣計算等新一代信息技術的快速發(fā)展,全球數(shù)據(jù)量呈爆發(fā)式增長。數(shù)據(jù)已經(jīng)成為影響全球競爭的重要戰(zhàn)略性資源,各國陸續(xù)出臺相應政策大力支持數(shù)字經(jīng)濟的發(fā)展。然而,現(xiàn)階段海量的數(shù)據(jù)分布在不同的組織機構和信息系統(tǒng)中,需要實現(xiàn)跨部門、跨地域、跨系統(tǒng)間的數(shù)據(jù)共享,才能充分發(fā)揮數(shù)據(jù)價值。但是數(shù)據(jù)安全與合規(guī)問題卻對數(shù)據(jù)共享造成了諸多挑戰(zhàn),一方面,數(shù)據(jù)易被復制的特性使得數(shù)據(jù)主體擔心自己的商業(yè)秘密或用戶隱私泄露,導致他們不愿共享數(shù)據(jù);另一方面,日益嚴格的數(shù)據(jù)安全法規(guī)對個人數(shù)據(jù)的流通和使用提出了諸多限制。 隱私計算技術的興起為保障數(shù)據(jù)在安全合規(guī)的前提下發(fā)揮價值提供了破局思路,它是一個涵蓋密碼學、人工智能、安全硬件等眾多領域的跨學科技術體系。聯(lián)邦學習是隱私計算的代表性技術之一,可以使分布式用戶無須傳輸本地數(shù)據(jù)即可實現(xiàn)聯(lián)合建模,成為數(shù)據(jù)安全共享的新范式。由于聯(lián)邦學習可以與安全多方計算、可信執(zhí)行環(huán)境以及其他密碼學技術相結(jié)合,因此被學術界和工業(yè)界廣泛研究,并應用于智能家居、智慧城市、工業(yè)互聯(lián)網(wǎng)等場景。本文首先對隱私計算框架、聯(lián)邦學習、區(qū)塊鏈以及相關密碼學技術進行簡要的概述,然后介紹了聯(lián)邦學習的隱私安全性以及其與區(qū)塊鏈相結(jié)合的兩方面研究成果,最后對未來的研究熱點進行展望。 1 相關技術介紹 1.1 隱私計算框架 隱私計算技術為數(shù)據(jù)在融合應用中保障數(shù)據(jù)安全合規(guī)提供了關鍵技術路徑,當前已經(jīng)成為政、學、研、產(chǎn)等各界的關注焦點。據(jù)國際權威調(diào)研機構 Gartner 預測 ,2025 年將有一半的大型企業(yè)使用隱私計算技術在不可信的環(huán)境中處理敏感數(shù)據(jù)。隱私計算聯(lián)盟、中國信息通信研究院云計算與大數(shù)據(jù)研究所于 2021 年發(fā)布的《隱私計算白皮書》 中將隱私計算定義為在保證數(shù)據(jù)提供方不泄露原始數(shù)據(jù)的前提下,對數(shù)據(jù)進行分析計算的一系列信息技術,保障數(shù)據(jù)在流通與融合過程中的“可用不可見”。從技術原理上講,隱私計算交叉融合了密碼學、人工智能、安全硬件等眾多學科,以聯(lián)邦學習、安全多方計算、可信執(zhí)行環(huán)境 3 種主流技術為代表,同態(tài)加密、差分隱私、零知識證明、秘密共享等為底層密碼學技術,同時與區(qū)塊鏈技術緊密結(jié)合。其技術體系如圖 1 所示。 圖 1 隱私計算技術框架 本文主要關注聯(lián)邦學習與區(qū)塊鏈技術以及相關密碼學技術的結(jié)合應用現(xiàn)狀。其技術原理如下文所述。 1.2 聯(lián)邦學習 聯(lián)邦學習是谷歌于 2016 年提出的一種分布式機器學習框架 ,被用于聯(lián)合大量分布式用戶的數(shù)據(jù)訓練一個高質(zhì)量的機器學習模型。聯(lián)邦學習能夠在用戶數(shù)據(jù)不出本地的情況下聯(lián)合利用多方數(shù)據(jù),是解決“數(shù)據(jù)孤島”問題的重要框架,其核心思想是“數(shù)據(jù)不動模型動,數(shù)據(jù)可用不可見”。傳統(tǒng)的集中式機器學習算法需要將數(shù)據(jù)集中到中心服務器來訓練模型,這不僅會消耗大量的通信資源,數(shù)據(jù)在傳輸過程中也可能面臨隱私泄露風險。而聯(lián)邦學習僅需要用戶向服務器上傳本地訓練得到的模型參數(shù),由服務器協(xié)調(diào)多用戶來協(xié)同訓練機器學習模型。聯(lián)邦學習一般流程如圖 2 所示。 圖 2 聯(lián)邦學習一般流程 步驟 1:在初始化階段,服務器根據(jù)訓練任務將初始化模型下發(fā)給所有參與訓練的用戶。 步驟 2:每個用戶將收到的模型作為本地模型,以最小化損失函數(shù)為目標,利用梯度下降等優(yōu)化算法在本地數(shù)據(jù)集上進行訓練。迭代若干次后將模型參數(shù)(例如梯度、權重參數(shù)等)上傳至中心服務器。 步驟 3:中心服務器通過加權平均方法聚合來自所有用戶的參數(shù),得到全局模型,并將其下發(fā)至所有用戶。用戶按照步驟 2 開始新一輪的訓練。上述聯(lián)邦學習過程將反復迭代,直至模型收斂或達到最大訓練輪數(shù)。 根據(jù)分布式用戶持有數(shù)據(jù)的情況,可以將聯(lián)邦學習分為橫向聯(lián)邦、縱向聯(lián)邦和聯(lián)邦遷移。其中,橫向聯(lián)邦適用于數(shù)據(jù)集中的用戶特征重疊較多而用戶重疊較少的情況,例如兩個金融公司的用戶數(shù)據(jù);縱向聯(lián)邦適用于數(shù)據(jù)集中的用戶特征重疊較少而用戶重疊較多的情況,例如同一地區(qū)的互聯(lián)網(wǎng)公司和金融公司中共同用戶的數(shù)據(jù);聯(lián)邦遷移適用于數(shù)據(jù)集中的用戶特征重疊和用戶重疊均較少的情況,此時需要利用遷移學習來克服數(shù)據(jù)或標簽不足的問題,例如位于兩個不同國家的互聯(lián)網(wǎng)公司和金融公司的用戶數(shù)據(jù)。當前,由于模型逆向 、模型提取 等更加先進的隱私攻擊手段的出現(xiàn),使得聯(lián)邦學習需要與區(qū)塊鏈、差分隱私、安全多方計算等其他隱私計算技術互相融合來提高安全性,并解決計算開銷、通信開銷、訓練效率等問題以適用于更加實際的應用場景。 1.3 區(qū)塊鏈技術 自 2008 年中本聰?shù)谝淮翁岢霰忍貛? 以來,區(qū)塊鏈作為比特幣的底層框架開始被學術界和工業(yè)界深入研究。國際權威調(diào)研機構 Gartner 更是將“實用型區(qū)塊鏈”列為 2020 年十大戰(zhàn)略科技發(fā)展趨勢之一。 從本質(zhì)上講,區(qū)塊鏈是一個分布式賬本,以透明且不可篡改的方式記錄各方之間的交易。區(qū)塊鏈的一般結(jié)構如圖 3 所示,每個區(qū)塊由區(qū)塊頭和包含一系列事務的區(qū)塊體組成,區(qū)塊頭中含有前一個區(qū)塊的散列值,用于將當前區(qū)塊鏈接至前一個區(qū)塊。每個區(qū)塊鏈節(jié)點均存儲一個由若干個區(qū)塊組成的賬本,并且通過共識協(xié)議保證各個節(jié)點的賬本都是一致的。 圖 3 區(qū)塊鏈結(jié)構 現(xiàn)有的共識協(xié)議主要包括工作量證明(Proof of Work,PoW)、權益證明(Proof of Stake,PoS)、委托股權證明(Delegated Proof of Stake,DPoS)、實用拜占庭容錯協(xié)議(Practical Byzantine Fault Tolerance,PBFT)等。這些協(xié)議在安全性、響應時間、吞吐量等方面有各自的特點,但核心都是解決記賬權分配的問題。其中 PoW 是比特幣網(wǎng)絡使用的共識協(xié)議,它分配記賬權的原理是讓網(wǎng)絡中的每個節(jié)點都計算特定的哈希值。哈希值滿足一定條件的首個節(jié)點得到生成新區(qū)塊的權利。新區(qū)塊通過驗證后會廣播給網(wǎng)絡中的其他節(jié)點以保持賬本的一致性。這種機制是完全去中心化的,且由于犯錯成本非常高,使其安全性得到有效保證。但是爭奪記賬權的過程會浪費大量的計算資源,效率低下。PoS 分配記賬權的原理是節(jié)點通過證明自己的持股數(shù)來競爭生成新區(qū)塊的權利,相比之下,其避免了不必要的資源浪費,但是會導致一定的權力集中,有些違背去中心化的初衷。為此,DPoS 通過節(jié)點投票選舉出一定數(shù)量的代理節(jié)點負責區(qū)塊的生成和驗證,資源開銷更少、交易效率更高,但是由于記賬節(jié)點的減少,該協(xié)議可能面臨被部分惡意節(jié)點操控的風險。PBFT 則可以在有部分惡意節(jié)點存在的情況下達成共識,更常用于聯(lián)盟鏈中。 1.4 相關密碼學技術 1.4.1 差分隱私 差分隱私(Differential Privacy,DP)是 Dwork于 2006 年提出的一種嚴格可證明的隱私保護技術,可以抵抗攻擊者任意背景知識,其基本思想是對原始數(shù)據(jù)轉(zhuǎn)換或?qū)敵鼋Y(jié)果添加噪聲來保護數(shù)據(jù)隱私,確保數(shù)據(jù)集中任何單個記錄的修改都不會對統(tǒng)計結(jié)果造成顯著影響。差分隱私所加入的噪聲量與數(shù)據(jù)集規(guī)模無關,在大型數(shù)據(jù)集上只需要添加少量的噪聲即可實現(xiàn)較高水平的隱私保護。其相關定義如下: 定義差分隱私為令為隨機算法, D 和 D′為最多相差一條記錄的相鄰數(shù)據(jù)集,若 A 在 D 和 D′ 上的任意輸出結(jié)果都滿足式(1),則稱 A 實現(xiàn)差分隱私 式中:參數(shù)ε 為隱私預算,代表差分隱私技術所實現(xiàn)的隱私保護程度,ε 值越小,則表示隱私保護程度越高;δ 為違背嚴格差分隱私的概率。 1.4.2 同態(tài)加密 同態(tài)加密是基于數(shù)學難題的計算復雜性理論的密碼學技術,是指在密文狀態(tài)下對加密消息進行計算的結(jié)果再進行同態(tài)解密后的明文結(jié)果與明文數(shù)據(jù)進行加密再解密的處理結(jié)果一致。根據(jù)所支持的計算形式,同態(tài)加密可分為全同態(tài)和半同態(tài),其中,全同態(tài)加密支持對密文進行任意形式的計算,計算開銷較大,應用場景受限;半同態(tài)加密僅支持對密文進行加法或乘法計算,計算開銷相對較小,目前常應用于聯(lián)邦學習中的半同態(tài)加密算法包括 ElGamal 算法和Paillier 算法。 1.4.3 秘密共享 秘密共享是一類重要的密碼學原語,是指將秘密拆分成若干份額,分別交于若干參與者保存。當達到門限數(shù)的參與者將它們持有的秘密份額聯(lián)合起來進行計算時,即可恢復秘密,而任意一個參與者所持有的秘密份額均不會泄露原始秘密的任何信息。例如,應用較為廣泛的 Shamir 秘密共享協(xié)議 [9],它基于 Lagrange 插值定理。構造一個 m ?1次的多項式: 式中:p 為素數(shù),為常數(shù),為多項式的系數(shù)。令,即把常數(shù)項設定為待保護的秘密,且滿足,其他 m ?1個系數(shù)隨機選取。任取 n 個不同的點并計算出函數(shù)值,則這 n 組即為分給 n 個參與者的秘密份額。任意 m 組秘密份額均可以重建出多項式,進而得到秘密 2 聯(lián)邦學習的隱私安全性研究 聯(lián)邦學習讓分布式的用戶無須上傳原始數(shù)據(jù)即可協(xié)同訓練機器學習模型,在保護數(shù)據(jù)隱私的同時打破了數(shù)據(jù)孤島壁壘,被廣泛用于實現(xiàn)智能家居、智慧城市等場景下的數(shù)據(jù)安全共享。但是最新出現(xiàn)的模型逆向 、模型提取攻擊顯示攻擊者通過模型梯度依然可以恢復原始訓練數(shù)據(jù)的部分信息,說明原始的聯(lián)邦學習框架已不足以應對先進的隱私攻擊手段。為此,差分隱私和安全多方計算經(jīng)常被用來加強聯(lián)邦學習中隱私保護力度。 Shokri 等人 首次在分布式機器學習方法中的模型參數(shù)上添加噪聲來確保差分隱私,但是參數(shù)數(shù)量過大會消耗過量的隱私預算,導致實際的隱私保護效果不佳。Geyer 等人 在服務器端的聚合模型上添加差分隱私噪聲,用來保護用戶是否參與訓練這一信息,以抵抗成員推理攻擊。但是攻擊者可以通過服務器觀察到用戶上傳的模型參數(shù),進而竊取用戶隱私信息。Huang 等人根據(jù)每個參與者擁有的數(shù)據(jù)量不平衡的特點,分配不同的隱私預算,并設計自適應梯度下降算法進行協(xié)同訓練,在不平衡的數(shù)據(jù)集上取得了較好的效果。Liu 等人根據(jù)特征向量對模型輸出的貢獻程度分配不同的隱私預算,進而減少總體隱私預算的消耗。Truex等人 將差分隱私和安全多方計算相結(jié)合來減小噪聲的規(guī)模,實現(xiàn)多方數(shù)據(jù)協(xié)作的準確性和數(shù)據(jù)隱私保護強度的平衡,并可抵抗用戶間的共謀攻擊。由此可見,基于差分隱私的聯(lián)邦學習方法主要關注如何在保護數(shù)據(jù)隱私的前提下,盡量減少噪聲對于數(shù)據(jù)協(xié)作準確性的影響。 Phong 等人采用同態(tài)加密算法加密用戶的模型參數(shù)再上傳給服務器,服務器只能通過聚合得到密文的全局模型而無法解密單個用戶上傳的數(shù)據(jù)。Ma 等人結(jié)合 ELGamal 加密協(xié)議、Diffie-Hellman 密鑰交換協(xié)議和聚合簽名,設計了一個滿足隱私性和可驗證性的聯(lián)邦學習方法。Li 等人 針對云計算場景提出基于多密鑰全同態(tài)加密的聯(lián)邦學習隱私保護方法,每個用戶都使用自己的密鑰來加密模型參數(shù),能夠?qū)崿F(xiàn)較高的模型準確率,但是需要消耗較大的計算開銷。為了減小安全多方計算技術的計算開銷,Bonawitz 等人 結(jié)合隨機數(shù)生成器和秘密共享生成掩碼,可快速加密用戶梯度,并且使得服務器只能獲取全體用戶的梯度之和,而無法獲取單個用戶的梯度信息。Zhang 等人 基于門限秘密共享保護模型梯度信息,只有當服務器收集到足夠多的用戶梯度后才能解密得到全局梯度,并進一步提出了一種異步優(yōu)化方案來提高秘密共享的效率。由此可見,基于安全多方計算的聯(lián)邦學習方法主要致力于如何以較小的計算開銷實現(xiàn)對數(shù)據(jù)的隱私保護。 3 聯(lián)邦學習與區(qū)塊鏈的結(jié)合研究 聯(lián)邦學習需要一個中心服務器來協(xié)調(diào)處理用戶的參數(shù),因此可能遭受單點故障攻擊。而區(qū)塊鏈具有集體維護特性,可以代替中心服務器完成參數(shù)聚合操作,不僅有效避免了單點故障攻擊,還為訓練過程提供了可審計能力。因此,近年來陸續(xù)有學者將區(qū)塊鏈和聯(lián)邦學習相結(jié)合,應用于數(shù)據(jù)安全共享。在該結(jié)構中,各用戶將本地數(shù)據(jù)映射為機器學習模型,然后基于區(qū)塊鏈的共識機制交換模型,而無任何集中的數(shù)據(jù)訓練或協(xié)調(diào),實現(xiàn)了數(shù)據(jù)價值的安全共享。Kim等人 提出了一個設備間的數(shù)據(jù)共享模型,將設備上的模型參數(shù)經(jīng)過驗證和共識后記錄到區(qū)塊鏈中,提高了安全性。Qu 等人結(jié)合區(qū)塊鏈和聯(lián)邦學習設計了一個去中心化的認知計算平臺,以解決工業(yè) 4.0 中的數(shù)據(jù)孤島問題,同時改進馬爾可夫決策過程來防范內(nèi)部用戶發(fā)起的中毒攻擊。但是上述方法均使用工作量證明作為共識協(xié)議,會造成大量不必要的計算開銷,無法適用于計算資源受限的本地用戶。為此,Lu等人采用委托股權證明作為共識協(xié)議,并提出了一個由許可區(qū)塊鏈和本地有向無環(huán)圖組成的混合區(qū)塊鏈結(jié)構,同時設計異步聯(lián)邦學習方法來提高車聯(lián)網(wǎng)數(shù)據(jù)共享的效率。 上述方法均將明文的模型參數(shù)作為事務記錄存儲在區(qū)塊鏈中,而區(qū)塊鏈賬本的透明性與數(shù)據(jù)共享的隱私要求相矛盾,具體而言就是攻擊者可以通過獲取區(qū)塊鏈中存儲的模型參數(shù)來推斷訓練數(shù)據(jù)的信息。為了進一步提高隱私安全性,Weng 等人 使用 Paillier 算法加密用戶的模型參數(shù)后再上傳至區(qū)塊鏈,模型更新完畢后由t 個用戶協(xié)作完成解密。但是當訓練次數(shù)過多時,該方法將消耗大量的計算開銷。Lu 等人 和 Qi 等人 分別針對工業(yè)互聯(lián)網(wǎng)和智慧交通領域的數(shù)據(jù)安全共享需求,運用本地差分隱私技術,在原始數(shù)據(jù)上添加噪聲后再進行特征提取和共享,可以防止隱私攻擊。但是如何平衡隱私保護力度與數(shù)據(jù)效用仍然是差分隱私技術面臨的痛點。 4 結(jié) 語 日益嚴峻的數(shù)據(jù)安全威脅是數(shù)字經(jīng)濟時代面臨的重要挑戰(zhàn)。如何兼顧發(fā)展和安全,實現(xiàn)多用戶間的數(shù)據(jù)共享,是充分發(fā)揮數(shù)據(jù)價值的重要課題。以聯(lián)邦學習為代表的隱私計算技術為共享過程中的數(shù)據(jù)“可用不可見”提供了有效的解決方案。本文主要介紹了聯(lián)邦學習的應用背景和技術原理,并總結(jié)分析了現(xiàn)階段聯(lián)邦學習與其他技術相結(jié)合的研究現(xiàn)狀。聯(lián)邦學習的下一步研究方向包括以下幾個方面: (1)模型魯棒性問題。在原始聯(lián)邦學習框架中,都是假設各個用戶會誠實地上傳本地訓練的梯度,但是在實際網(wǎng)絡環(huán)境下,可能存在部分拜占庭用戶上傳虛假的甚至惡意的梯度來誤導聯(lián)邦學習過程,因此,需要研究魯棒性聯(lián)邦學習模型。當前已有部分學者提出拜占庭魯棒聚合算法,但是在適用范圍和訓練效率方面仍有待進一步研究。 (2)通信開銷問題。聯(lián)邦學習雖然無須傳輸原始數(shù)據(jù),但是在模型結(jié)構較為復雜的情況下通常需要進行上百甚至上千輪次的訓練,對于本地用戶的通信帶寬提出了較高的要求。目前已有部分學者提出了梯度壓縮、梯度稀疏化等多種策略來減少通信開銷,但是均會對模型收斂速度或者準確性造成較大的影響。如何提出一種更為合理的通信壓縮方案,是決定聯(lián)邦學習能否應用于邊緣計算場景的關鍵。 (3)隱私保護方案與模型性能的平衡。為了應對針對梯度的隱私攻擊手段,差分隱私和安全多方計算被廣泛用于保護用戶的本地梯度。但是二者對模型準確性或訓練效率均造成不同程度的影響。如何減少隱私保護方案對模型性能的影響,是聯(lián)邦學習落地應用的關鍵問題。 引用格式 引用格式:方晨 , 郭淵博 . 面向數(shù)據(jù)安全共享的聯(lián)邦學習研究綜述 [J]. 信息安全與通信保密 ,2022(10):66-73. |
|