非常抱歉,全站內容審核中...

為了更加合法合規運營網站,我們正在對全站內容進行審核,之前的內容審核通過后才能訪問。
環球資訊網 匯聚海量最新國內、國際資訊

2022-09-16 已圍觀 5 次來源:互聯網編輯:環球資訊網

目前業界常提到的“隱私計算”,其實是“隱私保護計算”,即安全多方計算(MPC)、同態加密、聯邦學習、可信執行環境等一系列技術的統稱。和傳統的加密、脫敏等靜態數據保護方案不同,隱私計算技術可以實現數據使用中的動態保護,實現“數據可用不可見”,給數據要素的安全流通帶來了眾多想象與可能,因此也獲得了產業界和資本的格外青睞。

相比直接在原始數據上計算,隱私計算需要引入額外的計算和通信代價,因此其運行效率受到客戶重點關注。但是目前業界對隱私計算效率的評估,往往簡單的描述成“比明文慢XX倍”,各個廠商的文案中,慢千倍者有之,慢十倍者也有之,八仙過海,客戶也經常蒙圈不知道如何比較,甚至連國內較權威的隱私計算性能測評都很難描述清楚。

詳細隱私計算性能評測文章參見:

https://openmpc.com/article/182

實際上,隱私計算的性能究竟比明文慢多少倍,這是和多種因素有關的,例如對于同一個需求場景,有嚴謹安全模型的方案,肯定比無嚴謹安全模型的方案要慢;同一個方案,低帶寬下肯定比高帶寬慢;必須說清楚場景和安全性,比較“比明文慢XX倍”才有意義。

為了厘清這些問題,給用戶一個關于隱私計算效率方面明確的認識,我們制作了一個隱私計算benchmark,設置了比較、排序、LR、NN等多種計算,分為局域網高帶寬、廣域網低帶寬兩種不同的網絡環境,并在嚴謹的MPC安全模型下給出了這些場景下對應的性能數據和代碼實現作為參考。

隱私計算benchmark地址如下:

https://github.com/tf-encrypted/tf-encrypted/tree/master/examples/benchmark

TF-Encrypted(TFE)簡介

這個benchmark基于 TFE 框架來實現,這里對該框架做一個簡單的介紹。TFE 是在 TensorFlow 上構建的隱私計算框架,充分利用了 TF 中已有的圖計算優化、網絡通信和優化等特點,讓開發者僅需關注隱私計算協議的功能層和應用層,是最早出現的一批支持安全多方計算+機器學習的隱私計算框架之一,其開源實現也影響了后續興起的多個相關框架。TFE的創始成員來自Cape Privacy,但目前主力維護工作主要由阿里巴巴安全部雙子座實驗室 承擔。歡迎各位開發者和相關研究人員加入一起開源貢獻,有問題可以咨詢阿里巴巴雙子座實驗室 。

阿里巴巴雙子座實驗室官網:

https://alibaba-gemini-lab.github.io/

TFE 目前支持基于 secret sharing(秘密分享)技術的多個MPC協議,包括 server-aided Pond、server-aided SecureNN、replicated secret sharing(RSS)等。這些協議均是semi-honest、honest majority的安全三方計算協議,我們的第一版benchmark目前也集中討論這類安全三方計算的性能。

Replicated Secret Sharing (RSS) 簡介

論文 ABY3 提出了一種基于 RSS 的三方計算框架,可以安全地實現機器學習等應用中涉及的大部分計算操作。

在RSS中,一個原始數值 會被拆分成下列表示形式:

且 (需要取模,這里不做贅述)?

其中,計算方0持有,計算方1持有,計算方2持有,這樣就保證了任意一個計算方都無法獲知原始數值,但是當兩個計算方合作時就可以還原出該數值。當所有“敏感”數值都被拆分成這樣的表示形式后,3個計算方可以執行一系列對應的計算協議來完成某個計算任務,比如,一次機器學習模型推理或訓練。

RSS是目前三方計算的最佳實踐,其關鍵原因是RSS可以非常方便且高效的實現乘法和矩陣乘法:

各個參與方只需要本地計算乘積的分量,然后傳給其他參與方即可。出于這一優勢,我們選取了TFE + RSS來完成此次三方計算的benchmark。對于benchmark中涉及的Relu、truncation、softmax等各類協議,我們均參考ABY3和[2]中的A(Arithmetic)、B(Boolean)混合協議來實現。需要注意的是我們沒有使用ABY3中的Y即姚氏混淆電路,因為A+B就夠用了,Y的通信代價過高,因此會降低整體方案的性能(這一點早在iDASH19比賽時已經被[5]證實了)

測評環境

這個 benchmark 的運行環境如下:

  • 安全模型:半誠實
  • 三方計算協議:RSS
  • 三個計算方分別位于三臺不同的機器
  • 每臺機器配置:4核,CPU 頻率 2.7 GHz

    由于MPC任務對于網絡環境要求較高,我們測試了兩種不同的網絡環境下的性能:

  • LAN:局域網,帶寬 40Gbps,延遲 0.01 ms
  • WAN:廣域網,帶寬 352Mbps,延遲 20 ms

    測評任務1: 排序、最大值

    很多應用會涉及到比較大小、求最大值、求中位數、排序等操作(例如卷積網絡中用到的 maxpooling),事實上這些操作底層都是“比較”操作,因此評估一個方案中“比較”操作的性能尤為重要。單個“比較”操作的性能或許波動較大,因此在這個benchmark中我們選擇了測試排序任務和求最大值任務的性能:

  • 排序: 個元素的數組排序
  • 最大值: 個數組,每個數組個元素,求個數組各自的最大值。

    如下表所示:

    Build graph

    (seconds)LAN

    (seconds)WAN

    (seconds)Sort ()0.900.1311.51Sort ()74.70117.4511133.00Max ()2.020.010.51Max ()2.053.6615.28

    TFE需要為任務創建TensorFlow計算圖,同樣的任務運行多次,只需要建圖一次,因此對比性能時可以不考慮這一步開銷。從表中看到,安全地排序1百萬個元素,在LAN環境下需要百秒,而WAN環境下則是千秒級別。

    另外需要一提的是,表中 Max(1000 x 4)事實上就等價于機器學習中batch大小為1000、pool大小為 2x2 的一個 MaxPool 操作。

    測評任務2: 神經網絡推理

    我們接下來看一個更復雜一點的計算任務,在一個深層神經網絡模型中作安全推理。

  • 推理任務和場景:服務商有一個神經網絡模型,客戶有一張圖片,客戶調用服務商的模型對圖片作分類預測,但是圖片不能泄漏給服務商。

    若模型較復雜,該任務會涉及到安全機器學習中使用到的大部分運算子,例如加減乘、ReLU、Sigmoid、MaxPool等等,因此能夠很好的反應一個安全計算框架的綜合表現性能。在本 benchmark 中,我們選擇了用 Resnet50 模型對圖片進行安全推理,該模型足夠復雜,是機器學習中較為常見的模型,并且也被用于近年各大安全頂會中MPC相關的論文的性能評估任務。

    TFE支持把現有的 TensorFlow 模型直接轉換成 MPC 版本,并執行后續的推理運算。其性能如下所示:

    Build graph

    LAN

    WAN

    RESNET50 inference time (seconds)57.7913.55126.89

    在廣域網下,Resnet50模型對一張圖片做安全推理耗時在兩分鐘左右。筆者做過橫向對比,在安全三方 Resnet50 模型推理任務下,TFE 是目前最高效的框架實現之一,例如,該性能與 CryptGPU、SecureQ8 的實現性能接近,優于 CryptFLOW。因此,即使考慮最優的網絡環境,讀者可大致看出該任務的耗時下限基本會在10秒級別。

    測評任務3: 神經網絡訓練

    最后,我們來討論一下安全計算中的“圣杯”式的任務:模型訓練。該任務需要經歷多輪迭代運算,計算量和通信量都極為繁重。我們在 MNIST 數據集上做測評:

  • 該數據集包含6萬張訓練圖片,1萬張測試圖片
  • 訓練過程中使用的batch大小為128
  • 訓練在5個epoch(即約3000個batch)后停止
  • 訓練對比了機器學習中三個不同的主流優化器:SGD,AMSgrad,Adam

    我們分開兩部分做測評,第一部分訓練一個二分類的邏輯回歸模型,第二部分訓練全分類的神經網絡模型。

    邏輯回歸(LR)

    由于數據集有 10 個分類,而LR是二分類模型,因此我們訓練如下二分類模型:區分開小數字(0-4) 和大數字(5-9)。如下表所示:

    Accuracy (epochs)Seconds per Batch (LAN)Seconds per Batch (WAN)LR (SGD)84.1% (5)0.0120.760LR (AMSgrad)85.5% (5)0.0251.567LR (Adam)85.8% (5)0.0211.353

    可以看到,目前MPC + LR 訓練已經可以達到較高的性能。

    神經網絡

    為了方便對比,我們沿用了前人工作中使用的4種神經網絡模型,具體模型結構可參考Keller&Sun中的附錄A。我們同時把 TFE 與 MP-SPDZ 框架實現的RSS協議做了對比(MP-SPDZ是目前開源的最快最全的MPC計算代碼庫之一,但筆者覺得使用起來沒有 TFE 友好),其性能如下表所示:

    AccuracyAccuracySeconds per Batch (LAN)Seconds per Batch (LAN)Seconds per Batch (WAN)Seconds per Batch (WAN)

    MP-SPDZTFEMP-SPDZTFEMP-SPDZTFEA (SGD)96.7%96.8%0.0980.1389.7245.075A (AMSgrad)97.8%97.3%0.2280.56721.03817.780A (Adam )97.4%97.3%0.2210.46350.96316.958B (SGD)97.5%98.7%0.5714.00060.75525.300B (AMSgrad)98.6%99.0%0.6804.17071.98328.424B (Adam)98.8%98.8%0.7724.07598.10828.184C (SGD)98.5%98.8%1.1756.22391.34137.678C (AMSgrad)98.9%99.0%1.5687.336119.27183.695C (Adam)99.0%99.1%2.8256.858195.01381.275D (SGD)97.6%97.5%0.1340.35515.0836.112D (AMSgrad)98.4%98.1%0.2280.68226.09917.063D (Adam)98.2%98.0%0.2930.60554.40416.190

    表中 A、B、C、D 分別代表4種不同的神經網絡架構,其中 C 最復雜。從對比中可以看出,TensorFlow 的圖計算和網絡優化使得 TFE 在 WAN 環境中取得了比 MP-SPDZ更高效的結果。而在LAN中由于TF-C++的額外調用代價,我們的性能比純C++的MP-SPDZ要低。

    MNIST在四核筆記本上明文訓練,一分鐘不到就可以練到99%了,所以即使是MNIST訓練這么簡單的需求,加上帶寬、延遲都很理想的LAN環境,其訓練速度仍然可能慢于明文數十倍到百倍。在WAN環境下則更是一個batch需要幾十秒甚至幾分鐘,與明文差距千倍以上。

    總結

    本次測評主要為了給讀者建立一個印象:目前最優的 MPC 性能水位在哪?為了解答這個問題,我們從安全三方計算出發,在特定硬件和網絡環境下,基于高效的 TF-Encrypted 框架對各種常見的計算任務做出了性能評估。我們的性能測評均整合了學術界最優的算法實現,得益于TensorFlow網絡調度的優勢,WAN上的指標不少都超出了國際最好成果,但是也基本和它們處于同一個數量級。一般而言,同等硬件配置下,如果某些工作聲稱的性能優于前述性能一個數量級以上,那么可以認為這個數據有待商榷,除非能提供高質量論文做進一步討論和判別。歡迎業界對上述benchmark以及 TF-Encrypted 庫做出指正、貢獻,也期待業界制作基于其他隱私計算方案(如聯邦學習、可信執行環境)的benchmark。

    參考文獻

    [1] P. Mohassel and P. Rindal, “ABY3: A Mixed Protocol Framework for Machine Learning,” in Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, 2018, pp. 35–52.

    [2] M. Keller and K. Sun, “Secure Quantized Training for Deep Learning,” arXiv:2107.00501 [cs], Jul. 2021, Accessed: Apr. 14, 2022. [Online]. Available: http://arxiv.org/abs/2107.00501

    [3] A. Dalskov, D. Escudero, and M. Keller, “Secure Evaluation of Quantized Neural Networks,” Proceedings on Privacy Enhancing Technologies, vol. 2020, no. 4, pp. 355–375.

    [4] N. Kumar, M. Rathee, N. Chandran, D. Gupta, A. Rastogi, and R. Sharma, “CrypTFlow: Secure TensorFlow Inference,” in 2020 IEEE Symposium on Security and Privacy (SP), May 2020, pp. 336–353.

    [5] M. Keller, “A Note on Our Submission to Track 4 of iDASH 2019” https://arxiv.org/abs/1910.11680

    申明:文章屬原創內容,如轉載需注明來自開放隱私計算公眾號

  • 圖文推薦

    97资源站免费公开在线视频