3月29日,「隱語開源社區(qū)開放日」活動順利舉辦。隱語社區(qū)不僅在當日正式開源隱語SCQL多方安全數據分析引擎,這是業(yè)內首個將SQL 做到多方安全計算(MPC)技術的數據分析系統,提供工業(yè)級的多方安全聯合分析功能,目前已在隱語 GitHub 社區(qū)開源,面向全球開發(fā)者免費開放推動隱私計算邁向更加易用,活動現場社區(qū)也廣邀行業(yè)、企業(yè)、高校、科研的隱私計算開發(fā)者與使用者,開展了一場平等雙向的開放交流。
(相關資料圖)
社區(qū)互動零距離:小小便利貼走近與聆聽開發(fā)者的關注
社區(qū)在現場設置了開放留言及拍照打卡區(qū),“全同態(tài)加密的效率問題,多久才能產品化?”“MPC SQL 的具體落地場景有哪些?”“隱私計算市場規(guī)模?人才需求?”留言內容從技術性能的突破、到產業(yè)應用的前景、再到個人職業(yè)的發(fā)展,開放包容地探討著關于隱私計算的方方面面。
開源生態(tài)全方位:企業(yè)、科研、社區(qū)之星分享共建故事與成果
活動邀請到各界代表共話隱私計算技術現狀與未來趨勢,內容核心緊緊圍繞隱語代碼共建&使用開展,聯通隱私計算各層生態(tài)、內容視角涵蓋開發(fā)者、使用者、共建者。浙江大學求是講席教授、ACM/IEEE Fellow任奎為活動致辭,以數據要素為切入點,強調當前隱私安全石責任也是核心競爭力,隱私計算作為此間的核心技術之一,其開源是必要趨勢、也是技術產業(yè)化加速的重要推動力。
螞蟻集團副總裁兼首席技術安全、北京大學客座教授韋韜以《數據要素大潮的技術挑戰(zhàn)》為題進行了演講。拆解分析了數據要素密態(tài)發(fā)展三個階段所面臨的不同挑戰(zhàn),在此過程中,方法體系、平臺框架、技術標準等方面都面臨全新變革。“目前,我們密態(tài)時代處于計算密態(tài)化和大數據密態(tài)化中間,計算密態(tài)化中的安全挑戰(zhàn)依然是行業(yè)中非常需要重視的問題;未來大數據密態(tài)化之時,核心則要拓展技術應用深度,才足以面對數據要素全面密態(tài)化的挑戰(zhàn)?!?
隱語框架負責人王磊在現場發(fā)布中講到:“在實際場景中,BI的應用面更廣。對于大部分數字化轉型起步較晚、正在進程中的企業(yè),更多是通過一些規(guī)則、數據分析、人工分析的方式進行數據處理。數據要素市場化是要賦能行業(yè)應用和實體經濟、是要驅動經濟的整體發(fā)展。所以,BI數據分析將會逐漸變得越來越重要,隱私計算技術整體也會從頂層的企業(yè)逐步向下滲透?!?/p>
但是,BI的隱私計算面臨著巨大的挑戰(zhàn),主要有如下幾點:
第一,高應用性。剛步入數字化轉型或者正在數字化轉型進程中的企業(yè),整體技術能力有限,高應用性對于他們來說就格外重要。SQL是平常使用最多的數據分析語言,使用上手門檻相對較低,但這項技術本身是非常復雜的,MPC(多方安全計算)技術也是非常復雜的。那么,使用SQL語言完成MPC(多方安全計算)并保證正確運行,則無論站在技術難度的角度,還是站在工作量的角度來講,都是一個巨大的工程。
第二,即時性。SQL數據分析采用交互的方式,與AI建模不同,雖然需要調參,但本身交互沒有那么強。但是SQL分析則需要頻繁交互,此時對整體的響應速度和時間需求則更高,需要整個分析過程中都能夠及時響應,如此對整體性能的要求也會非常高。
第三,安全性。多方安全計算需要保證中間結果沒有任何信息泄露,而數據分析又需要看到每次交互的結果,并且需要通過頻繁交互的結果調整下一個環(huán)節(jié)。兩者之間天然存在矛盾。同時,SQL的靈活性非常高,如何保證基于多方安全計算的SQL分析整體的安全性也是巨大的挑戰(zhàn)。隱語在這些方面提出了一些新思路,進行一些嘗試和探索,也取得了一些成果,但是距離真正解決這些問題還有很長的路要走。
核心發(fā)布:隱語SCQL多方安全數據分析引擎
基于如此背景,王磊于開放日現場開源發(fā)布隱語SCQL多方安全數據分析引擎:
從技術上來看,隱語基于MPC技術內核的底層抽象SPU設備,創(chuàng)新實現了一種多方安全數據分析系統 SCQL。SCQL支持類 SQL 的查詢語言,它繼承了 SQL作為常用數據分析語言的普及性、易學性和高成熟度,同時還拓展了標準 SQL 的語義,可以描述基于多個數據參與方的安全數據分析任務。
如圖是隱語SCQL的架構示意,它是一種多方合作語言,大致分成兩個部分:上部稱之為SCDB,構建了一個SCQL數據庫,可以認為部分程度延續(xù)了一個傳統SQL數據庫的樣式。對于用戶來說,可以直接發(fā)起一條傳統SQL請求,請求首先會經過Parser,轉為抽象的語法樹,再通過Planner成為Logical plan。這兩個模塊我們只做了少量的改動,基本也是基于開源技術。
最大的挑戰(zhàn)在Logical plan到Execution Graph的過程,傳輸過程實際是一個優(yōu)化的過程,原本他們之間的差異不大,但是在隱私計算場景,他們之間的差異就會變的非常大。Translator實際是進行多約束條件下的最優(yōu)協議選擇,這件事的本質是無論AI還是BI,隱語的整體設計理念是明密文混合,即在保證安全性的前提下,如能明文計算則盡量不進行密文計算,因為密文成本相對較高。在整個計算當中有安全性的約束,同時會有數據類型、數據來源,還有數據狀態(tài),數據狀態(tài)還會隨著計算過程不斷發(fā)生遷移和改變,再加之每一個協議適用的模式是不同的。我們會根據所有這些約束,最終選擇一個最優(yōu)協議出來,這就是Translator的本質。
那么怎樣理解最優(yōu)協議?如上圖舉例,此處有四種Group By,這四種Group By是為了適應不同場景。第一種是明文Group By,當密態(tài)計算時,Group Key以及聚合表達式處于單邊,直接調用即可,一個典型的明文計算場景,無需密態(tài)計算性能很好;第二種是當Group Key與聚合表達式分散在兩邊,但聚合函數是求和,此時可以使用同態(tài)求和Group By來實現,只需將聚合列進行同態(tài)加密后傳輸至Group Key列,就可以進行聚合計算,性能也相對不錯;第三種是Vertical Group By,此時Key處于多方,這件事情變的更復雜,隱語提供了新的、非常高效的、非常巧妙的算法,可以將分布在多方的Group Key進行高效的合并;最后,如果所有以上優(yōu)化都無法進行,也就是純密態(tài)Group By,此時會以滿足安全性為前提,進而選擇一個性能最好的協議。
Translator進行優(yōu)化后,就會下發(fā)至下部的計算引擎,如圖展示三個party構成,具體情況中兩方或三方,則與采用的協議有關。計算引擎會先將DB的數據讀出并進行計算,圖中右下是SCQL計算引擎的架構,其中包含很多算子實現,也是明密文的混合,明文計算直接使用Arrow進行計算,密文使用隱語已經開源的SPU,如果大家對隱語有了解,就知道兩個密態(tài)計算引擎完成這個計算。
Translator在進行協議轉換時會執(zhí)行CCL檢查,其本質上是數據擁有者可以對數據做約束定義,Translator轉換時就根據約束執(zhí)行檢查,如果SCQL不滿足安全約束條件,則會被禁止運行。
左側是目前業(yè)內常見的多方安全分析保障模型,如前文所講SQL是非常靈活的,解決安全性的問題無外乎兩種方式,一個是事前審核,二是事后審計,事后審計很好理解,所有的執(zhí)行都需要存證。事前審核現在更多是通過人工,本質把安全性責任完全拋給了用戶。
假設Party1寫一段SQL,此時因參與方是三方,所以Party2和Party3用戶都需要審核SQL,確認沒有問題再執(zhí)行。這就產生兩個問題:第一,對于審核者來說工作量非常大,因為SQL是頻繁交互的,且難免在審核中存在疏忽誤判;第二,還是與SQL的交互式相關,每一個都需要多方審核,用戶的操作體驗較差。
而CCL的作用如圖右,在事前審核之前,數據擁有方設置一個針對數據的CCL,是一次性的設置動作,此后用戶每次提交SQL時,都需先經CCL檢查,確認通過才會執(zhí)行下一步,否則被禁止不能執(zhí)行。接下來可以進行事前審查,即可運行至多方數據分析引擎中。
既然有CCL的安全性檢查,為什么需要事前審核這個模塊呢?因為,此處需要強調CCL不等于安全。與ACL相類似,不滿足CCL約束一定不安全,但是滿足CCL約束也不一定安全,所以CCL只是提供了輔助的工具。
CCL描述是一個三元組,數據擁有者對某一列進行約束,針對某個參與方進行約束。如Alice與Bob進行數據分析合作,有三列數據,設置CCL針對salary一列要求Bob參與者只有使用了聚合函數之后才可以看到。如此,Bob必須對salary列進行聚合之后才可以看到結果且只能看到一個統計結果,不允許看到明晰列數據,這就是CCL約束。
王磊也提到,此次SCQL發(fā)布的功能為Preview版本,雖然目前這些能力尚不完備,但Preview版本已經能夠滿足很多的場景,并舉了幾個例子:
第一是營銷場景,提供輸出到文件的功能,仔細看即PSI求交。第二是用戶畫像,通過使用Group By,我可以對2做統計,同時還支持Y條件,基于Y條件可以做跨表數據比較,以滿足用戶畫像場景需求。第三是在線策略,此前我們分享過保險的場景應用,這當中就是在線線上實施施略。為什么是在線策略?如圖綠色可以看到,其顧慮是某一個ID,即在這一場景當中,要查詢某一個人騙保概率以及騙??赡苄?,類似于風控中判斷這個人的風險,只針對這一個人,所以是單獨的查詢條件。據悉,隱語SCQL計劃會分別在6月、9月、12月開源更多能力。具體發(fā)版內容則將基于社區(qū)對Preview版本的反饋建議,酌情調整優(yōu)先級。
現場除了隱語新版本核心開源發(fā)布,眾多來自業(yè)界和學界的多位嘉賓也進行了主題演講。英特爾產品安全和保障部高級總監(jiān)郭偉、螞蟻集團高級技術專家祝森林、浙江大學百人計劃研究員張秉晟、中國信通院云計算與大數據研究所高級業(yè)務主管袁博、中銀金科隱私計算實驗室算法工程師石新蕾和廈門掌訊信息技術有限公司CTO王藝團,從技術和產業(yè)角度切入,帶來隱私計算前沿分享。
(完整回放及文字實錄歡迎前往「隱語的小劇場」公眾號獲?。?/p>
此外,來自北京郵電大學、廈門大學、浙江大學、廈門掌訊、Intel的社區(qū)之星也受邀來到開放日,任奎、深圳國家金融科技測評中心董事長鐘劍以及韋韜,為這些高校、企業(yè)isv用戶、行業(yè)企業(yè)的社區(qū)開放共建力量代表進行現場表彰。?
關鍵詞: