日日碰狠狠躁久久躁96avv-97久久超碰国产精品最新-婷婷丁香五月天在线播放,狠狠色噜噜色狠狠狠综合久久 ,爱做久久久久久,高h喷水荡肉爽文np肉色学校

睿治

智能數(shù)據(jù)治理平臺

睿治作為國內(nèi)功能最全的數(shù)據(jù)治理產(chǎn)品之一,入選IDC企業(yè)數(shù)據(jù)治理實施部署指南。同時,在IDC發(fā)布的《中國數(shù)據(jù)治理市場份額》報告中,連續(xù)四年蟬聯(lián)數(shù)據(jù)治理解決方案市場份額第一。

終于把隱私計算、聯(lián)邦學(xué)習(xí)、多方安全計算、機密計算、差分隱私全搞清楚了!

時間:2022-02-16來源:蘭茹瀏覽數(shù):5532

? ? ? ?隱私計算、多方安全計算、聯(lián)邦學(xué)習(xí)等技術(shù)現(xiàn)在很火,但網(wǎng)上查的的資料要么太深看不懂,要么太淺搞不明白,要么太碎形不成體系,今天大魚就用業(yè)務(wù)的語言給你徹底講清楚。


? ? ? ?首先講一個百萬富翁比財富的故事:

? ? ? ?兩個百萬富翁街頭邂逅,他們都想炫一下富,比比誰更有錢,但是出于隱私,都不想讓對方知道自己到底擁有多少財富,如何在不借助第三方的情況下,讓他們知道他們之間誰更有錢?

? ? ? ?這是幾十年前多方安全技術(shù)(隱私計算的一種技術(shù))要解決的經(jīng)典問題。你也許馬上就會想到,如果能在不知道對方數(shù)據(jù)的情況下進行數(shù)據(jù)的融合安全計算,從而獲得一個有價值的結(jié)論,這不就是數(shù)據(jù)領(lǐng)域夢寐以求的東西嗎?

? ? ? ?的確是這樣,如果說深度學(xué)習(xí)的出現(xiàn)讓AI煥發(fā)新生,那么數(shù)據(jù)流通和共享帶來的巨大商機讓隱私計算煥發(fā)出新生。

? ? ? ?與傳統(tǒng)的資本、土地、勞動、技術(shù)等一樣,數(shù)據(jù)已是生產(chǎn)要素之一,與算力、算法組合,成為一種新型社會生產(chǎn)力,越來越多的業(yè)務(wù)場景需要多方數(shù)據(jù)的流通和共享。

? ? ? ?在金融領(lǐng)域,銀行保險機構(gòu)借助內(nèi)外部數(shù)據(jù)進行聯(lián)合建模,實現(xiàn)數(shù)字營銷、精準獲客、差異化定價、智慧風(fēng)控及反欺詐等。

? ? ? ?在醫(yī)療領(lǐng)域、醫(yī)藥企業(yè)、醫(yī)療機構(gòu)和保險公司通過病例數(shù)據(jù)共享,形成聯(lián)合AI模型進一步提高精準度。

? ? ? ?在政務(wù)、能源、交通、環(huán)保、工業(yè)和電信等具備大量數(shù)據(jù)基礎(chǔ)的領(lǐng)域,數(shù)據(jù)共享和利用已經(jīng)成為規(guī)劃和落地應(yīng)用必不可少的部分。

? ? ? ?隱私計算使企業(yè)在數(shù)據(jù)合規(guī)要求前提下,能夠充分調(diào)動數(shù)據(jù)資源擁有方、使用方、運營方、監(jiān)管方各方主體積極性,實現(xiàn)數(shù)據(jù)資源海量匯聚、交易和流通,從而盤活第三方機構(gòu)數(shù)據(jù)資源價值,促進數(shù)據(jù)要素的市場化配置,在《國家數(shù)據(jù)安全法》頒布的當下,隱私計算更凸顯價值。

? ? ? ?隱私計算其實是一堆“數(shù)據(jù)可用不可見”技術(shù)集合,包括多方安全計算、聯(lián)邦學(xué)習(xí)、機密計算、差分隱私及數(shù)據(jù)脫敏等等,這些技術(shù)既有聯(lián)系又有區(qū)別,既有優(yōu)勢也有劣勢,如果你不明覺厲或者一知半解,一定要讀一讀這篇文章。

? ? ? ?一、隱私計算

? ? ? ?隱私計算是“隱私保護計算”(Privacy-Preserving Computation)的中文簡稱,沒有統(tǒng)一的標準定義,這里摘取部分組織和文檔的定義,基本表達了同樣的意思,大家意會就行:

? ? ? ?中國隱私計算產(chǎn)業(yè)發(fā)展報告(2020-2021)[1]:

? ? ? ?隱私計算是指在提供隱私保護的前提下實現(xiàn)數(shù)據(jù)價值挖掘的技術(shù)體系,而非單一技術(shù),早期多被定義為隱私保護計算、隱私保護技術(shù)等。2016 年發(fā)布的《隱私計算研究范疇及發(fā)展趨勢》正式提出“隱私計算”一詞,并將隱私計算定義為“面向隱私信息全生命周期保護的計算理論和方法,是隱私信息的所有權(quán)、管理權(quán)和使用權(quán)分離時隱私度量、隱私泄漏代價、隱私保護與隱私分析復(fù)雜性的可計算模型與公理化系統(tǒng)。

? ? ? ?隱私保護計算技術(shù)研究報告 [2]:

? ? ? ?隱私計算是指在提供隱私保護的前提下,實現(xiàn)數(shù)據(jù)價值挖掘的技術(shù)體系。面對數(shù)據(jù)計算的參與方或意圖竊取信息的攻擊者,隱私保護計算技術(shù)能夠?qū)崿F(xiàn)數(shù)據(jù)處于加密狀態(tài)或非透明(Opaque)狀態(tài)下的計算,以達到各參與方隱私保護的目的。隱私保護計算并不是一種單一的技術(shù),它是一套包含人工智能、密碼學(xué)、數(shù)據(jù)科學(xué)等眾多領(lǐng)域交叉融合的跨學(xué)科技術(shù)體系。隱私保護計算能夠保證滿足數(shù)據(jù)隱私安全的基礎(chǔ)上,實現(xiàn)數(shù)據(jù)“價值”和“知識”的流動與共享, 真正做到“數(shù)據(jù)可用不可見?!?

? ? ? ?大數(shù)據(jù)聯(lián)合國全球工作組 [3]:

? ? ? ?隱私計算是一類技術(shù)方案,在處理和分析計算數(shù)據(jù)的過程中能保持數(shù)據(jù)不透明、不泄露、無法被計算方法以及其他非授權(quán)方獲取。

? ? ? ?騰訊隱私計算白皮書2021 [4]:

? ? ? ?隱私計算(Privacy Computing)是一種由兩個或多個參與方聯(lián)合計算的技術(shù)和系統(tǒng),參與方在不泄露各自數(shù)據(jù)的前提下通過協(xié)作對他們的數(shù)據(jù)進行聯(lián)合機器學(xué)習(xí)和聯(lián)合分析。隱私計算的參與方既可以是同一機構(gòu)的不同部門,也可以是不同的機構(gòu)。

? ? ? ?由上可知,在隱私計算框架下,參與方的數(shù)據(jù)不出本地,在保護數(shù)據(jù)安全的同時實現(xiàn)多源數(shù)據(jù)跨域合作,可以破解數(shù)據(jù)保護與融合應(yīng)用難題。

? ? ? ?隱私保護計算架構(gòu)可抽象為下圖[2],在隱私保護計算參考架構(gòu)中,主要有數(shù)據(jù)方、計算方結(jié)果方三類角色,數(shù)據(jù)方是指為執(zhí)行隱私保護計算過程提供數(shù)據(jù)的組織或個人;計算方是指為執(zhí)行隱私保護計算過程提供算力的組織或個人;結(jié)果放是指接收隱私保護計算結(jié)果的組織或個人。

? ? ? ?隱私保護計算的目標是在完成計算任務(wù)的基礎(chǔ)上,實現(xiàn)數(shù)據(jù)計算過程和數(shù)據(jù)計算結(jié)果的隱私保護。數(shù)據(jù)計算過程的隱私保護指參與方在整個計算過程中難以得到除計算結(jié)果以外的額外信息,數(shù)據(jù)計算結(jié)果的隱私保護指參與方難以基于計算結(jié)果逆推原始輸入數(shù)據(jù)和隱私信息。

? ? ? ?從技術(shù)機制來看,隱私計算主要分為三大技術(shù)路線,即安全多方計算(密碼學(xué))、聯(lián)邦學(xué)習(xí)及機密計算,有的會把側(cè)重算法也單列一類,比如差分隱私等隱私相關(guān)的技術(shù).

? ? ? ?可以看到,隱私計算是個技術(shù)體系,不能混淆了安全多方計算、聯(lián)邦學(xué)習(xí)、隱私計算概念間的關(guān)系,比如安全多方計算只是隱私計算的一個子集,聯(lián)邦學(xué)習(xí)與安全多方計算也不是同一回事,雖然彼此也有聯(lián)系。

? ? ? ?下面針對隱私計算涉及的主要技術(shù)逐一介紹,每種技術(shù)會從定義、圖解案例三個角度去闡述,方便理解這些技術(shù)的本質(zhì)和用途。

? ? ? ?注:隱私計算涉及大量密碼學(xué)、算法的知識,如需進一步理解,推薦去閱讀相關(guān)的論文。

? ? ? ?二、多方安全計算

? ? ? ?多方安全計算(Secure Multi-Party Computation),MPC 由姚期智在1982 年提出,指參與者在不泄露各自隱私數(shù)據(jù)情況下,利用隱私數(shù)據(jù)參與保密計算,共同完成某項計算任務(wù)。

? ? ? ?該技術(shù)能夠滿足人們利用隱私數(shù)據(jù)進行保密計算的需求,有效解決數(shù)據(jù)的“保密性”和“共享性”之間的矛盾。多方安全計算包括多個技術(shù)分支,目前,在MPC 領(lǐng)域,主要用到的是技術(shù)是秘密共享、不經(jīng)意傳輸、混淆電路、同態(tài)加密、零知識證明等關(guān)鍵技術(shù),你可以認為多方安全計算是一堆協(xié)議集。

? ? ? ?1、秘密共享

? ? ? ?(1)定義

? ? ? ?秘密共享的思想是將秘密以適當?shù)姆绞讲鸱?,拆分后的每一個份額由不同的參與者管理,單個參與者無法恢復(fù)秘密信息,只有若干個參與者一同協(xié)作才能恢復(fù)秘密消息。更重要的是,當其中任何相應(yīng)范圍內(nèi)參與者出問題時,秘密仍可以完整恢復(fù)。

? ? ? ?(2)圖解

? ? ? ?假如你和你的朋友們正在一起面臨某種生存困境,比如在野外迷路了,或是被困在沙漠中,或是核冬天,或是喪尸來襲,你們難以獲取食物,只好將剩下的食物的收集到一起放進保險箱。但是有個問題—你們并不相信其他人,其他人很可能趁大家不注意將食物偷走。這時候,保險箱的鑰匙應(yīng)該怎么保管?

? ? ? ?shamir方案[5]就是指準備w把鑰匙,至少要t把鑰匙才能開啟:

? ? ? ?(3)案例

? ? ? ?1994年,Naor和Shamir提出可視密碼,是一種依靠人眼解密的秘密共享方法,它是將一個秘密圖像加密成n張分存圖像,n張分存圖像可以打印到膠片上、存入電腦或移動存儲器中,且分別由n個人保存。解密時只需k個人(或k個以上)將各自的分存圖像疊加,秘密圖像就會呈現(xiàn)出來,而少于k個人無法獲得秘密圖像的一點信息。

? ? ? ?2、同態(tài)加密

? ? ? ?(1)定義

? ? ? ?同態(tài)加密是一種允許在加密之后的密文上直接進行計算,且計算結(jié)果解密后和明文的計算結(jié)果一致的加密算法。

? ? ? ?這個特性屬性對于保護信息的安全具有重要意義,利用同態(tài)加密技術(shù)可以先對多個密文進行計算之后再解密,不必對每一個密文解密而花費高昂的計算代價;利用同態(tài)加密技術(shù)可以實現(xiàn)無密鑰方對密文的計算,密文計算無須經(jīng)過密鑰方,既可以減少通信代價,又可以轉(zhuǎn)移計算任務(wù),由此可平衡各方的計算代價,利用同態(tài)加密技術(shù)可以實現(xiàn)讓解密方只能獲知最后的結(jié)果,而無法獲得每一個密文的消息,可以提高信息的安全性。

? ? ? ?(2)圖解[1]

? ? ? ?(3)案例

? ? ? ?目前云計算應(yīng)用中,從安全角度來說,用戶還不敢將秘鑰信息直接放到第三方云上進行處理,通過實用的同態(tài)加密技術(shù),則大家可以放心使用各種云服務(wù),同時各種數(shù)據(jù)分析過程中也不會泄露用戶隱私。加密后的數(shù)據(jù)在第三方服務(wù)處理后得到加密后的結(jié)果,這個結(jié)果只有用戶自身可以進行解密,整個過程第三方平臺無法獲知任何有效的數(shù)據(jù)信息。

? ? ? ?3、不經(jīng)意傳輸

? ? ? ?(1)定義

? ? ? ?不經(jīng)意傳輸是一種可保護隱私的雙方通信協(xié)議,消息發(fā)送者從一些待發(fā)送的消息中發(fā)送某一條給接收者,但并不知道接收者具體收到了哪一條消息。不經(jīng)意傳輸協(xié)議是一個兩方安全計算協(xié)議,協(xié)議使得接收方除選取的內(nèi)容外,無法獲取剩余數(shù)據(jù),并且發(fā)送方也無從知道被選取的內(nèi)容。

? ? ? ?比如Alice每次發(fā)兩條信息(m0、m1)給Bob,Bob提供一個輸入,并根據(jù)輸入獲得輸出信息,在協(xié)議結(jié)束后,Bob得到了自己想要的那條信息(m0或者m1),而Alice并不知道Bob最終得到的是哪條。

? ? ? ?(2)圖解[6]

? ? ? ?流程:

? ? ? ?1. 發(fā)送者Alice生成兩對rsa公私鑰,并將兩個公鑰puk0、puk1發(fā)送給接受者Bob。

? ? ? ?2. Bob生成一個隨機數(shù),并用收到的兩個公鑰之一加密隨機數(shù)(用哪個秘鑰取決于想獲取哪條數(shù)據(jù),例如如果想要得到消息M0 就用puk0加密隨機數(shù),如果想要得到M1就用puk1加密隨機數(shù)),并將密文結(jié)果發(fā)送給Alice。

? ? ? ?3. Alice用自己的兩個私鑰分別解密收到隨機數(shù)密文,并得到兩個解密結(jié)果k0,k1,并將兩個結(jié)果分別與要發(fā)送的兩條信息進行異或(k0異或M0,k1異或M1),并將兩個結(jié)果e0,e1發(fā)給Bob。

? ? ? ?4. Bob用自己的真實隨機數(shù)與收到的e0、e1分別做異或操作,得到的兩個結(jié)果中只有一條為真實數(shù)據(jù),另外一條為隨機數(shù)。

? ? ? ?分析:

? ? ? ?在此過程中第3步最為關(guān)鍵,如果Alice無法從用兩條私鑰解密得到的結(jié)果k0、k1中區(qū)分出Bob的真實隨機數(shù),則能保證Alice無法得知Bob將要獲取的是哪條數(shù)據(jù)。Bob沒有私鑰也就無法得出真實的私鑰解密結(jié)果(如果k0為真實隨機數(shù),Bob無法得知k1的值),所以也就只能得到自己想要的那條數(shù)據(jù)而無法得到另外一條,保障協(xié)議能執(zhí)行成功。

? ? ? ?(3)案例

? ? ? ?Alice和Bob打牌,Alice總是輸,為了讓Alice的游戲體驗好一點,Alice可以看Bob的某一張手牌的大小,但是Alice并不想讓Bob知道看了哪張,不然很可能還是打不贏!這個場景下,就可以通過不經(jīng)意傳輸來傳遞牌的大小,這樣可以保證Alice只能看到一張的大小,且Bob不知道Alice看了哪一張牌。

? ? ? ?4、零知識證明

? ? ? ?(1)定義

? ? ? ?零知識證明指的是證明者能夠在不向驗證者提供任何有用信息的情況下,使驗證者相信某個論斷是正確的。允許證明者 prover、驗證者 verifier 證明某項提議的真實,卻不必泄露除了「提議是真實的」之外的任何信息。

? ? ? ?舉個最簡單的阿拉伯童話《一千零一夜》里的零知識證明:阿里巴巴與四十大盜的故事其中一個片段。

? ? ? ?阿里巴巴會芝麻開門的咒語,強盜向他拷問打開山洞石門的咒語,他不想讓人聽到咒語,便對強盜說:“你們離我一箭之地,用弓箭指著我,你們舉起右手,我念咒語打開石門,舉起左手,我念咒語關(guān)上石門,如果我做不到或逃跑,你們就用弓箭射死我?!?

? ? ? ?這個方案對阿里巴巴沒損失,也能幫助他們搞清楚阿里巴巴到底是否知道咒語,于是強盜們同意。強盜舉起了右手,只見阿里巴巴的嘴動了幾下,石門打開了;強盜舉起了左手,阿里巴巴的嘴動了幾下,石門又關(guān)上了。強盜有點不信,沒準這是巧合,多試幾次過后,他們相信了阿里巴巴。這即是最簡單易懂的零知識證明。

? ? ? ?(2)圖解

? ? ? ?如圖所示為零知識證明的一個經(jīng)典模型—洞穴模型[7],該模型不涉及具體算法實現(xiàn),僅用于初步說明零知識證明的原理和效果:

? ? ? ?在圖中,C點和D點之間存在一道密門,只有知道秘密口令的人才能打開。證明者(Prover)P知道秘密口令,并希望向驗證者(Verifier)V證明,但又不希望泄露秘密口令,可通過以下證明過程實現(xiàn):

? ? ? ?第一步,驗證者V站在A點,證明者P站在B點;

? ? ? ?第二步,證明者P隨機選擇走到C點或D點,驗證者V在A點無法看到證明者P選擇的方向;

? ? ? ?第三步,驗證者V走到B點,并要求證明者P從左通道/右通道的方向出來;

? ? ? ?第四步,證明者P根據(jù)驗證者V的要求從指定方向出來,如有必要需要用秘密口令打開密門。

? ? ? ?如果證明者P知道秘密口令,就一定能正確地從驗證者V要求的方向出來;如果證明者P不知道秘密口令,則每次有1/2的概率能從驗證者V要求的方向出來。該證明過程可重復(fù)進行多次,直到驗證者V相信證明者P擁有打開密門的秘密口令。

? ? ? ?通過以上證明過程,證明者P就向驗證者V完成了關(guān)于秘密口令的零知識證明,即證明過程不會泄露任何關(guān)于秘密口令的知識。

? ? ? ?下面以默克爾樹結(jié)構(gòu)為例,實現(xiàn)零知識證明即意味著,如何證明某個人擁有L1 - L4這些原始數(shù)據(jù),但又不需將數(shù)據(jù)公之于眾?

? ? ? ?第一步:證明者可通過創(chuàng)建如圖所示的默克爾樹結(jié)構(gòu),然后對外公布Hash0-1、Hash1以及Top Hash(在哈希算法篇時,我們曾介紹過僅哈希值無法推導(dǎo)出原始數(shù)據(jù))。


? ? ? ?第二步:通過數(shù)據(jù)L1經(jīng)哈希算法生成Hash0-0,然后根據(jù)公布的Hash0-1生成Hash0 ,再根據(jù)公布的Hash1生成Top Hash。如果最后生成的Top Hash值與公布的Top Hash值一致,則可證明他是擁有L1 - L4數(shù)據(jù),而不需要公布這一系列的原始數(shù)據(jù)。這也就實現(xiàn)了零知識證明。

? ? ? ?(3)案例

? ? ? ?信任是業(yè)務(wù)往來的基礎(chǔ)。做生意,無論在網(wǎng)上還是在現(xiàn)實世界中,我們需要知道和誰打交道,他們是否會履行承諾。問題是這以犧牲隱私為代價。為了判斷某人是否值得信任,要了解他們是什么樣的人,獲取個人數(shù)據(jù)甚至信用卡號碼。

? ? ? ?常規(guī)的區(qū)塊鏈交易,當資產(chǎn)從一方發(fā)送到另一方時,該交易的詳細信息對網(wǎng)絡(luò)中每一方都可見。相反,零知識證明交易中,其他人只知道發(fā)生了有效的交易,而不知道發(fā)送方、接收方、資產(chǎn)類別和數(shù)量?;ㄙM的身份和金額可以隱藏起來,并且可以避免諸如“搶先”之類的問題。

? ? ? ?5、混淆電路

? ? ? ?(1)定義

? ? ? ?混淆電路是雙方進行安全計算的布爾電路。混淆電路將計算電路中的每個門都加密并打亂,確保加密計算的過程中不會對外泄露計算的原始數(shù)據(jù)和中間數(shù)據(jù)。雙方根據(jù)各自的輸入依次進行計算,解密方可得到最終的正確結(jié)果,但無法得到除結(jié)果以外的其他信息,從而實現(xiàn)雙方的安全計算。

? ? ? ?(2)圖解

? ? ? ?現(xiàn)在要說說混淆電路具體是如何工作的了。注意關(guān)鍵詞“電路(circuit)”,我們知道可計算問題都可以轉(zhuǎn)換為一個個電路,于是就有了加法電路、比較電路和乘法電路等等。

? ? ? ?如上圖所示,Alice和Bob想要搞點事情,他們搞了個電路,電路里面有一些門,每個門包括輸入線(input wire)和輸出線(output wire)。混淆電路就是通過加密和擾亂這些電路的值來掩蓋信息的。在最經(jīng)典的混淆電路中,加密和擾亂是以門為單位的。每個門都有一張真值表。比如下圖就是與門的真值表和或門的真值表。下面就以與門為例來說明混淆電路的工作原理。

? ? ? ?Alice和Bob想計算一個與門。該門兩個輸入線x和y和一個輸出線z,每條線有0和1兩個可能的值。Alice首先給每條線指定兩個隨機的key,分別對應(yīng)0和1。

? ? ? ?然后,Alice用這些密鑰加密真值表,并將該表打亂后發(fā)送給Bob。加密過程就是將真值表中每一行對應(yīng)的x和y的密鑰key加密z的密鑰。這一加密+打亂的過程,就是混淆電路(garbled circuit)的核心思想。

? ? ? ?那Bob收到加密表后,如何計算呢?

? ? ? ?首先Alice把自己的輸入對應(yīng)的key發(fā)給Bob,比如Alice的輸入是0,那就發(fā)K0x,輸入是1就發(fā) K1x。同時通過不經(jīng)意傳輸把和Bob有關(guān)的key都發(fā)給Bob,也就是K0y和K1y ,然后Bob根據(jù)自己的輸入挑選相關(guān)的key,但Alice并不知道Bob選了哪個key。

? ? ? ?Bob根據(jù)收到的Kx和自己的Ky ,對上述加密表的每一行嘗試解密,最終只有一行能解密成功,并提取出相應(yīng)的Kz。

? ? ? ?Bob將Kz發(fā)給Alice,Alice通過對比是還是K0z還是K1z得知計算結(jié)果是0還是1。由于整個過程大家收發(fā)的都是密文或隨機數(shù),所以沒有有效信息泄露。

? ? ? ?(3)案例

? ? ? ?目前來說,安全多方計算主要是通過混淆電路及秘密共享兩個方式實現(xiàn)?;诨煜娐返膮f(xié)議更適用于兩方邏輯運算,通訊負擔(dān)較低,但拓展性較差。而基于秘密分享的安全多方計算其拓展性較強,支持無限多方參與計算,計算效率高,但通訊負載較大。

? ? ? ?三、聯(lián)邦學(xué)習(xí)

? ? ? ?(1)定義

? ? ? ?假設(shè)有兩個不同的企業(yè) A 和 B,它們擁有不同的數(shù)據(jù),比如企業(yè) A 有用戶特征數(shù)據(jù),企業(yè) B 有產(chǎn)品特征數(shù)據(jù)和標注數(shù)據(jù)。這兩個企業(yè)按照 GDPR 準則是不能粗暴地把雙方數(shù)據(jù)加以合并的,因為他們各自的用戶并沒有機會同意這樣做。

? ? ? ?假設(shè)雙方各自建立一個任務(wù)模型,每個任務(wù)可以是分類或預(yù)測,這些任務(wù)也已經(jīng)在獲得數(shù)據(jù)時取得了各自用戶的認可。

? ? ? ?那么,現(xiàn)在的問題是如何在 A 和 B 各端建立高質(zhì)量的模型。但是,又由于數(shù)據(jù)不完整(例如企業(yè) A 缺少標簽數(shù)據(jù),企業(yè) B 缺少特征數(shù)據(jù)),或者數(shù)據(jù)不充分(數(shù)據(jù)量不足以建立好的模型),各端有可能無法建立模型或效果不理想。聯(lián)邦學(xué)習(xí)就是來解決這個問題的。

? ? ? ?聯(lián)邦學(xué)習(xí)的本質(zhì)是一種機器學(xué)習(xí)框架,即分布式機器學(xué)習(xí)技術(shù)。聯(lián)邦學(xué)習(xí)以一個中央服務(wù)器為中心節(jié)點,通過與多個參與訓(xùn)練的本地服務(wù)器(以下簡稱“參與方”)交換網(wǎng)絡(luò)信息來實現(xiàn)人工智能模型的更新迭代。

? ? ? ?即中央服務(wù)器首先生成一個通用神經(jīng)網(wǎng)絡(luò)模型,各個參與方將這個通用模型下載至本地并利用本地數(shù)據(jù)訓(xùn)練模型,將訓(xùn)練后的模型所更新的內(nèi)容上傳至中央服務(wù)器,通過將多個參與方的更新內(nèi)容進行融合均分來優(yōu)化初始通用模型,再由各個參與方下載更新后的通用模型進行上述處理,這個過程不斷重復(fù)直至達到某一個既定的標準。

? ? ? ?在整個聯(lián)邦學(xué)習(xí)的過程中,各參與方的數(shù)據(jù)始終保存在其本地服務(wù)器,降低了數(shù)據(jù)泄露的風(fēng)險。[1]

? ? ? ?(2)圖解

? ? ? ?我們以包含兩個數(shù)據(jù)擁有方(即企業(yè) A 和 B)的場景為例介紹聯(lián)邦學(xué)習(xí)的系統(tǒng)構(gòu)架。該構(gòu)架可擴展至包含多個數(shù)據(jù)擁有方的場景。假設(shè)企業(yè) A 和 B 想聯(lián)合訓(xùn)練一個機器學(xué)習(xí)模型,它們的業(yè)務(wù)系統(tǒng)分別擁有各自用戶的相關(guān)數(shù)據(jù)。

? ? ? ?此外,企業(yè) B 還擁有模型需要預(yù)測的標簽數(shù)據(jù)。出于數(shù)據(jù)隱私保護和安全考慮,A 和 B 無法直接進行數(shù)據(jù)交換,可使用聯(lián)邦學(xué)習(xí)系統(tǒng)建立模型。聯(lián)邦學(xué)習(xí)系統(tǒng)構(gòu)架由三部分構(gòu)成。

? ? ? ?第一部分:加密樣本對齊。由于兩家企業(yè)的用戶群體并非完全重合,系統(tǒng)利用基于加密的用戶樣本對齊技術(shù),在 A 和 B 不公開各自數(shù)據(jù)的前提下確認雙方的共有用戶,并且不暴露不互相重疊的用戶,以便聯(lián)合這些用戶的特征進行建模。

? ? ? ?第二部分:加密模型訓(xùn)練。在確定共有用戶群體后,就可以利用這些數(shù)據(jù)訓(xùn)練機器學(xué)習(xí)模型。為了保證訓(xùn)練過程中數(shù)據(jù)的保密性,需要借助第三方協(xié)作者 C 進行加密訓(xùn)練。以線性回歸模型為例,訓(xùn)練過程可分為以下 4 步:

? ? ? ?第①步:協(xié)作者 C 把公鑰分發(fā)給 A 和 B,用以對訓(xùn)練過程中需要交換的數(shù)據(jù)進行加密,注意傳輸?shù)臄?shù)據(jù)是模型的計算中間結(jié)果(后面會解釋具體是什么),不涉及用戶隱私,當然雖然傳輸?shù)臄?shù)據(jù)是加密的,但模型訓(xùn)練的時候是要用私鑰解密的。

? ? ? ?第②步:A 和 B 之間以加密形式交互用于計算梯度的中間結(jié)果,那個這個中間結(jié)果具體指什么呢?

? ? ? ?我的理解是這樣:

? ? ? ?假設(shè)A上有樣本的X1,X2特征,B上有樣本的X3,X4特征及標簽Y,模型為logistic回歸;首先,A根據(jù)當前模型計算每條記錄的X1,X2線性組合結(jié)果,B根據(jù)當前模型計算每條記錄的X3,X4線性組合結(jié)果;然后A將結(jié)果加密后傳給B,同時B將結(jié)果加密后傳給A。

? ? ? ?第③步:A和B分別基于解密后的交互中間信息(線性組合結(jié)果)進行各自的梯度值計算,比如B可基于接收的線性組合結(jié)果、標簽Y等數(shù)據(jù)計算LOSS(損失)及X3、X4的梯度,A接收后可計算LOSS(損失)及X1,X2的梯度。

然后A,B分別將計算得到的X1,X2,X3,X4的梯度值上傳到C,C基于梯度值計算出模型的新參數(shù)。

? ? ? ?第④步:C將四個新參數(shù)分別傳送回A和B,也就是更新A,B的模型,用于新一輪的迭代。

? ? ? ?迭代上述步驟直至損失函數(shù)收斂,這樣就完成了整個訓(xùn)練過程。在樣本對齊及模型訓(xùn)練過程中,A 和 B 各自的數(shù)據(jù)均保留在本地,且訓(xùn)練中的數(shù)據(jù)交互也不會導(dǎo)致數(shù)據(jù)隱私泄露。因此,雙方在聯(lián)邦學(xué)習(xí)的幫助下得以實現(xiàn)合作訓(xùn)練模型。

? ? ? ?模型正式部署到生產(chǎn)后,如果要用于預(yù)測,比如輸入一個用戶ID,則A,B模型分別提供預(yù)測的線性組合結(jié)果并相加,從而得到最終的預(yù)測值。

? ? ? ?第三部分:效果激勵。聯(lián)邦學(xué)習(xí)的一大特點就是它解決了不同機構(gòu)要加入聯(lián)邦共同建模的問題,提供數(shù)據(jù)多的機構(gòu)所獲得的模型效果會更好,模型效果取決于數(shù)據(jù)提供方對自己和他人的貢獻。這些模型的效果在聯(lián)邦機制上會分發(fā)給各個機構(gòu)反饋,并繼續(xù)激勵更多機構(gòu)加入這一數(shù)據(jù)聯(lián)邦。以上三部分的實施,既考慮了在多個機構(gòu)間共同建模的隱私保護和效果,又考慮了以一個共識機制獎勵貢獻數(shù)據(jù)多的機構(gòu)。

? ? ? ?(3)案例

? ? ? ?金融行業(yè)中面向金融機構(gòu)與政府基于聯(lián)邦學(xué)習(xí)技術(shù)進行聯(lián)合建模的落地應(yīng)用。例如金融機構(gòu)結(jié)合其服務(wù)企業(yè)的金融行為、資產(chǎn)等特征與政府的企業(yè)信息、企業(yè)稅務(wù)信息、企業(yè)違規(guī)信息等特征,采用縱向聯(lián)邦學(xué)習(xí)聯(lián)合建模開展企業(yè)的信用風(fēng)控評估。金融機構(gòu)間通過同一用戶群的金融行為數(shù)據(jù)采用縱向聯(lián)邦學(xué)習(xí)聯(lián)合分析金融反欺詐。

? ? ? ?四、機密計算

? ? ? ?(1)定義

? ? ? ?機密計算就是針對數(shù)據(jù)在使用過程中的安全問題所提出的一種解決方案。它是一種基于硬件的技術(shù),將數(shù)據(jù)、特定功能、應(yīng)用程序,同操作系統(tǒng)、系統(tǒng)管理程序或虛擬機管理器以及其他特定進程隔離開來,讓數(shù)據(jù)存儲在可信執(zhí)行環(huán)境(Trusted Execution Environment,TEE)中,即使是使用調(diào)試器,也無法從外部查看數(shù)據(jù)或者執(zhí)行操作。TEE確保只有經(jīng)過授權(quán)的代碼才能訪問數(shù)據(jù),如果代碼被篡改,TEE將阻止其繼續(xù)進行操作。

? ? ? ?機密計算的核心功能有:

? ? ? ?第一、保護 In-Use 數(shù)據(jù)的機密性:內(nèi)存中的數(shù)據(jù)是被加密的,即便被攻擊者竊取到內(nèi)存數(shù)據(jù)也不會泄露數(shù)據(jù);

? ? ? ?第二、保護 In-Use 數(shù)據(jù)的完整性:度量值保證了數(shù)據(jù)和代碼的完整性,使用中有任何數(shù)據(jù)或代碼的改動都會引起度量值的變化;

? ? ? ?第三、保護 In-Use 數(shù)據(jù)的安全性:相比普通應(yīng)用,機密計算應(yīng)用有更小的 TCB(Trusted Compute Base),意味著更小的攻擊面,也意味著更安全。,以 Intel SGX 為例,除了 CPU 和可信應(yīng)用自身以外,其他軟硬件的訪問都是被拒絕的,包括操作系統(tǒng)、Hypervisor 等。

? ? ? ?(2)圖解

? ? ? ?按照普通方式部署敏感應(yīng)用,應(yīng)用會依賴操作系統(tǒng)、VMM、硬件甚至是云廠商,TCB 非常大,面臨的攻擊面也非常大。只要 TCB 中只要有一處遭到攻擊,應(yīng)用都有數(shù)據(jù)泄露和破壞的風(fēng)險。

? ? ? ?而把敏感應(yīng)用部署在 Intel SGX 的 TEE 中,TCB 只有 CPU 和 TEE 本身。一方面攻擊面變得很小,另一方面 TEE 的安全機制也會使應(yīng)用更安全。

? ? ? ?(3)案例[9]

? ? ? ?支持 TEE 的硬件平臺主要有 3 個:Intel SGX、ARM TrustZone 和 AMD SEV,它們有不同的應(yīng)用場景和實現(xiàn)方式:

? ? ? ?ARM TrustZone把硬件資源分為安全世界和非安全世界兩部分,所有需要保密的操作在安全世界執(zhí)行,其余操作在非安全世界執(zhí)行,安全世界和非安全世界通過一個名為 Monitor Mode 的模式進行轉(zhuǎn)換。典型的應(yīng)用場景有移動支付、數(shù)字錢包等;

? ? ? ?AMD 利用 SEV(AMD Secure Encrypted Virtualizationn),SME(AMD Secure Memory Encryption)和SEV-ES(Secure Encrypted Virtualization-Encrypted State)等技術(shù)實現(xiàn)虛擬機的 Guest 內(nèi)存加密和安全隔離;

? ? ? ?Intel SGX 是 Intel 提供的一組指令,用于提高應(yīng)用的代碼和數(shù)據(jù)的安全性,用戶可以把敏感數(shù)據(jù)放入到 Encalve 中,Enclave 是一種受保護的可信執(zhí)行環(huán)境。阿里云 ACK-TEE 和開源項目 Inclavare Containers 都是基于 Intel SGX 實現(xiàn)的機密計算。

? ? ? ?五、差分隱私

? ? ? ?(1)定義

? ? ? ?差分隱私(Differential Privacy)是Dwork[3] 在2006年針對數(shù)據(jù)庫的隱私泄露問題提出的一種新的隱私定義。主要是通過使用隨機噪聲來確保,查詢請求公開可見信息的結(jié)果,并不會泄露個體的隱私信息,即提供一種當從統(tǒng)計數(shù)據(jù)庫查詢時,最大化數(shù)據(jù)查詢的準確性,同時最大限度減少識別其記錄的機會,簡單來說,就是保留統(tǒng)計學(xué)特征的前提下去除個體特征以保護用戶隱私。

? ? ? ?舉個例子,當不使用差分隱私技術(shù)時,我們查詢A醫(yī)院數(shù)據(jù)庫,查詢今日就診的100個病人患病情況,返回10人患肺癌,同時查詢昨天99個病人患病情況,返回9個人患肺癌,那就可以推測今天來的那個人張三患有肺癌,這個就暴露了張三的個人隱私了。

? ? ? ?使用差分隱私技術(shù)后,查詢A醫(yī)院的數(shù)據(jù)庫,查詢今日就診的100個病人患病情況,返回肺癌得病率9.80%,查詢今日就診的99個病人患病情況,返回肺癌得病率9.81%,因此無法推測剩下1個人張三是否患有肺癌。

? ? ? ?(2)圖解

? ? ? ?當用戶(也可能是潛藏的攻擊者)向數(shù)據(jù)提供者提交一個查詢請求時,如果數(shù)據(jù)提供者直接發(fā)布準確的查詢結(jié)果,則可能導(dǎo)致隱私泄漏,因為用戶可能會通過查詢結(jié)果來反推出隱私信息。

? ? ? ?為了避免這一問題,在交互式差分隱私保護框架下,用戶通過查詢接口向數(shù)據(jù)擁有者遞交查詢請求,數(shù)據(jù)擁有者根據(jù)查詢請求在源數(shù)據(jù)集中進行查詢,然后將查詢結(jié)果添加噪聲擾動之后反饋給用戶,在非交互式差分隱私保護框架 下,數(shù)據(jù)管理者直接發(fā)布一個滿足差分隱私保護的數(shù)據(jù)集,再根據(jù)用戶的請求對發(fā)布數(shù)據(jù)集進行查詢操作,如下圖所示。

? ? ? ?假設(shè)存在一個數(shù)據(jù)表,該數(shù)據(jù)是某醫(yī)院的門診病歷記錄,其中包括病人的姓名、年齡、性別、臨床診斷等信息。

? ? ? ?圖(a)是原始數(shù)據(jù)記錄的直方圖發(fā)布形式。如果攻擊者想要知道Cole的診斷情況,并且具有強大的背景知識,如攻擊者已經(jīng)知道Cole的性別為男、年齡在60~80歲之間,以及其他人的臨床診斷信息,那么攻擊者將能夠推斷出Cole的臨床診斷信息,從而導(dǎo)致Cole的隱私信息被泄露。

? ? ? ?圖(b)給出了經(jīng)過差分隱私技術(shù)處理過的直方圖發(fā)布的結(jié)果,從圖中可以看出,即使攻擊者知道年齡在60~80歲之間除了Cole以外所有人的信息,他也沒辦法獲取Cole的診斷信息。

? ? ? ?差分隱私中一個關(guān)鍵概念是相鄰數(shù)據(jù)集,假設(shè)給定兩個數(shù)據(jù)集D和D’,如果它們有且僅有一條數(shù)據(jù)不一樣,那么這兩個數(shù)據(jù)集可稱為相鄰數(shù)據(jù)集。

? ? ? ?那么如果對于一個隨機算法A如果其分別作用于兩個相鄰數(shù)據(jù)集得到的兩個輸出分布式難以區(qū)分的,那么這個算法就被認為達到差分隱私的效果。

? ? ? ?這里的隨機算法,是指對于特定輸入,該算法的輸出不是固定值,而是服從某一分布的算法,如下圖所示,也就是說這個算法作用于任何相鄰數(shù)據(jù)集(D和D’),得到一個特定輸出O的概率是差不多,從而觀察者通過觀察輸出結(jié)果很難覺察出數(shù)據(jù)集的細小變化,通過這種方式來達到保護隱私的目的。

? ? ? ?差分隱私的主要實現(xiàn)機制,主要是在輸入或輸出上加入隨機化的噪音:拉普拉斯噪音(Laplace Noise),高斯噪音(Gaussian Noise),指數(shù)機制等。

? ? ? ?(3)案例

? ? ? ?差分隱私在1977年就提出了,但是真正讓它聲名大噪的是2016年蘋果軟件工程副總裁克雷格?費德里希(Craig Federighi)在WWDC大會上宣布蘋果使用本地化差分隱私技術(shù)來保護IOS、MAC用戶隱私。

? ? ? ?在多個場景中成功部署差分隱私,在保護用戶隱私的同時,提升用戶體驗。例如,使用差分隱私技術(shù)收集用戶統(tǒng)計用戶在不同語言環(huán)境中的表情符號使用情況,改進QuickType對表情符號的預(yù)測能力。

? ? ? ?根據(jù)用戶鍵盤輸入學(xué)習(xí)新單詞、外來詞,更新設(shè)備內(nèi)字典改善用戶鍵盤輸入體驗。又例如,根據(jù)使用差分隱私技術(shù)收集用戶在Safari應(yīng)用使用中高頻的高內(nèi)存占用型、高耗能型域名,在IOS和macOS High Sieera系統(tǒng)里在這些網(wǎng)站加載時提供更多資源,以提升用戶瀏覽體驗。

? ? ? ?六、各類技術(shù)優(yōu)缺點

? ? ? ?1、多方安全計算

? ? ? ?優(yōu)點:

? ? ? ?基于密碼學(xué)安全,其安全性有嚴格密碼理論證明,不以信任任何參與方、操作人員、系統(tǒng)、硬件或軟件為基礎(chǔ),各個參與方對其擁有的數(shù)據(jù)擁有絕對的控制權(quán),保障基本數(shù)據(jù)和信息不會泄露,同時計算準確度高,并支持可編程通用計算。

? ? ? ?缺點:

? ? ? ?多方安全計算包含復(fù)雜的密碼學(xué)操作,計算性能問題是應(yīng)用的一大障礙。隨著應(yīng)用規(guī)模擴大,采用合適的計算方案保證運算時延與參與方數(shù)量呈現(xiàn)線性變化是目前各技術(shù)廠商面臨的一大挑戰(zhàn)。

? ? ? ?從安全性上看,多方安全計算的目標是保證多方數(shù)據(jù)融合計算時的隱私安全,一些傳統(tǒng)安全問題,如訪問控制、傳輸安全等,仍然需要其他相應(yīng)的技術(shù)手段。

? ? ? ?2、聯(lián)邦學(xué)習(xí)

? ? ? ?優(yōu)點:

? ? ? ?聯(lián)邦學(xué)習(xí)由于其具有分布式訓(xùn)練和聯(lián)合訓(xùn)練的特點。

? ? ? ?一方面能夠解決訓(xùn)練階段數(shù)據(jù)特征單一的問題,從而獲得一個性能更好的、優(yōu)于利用自己本身數(shù)據(jù)集所訓(xùn)練出的模型。

? ? ? ?另一方面,各參與方只需在本地利用各自數(shù)據(jù)集進行訓(xùn)練,數(shù)據(jù)體量未增加,算力成本壓力小。因為整個訓(xùn)練過程中各參與方的數(shù)據(jù)都不會離開本地,只將模型的梯度及權(quán)重等信息上傳至中心服務(wù)器進行聚合分割,對于各參與方來說這樣既不會直接泄露隱私數(shù)據(jù),也不會額外增加參訓(xùn)數(shù)據(jù)量,從而完成訓(xùn)練任務(wù)。

? ? ? ?缺點:

? ? ? ?聯(lián)邦學(xué)習(xí)存在著安全問題和通信效率問題。

? ? ? ?一是就目前業(yè)內(nèi)應(yīng)用較大的神經(jīng)網(wǎng)絡(luò)模型來看,因為從底層編碼開始構(gòu)建一個基礎(chǔ)的神經(jīng)網(wǎng)絡(luò)模型通常耗時耗力,多數(shù)企業(yè)從開源平臺獲取或第三方平臺上購買基礎(chǔ)模型,這樣的基礎(chǔ)模型本身就有植入病毒的可能。

? ? ? ?二是學(xué)術(shù)界對于聯(lián)邦學(xué)習(xí)的安全保障效果尚無嚴格定義,利用中心服務(wù)器收集的梯度及權(quán)重信息還是有可能反推出每個參與方的數(shù)據(jù)信息。

? ? ? ?三是聯(lián)邦學(xué)習(xí)的機制默認所有參與方都是可信方,無法規(guī)避某個參與方惡意提供虛假數(shù)據(jù)甚至病害數(shù)據(jù),從而對最終的訓(xùn)練模型造成不可逆轉(zhuǎn)的危害。

? ? ? ?四是由于分布式參與節(jié)點計算能力不一致、網(wǎng)絡(luò)連接狀態(tài)不穩(wěn)定、數(shù)據(jù)通信非獨立分布等現(xiàn)實因素,聯(lián)邦學(xué)習(xí)的通信效率極易成為聯(lián)邦學(xué)習(xí)應(yīng)用的瓶頸之一。

? ? ? ?3、機密計算

? ? ? ?優(yōu)點:

? ? ? ?相對于其他隱私計算技術(shù),機密計算具有通用和高效的優(yōu)勢,不僅可以無縫支持通用計算框架和應(yīng)用,而且計算性能基本可匹敵明文計算。它可以單獨用于隱私計算,也可以與其他技術(shù)結(jié)合在一起來保護隱私,尤其對于安全可信云計算、大規(guī)模數(shù)據(jù)保密協(xié)作、隱私保護的深度學(xué)習(xí)等涉及大數(shù)據(jù)、高性能、通用隱私計算的場景,是重要的技術(shù)手段。

? ? ? ?缺點:

? ? ? ?機密計算的缺點在于TEE 信任鏈跟CPU 廠商綁定,目前硬件技術(shù)被掌握在英特爾、高通、ARM等少數(shù)外國核心供應(yīng)商中,從而影響到機密計算技術(shù)的可信度。機密計算的另一個缺點是目前的TEE 實現(xiàn)在理論上存在側(cè)信道攻擊的可能性,因為TEE與其它非可信執(zhí)行環(huán)境空間共享了大量的系統(tǒng)資源。

? ? ? ?4、差分隱私

? ? ? ?優(yōu)點:

? ? ? ?差分隱私技術(shù)基于嚴格的數(shù)據(jù)理論,能夠?qū)崿F(xiàn)數(shù)據(jù)資源的最大利用,在多方安全計算中,采用可計算的差分隱私能大大降低多方安全計算的計算復(fù)雜度和通訊量。

? ? ? ?缺點:

? ? ? ?差分隱私通過添加噪聲實現(xiàn)隱私保護,會對模型可用性和準確性造成一定程度影響,因此,對于準確度要求較高的場景如人臉識別、金融風(fēng)險計量,目前無法大規(guī)模應(yīng)用該項技術(shù)。

? ? ? ?另一方面差分隱私保護目標是計算結(jié)果而不是計算過程,以機器學(xué)習(xí)建模為例,差分隱私可以在建模結(jié)果上加入噪聲,保證攻擊者難以從建模結(jié)果反推出樣本信息,但差分隱私依然需要計算方顯式的訪問訓(xùn)練數(shù)據(jù),因此沒有保護建模過程,因此與前面三種方案有根本不同。

? ? ? ?最后,給一張關(guān)鍵技術(shù)評價表[4]:


(部分內(nèi)容來源網(wǎng)絡(luò),如有侵權(quán)請聯(lián)系刪除)
立即申請數(shù)據(jù)分析/數(shù)據(jù)治理產(chǎn)品免費試用 我要試用
customer

在線咨詢

在線咨詢

點擊進入在線咨詢