安全多方计算 # 个人笔记
一個(gè)優(yōu)美令人如癡如醉的領(lǐng)域。
Data is the oil of the 21st century
歡迎讀者拍磚和提供本文修改建議。本文長期維護(hù)。
- 第二次編輯于2021/10/20,新增了部分閱讀材料,調(diào)整了文章內(nèi)容的組織。
0 研究背景
【最后更新于2021/10/20】
時(shí)代背景:當(dāng)下正處于數(shù)據(jù)安全的變革期,數(shù)據(jù)要素被納入新的生產(chǎn)要素、AI技術(shù)的興盛對數(shù)據(jù)有大量需求、來自數(shù)據(jù)隱私保護(hù)法律法規(guī)的監(jiān)管需求
- 2021年3月北京國際大數(shù)據(jù)交易所正式成立
- 2021年9月《數(shù)據(jù)安全法》正式實(shí)施
要有明確的使用目的和方式,而且要公開使用的目的和方式、規(guī)則,要明示使用的目的和方式,要用合適的對個(gè)人權(quán)益影響最小的方式使用數(shù)據(jù)。 - 《個(gè)人信息保護(hù)法》第69條:處理個(gè)人信息侵害個(gè)人信息權(quán)益造成損害,個(gè)人信息處理者不能證明自己沒有過錯(cuò)的,應(yīng)當(dāng)承擔(dān)損害賠償?shù)惹謾?quán)責(zé)任。
- 2020年成為隱私計(jì)算的技術(shù)元年,2021年則是隱私計(jì)算的商業(yè)落地年。
=》 使用可控、可計(jì)量的技術(shù)和能力將成為未來數(shù)據(jù)合法合規(guī)和數(shù)據(jù)監(jiān)管的基礎(chǔ)設(shè)施
0.1 產(chǎn)業(yè)界的問題與需求
- 數(shù)據(jù)要素、數(shù)據(jù)使用權(quán)、數(shù)據(jù)所有權(quán)、數(shù)據(jù)孤島 => 隱私計(jì)算
應(yīng)用需求舉例:
金融科技、人工智能、醫(yī)藥保護(hù)共享數(shù)據(jù)
聯(lián)合營銷、聯(lián)合風(fēng)控、統(tǒng)一授信、業(yè)務(wù)合規(guī)、精準(zhǔn)營銷、信貸風(fēng)控、發(fā)現(xiàn)多頭借貸、保險(xiǎn)定價(jià)
隱私敏感型數(shù)據(jù):金融、物流、供應(yīng)鏈、物聯(lián)網(wǎng)、汽車業(yè)的客戶行為信息、身份信息、金融信息、征信信息、醫(yī)療信息等等
MPC 之所以近幾年開始受到關(guān)注,一方面是因?yàn)楫a(chǎn)業(yè)互聯(lián)網(wǎng)、AI 等關(guān)鍵領(lǐng)域的發(fā)展越來越離不開數(shù)據(jù)上云、離不開數(shù)據(jù)挖掘,數(shù)據(jù)隱私問題的解決迫在眉睫。另一方面也在于,MPC 已經(jīng)成長到了一定的階段,其產(chǎn)業(yè)價(jià)值潛力開始彰顯,特別是在涉及隱私敏感型輸入數(shù)據(jù)的應(yīng)用場景。在解決數(shù)據(jù)隱私問題的同時(shí),數(shù)據(jù)孤島的困境也能得到緩解,因?yàn)橐徊糠謹(jǐn)?shù)據(jù)孤島現(xiàn)象存在正是基于數(shù)據(jù)隱私的考量。
0.2 過去的解決方案
解決方案不好,沒有本質(zhì)解決問題
- 物理封閉項(xiàng)目室:封閉開發(fā)
- 脫敏授權(quán)
- 可信第三方
- Lawyer-based security 簽署保密協(xié)議(Non Disclosure Agreement,NDA)
0.3 學(xué)術(shù)的定義
安全多方計(jì)算(Secure Multi-Party Computation,MPC)的研究主要是針對無可信第三方的情況下,如何安全地計(jì)算一個(gè)約定函數(shù)的問題。
MPC是電子選舉、門限簽名以及電子拍賣等諸多應(yīng)用得以實(shí)施的密碼學(xué)基礎(chǔ)。
一個(gè)安全多方計(jì)算協(xié)議,如果對于擁有無限計(jì)算能力攻擊者而言是安全的,則稱作是信息論安全的或無條件安全的;如果對于擁有多項(xiàng)式計(jì)算能力的攻擊者是安全的,則稱為是密碼學(xué)安全的或條件安全的。
已有的結(jié)果證明了在無條件安全模型下,當(dāng)且僅當(dāng)惡意參與者的人數(shù)少于總?cè)藬?shù)的1/3時(shí),安全的方案才存在。而在條件安全模型下,當(dāng)且僅當(dāng)惡意參與者的人數(shù)少于總?cè)藬?shù)的一半時(shí),安全的方案才存在。
0.4 學(xué)術(shù)問題:百萬富翁問題
MPC起源于1982年姚期智的百萬富翁問題。后來Oded Goldreich有比較細(xì)致系統(tǒng)的論述。
兩個(gè)百萬富翁都想比較到底誰更富有,但是有都不想讓別人知道自己有多少錢。在沒有可信的第三方的情況下如何進(jìn)行?
翻譯一下:做某種計(jì)算需要對方的數(shù)據(jù),但是由于各種原因不能提供對方的真實(shí)數(shù)據(jù)。不提供真實(shí)數(shù)據(jù)實(shí)現(xiàn)計(jì)算。
這個(gè)設(shè)想本質(zhì)上反映了基于用戶數(shù)據(jù)挖掘的服務(wù)中數(shù)據(jù)的使用權(quán)和所有權(quán)之間的矛盾:服務(wù)提供者必須得到你的數(shù)據(jù)才能提供服務(wù)。放到這個(gè)“百萬富翁”設(shè)想中,即互聯(lián)網(wǎng)服務(wù)一定要拿到兩位富翁的財(cái)產(chǎn)數(shù)據(jù),才能計(jì)算出“誰更有錢”。有沒有一種技術(shù),可以實(shí)現(xiàn)數(shù)據(jù)使用權(quán)、所有權(quán)的分離,生產(chǎn)方保有數(shù)據(jù)的所有權(quán)而不影響數(shù)據(jù)需求方提供服務(wù)?簡而言之,可以基于加密的數(shù)據(jù)進(jìn)行計(jì)算。
0.5 MPC產(chǎn)業(yè)情況
【W(wǎng)arning:本段落有時(shí)效性】
Gartner估計(jì):千億級(jí)市場,2024年全球突破150億美元
0.5.1 華控清交 “數(shù)據(jù)可用不可見,使用可控可計(jì)量”
【最后更新于2021/10/20】
公司官網(wǎng)
公司介紹:張旭東任CEO,其1989年進(jìn)入華爾街,從最早投資精算的工作一路做到了高盛集團(tuán)全球合伙人,管理大中華區(qū)所有的證券、交易、資本業(yè)務(wù)。公司依托著名科學(xué)家:姚期智院士、徐葳教授科研成果,有清華大學(xué)交叉信息研究院、清華五道口金融學(xué)院聯(lián)合背景,核心成員來自姚班。2018年6月科研成果轉(zhuǎn)化出來的公司。
目前估值:超過40億RMB
融資階段:B輪 - 5億RMB
主要業(yè)務(wù)方向:基于密碼學(xué)的MPC技術(shù)、標(biāo)準(zhǔn)和基礎(chǔ)設(shè)施
通過綜合運(yùn)用密碼學(xué)混淆電路、不經(jīng)意傳輸、秘密分享、同態(tài)加密、同態(tài)承諾、零知識(shí)證明等多種理論和協(xié)議研發(fā)出了一個(gè)軟硬件結(jié)合的多方安全計(jì)算平臺(tái)。
0.5.2 螞蟻金服
基于 MPC 的安全計(jì)算平臺(tái)“摩斯”
0.5.3 其他
共識(shí)數(shù)信、矩陣元、富數(shù)科技、翼方健數(shù)
0.6 MPC與區(qū)塊鏈:各有側(cè)重,具有互補(bǔ)特征
看起來很相似,也經(jīng)常聯(lián)合一起使用,但側(cè)重點(diǎn)不同。最大的區(qū)別就在于:區(qū)塊鏈并不考慮數(shù)據(jù)的保密性,數(shù)據(jù)在鏈上都是透明的、可追溯的,這在追求數(shù)據(jù)透明的應(yīng)用場景如食品安全溯源自然是常規(guī)操作,但在某些場景下,輸入數(shù)據(jù)有一定的機(jī)密性,不透明反而是需求。而MPC強(qiáng)調(diào)計(jì)算過程中輸入數(shù)據(jù)的保密性,輸入數(shù)據(jù)被鎖在“黑箱”里。
兩者在輸入數(shù)據(jù)上的這種互補(bǔ)屬性,所以結(jié)合是一種新的技術(shù)趨勢:區(qū)塊鏈經(jīng)過 MPC 獲得數(shù)據(jù)保密能力,可以覆蓋更多的應(yīng)用場景;MPC借助區(qū)塊鏈技術(shù)實(shí)現(xiàn)冗余計(jì)算變得可驗(yàn)證。
MPC+區(qū)塊鏈應(yīng)用案例:
- ZCash 通過零知識(shí)證明的手段在 Bitcoin 上添加了保護(hù)交易隱私的功能
- 區(qū)塊鏈做存證+MPC做隱私保護(hù):聯(lián)合征信、醫(yī)療數(shù)據(jù)聯(lián)合建模、拍賣清算、廣告推薦等應(yīng)用場景
MPC屬于隱私計(jì)算的一個(gè)主要方向,其他方向如下圖所示:
發(fā)展歷史見:link~
1 一切的起源:對姚式“百萬富翁問題”的討論
這里的天平,其實(shí)就是可信第三方。
1.1 定性討論
這個(gè)問題在數(shù)學(xué)上,必須借助于密碼學(xué)。不經(jīng)意傳輸(Oblivious Transfer,OT)是解決這個(gè)問題的絕妙方案。
拿這個(gè)例子來說,張三給李四提供 n 個(gè)選擇,這n個(gè)選擇對李四而言都是無法分辨的(即無法獲知原始內(nèi)容的),李四從中選擇一個(gè)并告訴張三。但有趣的是,張三不能知道李四選擇的是哪一個(gè)。
回到百萬富翁問題,一個(gè)簡單的解決方案就是一下步驟:
簡單可行嗎?當(dāng)然!前提是雙方都是可信的,雙方會(huì)遵守協(xié)議,所以這是一個(gè)半誠實(shí)對手模型。如果有一方造假,那么結(jié)果就不可信了。那是惡意敵手模型要討論的問題。但我們在討論MPC的時(shí)候一般假設(shè)為半誠實(shí)敵手模型,再通過零知識(shí)證明加強(qiáng)拓展到惡意敵手模型,著是一種標(biāo)準(zhǔn)的方法。
本題抽象化,其實(shí)就是兩個(gè)數(shù)的安全比較大小問題。張三知道一個(gè)整數(shù)i,李四知道一個(gè)整數(shù)j,希望比較大小,都不想讓對方知道自己的數(shù)。
1.2 無需不經(jīng)意傳輸?shù)慕鉀Q方案
對此問題進(jìn)行抽象化,其實(shí)就是兩個(gè)數(shù)的安全比較大小問題,以確定哪一個(gè)較大。張三知道一個(gè)整數(shù)i,李四知道一個(gè)整數(shù)j。張三和李四希望知道究竟是 i<=j 呢還是 i>j,但都不想讓對方知道自己的數(shù)。為簡單期間,假設(shè) i 與 j 的范圍為 [1, 10]。李四有一個(gè)公開密鑰Eb與私有密鑰Db。
張三選擇一個(gè)大隨機(jī)數(shù) x,并用李四的公開密鑰加密:c = Eb(x)
張三計(jì)算 c-i, 并傳送給 李四
李四 計(jì)算下面的 10個(gè)數(shù):Yu=Db(c-i+u) , u[1, 10]
并取一個(gè)大素?cái)?shù) p (p 比 x 稍小,李四不知道x,但張三可以告訴李四 x 的大小范圍),計(jì)算:Zu=Yu mod p , u屬于[1, 10]
這里需要驗(yàn)證:
對所有的 u 下式成立: 0<Zu<p-1
對所有的 u,v: |Zu-Zv| >= 2
如果不成立,選擇另一個(gè)p,重新計(jì)算
注意: 這里有一個(gè)顯然的性質(zhì): Zi=x mod p
李四將以下數(shù)列發(fā)給張三:
Z1,Z2,...,Zj,Zj+1+1,Zj+2+1,...Z10+1Z_1, Z_2, ... , Z_j, Z_{j+1}+1, Z_{j+2}+1, ... Z_{10}+1Z1?,Z2?,...,Zj?,Zj+1?+1,Zj+2?+1,...Z10?+1
張三驗(yàn)證這個(gè)數(shù)列的第 i 個(gè)數(shù)是否與 x mod p 相同,如果相同,則 i<=j, 否則, i>j。
張三把這個(gè)結(jié)論告訴李四。
1.3 基于不經(jīng)意傳輸?shù)慕鉀Q方案
不經(jīng)意傳輸(oblivioustransfer)是一個(gè)密碼學(xué)協(xié)議,在這個(gè)協(xié)議中,消息發(fā)送者從一些待發(fā)送的消息中發(fā)送一條給接收者,但事后對發(fā)送了哪一條消息仍然oblivious(不知道),這個(gè)協(xié)議也叫茫然傳輸協(xié)議。(協(xié)議內(nèi)容見2.1節(jié))
不經(jīng)意傳輸本身是一套協(xié)議和算法。基于大數(shù)分解的復(fù)雜性或離散對數(shù)解的復(fù)雜性。一般在一個(gè)有限群中進(jìn)行。在不經(jīng)意傳輸?shù)闹С窒?#xff0c;上述方案可以簡化為以下版本:
是不是跟我們的水果解法比較類似呢?
1.4 問題拓展
百萬富翁問題可以說是安全多方計(jì)算的最基本的問題了,無論從方案還是算法復(fù)雜度而言,都比較簡單。這里看到了通過安全計(jì)算做比較和加法的方案。考慮到所有的算法實(shí)現(xiàn)最后都是演化成計(jì)算機(jī)門電路,那么把一個(gè)算法轉(zhuǎn)換成電路(與,非,異或等),那算法就是這些簡單的操作的組合了。這就為復(fù)雜的安全計(jì)算推開了一扇門。
2 當(dāng)下:常用密碼協(xié)議及其原理
補(bǔ)充一個(gè)概念:
外包計(jì)算:一方擁有數(shù)據(jù)并想獲取該數(shù)據(jù)的計(jì)算結(jié)果,另一方接收這份數(shù)據(jù)的一個(gè)加密格式,并對加密數(shù)據(jù)進(jìn)行計(jì)算,得到一份加密的計(jì)算結(jié)果,并將該結(jié)果返回給第一方。過程中,另一方不會(huì)獲得任何沒有加密的信息。
本節(jié)分享一些MPC里面常用的密碼學(xué)的知識(shí)。
2.0 密碼學(xué)協(xié)議基礎(chǔ)
協(xié)議Protocol:兩個(gè)或兩個(gè)以上參與者為完成某項(xiàng)特定任務(wù)而采取的一系列步驟。
協(xié)議執(zhí)行條件:協(xié)議參與方了解并遵循協(xié)議、協(xié)議清晰明確無歧義、協(xié)議完整:可以處理協(xié)議面臨的所有可能情形
常見協(xié)議有:仲裁協(xié)議、裁決協(xié)議、自動(dòng)執(zhí)行協(xié)議、密鑰協(xié)商協(xié)議、密鑰分配協(xié)議、認(rèn)證協(xié)議、盲簽名協(xié)議、不經(jīng)意傳輸協(xié)議、電子商務(wù)協(xié)議等等。。
2.0.1 基礎(chǔ)協(xié)議
-
仲裁協(xié)議:由仲裁者幫助互不信任的雙方完成的
-
裁決協(xié)議:每次都要執(zhí)行非仲裁子協(xié)議;有爭議時(shí)執(zhí)行裁決子協(xié)議。
-
自動(dòng)執(zhí)行協(xié)議:協(xié)議本身保證了公平性。
2.0.2 協(xié)議攻擊
2.0.3 公平計(jì)算基礎(chǔ)
2.0.4 MPC里常用的密碼學(xué)協(xié)議簡述
- 同態(tài)承諾:同態(tài)承諾是一種允許一個(gè)人向其他人提交任何選定數(shù)值而又不泄露該值的密碼協(xié)議,承諾提交后不能更改,且事后可公開驗(yàn)證。同態(tài)承諾允許在提交的承諾上進(jìn)行計(jì)算而不失去承諾的保密、不可更改及事后可驗(yàn)證的特征。
- 同態(tài)加密:同態(tài)加密即為各參與者將自己的輸入加密后一起發(fā)給某計(jì)算服務(wù)器,服務(wù)器直接在密文上進(jìn)行計(jì)算,計(jì)算后將得到的結(jié)果的密文發(fā)送給指定結(jié)果方,結(jié)果方再將結(jié)果的密文解密,即可得到最終的計(jì)算結(jié)果。如此一來,計(jì)算服務(wù)器一直在密文上操作,無法看到任何有效信息,而參與者也只拿到最后的結(jié)果,看不到中間結(jié)果。
- 秘密共享/秘密分享:秘密分享的基本思想是將數(shù)據(jù)切割成多份,并分發(fā)給不同的參與者,每個(gè)參與者持有其中一份,協(xié)作完成計(jì)算任務(wù)(比如加法、乘法運(yùn)算)。因?yàn)閰⑴c者看不到數(shù)據(jù)全量信息,從而實(shí)現(xiàn)數(shù)據(jù)隱私保護(hù)。
- 混淆電路:混淆電路的基本思想是將計(jì)算電路的每個(gè)門都加密并打亂,保證計(jì)算過程中不會(huì)泄露原始輸入和中間結(jié)果。雙方根據(jù)各自輸入依次進(jìn)行計(jì)算、解密方可得到唯一的正確結(jié)果,無法得到結(jié)果以外的其他信息,從而實(shí)現(xiàn)雙方安全計(jì)算。
- 不經(jīng)意傳輸/不經(jīng)意傳送:不經(jīng)意傳輸是一種可保護(hù)隱私的雙方通信協(xié)議,能使通信雙方以一種選擇模糊化的方式傳送消息。不經(jīng)意傳輸協(xié)議是密碼學(xué)的一個(gè)基本協(xié)議,它使得服務(wù)的接收方以不經(jīng)意的方式得到服務(wù)發(fā)送方輸入的某些消息,這樣就可以保護(hù)接受者的隱私不被發(fā)送者所知道。S每次發(fā)送2個(gè)信息m0和m1 ,而R每次輸入一個(gè)選擇b。當(dāng)協(xié)議結(jié)束的時(shí)候,S無法獲得關(guān)于b 的任何有價(jià)值的信息,而R只能獲得mb ,對于m1?b ,R也一無所知。
- 零知識(shí)證明:零知識(shí)證明是由S.Goldwasser、S.Micali及C.Rackoff在20世紀(jì)80年代初提出的。它指的是證明者能夠在不向驗(yàn)證者提供任何有用的信息的情況下,使驗(yàn)證者相信某個(gè)論斷是正確的。
零知識(shí)證明實(shí)質(zhì)上是一種涉及兩方或更多方的協(xié)議,即兩方或更多方完成一項(xiàng)任務(wù)所需采取的一系列步驟。證明者向驗(yàn)證者證明并使其相信自己知道或擁有某一消息,但證明過程不能向驗(yàn)證者泄漏任何關(guān)于被證明消息的信息。
一切的基礎(chǔ)是RSA (Rivest, Shamir, Adelman)非對稱加密算法的發(fā)明。(下圖3巨佬)
2.1 不經(jīng)意傳輸 OT
不經(jīng)意傳輸(oblivious transfer)是一個(gè)密碼學(xué)協(xié)議,在這個(gè)協(xié)議中,消息發(fā)送者從一些待發(fā)送的消息中發(fā)送一條給接收者,但事后對發(fā)送了哪一條消息仍然oblivious(不知道),這個(gè)協(xié)議也叫茫然傳輸協(xié)議,本發(fā)明成為開啟整個(gè)多方安全計(jì)算時(shí)代的雷聲。
在RSA的基礎(chǔ)上,誕生了實(shí)用的OT (oblivious transfer)算法, 實(shí)現(xiàn)了N選1的雙方隱私保護(hù)。
2.1.1 第一種形式的不經(jīng)意傳輸(歷史上第一個(gè)OT協(xié)議)
1981由Michael O.Rabin提出。發(fā)送者Alice發(fā)送一條消息給接收著Bob,而Bob以1/2的概率接收到信息,在結(jié)束后Alice并不知道Bob是否接收到了信息,而Bob能確信地知道自己是否收到了信息。
下一個(gè)是從密碼學(xué)角度實(shí)現(xiàn)的該設(shè)計(jì)。
2.1.2 更實(shí)用的OT協(xié)議(2選1、n選1的OT協(xié)議)
Shimon Even, Oded Goldreich, 和Abraham Lempel 在1985年提出2選1不經(jīng)意傳輸(1 out 2 oblivious transfer)。Alice每次發(fā)兩條信息(m1、m2)給Bob,Bob提供一個(gè)輸入,并根據(jù)輸入獲得輸出信息,在協(xié)議結(jié)束后,Bob得到了自己想要的那條信息(m1或者m2),而Alice并不知道Bob最終得到的是哪條。
2選1的OT通過利用RSA,通過引入3個(gè)隨機(jī)數(shù)(x0, x1, k) 然后通過加密后實(shí)現(xiàn)對選擇序號(hào)的保密,以及對原始2個(gè)帶選擇數(shù)的保密。 同時(shí)通過兩次對同一個(gè)序號(hào)進(jìn)行反向處理,實(shí)現(xiàn)只有對應(yīng),序號(hào)的數(shù)能夠被恢復(fù)。
注意:上圖^是異或
或者是:
協(xié)議關(guān)鍵:如果Alice無法從用兩條私鑰解密得到的結(jié)果k0、k1中區(qū)分出Bob的真實(shí)隨機(jī)數(shù),則能保證Alice無法得知Bob將要獲取的是哪條數(shù)據(jù)。Bob沒有私鑰也就無法得出真實(shí)的私鑰解密結(jié)果。
1986年,Brassard等人將2選1不經(jīng)意傳輸拓展為n選1。同理,1 out n不經(jīng)意傳輸也可基于類似原理實(shí)現(xiàn),只需要將2秘鑰換成n秘鑰。
雖然上述方法可以完成目標(biāo),但是仍存在三個(gè)缺點(diǎn):
1、Bob 可能詢問的是不同秘密的比特位。
2、Bob 可能得到兩個(gè)消息之間的異或。
3、Alice 可能欺騙 Bob,發(fā)送的 y 可能是一個(gè) 二次剩余,也就有可能指出 Bob 的選擇。
為克服以上缺點(diǎn),改進(jìn)上述算法如下:
2.1.3 Beaver 96協(xié)議(OT擴(kuò)展協(xié)議)
為了提高計(jì)算效率所以還需要繼續(xù)改進(jìn)。(安全性已經(jīng)得到了保障)
詳細(xì)內(nèi)容見Ref.2
Ref:
1.什么是不經(jīng)意傳輸?
2.不經(jīng)意傳輸(OT)-總結(jié)
2.2 混淆電路 Garbled Circuit,GC
2.2.1 姚氏混淆電路 Yao’s Garbled Circuit,Yao’s GC
姚氏電路是第一個(gè)安全兩方計(jì)算協(xié)議。核心技術(shù):將兩方參與的安全計(jì)算函數(shù)編譯成布爾電路的形式,并將真值表加密打亂,從而實(shí)現(xiàn)電路的正常輸出而又不泄露參與計(jì)算的雙方私有信息。
GC基于半誠實(shí)模型(semi-honest)的安全兩方計(jì)算(Two-Party-Security-Computation)。將整個(gè)計(jì)算過程分為兩個(gè)階段:第一階段將安全計(jì)算函數(shù)轉(zhuǎn)換為電路,稱之為電路產(chǎn)生階段;第二階段,利用OT、加密等密碼學(xué)原語等執(zhí)行電路,稱之為執(zhí)行階段。 每一階段由參與運(yùn)算的一方來負(fù)責(zé),直至電路執(zhí)行完畢輸出運(yùn)算后的結(jié)果。針對參與運(yùn)算的雙方,從參與者的視角,又可以將參與安全運(yùn)算的雙方分為電路的產(chǎn)生者(circuit generator)與電路的執(zhí)行者(circuit evaluator)。
對Yao‘s GC擴(kuò)展:GMW/CCD/BGW/BMR等將兩方安全計(jì)算擴(kuò)展到多方安全計(jì)算;將布爾電路擴(kuò)展到算術(shù)電路;將安全模型由半誠實(shí)模型擴(kuò)展到惡意模型,以抵抗一定數(shù)量惡意敵手攻擊。
疑問:為什么要先跑一個(gè)OT協(xié)議傳輸Encrypted(b),最后再傳輸GC,如果是最后傳輸GC為什么不在B跑加密呢?
因?yàn)閷τ诨煜斎氲姆椒]有傳給B,傳遞的知識(shí)混淆后的電路。
Public verifiable covert
從半誠實(shí)變?yōu)閻阂鈹呈帜P?#xff0c;GC中Alice作弊原本的協(xié)議無法處理,提出了PVC Security
詳細(xì)內(nèi)容見原文,這里是簡述大意。
2.2.2 GMW協(xié)議
見下文。
2.3 秘密共享 Secret Sharing
SS技術(shù)提出, 將數(shù)據(jù)切分多份, 然后分布到不同的計(jì)算節(jié)點(diǎn)上進(jìn)行計(jì)算, 每個(gè)計(jì)算節(jié)點(diǎn)都無法還原原始數(shù)據(jù), 但是可以推進(jìn)計(jì)算結(jié)果,最終多個(gè)計(jì)算節(jié)點(diǎn)的結(jié)果進(jìn)行整合就得到了最終結(jié)果。(注意:一般來說是有冗余,k個(gè)人即可,防止1人失聯(lián)而無法恢復(fù))
簡要介紹:
早期Shamir提出了多項(xiàng)式原始的SS技術(shù),通過拉格朗日差值法,實(shí)現(xiàn)秘密通過多項(xiàng)式方程的參數(shù)分享到多方,實(shí)現(xiàn)既不分享原始內(nèi)容,也不分享原始內(nèi)容的加密形態(tài),而且具有可解方式的組合個(gè)數(shù)就可以破解的能力。這種技術(shù)對加減法非常友好。但是對于乘法來說, 計(jì)算非常復(fù)雜, 通信量非常大。
算法的工程實(shí)現(xiàn):
不久GMW就提出了改進(jìn)算法,希望通過GC的方法來實(shí)現(xiàn)乘法部分,提高效率(基于布爾電路)。
要隱藏b的一方信息,就可以通過OT方法來實(shí)現(xiàn)。
但是還是沒有隱藏a的信息, 那么再通過加一個(gè)隨機(jī)數(shù)來隱藏a。
添加了r0,r1后, 乘積里面的r0+r1是很容易通過SS實(shí)現(xiàn)的。因此解決了乘法問題。
阿里安全:基于tf encrypted的ABY3模塊
3 安全多方計(jì)算的具體應(yīng)用場景舉例
參考文獻(xiàn)
擴(kuò)展閱讀材料
實(shí)驗(yàn)室
- 阿里安全 雙子座實(shí)驗(yàn)室
專注于數(shù)據(jù)安全及隱私保護(hù)領(lǐng)域的技術(shù)研究和能力輸出,實(shí)驗(yàn)室研發(fā)的主要技術(shù)包括:密態(tài)數(shù)據(jù)處理、安全多方計(jì)算、隱私保護(hù)等。
總結(jié)
以上是生活随笔為你收集整理的安全多方计算 # 个人笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 云服务器优势差别?三大主流云平台对比
- 下一篇: 取消关闭计算机怎么弄,win7自动关机命