代碼改動兩三行,AI數據秒換隱身衣!隱私計算+AI?如何一鍵切換
脫了馬甲我照樣兒認識你!
這句在2000春晚趙本山的經典臺詞,放在隱私圈有了新的解釋:在不看到數據“真面目”的情況下,照樣能得到答案。
數據的進擊與人工智能的野望
隨著人工智能(AI)技術的不斷發展和各種產品落地,數據作為各種人工智能算法的原材料,其價值已經普遍得到大家認可。各個公司能夠采集到的數據畢竟有限,想得到更精準的訓練模型,就需要將數據聯合起來挖掘更大的價值。
但真正讓數據“流動”并不簡單,對于擁有數據的各個企業來說,面臨著很大的矛盾:通過數據分享和交互顯然可以提升AI算法的效果,但同時又必須要保障自己的數據不泄露出去。
Rosetta讓隱私計算與AI攻守結合
而解決數據的動態使用、分享中的安全問題,正是“隱私計算+AI”技術的專長。其融合在數據的使用、處理過程之中,保障計算過程本身(廣義的講,還包括計算結果)不會泄露原始明文數據本身的信息。
國內首個自主研發的基于主流TensorFlow框架的隱私AI框架可以解決以上種種問題:Rosetta?。
“Rosetta”名稱取自古埃及的羅塞塔石碑(Rosetta Stone)。其上記載著古埃及象形文字、埃及草書和古希臘文三種文字。
這里寓意著Rosetta框架將承載和結合AI、隱私AI和區塊鏈三種典型的技術。這使得Rosetta的發展方向聚焦在以下三個方面:
- 面向AI需求,服務AI開發者
- 完全開源,透明開放
- 持續集成高效、可擴展的隱私保護技術后端
目前開源的 Rosetta 0.2.0版本中,以TensorFlow這一流行AI框架為基礎,深度改造其python前端和后端kernel,融合了最前沿的安全多方計算(MPC)算法協議。
那么讓我們揭開Rosetta的神秘面紗,先睹為快,舉一個簡單的“硬核”例子:
假設現在有三個個體A,B和C各自都具有自己采集到的一批私有數據,并且已經各自經過標準的特征工程等方式將其表達為三個矩陣Ma,Mb和Mc,正如大部分的AI算法(比如推薦系統)那樣,某一個步驟中需要執行矩陣乘法這樣的算子操作。
顯然為了保護數據的隱私,三方之間是不能將各自的數據直接明文的傳輸給其他參與者的,而這樣的計算又必須要進行數據的交互,這時,用戶可以引入Rosetta框架后很快的解決這一問題。
Rosetta框架實例分析
比如,各方在本地有一樣的如下腳本rosetta_demo.py (這里為了更加直觀的體驗,我們以各方通過console輸入簡單的數據來示例,真實場景下可以調用隱私數據文件讀取接口來輸入):

A 、B和C方在完成配置好網絡拓撲配置文件后,分別運行
python rosetta_demo.py –party_id=0
python rosetta_demo.py –party_id=1
python rosetta_demo.py –party_id=2
然后,各方分別按照提示在終端中輸入各自的私有數據,比如A方可以按照如下提示輸入其對應的矩陣元素值:
[2020-07-29 20:10:49.070] [info] Rosetta: Protocol [SecureNN] backend initialization succeeded!
please input the private data (float or integer, 6 items, separated by space): 2 3 1 7 6 2
假設A方輸入的私有矩陣為

,B方輸入的私有矩陣為

,C方輸入的素有矩陣為

。
我們先直接打印出算子計算的結果,此時各方本地輸出的是各不相同的被編碼后的密文信息,比如:
local ciphertext result: [[b’D\xa9P\xfeul\x00\x00#’ b’\xcbj\x1c\x1f*D\x00\x00#’ b’\xef\xdb\xa2\xddS\x90\xff\xff#’ b’\xaa:\xbcD\x96\x83\xff\xff#’]
[b’\x16\xb3\xf6\xa9@x\x00\x00#’ b’4\xff/\x99\xc9\xbb\xff\xff#’ b’8\x11\xfa\xa1Y<\x00\x00#’ b’_9\x92>\xea6\x00\x00#’]
[b’\xeb)\xf3\xa0\xfa\xc6\xff\xff#’ b”\x1c’\xec\x80\xa1%\x00\x00#” b’\xf4\xcd\xc4\xb6\xfb\x1a\x00\x00#’ b’B\x10\xeeNd\xe6\xff\xff#’]]
在上述腳本的最后我們顯式的調用了SecureReveal接口來將隱私AI的結果“解密”出來,且通過設定參數為5來要求只有A和C可以得到明文值,所以A方和C方將得到類似如下的正確明文結果:
plaintext matmul result: [[b’8.000000′ b’14.000000′ b’18.000000′ b’4.000000′]
[b’4.000000′ b’7.000000′ b’9.000000′ b’2.000000′]
[b’24.000000′ b’42.000000′ b’54.000000′ b’12.000000′]]
[2020-07-29 20:11:06.452] [info] Rosetta: Protocol [SecureNN] backend has been released.
而B方則不會得到正確的明文計算結果,其輸出是:
plaintext matmul result: [[b’0.000000′ b’0.000000′ b’0.000000′ b’0.000000′]
[b’0.000000′ b’0.000000′ b’0.000000′ b’0.000000′]
[b’0.000000′ b’0.000000′ b’0.000000′ b’0.000000′]]
[2020-07-29 20:11:06.558] [info] Rosetta: Protocol [SecureNN] backend has been released.
可以看出除了必要的數據預處理接口外,我們完全的復用了TensorFlow中的算子,在更復雜的計算邏輯圖中,你可以像這個trivial例子中的Matmul一樣,直接使用native TensorFlow的算子即可,不需要感知任何后端復雜的隱私協議!
AI開發者能在不需要對隱私AI技術有任何了解的情況下,只需要改動兩三行代碼即可將現有AI代碼轉換為具備數據隱私保護功能的程序,Rosetta可以說是AI開發者的“貼心小馬甲”。
為了更相近了解這種隱私保護技術,量子位邀請到矩陣元算法科學家謝翔博士進行直播分享,Rosetta如何將隱私計算能力賦予人工智能,讓我們的隱私更安全。
分享內容
- 隱私計算背景介紹
- 如何實現隱私保護
- 什么是Rosetta
- Rosetta運行原理
- Rosetta的應用場景
- 未來的規劃
嘉賓介紹:

謝翔,中國科學院軟件研究所博士,矩陣元算法科學家,負責公司整體隱私計算技術的預研和產品化,主導設計和開發Rosetta開源框架。
格密碼理論、同態加密、零知識證明、安全多方計算等密碼學算法和協議設計的專家。發表論文10余篇,曾在密碼學的頂尖學術會議Eurocrypt,CCS上發表論文。
直播&報名
直播時間:
2020年8月6日(周四),19:00-20:30
其中分享時間為60分鐘,問答交流環節30分鐘
報名方式:
添加小助手,qbitbot9,將邀請您加入直播群。

- 九章云極獨攬量子位三項大獎:以“一度算力”重構AI基礎設施云格局2025-12-10
- 視頻理解霸榜!快手Keye-VL旗艦模型重磅開源,多模態視頻感知領頭羊2025-11-28
- 中國唯一!阿里千問斬獲全球AI頂會最佳論文2025-11-28
- 第19屆中國投資年會·有限合伙人峰會在滬成功舉辦2025-11-28




