寫在前面

安全多方計算(Secure Multi-Party Computation,MPC)已經從20世紀80年代的理論構想發展成為當今用於構建實際系統的工具。在過去的十年間,MPC已成為理論密碼學和應用密碼學領域最活躍的研究方向之一。從行業角度看,隱私增強計算(Private Enhancing Computation)已成為支援資料要素流通的關鍵技術,而MPC作為隱私增強計算的一個重要領域,在國內也得到了廣泛的關注。越來越多的人才已經加入到MPC的研究和實現,為此技術的落地應用貢獻力量。

雖然MPC領域發展迅速,但相關的中文教材與專業書籍較少,這阻礙了MPC在國內的普及和應用。《實用安全多方計算導論》(A Pragmatic Introduction to Secure Multi-Party Computation)是國際著名密碼學家David Evans、Vladimir Kolesnikov和Mike Rosulek撰寫的MPC教材,得到了國際MPC聯盟(MPC Alliance)的推薦,是波士頓大學、布朗大學、喬治·華盛頓大學、斯坦福大學等著名院校講授MPC時所使用的參考書籍。

為此,以阿里巴巴集團資料技術及產品部、阿里巴巴-浙江大學前沿技術聯合研究中心(AZFT)、安比實驗室為支撐, @劉巍然-學酥 和丁晟超一起將《實用安全多方計算導論》翻譯成中文,並由機械工業出版社出版發行,希望能夠幫助國內密碼學研究人員和密碼學從業者更快地瞭解和學習這一重要的密碼學技術。本書邀請到中國科學院院士、國際密碼學會會士王小云,阿里巴巴集團副總裁朋新宇專門做序,並得到了浙江大學任奎教授、浙江大學張秉晟教授、上海交通大學教授、山東大學陳宇教授、美國西北大學汪驍教授的推薦。三位作者專門為本書撰寫了“致中文版讀者(To Chinese Readers)”。收到中文版書籍後,Mike Rosulek教授在Twitter上也進行了宣傳。

2021-08-07更新-《實用安全多方計算導論》勘誤

勘誤資訊

本書出版後得到了較高的關注,很多讀者都透過知乎、微信等方式聯絡到我們,發現了書籍中的一些錯誤。在此對這些讀者表示衷心的感謝!為此,我們將相應勘誤資訊整理到此處,方便讀者查閱。我們也歡迎讀者給我們留言,進一步提高本書的質量。

(來自王海龍,透過OpenMPC社群交流①群同步勘誤資訊)第42頁,第3章:基礎MPC協議,第3。4節:用預處理乘法三元組實現MPC,中下方:第3步

v_\beta

後面的圓括號應為方括號,即:

[v_{\alpha} v_{\beta}] = de + d[b] + e[a] + [c]

(來自 @六三 ,透過微信同步勘誤資訊)第65頁,第4章:實現技術,第4。1節:低開銷亂碼電路,第4。1。2節:FreeXOR技術,最下方:當輸入為

sh_{1i}

sh_{2i}

時,直接輸出

sh_{1i} \oplus sh_{2i}

,後面不應該有

=s_i

一項。

(來自 @雲中雨霧 ,透過OpenMPC社群交流①群同步勘誤資訊),第70頁,第4章:實現技術,第4。1節:低開銷亂碼電路,第4。1。3節:半門技術,最下方腳註①:結合圖4。1的描述,當

w_b = 0

(應為

v_b = 0

)時,電路求值方可獲得啟用標籤…

(來自齊平,透過OpenMPC社群交流①群同步勘誤資訊)第88頁,第5章:不經意資料結構,第5。1節:特定不經意資料結構,中間:圖5。3,左下方

t_0 = 3

內部的數字應為8、7、2,而非8、2、7。此處原書也有錯誤,後續我將會把此勘誤資訊同步給原作者。

(來自黃可可、姚旭,透過OpenMPC社群交流①群同步勘誤資訊)第106頁,第6章:惡意安全性,第6。1節:切分選擇,中間:

具體引數

:切分選擇技術主要涉及兩個引數:複製因子(Replication Factor)指的是

\mathsf{P}_2

(應為

\mathsf{P}_1

)必須生成的亂碼電路數量,…

(來自黃可可、姚旭,透過OpenMPC社群交流①群同步勘誤資訊)第109頁,第6章:惡意安全性,第6。3節:批處理切分選擇,中間:切分選擇抽象遊戲的變種步驟1:攻擊者作為其中一個玩家(任意)準備

\rho

個球(應為

N \rho + c

個球)每個球為紅色或綠色。