近日,第九屆iDASH國際隱私計算競賽落下帷幕,字節跳動安全研究獨立組隊-Jeddak Team,首次參加了可信計算和區塊鏈兩個賽道的角逐。在為期4個月的賽題準備和組委會官方評估后,Jeddak提交的可信隱私計算解決方案從眾多參賽隊伍中脫穎而出、入圍前三。
iDASH是數據隱私與安全計算領域的國際最高規格競賽,由美國國立衛生研究院(NIH)主辦,歷年來吸引了全球頂尖高校和科技公司的積極參與。今年包括有美國耶魯大學、加州大學圣迭戈分校、瑞士聯邦理工、德國慕尼黑工業大學、新加坡南洋理工、浙江大學,以及英特爾、三星、騰訊、阿里巴巴、螞蟻金服等來自14個國家、共計81支隊伍的激烈角逐。
此次比賽設置了可信計算、區塊鏈、同態加密、多方安全計算共4個賽道,組委會根據各賽題場景篩選出滿足要求的方案設計和代碼實現,然后從性能、精度等指標維度對各參賽隊進行排名。Jeddak Team 分別獲得可信計算賽道第二名、區塊鏈賽道第三名的好成績。作為Best-Performing Team,團隊成員還受邀在iDASH Workshop 2022上展示了參賽方案。

可信計算賽道揭秘
可信計算的賽題是對單細胞轉錄組學數據進行安全分類,目標是為了檢測可信執行環境實施并行訓練的可擴展性:要求使用多個飛地(Enclave)來對單細胞數據進行分類訓練,并且為了模擬云中的彈性計算環境,比賽規定每個飛地最多使用8個線程來進行訓練,最后按照分類準確率和耗時對各參賽隊伍進行排名;同時要求在分類過程中,任何輸入、中間和輸出數據都不能泄露。本次比賽主要考察可信計算系統的設計與優化水平。
為此,Jeddak Team對現有主流分類算法做了調研,最終選取DPMM算法因其優秀的分類正確性和計算效率;同時,創新性地提出了一系列方法手段來提升分類的性能,例如:
· 加解密階段使用共享內存。在非可信環境加密數據時,將結果直接落到共享內存中,這樣飛地里的線程便可以直接讀取加密數據并解密,節省了一次OCALL操作和一次內存復制操作。
· 動態加載飛地。分配給飛地的可信內存越大,加載飛地的效率就會越低,于是根據數據集的大小預估所需可信內存的大小,然后從事先生成的、不同大小可信內存的二進制文件中選取最合適者,實現動態加載飛地,從而減少加載時間。

· 線程池的使用。在飛地里面的計算任務會被寫到一個任務隊列,線程池的線程通過ECALL進入飛地后,便會一直監聽任務隊列:有任務則取出來執行、直到算法結束才將線程銷毀。這樣在分類時,便不會有可信環境與非可信環境的轉換,同時避免了頻繁地創建線程。
· 設計收斂判斷邏輯。DPMM算法只支持固定輪數的訓練,在一些收斂特別快的數據集上會導致性能變差,于是增加了收斂判斷邏輯,一旦算法判斷收斂便將任務提前終止。

根據主辦方的評估,Jeddak Team的方案在僅使用2個飛地的情況下,耗時8.8秒就完成18900個樣本分類,其ARI也在所有參賽隊伍中保持了較高水平。此外,需要特別指出的是,Jeddak方案在更大樣本規模(200k)的測試條件下,依然可以保證極高的性能和準確率。

憑借著上述創新,最終在該賽道的18支參賽隊伍中獲得了第2名的好成績。與螞蟻鏈、阿里安全雙子座實驗室、騰訊Angel PowerFL共同入選Best-Performing Teams。
區塊鏈賽道揭秘
區塊鏈賽道的題目和要求是,使用Ethereum Solidity智能合約語言設計出高效的數據結構和算法,來存儲和檢索生物醫學證書。證書在插入時被劃分為多個15K的分塊數據,而這些數據和對應的元數據都要上鏈;同時,設置有兩個查詢函數,分別要求根據查詢條件來返回滿足的元數據信息和最近的證書內容。最后會評估查詢結果的正確性,以及插入操作和兩個查詢函數的性能。
為此,Jeddak Team給出了一系列優化設計和實現。例如,在插入證書元數據和證書內容時,均采用哈希表存儲上鏈;另外,為了快速查詢而使用了額外4個mapping(typeFiles,courseFiles,unameFiles、以及typeCourseFiles),用于存儲查詢字段到證書文件名列表的映射。

查詢優化的一個創新舉措是:根據證書數據分布,優先使用最具標識性的字段進行過濾,從而將多通配符條件下可能的匹配證書鎖定在一個較小范圍,提高了查詢匹配效率。此外,對于給定gaslimit條件下組裝恢復大文件的挑戰,Jeddak Team采用分組拼接、以取替迭代拼接的方式,解決了因內存拷貝次數過多而導致gas使用超限的問題。

根據主辦方的評估,Jeddak Team方案的平均插入時間和兩類查詢的執行時間均十分高效。最終在該賽道34支參賽隊伍中獲得了第3名的好成績。與耶魯大學、螞蟻鏈共同入選Best-Performing Teams。

關于本次比賽的更多詳細信息以及對應參賽作品的介紹視頻和幻燈片材料,請大家參考賽事官網: http://www.humangenomeprivacy.org/2022/。
Jeddak數據安全沙箱
此次Jeddak Team參賽所使用的核心技術均源于自研的Jeddak數據安全沙箱,是構建在可信執行環境和區塊鏈基礎上的數據計算平臺。適用于多方數據融合的隱私計算應用場景:既能夠聯合多個數據提供方進行協同計算、打通“數據孤島”發揮數據價值;又能夠滿足數據“可用不可見”的安全合規要求。從而實現了計算過程中數據的隱私保護、審計溯源和防篡改,為數據的可信應用及其互聯互通提供了行之有效的解決方案。
目前,Jeddak數據安全沙箱已通過火山引擎對外提供服務,包括數據復雜處理、聯合分析、聯合建模與預測,以及隱私集合求交PSI、匿蹤查詢PIR、機密數據庫查詢SQL等功能應用。在云端代理計算、數據合規計算、分布式計算等多類場景模式下,為用戶挖掘和創造更多數據價值。