• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于區(qū)塊鏈的隱私保護去中心化聯(lián)邦學(xué)習(xí)模型

      2022-11-12 11:27:36胡克勇王金龍
      計算機研究與發(fā)展 2022年11期
      關(guān)鍵詞:累加器參與方信譽

      周 煒 王 超 徐 劍 胡克勇 王金龍

      1(青島理工大學(xué)信息與控制工程學(xué)院 山東青島 266520) 2(大規(guī)模個性化定制系統(tǒng)與技術(shù)全國重點實驗室(海爾集團公司) 山東青島 266100) 3(東北大學(xué)軟件學(xué)院 沈陽 110169)

      機器學(xué)習(xí)為各行各業(yè)帶來了新的發(fā)展動力,其在語音識別、圖像識別和分類、藥物發(fā)現(xiàn)、流感患病率預(yù)測等方面的應(yīng)用取得了顯著進步[1-4].為了獲得高質(zhì)量的模型,傳統(tǒng)機器學(xué)習(xí)方案需要收集大量數(shù)據(jù)到中央服務(wù)器,這帶來了過高的計算開銷和隱私泄露的風(fēng)險.在諸如醫(yī)療保健、物聯(lián)網(wǎng)等領(lǐng)域,大量敏感數(shù)據(jù)廣泛分布在不同位置,有多個數(shù)據(jù)實體聯(lián)合建模的需求,但出于隱私保護的考慮,數(shù)據(jù)源之間存在難以打破的壁壘,對于數(shù)據(jù)的隱私性和安全性有著更高的要求.

      隨著美國《健康保險攜帶和責(zé)任法案》(health insurance portability and accountability act, HIPAA)[5]以及歐盟《通用數(shù)據(jù)保護條例》(general data protection regulation, GDPR)[6]的頒布實施,數(shù)據(jù)訪問進一步受到限制.業(yè)界和學(xué)術(shù)界開始更加注重在應(yīng)用機器學(xué)習(xí)時的隱私保護問題,私有數(shù)據(jù)不應(yīng)公開上傳到中央服務(wù)器.谷歌在2016年首次提出聯(lián)邦學(xué)習(xí)的概念[7-9],建立了基于多個設(shè)備上數(shù)據(jù)集的分布式訓(xùn)練模型.訓(xùn)練過程包含一個中央服務(wù)器(即參數(shù)服務(wù)器)和多個設(shè)備節(jié)點,節(jié)點從服務(wù)器下載現(xiàn)有模型,利用本地數(shù)據(jù)進行模型訓(xùn)練,僅上傳本地模型更新(即學(xué)習(xí)模型的權(quán)值和梯度參數(shù)).服務(wù)器則聚合所有的本地模型更新,從而形成一個全局模型更新.之后每個設(shè)備從中央服務(wù)器下載全局模型更新,進入下一輪本地訓(xùn)練,直至全局模型訓(xùn)練完成.由于這種隱私特性,聯(lián)邦學(xué)習(xí)受到越來越多的研究和關(guān)注[10].

      傳統(tǒng)聯(lián)邦學(xué)習(xí)依賴一個可信的中心化參數(shù)服務(wù)器,由多個參與方在保證各自數(shù)據(jù)不出本地的情況下協(xié)同訓(xùn)練一個全局模型.服務(wù)器負責(zé)收集局部模型更新,執(zhí)行更新聚合,維護全局模型更新等集中式操作,整個訓(xùn)練過程易受服務(wù)器故障的影響.惡意的參數(shù)服務(wù)器甚至?xí)竞δP?產(chǎn)生不準確的全局更新,進而扭曲所有的局部更新,從而使整個協(xié)同訓(xùn)練過程出錯.此外,部分研究已經(jīng)表明,未加密的中間參數(shù)可以用來推斷訓(xùn)練數(shù)據(jù)中的重要信息,參與方的私有數(shù)據(jù)面臨著暴露的風(fēng)險[11-12].因此,在模型訓(xùn)練過程中,對局部模型更新采取合適的加密方案以及在分布式節(jié)點上維護全局模型顯得尤為重要.

      區(qū)塊鏈作為一種時間有序、去中心化、不可篡改、可追溯、高可信、多方共同維護的分布式賬本,可以用于代替聯(lián)邦學(xué)習(xí)中的參數(shù)服務(wù)器,存儲模型訓(xùn)練過程中的相關(guān)信息.本文提出了一種基于區(qū)塊鏈的去中心化、安全、公平的聯(lián)邦學(xué)習(xí)模型——PPFLChain,使用區(qū)塊鏈存儲和維護模型信息,不要求參與方之間相互信任或信任任何第三方.為了保證參與方的隱私安全和模型的高性能表現(xiàn),PPFLChain沒有采用以犧牲訓(xùn)練模型性能來換取隱私保障的差分隱私技術(shù)[13],而是采用同態(tài)加密技術(shù)來保證準確性和機密性,并通過秘密共享方案為解密過程實現(xiàn)安全的密鑰管理.同時為了保證解密過程的順利,檢測錯誤的秘密份額,雙線性映射累加器被用來生成秘密份額的證據(jù),提供驗證手段.

      為增強聯(lián)邦學(xué)習(xí)過程的可靠性,PPFLChain引入信譽值作為評估參與方可靠性的指標(biāo),信譽值較高的參與方意味著為模型訓(xùn)練過程做出了更多積極的貢獻.信譽計算利用主觀邏輯模型實現(xiàn),根據(jù)參與方的歷史交互行為計算信譽值,并據(jù)此擇優(yōu)選出參與方組成聯(lián)邦學(xué)習(xí)委員會,進行模型聚合和協(xié)同解密.信譽值還作為激勵機制的參考,依據(jù)各參與方對訓(xùn)練過程的貢獻大小發(fā)放不等的獎勵,懲罰惡意的參與方,補償積極的參與方,以保障協(xié)同訓(xùn)練的公平性.值得注意的是,委員會成員不是一成不變的,而是每隔一段時間重新選舉一次,這有利于激發(fā)參與方的積極性,不斷改進全局模型.

      本文的貢獻主要有3個方面:

      1) 提出一種基于區(qū)塊鏈的隱私保護聯(lián)邦學(xué)習(xí)模型——PPFLChain,實現(xiàn)去中心化、安全、公平的聯(lián)邦學(xué)習(xí).

      2) 利用雙線性映射累加器生成秘密份額的證據(jù),為秘密共享方案提供可驗證性,并從理論上分析該累加器方案的安全性.

      3) 引入信譽值作為評估參與方可靠性的指標(biāo),利用主觀邏輯模型實現(xiàn)不信任增強的信譽計算作為聯(lián)邦學(xué)習(xí)委員會的選舉依據(jù).信譽值還作為激勵機制的參考,保障協(xié)同訓(xùn)練的公平性.

      1 相關(guān)工作

      Yang等人[14]進一步討論了聯(lián)邦學(xué)習(xí)的概念、體系結(jié)構(gòu)和潛在的應(yīng)用,根據(jù)數(shù)據(jù)集的分布特點,將聯(lián)邦學(xué)習(xí)分為橫向聯(lián)邦學(xué)習(xí)、縱向聯(lián)邦學(xué)習(xí)、聯(lián)邦遷移學(xué)習(xí)3類.第1類針對不同數(shù)據(jù)集之間,特征重合較多而樣本重合較少的情形;第2類針對樣本重合較多而特征重合較少的情形;第3類針對特征和樣本均重合較少的情形.同時指出聯(lián)邦學(xué)習(xí)應(yīng)當(dāng)采取合適的技術(shù)手段提供有效的隱私保護.

      為給聯(lián)邦學(xué)習(xí)過程的中間結(jié)果提供有力的隱私保障,Aono等人[15]采用加法同態(tài)加密機制由任一終端生成密鑰對并分享給其他終端.各終端在本地訓(xùn)練完成后,上傳用公鑰加密后的中間參數(shù).中央服務(wù)器直接對收集的密文進行盲計算,返回加法同態(tài)后的結(jié)果,各終端利用私鑰解密得到全局模型更新.但是這種方案由于所有終端都掌握著私鑰,一旦某個終端竊取到其他終端發(fā)送的密文信息,則能夠立刻解密得到明文參數(shù).更加值得注意的是,這種密鑰管理方案幾乎不能容忍入侵,對于終端的安全性要求較高.Zhang等人[16]將解密工作轉(zhuǎn)移到中央服務(wù)器上,由服務(wù)器聚合上傳的密文參數(shù)后解密.為防止局部參數(shù)泄露,采用秘密共享技術(shù)確保至少k個用戶上傳參數(shù)之后,服務(wù)器才能夠解密.Heikkil?等人[17]設(shè)計了由多個服務(wù)器組成的安全聚合方案.終端將本地更新參數(shù)隨機分割,加密后分別發(fā)送給多個服務(wù)器,單獨的服務(wù)器無法獲知原始數(shù)據(jù),僅能在收集完所有用戶的參數(shù)碎片后共同聚合并解密,得到聚合結(jié)果.

      但是這種依賴一個或多個服務(wù)器的隱私保護聯(lián)邦學(xué)習(xí)方案仍面臨三大挑戰(zhàn):

      1) 訓(xùn)練場景復(fù)雜多樣,聯(lián)邦學(xué)習(xí)中參與方的可信度低,并且完全依賴服務(wù)器的可靠性來存儲和計算模型更新,訓(xùn)練過程易受服務(wù)器故障和惡意攻擊的影響.

      2) 聯(lián)邦學(xué)習(xí)具有增量特性,在訓(xùn)練過程中會產(chǎn)生大量信息,而聯(lián)邦學(xué)習(xí)缺乏對相關(guān)信息進行驗證的手段.

      3) 聯(lián)邦學(xué)習(xí)缺少對參與方貢獻大小的考量,缺乏激勵手段來吸引更多的訓(xùn)練數(shù)據(jù)和計算資源,保障公平性.

      區(qū)塊鏈作為一種去中心化的分布式賬本技術(shù),可以記錄歷史事務(wù)并防止篡改,是替換中心化服務(wù)器的有效解決方案.針對以上三大挑戰(zhàn),當(dāng)前區(qū)塊鏈也被作為改善聯(lián)邦學(xué)習(xí)的平臺進行研究.Dillenberger等人[18]分析了聯(lián)邦學(xué)習(xí)與區(qū)塊鏈融合的可行性問題.指出區(qū)塊鏈為聯(lián)邦學(xué)習(xí)過程提供了一種安全的交換學(xué)習(xí)模型參數(shù)的方法,其在存儲模型參數(shù)的同時允許對聯(lián)邦學(xué)習(xí)中迭代的模型進行審計.此外,基于區(qū)塊鏈的聯(lián)邦學(xué)習(xí)的性能幾乎可以與獨立的聯(lián)邦學(xué)習(xí)相媲美.

      Kim等人[19]提出了BlockFL,在區(qū)塊鏈網(wǎng)絡(luò)環(huán)境下進行設(shè)備上的聯(lián)邦學(xué)習(xí).用戶設(shè)備在本地訓(xùn)練數(shù)據(jù)并上傳模型更新,礦工負責(zé)在預(yù)定時間內(nèi)收集足夠多的本地模型更新并打包成塊記入?yún)^(qū)塊鏈.BlockFL根據(jù)本地訓(xùn)練時長來分配數(shù)據(jù)獎勵給設(shè)備節(jié)點,以及分配挖礦獎勵給礦工,并通過調(diào)整塊生成率,即POW難度,使延遲最小化.然而由于設(shè)備節(jié)點的間歇性和可用性的問題,更加動態(tài)的網(wǎng)絡(luò)環(huán)境間接導(dǎo)致了部分參與設(shè)備在預(yù)定時間內(nèi)訓(xùn)練完本地模型并上傳更新是不可靠的.

      Li等人[20]提出了BFLC,為聯(lián)邦學(xué)習(xí)選擇可靠的參與者.系統(tǒng)詳細定義了模型在區(qū)塊鏈上的存儲模式、訓(xùn)練過程和一個新的委員會共識.委員會成員不參與本次迭代的訓(xùn)練過程,而將本地數(shù)據(jù)集作為驗證集來驗證參與者的局部更新是否可靠,并給出驗證得分,以達到交叉驗證的效果.智能合約則在一段時間后選出性能較好的節(jié)點,組成下一輪訓(xùn)練的新委員會.通過這種方式,BFLC選出了可靠的聯(lián)邦學(xué)習(xí)參與者,實現(xiàn)了在投毒攻擊的情況下仍能保持良好的模型性能,同時提高了共識效率.但是由于難以在保持模型可用性的同時提供有力的隱私保護,該系統(tǒng)傳輸?shù)氖敲魑牡闹虚g參數(shù),并未考慮參數(shù)的機密性.

      Weng等人[21]提出了DeepChain,為深度學(xué)習(xí)提供安全的訓(xùn)練環(huán)境.具體做法是利用同態(tài)加密保證局部更新的機密性,結(jié)合秘密共享實現(xiàn)協(xié)同解密全局模型,并基于普遍可驗證的CDN(UVCDN)協(xié)議來實現(xiàn)加密梯度和解密份額的可審計性.采用的blockwise-BA共識協(xié)議通過加密抽簽選擇一個工作者來創(chuàng)建區(qū)塊,并由該區(qū)塊內(nèi)交易的參與者所組成的委員會驗證.DeepChain還實現(xiàn)了一種基于區(qū)塊鏈的激勵機制,利用名為deepcoin的數(shù)字貨幣作為資產(chǎn)來獎勵誠實的參與者,懲罰惡意的參與者.然而該方案假定選舉的全體委員會成員都是誠實的,并且隨機算法是接近完美隨機的.

      現(xiàn)有基于區(qū)塊鏈的聯(lián)邦學(xué)習(xí)方案可以有效記錄節(jié)點的性能、減少惡意攻擊、提高模型訓(xùn)練的準確性;但在隱私保護、增加驗證手段、衡量參與方貢獻大小及保障公平性方面還有所欠缺.同時,采取合適的方案選擇誠實可靠的參與方對于聯(lián)邦學(xué)習(xí)任務(wù)來說也是至關(guān)重要的.

      2 預(yù)備知識

      本節(jié)對系統(tǒng)設(shè)計中需要用到的關(guān)鍵技術(shù)給出一些初步的介紹,包括區(qū)塊鏈、秘密共享、同態(tài)加密、雙線性映射累加器.

      2.1 區(qū)塊鏈

      區(qū)塊鏈是一種點對點、時間有序的去中心化分布式賬本技術(shù),具有密碼學(xué)保證的不可篡改、不可偽造的特點[22].事務(wù)信息存儲在包含時間戳和上一個塊引用的區(qū)塊中,并以鏈的形式增長,由所有參與方共同維護,并通過共識算法來保證賬本的一致性[23].根據(jù)準入規(guī)則,區(qū)塊鏈可以分為公有鏈和聯(lián)盟鏈.對于公有鏈,參與方可以自由加入和退出,參與方的數(shù)量不是固定的,如比特幣[24];對于聯(lián)盟鏈,只有得到授權(quán)的用戶才能加入,參與方集合通常是預(yù)先定義好的[25],如IBM的Hyperledger fabric.

      區(qū)塊鏈以其透明、可追溯、健壯的特點,可在互不了解的多方間建立起可靠的信任,是在不安全的環(huán)境下替換易受攻擊的中央服務(wù)器的一種有效解決方案.聯(lián)盟鏈作為具備準入控制的區(qū)塊鏈,適用于需要預(yù)先審核用戶和具有相對穩(wěn)定參與方集合的聯(lián)邦學(xué)習(xí).亟需一種合適的方法將區(qū)塊鏈和隱私保護聯(lián)邦學(xué)習(xí)結(jié)合起來,以解決中央服務(wù)器的安全問題,增強多方參與模型訓(xùn)練的安全性.

      2.2 秘密共享

      秘密共享是在多個參與方之間共享秘密的密碼學(xué)技術(shù),保證信息不會被破壞、篡改和丟失.秘密共享通過特定運算將秘密分成若干份額,分配給多個參與方,秘密恢復(fù)需要根據(jù)協(xié)議由多個參與方聯(lián)合進行,單獨的秘密份額沒有用處.目前的秘密共享方案主要包括Shamir方案[26]、Blakley方案[27]、中國剩余定理方案[28]等.Shamir方案作為一種(k,N)門限方案,將秘密S分為N個秘密碎片并分配給N個參與方,要求至少k個參與方合作才能恢復(fù)出秘密,而少于k個參與方得不到有關(guān)秘密的任何信息.該方案基于拉格朗日插值公式實現(xiàn),核心功能有2個:

      1) 秘密分割.F(x)=S+a1x1+a2x2+…+ak-1xk-1modp.其中p為大于秘密S的素數(shù),a1,a2,…,ak-1為小于p的隨機數(shù).取N個不相等的x代入可以得到N個秘密碎片s0,s1,…,sN,其中si=(xi,yi).

      該方案能夠在分布式系統(tǒng)中實現(xiàn)安全的密鑰管理和信息保護,有效防止系統(tǒng)外部攻擊和內(nèi)部用戶的背叛,達到分散風(fēng)險和容忍入侵的目的.

      2.3 同態(tài)加密

      同態(tài)加密是一種對密文進行運算的基于數(shù)學(xué)難題和計算復(fù)雜性理論的密碼學(xué)技術(shù),允許對加密后的密文直接進行計算,且解密后的結(jié)果與基于明文的計算結(jié)果相同[29].根據(jù)支持密文運算的程度,同態(tài)加密可以分為部分同態(tài)加密和完全同態(tài)加密2類.部分同態(tài)加密只能支持有限的密文計算深度,在一些運算并不復(fù)雜的場景中得到應(yīng)用,如Paillier同態(tài)加密支持密文間的加法運算,但是不支持密文間的乘法運算[30];BGN(Boneh-Goh-Nissim)方案能夠支持無限次密文間的加法運算,但是只能支持一次密文間的乘法運算[31].完全同態(tài)加密對密文的計算深度沒有限制,支持任意類型的密文計算,但是計算代價高、效率低下,并未得到大規(guī)模應(yīng)用[32].

      同態(tài)加密作為一種特殊的加密算法已被用于聯(lián)邦學(xué)習(xí)中的隱私保護,參與方傳遞的都是加密后的參數(shù)信息,保證這些信息即使被攻擊也不會泄露模型信息和用戶隱私.用于解密的私鑰安全性變得尤為重要.門限同態(tài)加密將私鑰分割為多份,由多個參與方持有并且解密過程需要多方協(xié)同進行,是一種安全的多方計算方案.門限Paillier同態(tài)加密[33]作為這種方案的典型,包含4個過程:

      1) 密鑰生成.KeyGen(p,q)→(pk,sk).隨機選擇2個大質(zhì)數(shù)p,q,使得p=2p′+1,q=2q′+1,gcd(n,φ(n))=1,其中p′,q′為不同于p,q的質(zhì)數(shù).計算n=pq,m=p′q′.隨機選擇β∈*n,(a,b)∈*n×*n.令g=(1+n)abnmodn2,θ=amβmodn,生成公鑰pk=(n,g,θ),私鑰sk=mβ.私鑰sk通過Shamir秘密共享方案進行分割,第i個參與方Pi將得到秘密份額modnm,其中d0=sk,d1~dk-1為從{0,1,…,nm-1}中隨機選取的值.

      2) 加密.Enc(m,pk)→c.對于明文m,隨機選擇一個數(shù)r∈*n,加密可得到密文

      c=C(m)=gmrnmodn2.

      (1)

      3) 解密份額生成.ShareDec(c,si)→ci.N個參與方中第i個參與方Pi利用持有的秘密份額si計算其解密份額

      ci=c2N!simodn2.

      (2)

      4) 協(xié)同解密.CollaborativeDec(D,pk)→m.設(shè)集合D包含至少k個正確的解密份額,計算可得到明文

      (3)

      該方案滿足加法同態(tài)性質(zhì),對于2個密文C(m1)和C(m2),計算后得到基于明文的和運算結(jié)果的密文,即

      C(m1)C(m2)=gm1+m2(r1r2)nmodn2=
      C(m1+m2).

      (4)

      擴展到多個密文的計算,這種性質(zhì)能夠確保聯(lián)邦學(xué)習(xí)在參與方傳遞加密參數(shù)信息的情況下,安全地聚合局部模型,起到保護參與方隱私的效果.

      2.4 雙線性映射累加器

      在數(shù)學(xué)中,雙線性映射指的是2個循環(huán)群之間對應(yīng)的線性映射關(guān)系.定義一個概率多項式時間雙線性映射生成算法BMGen(1λ) →(e,g,G,H,p),其中G和H是具有相同素數(shù)階p的循環(huán)乘法群,g為G的生成元,則存在雙線性映射e:G×G→H,具備3條性質(zhì)[34]:

      1) 雙線性.對于任意的u,v∈G和a,b∈p,均滿足e(ua,vb)=e(u,v)ab.

      2) 非退化性.e(g,g)≠1,其中1為群H的單位元.

      3) 可計算性.對于任意的u,v∈G,e(u,v)都能夠高效計算得出.

      在密碼學(xué)中,累加器是一個單向的隸屬函數(shù),用于識別一個元素是否為某個特定集合的成員,能夠?qū)⒓现械乃性剡M行累加,生成一個固定大小的值,并高效地給出任意元素的(非)成員證明,且在驗證過程中不會暴露集合中的成員信息.密碼學(xué)累加器主要分為靜態(tài)累加器、動態(tài)累加器以及通用累加器3種類型[34].第1種針對靜態(tài)集合中元素的累加;第2種允許從累加集合中動態(tài)地添加和刪除元素;第3種能夠同時支持成員證明和非成員證明.根據(jù)底層密碼工具的不同,可分為基于RSA的密碼學(xué)累加器、基于雙線性映射的密碼學(xué)累加器和基于Merkle哈希樹的密碼學(xué)累加器.該技術(shù)已在群簽名、匿名憑證、外包數(shù)據(jù)驗證等領(lǐng)域得到廣泛應(yīng)用.

      3 系統(tǒng)模型

      本節(jié)介紹所提出的PPFLChain,一種基于區(qū)塊鏈的去中心化、安全、公平的聯(lián)邦學(xué)習(xí)模型,并討論整個學(xué)習(xí)過程中面臨的威脅和安全目標(biāo).

      3.1 系統(tǒng)概述

      PPFLChain利用區(qū)塊鏈取代傳統(tǒng)聯(lián)邦學(xué)習(xí)中的參數(shù)服務(wù)器,以去中心化的方式存儲協(xié)作訓(xùn)練信息,避免服務(wù)器單點故障影響模型訓(xùn)練的過程,并通過結(jié)合同態(tài)加密、秘密共享以及密碼學(xué)累加器技術(shù)實現(xiàn)可追蹤、可驗證和隱私保護的聯(lián)邦學(xué)習(xí),增強模型訓(xùn)練過程的安全性.同時,系統(tǒng)根據(jù)參與方的行為表現(xiàn)給出信譽評估,并據(jù)此選舉出一個聯(lián)邦學(xué)習(xí)委員會進行模型聚合和協(xié)同解密.信譽得分還將作為激勵機制的參考保障聯(lián)邦學(xué)習(xí)的公平性.

      系統(tǒng)的概覽如圖1所示.由圖1可知,系統(tǒng)主要由4部分組成:任務(wù)發(fā)布方、參與方、委員會和區(qū)塊鏈.具體來說,任務(wù)發(fā)布方發(fā)布聯(lián)邦學(xué)習(xí)模型訓(xùn)練任務(wù),對該任務(wù)感興趣的節(jié)點可以申請參與到模型訓(xùn)練當(dāng)中,提交本地模型更新到區(qū)塊鏈.委員會負責(zé)聚合區(qū)塊鏈上記錄的所有局部模型更新,并提交全局更新到區(qū)塊鏈.最后區(qū)塊鏈替代集中式服務(wù)器收集和存儲協(xié)作訓(xùn)練信息.下面將對PPFL-Chain的各個組件進行詳細說明.

      1) 任務(wù)發(fā)布方.根據(jù)需求提出建立一個機器學(xué)習(xí)模型,同時發(fā)布聯(lián)邦學(xué)習(xí)模型訓(xùn)練任務(wù)的要求(即存儲、計算能力等的要求),并支付一筆費用作為獎池.對此感興趣并符合要求的節(jié)點可以申請參與該聯(lián)邦學(xué)習(xí)任務(wù).然后任務(wù)發(fā)布方將隨機選擇參數(shù)的初始化模型上傳到區(qū)塊鏈.隨著越來越多的節(jié)點加入其中并為模型訓(xùn)練做貢獻,任務(wù)發(fā)布方將最終得到一個高性能的機器學(xué)習(xí)模型.

      2) 參與方.指申請加入模型訓(xùn)練任務(wù)并經(jīng)過任務(wù)發(fā)布方審核通過的節(jié)點,其對該機器學(xué)習(xí)模型有需求,但由于自身存儲、計算能力不足或數(shù)據(jù)資源有限而無法單獨完成整個訓(xùn)練任務(wù).參與方在上傳局部更新到區(qū)塊鏈時,需要申明本地數(shù)據(jù)量大小,并附加相應(yīng)的訓(xùn)練耗時,據(jù)此表明自己的數(shù)據(jù)貢獻大小.

      3) 委員會.系統(tǒng)將委員會中成員的數(shù)量設(shè)定為所有參與方數(shù)量的一半.初始委員會由任務(wù)發(fā)布方隨機指定參與方組成,并依次擔(dān)任委員會的領(lǐng)導(dǎo)者,負責(zé)模型聚合和發(fā)放數(shù)據(jù)貢獻獎勵給相應(yīng)的參與方.在輪流擔(dān)任領(lǐng)導(dǎo)者一圈或未擔(dān)任領(lǐng)導(dǎo)者的委員會成員不在線時,系統(tǒng)將按照參與方的信譽值高低擇優(yōu)選舉一半節(jié)點組成新的委員會,關(guān)于信譽計算的更多細節(jié)將在第4節(jié)中給出.

      4) 區(qū)塊鏈.由于聯(lián)盟鏈作為區(qū)塊鏈的一種特殊類型,具備準入控制,符合需要預(yù)先審核用戶和具有相對穩(wěn)定參與方集合的設(shè)定,PPFLChain使用聯(lián)盟鏈取代傳統(tǒng)聯(lián)邦學(xué)習(xí)中的參數(shù)服務(wù)器來存儲局部更新和全局更新.所有參與方共同維護區(qū)塊鏈賬本,單一節(jié)點的故障或退出并不影響其他參與方對信息的獲取,這提高了數(shù)據(jù)容災(zāi)的能力.此外,由于區(qū)塊鏈具有透明、可追溯、不可抵賴的特點,系統(tǒng)對每個參與方的信譽評估歷史也被記錄在區(qū)塊鏈上,基于信譽的聯(lián)邦學(xué)習(xí)委員會選舉方案也變得更加開放、透明和可靠.

      Fig. 1 System model of PPFLChain圖1 PPFLChain系統(tǒng)模型

      3.2 威脅和安全目標(biāo)

      系統(tǒng)假設(shè)參與方是誠實訓(xùn)練的,都是經(jīng)過嚴格審核后加入的節(jié)點,有著獲得更好模型性能的期望,不會發(fā)起投毒攻擊以毒害全局模型,進而扭曲所有的局部更新,從而使整個協(xié)同訓(xùn)練過程出錯.但是他們可能會對數(shù)據(jù)隱私感興趣或者有意無意地做出其他錯誤行為.接下來將討論PPFLChain面臨的威脅,以及在應(yīng)對這些威脅時能夠?qū)崿F(xiàn)的安全目標(biāo).

      威脅1:本地數(shù)據(jù)和模型信息泄露.盡管在聯(lián)邦學(xué)習(xí)過程當(dāng)中,每個參與方利用自身數(shù)據(jù)在本地進行模型訓(xùn)練,只上傳中間參數(shù),但這種明文參數(shù)可能被其他參與方利用,他們可以通過發(fā)起成員推理攻擊,推斷出局部數(shù)據(jù)的重要信息,或基于梯度發(fā)起參數(shù)推斷攻擊,獲取模型的敏感信息.

      安全目標(biāo)1:訓(xùn)練數(shù)據(jù)和中間參數(shù)的機密性.聯(lián)邦學(xué)習(xí)參與方在不主動公開本地訓(xùn)練數(shù)據(jù)的情況下,不會泄露數(shù)據(jù)隱私,其他方在協(xié)同訓(xùn)練的過程中無法直接或間接地得到有關(guān)該方的真實數(shù)據(jù)信息.參與方利用本地數(shù)據(jù)訓(xùn)練完模型后,通過同態(tài)加密技術(shù)加密參數(shù)后上傳,而不是傳輸明文信息,其他方無法根據(jù)密文更新推斷出該方的中間參數(shù)信息以及本地數(shù)據(jù)信息.

      威脅2:參與方行為錯誤.主要包含3種錯誤行為:1)考慮參與方可能會為了節(jié)省訓(xùn)練成本,謊報一個較大的數(shù)據(jù)量,而實際在本地進行模型訓(xùn)練的數(shù)據(jù)集較小,以期獲得更多的數(shù)據(jù)貢獻獎勵;2)考慮委員會領(lǐng)導(dǎo)者在計算全局更新時可能會給出錯誤的聚合結(jié)果;3)考慮在協(xié)同解密時,委員會成員可能為了個人利益給出錯誤的解密份額,想要提前中止訓(xùn)練過程.這些錯誤行為都將導(dǎo)致誠實的參與方蒙受損失,甚至導(dǎo)致協(xié)同訓(xùn)練任務(wù)失敗.

      安全目標(biāo)2:模型聚合與秘密份額的正確性驗證.參與方上傳的局部更新密文以及委員會領(lǐng)導(dǎo)者計算的全局更新密文都將以公開透明的方式被記錄在區(qū)塊鏈上,任何參與方都可以通過這些事務(wù)來驗證計算結(jié)果的正確性.秘密份額的證據(jù)由雙線性映射累加器產(chǎn)生并被記錄到區(qū)塊鏈,任何參與方都可以利用該方案驗證秘密份額的正確性,監(jiān)督委員會成員計算出正確的解密份額.

      安全目標(biāo)3:參與方的公平性保障.PPFLChain考量參與方的貢獻大小,對模型訓(xùn)練貢獻較大的一方將獲得更多的獎勵.貢獻大小主要包含2個方面:1)參與方本地數(shù)據(jù)量大小.根據(jù)其訓(xùn)練花費的時間與訓(xùn)練樣本的多少成正比關(guān)系確定.2)參與方的信譽值.參與方只有誠實積極地為模型訓(xùn)練過程做貢獻,才能提升自己的信譽值.高信譽值的參與方意味著做出了更多的貢獻,將得到更多的獎勵.PPFLChain還采取懲罰措施,對有錯誤行為的參與方進行罰款,以補償誠實的參與方.同時受信譽計算方案的影響,行為錯誤的參與方將會獲得較低的信譽得分.

      3.3 累加器方案

      Nguyen[35]提出的雙線性映射累加器,是基于q-SDH(q-Strong Diffie-Hellman)假設(shè)[36]的動態(tài)累加器,以雙線性對運算為基礎(chǔ),能夠為集合中的元素提供簡短成員關(guān)系證明.設(shè)tup=(e,g,G,H,p)是雙線性映射的一組參數(shù).對于s∈*p,給定元素gs,…,gsq∈G,q-SDH假設(shè)是指對于所有多項式q和所有概率多項式時間對手Adv:

      (5)

      該假設(shè)表明Adv幾乎無法通過破解累加器來偽造成員關(guān)系證明.式(5)是該累加器的安全基礎(chǔ).

      為實現(xiàn)委員會協(xié)同解密全局模型過程中秘密份額的正確性驗證,PPFLChain基于上述雙線性映射累加器構(gòu)造,設(shè)計出適用于本系統(tǒng)的累加器方案,由4種概率多項式時間算法組成:

      1)KeyGen(1λ)→(sk,pk).λ為安全參數(shù),輸入1λ并選擇一個隨機值s∈*p;輸出為私鑰sk=s和公鑰pk=(g,gs,gs2,…,gsq).

      3.4 工作流程

      為了便于表示,表1列出了描述使用的相關(guān)符號:

      Table 1 Notation Description

      結(jié)合圖1中過程①~⑨,PPFLChain的工作流程主要包含6個階段:初始化、聯(lián)邦成立、全局更新下載、本地模型訓(xùn)練、局部更新上傳、全局模型更新.

      在初始化階段(l=0),任務(wù)發(fā)布方發(fā)布模型學(xué)習(xí)的任務(wù)要求,并支付一筆費用作為獎池.然后將隨機選擇參數(shù)的初始化模型W0上傳到區(qū)塊鏈(如過程①).節(jié)點根據(jù)自身計算能力和數(shù)據(jù)資源條件向任務(wù)發(fā)布方申請加入建模過程,審批通過的節(jié)點將參與到該模型訓(xùn)練任務(wù)當(dāng)中,并繳納一筆費用作為押金.具體的審批方式可以是線下協(xié)商等形式,這不是本文關(guān)注的重點.

      在全局更新下載階段,參與方從區(qū)塊鏈上最新的塊下載全局模型更新Wl(如過程②),并將其作為下一次本地模型訓(xùn)練的輸入.

      在協(xié)同解密過程中,要求至少有k個委員會成員提供正確的解密份額來協(xié)作解密C(Wl)(如過程⑦).CMj利用持有的秘密份額sj通過式(2)計算得到解密份額cj并提供證據(jù)ρj證明其使用了正確的秘密份額進行計算,整個秘密份額驗證過程在算法1中進行了詳細描述.通過式(3)解密后生成的全局模型更新Wl被領(lǐng)導(dǎo)者上傳到區(qū)塊鏈(如過程⑧).

      算法1.基于密碼學(xué)累加器的秘密份額驗證.

      begin

      證據(jù)生成(由任務(wù)發(fā)布方執(zhí)行):

      設(shè)S為秘密份額集合{s1,s2,…,sN};

      應(yīng)用Calc(·)生成累加值acc(S);

      #acc(S)將作為秘密摘要記錄到區(qū)塊鏈.

      對于每個秘密份額子集Si?S,Si={si}

      應(yīng)用ProveContainment(S,Si,pka)→ρi,生成證據(jù).

      #每個證據(jù)ρi將連同秘密份額si一起發(fā)送給參與方Pi.

      驗證對象生成(由參與方執(zhí)行):

      對于每個擁有秘密份額si的參與方

      應(yīng)用Calc(Si,pka)→acc(Si);

      然后發(fā)送驗證對象〈acc(Si),ρi〉給驗證者.

      結(jié)果驗證(由驗證者執(zhí)行):

      從區(qū)塊鏈讀取秘密摘要acc(S);

      應(yīng)用VerifyContainment(acc(S),acc(Si),ρi,pka);

      如果si是正確的秘密份額,輸出1;

      否則,輸出0.

      end

      然后不斷迭代過程②~⑧直至模型收斂,模型收斂的條件是損失函數(shù)小于預(yù)先設(shè)定的值或迭代次數(shù)達到預(yù)先設(shè)定的最大迭代次數(shù).最終任務(wù)發(fā)布方從區(qū)塊鏈上得到一個高性能的機器學(xué)習(xí)模型(如過程⑨).

      值得注意的是,由于秘密共享方案的可配置性,PPFLChain在委員會成員協(xié)同解密全局模型更新時,一般設(shè)定k

      4 信譽計算方案

      委員會在PPFLChain的模型訓(xùn)練過程當(dāng)中扮演著重要角色,負責(zé)驗證參與方數(shù)據(jù)貢獻大小、聚合模型和協(xié)同解密全局模型.這都將關(guān)系到訓(xùn)練模型的精度和協(xié)作學(xué)習(xí)的安全及效率,甚至是訓(xùn)練過程的正常運作.因此,采取高效、準確的信譽計算方法來選舉出可靠的委員會成員是至關(guān)重要的.本節(jié)基于主觀邏輯模型設(shè)計了一種不信任增強的信譽計算方法,在評估不同實體可信度和可靠性水平的同時,引導(dǎo)委員會成員行為正確.

      4.1 基于主觀邏輯的信譽表征

      (6)

      (7)

      (8)

      4.2 綜合委員會成員的信譽意見

      (9)

      參與方的信譽值更新將在每次全局模型更新后進行.

      5 安全分析

      本節(jié)根據(jù)PPFLChain面臨的威脅,回顧3.2節(jié)中系統(tǒng)實現(xiàn)的安全目標(biāo),并給出相應(yīng)的安全分析.

      5.1 機密性

      5.2 正確性驗證

      定義1.安全性[39].對于所有的安全參數(shù)λ∈,運行KeyGen(1λ)→(sk,pk),然后把公鑰pk給任意的多項式時間敵手Adv,如果Adv根據(jù)2個集合A和B生成B?A的證據(jù)ρ的成功概率是可以忽略不計的,就說明累加器是安全的.這里Adv成功是指其應(yīng)用VerifyContainment(acc(A),acc(B),ρ,pk) 輸出結(jié)果為1,然而BA.

      該方案所使用的累加器構(gòu)造已經(jīng)在文獻[39]中的q-SDH假設(shè)下被證明確實滿足了期望的安全性要求,定理及證明過程如下.

      定理1.在3.3節(jié)中給出的累加器構(gòu)造滿足定義1中的安全特性.

      證明.用反證法證明.假設(shè)有一個敵手Adv生成了關(guān)于集合B?A的有效子集包含證據(jù)ρ(實際上BA).這意味著:

      而實際上因為BA,所以存在(bj+s)不能被除掉,由此可以得到其中Q(s)是關(guān)于s的多項式,C是一個非0常數(shù).因此敵手Adv可以得到:

      這與q-SDH假設(shè)相違背.由推出矛盾得知,定理1成立.

      證畢.

      這個屬性確保了委員會成員偽造秘密份額證據(jù)的可能性是可以忽略的,是所設(shè)計的累加器方案能夠?qū)崿F(xiàn)正確性驗證的保障.

      5.3 公平性保障

      6 實 驗

      本節(jié)介紹了PPFLChain的實驗環(huán)境,并從訓(xùn)練準確率、時間成本、信譽值方面對所實現(xiàn)的系統(tǒng)性能進行了評估.

      6.1 實驗設(shè)置

      為了評估提出的PPFLChain的系統(tǒng)性能,實驗在真實的數(shù)據(jù)集MNIST[40]上實現(xiàn)了系統(tǒng)的原型.該數(shù)據(jù)集用于手寫數(shù)字識別,擁有60 000個訓(xùn)練樣本和10 000個測試樣本,每個樣本是一個28×28的灰度圖像,代表0到9之間的手寫數(shù)字.實驗將訓(xùn)練集隨機劃分為數(shù)量相等的10個子集,并分別分配給10個參與方作為本地數(shù)據(jù)集.這樣,對于每個參與方,本地訓(xùn)練樣本的數(shù)量為60 000/10=6 000.然后根據(jù)參與方人數(shù)設(shè)定的不同進行了7次實驗,分別有4,5,6,7,8,9,10個參與方,實驗編號分別用E-4,E-5,E-6,E-7,E-8,E-9和E-10表示.委員會成員的數(shù)量分別設(shè)定為2,2,3,3,4,4,5.

      實驗在1臺配備了4核8線程Intel CPU i7-6700HQ和16 GB內(nèi)存的筆記本電腦上使用了一個名為FISCO BCOS的區(qū)塊鏈系統(tǒng)來模擬PPFLChain.使用Python編程語言利用軟件開發(fā)工具包FISCO BCOS Python SDK來實現(xiàn)系統(tǒng)的業(yè)務(wù)邏輯.智能合約采用Solidity編寫.學(xué)習(xí)模型使用Python 3.7.11和Pytorch1.2.0編寫,并在NVIDIA Geforce GTX 970M GPU上執(zhí)行.

      區(qū)塊鏈節(jié)點被視為參與方和委員會成員,參與聯(lián)邦學(xué)習(xí)任務(wù)并與預(yù)定義的智能合約進行交互.生成的事務(wù)在區(qū)塊鏈中序列化.

      6.2 性能評估

      實驗通過訓(xùn)練準確率、時間成本、信譽值3個指標(biāo)來評價PPFLChain在多方協(xié)作學(xué)習(xí)下的有效性.

      對于訓(xùn)練的準確率,實驗設(shè)置了基線方和獨立方與PPFLChain進行比較.其中基線方在本地用6 000個樣本獨立訓(xùn)練模型,不參與協(xié)作學(xué)習(xí)的過程;獨立方則使用包含60 000個訓(xùn)練樣本的完整數(shù)據(jù)集獨立訓(xùn)練模型.圖像分類模型均來源于相同的卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN),模型卷積核大小為5×5,激活函數(shù)為ReLU.同時固定一組模型超參數(shù)以保證公平性.表2中總結(jié)了一些相關(guān)的訓(xùn)練參數(shù).

      Table 2 Training Configuration

      實驗分別對基線方、獨立方和E-4~E-10進行了10次數(shù)據(jù)提取,并把得到的最終結(jié)果的平均值繪制成圖2.其中,基線方的準確率為95.90%,獨立方的準確率為96.45%,E-4~E-10的準確率分別為96.12%,96.28%,96.14%,96.44%,96.38%,96.32%,96.22%.可以看出,PPFLChain都比基線方獲得了更高的準確率,這意味著協(xié)作學(xué)習(xí)得到了比單方面訓(xùn)練表現(xiàn)更好的模型.同時,隨著參與方人數(shù)的增加,協(xié)作方訓(xùn)練準確率提高,PPFLChain的性能不斷趨近于獨立方的訓(xùn)練效果.雖然訓(xùn)練準確率相比擁有完整數(shù)據(jù)集的獨立方略有損失,但PPFLChain能夠在多方協(xié)作的環(huán)境下,以去中心化的方式訓(xùn)練模型,大大降低了隱私泄露的風(fēng)險.

      Fig. 2 Comparison of training accuracy among PPFLChain, standalone party and baseline party圖2 PPFLChain與獨立方和基線方的訓(xùn)練準確率比較

      接下來,記錄了實驗E-4~E10中參與方在協(xié)作訓(xùn)練模型過程中加密梯度參數(shù)耗費的平均時間,分別為44.452 s,44.261 s,43.955 s,44.222 s,44.609 s,44.645 s,44.485 s,以及委員會成員在協(xié)同解密階段驗證秘密份額耗費的平均時間,分別為8.193 ms,8.380 ms,9.701 ms,9.614 ms,11.950 ms,12.143 ms,14.856 ms.由圖3可以看出,不同參與方數(shù)量下加密中間梯度所用的時間基本一致,這是由于各參與方在本地同步訓(xùn)練,訓(xùn)練集大小和模型的參數(shù)量相同,細小的差異僅取決于硬件性能.

      Fig. 3 Time cost of encryption圖3 加密時間成本

      Fig. 4 Time cost of verification圖4 驗證時間成本

      為了評價信譽計算方案,實驗記錄了5個本地數(shù)據(jù)集大小互不相同的參與方分別與其他協(xié)同方的10次積極交互中的信譽值變化情況,用P1~P5表示,本地訓(xùn)練樣本的數(shù)量分別為2 000,3 000,4 000,5 000,6 000.如圖5所示,數(shù)據(jù)貢獻較大的一方獲得了較高的信譽值,因為在評估參與方信譽時,本地數(shù)據(jù)集大小被作為計算信譽值的影響因素之一.

      Fig. 5 Comparison of reputation values between participators with different amounts of local dataset圖5 本地數(shù)據(jù)量互不相同的參與方之間的信譽值比較

      然后在不信任影響程度α=0.8和α=0.2的2種設(shè)置下又記錄了一個參與方與協(xié)同方的22次交互中的信譽值變化,該參與方在1~3次的交互中行為正確,在4~14次的交互中行為錯誤,在15~22次的交互中行為正確.設(shè)定不確性影響程度β=0.5,不確性影響常數(shù)c=2.如圖6所示,當(dāng)表現(xiàn)錯誤行為時,該參與方的信譽值開始下降,并且在最初的幾次惡意交互中信譽值下降飛快,這意味著節(jié)點只要做出惡意行為,無需累積多次,就會付出較大的代價.而對于沒有信譽保護的方案,信譽值仍呈增長趨勢.同時在α=0.8的情況下信譽值的下降速度要比α=0.2的情況下更快,下降幅度也更大,可以看出,通過配置α的大小可以方便地控制節(jié)點作惡對信譽值的影響程度.此外,系統(tǒng)引入的信譽值是由多方評估計算得出并記錄在區(qū)塊鏈上,與沒有區(qū)塊鏈的信譽方案相比,這種去中心化和防篡改的特性能夠抵御內(nèi)部攻擊,使得計算出的信譽值更加可靠和具有代表性.

      Fig. 6 The reputation values of an unreliable participator圖6 不可靠參與方的信譽值變化

      7 總 結(jié)

      本文提出了一種基于區(qū)塊鏈的去中心化、安全、公平的聯(lián)邦學(xué)習(xí)模型——PPFLChain.模型引入信譽值作為衡量參與方可靠性的指標(biāo),并基于信譽值選舉可靠的聯(lián)邦學(xué)習(xí)委員會,負責(zé)聚合模型和協(xié)同解密全局更新.模型采用門限Paillier密碼算法實現(xiàn)局部更新參數(shù)的機密性,利用Shamir閾值秘密共享方案,為解密過程實現(xiàn)安全的密鑰管理,設(shè)計了一種基于雙線性映射的累加器方案為秘密份額提供驗證手段.利用主觀邏輯模型實現(xiàn)不信任增強的信譽計算方案作為聯(lián)邦學(xué)習(xí)委員會的選舉依據(jù).模型還將信譽值作為激勵機制的參考,并懲罰有錯誤行為的參與方,以保證協(xié)作學(xué)習(xí)的公平性.最后在一個真實的數(shù)據(jù)集上實現(xiàn)了系統(tǒng)的原型,并對系統(tǒng)的安全性和性能表現(xiàn)進行了分析和評估.

      作者貢獻聲明:周煒提供研究思路,審閱論文,提供論文修改意見;周煒和王超確定研究思路,負責(zé)論文起草、修改及最終版本修訂;徐劍、胡克勇和王金龍審閱論文,提供論文修改意見.

      猜你喜歡
      累加器參與方信譽
      格上身份基簡短關(guān)聯(lián)環(huán)簽名及其電子投票應(yīng)用
      無線電工程(2024年5期)2024-07-20 00:00:00
      以質(zhì)量求發(fā)展 以信譽贏市場
      基于秘密分享的高效隱私保護四方機器學(xué)習(xí)方案
      密碼累加器研究進展及應(yīng)用
      信譽如“金”
      華人時刊(2019年13期)2019-11-26 00:54:42
      基于霍夫變換的工位點識別算法設(shè)計與實現(xiàn)
      綠色農(nóng)房建設(shè)伙伴關(guān)系模式初探
      涉及多參與方的系統(tǒng)及方法權(quán)利要求的撰寫
      專利代理(2016年1期)2016-05-17 06:14:03
      基于IPD模式的項目參與方利益分配研究
      江蘇德盛德旺食品:信譽為翅飛五洲
      華人時刊(2016年19期)2016-04-05 07:56:08
      油尖旺区| 吉木萨尔县| 河东区| 合肥市| 合作市| 壶关县| 东台市| 新余市| 洛阳市| 旌德县| 武鸣县| 武定县| 额济纳旗| 锡林郭勒盟| 东至县| 秀山| 哈密市| 西青区| 台东县| 丹凤县| 丹寨县| 连州市| 中牟县| 靖江市| 读书| 开江县| 华安县| 大兴区| 广南县| 东乡| 宾阳县| 宽甸| 常熟市| 南木林县| 兴义市| 阜宁县| 定陶县| 新宾| 嘉荫县| 赤水市| 辽源市|