前沿技術(shù)

TECHNOLOGY

首頁 - 前沿技術(shù) - 隱私計算 -

解說安全多方計算

什么是安全多方計算

 

安全多方計算(Secure Muti-party Computation,簡稱MPC、SMC或SMPC)是密碼學(xué)研究的一個重要方向,從該問題的提出開始就一直受到國內(nèi)外密碼界的關(guān)注,并成為研究的熱點。SMC可以簡單理解為:兩方或者多方分別擁有各自的私有數(shù)據(jù),在不泄漏各自私有數(shù)據(jù)的情況下,各方協(xié)同計算,計算出關(guān)于各方私有數(shù)據(jù)的某一目標(biāo)函數(shù)的結(jié)果。整個計算完成時,彼此各方均不知其他方的私有數(shù)據(jù)。

 

SMC主要有哪些技術(shù)

 

安全多方計算不是單一的技術(shù),它包括秘密分享、不經(jīng)意傳輸、混淆電路、同態(tài)加密等多種技術(shù)。

 

 

 

秘密分享技術(shù)可以構(gòu)造安全多方計算協(xié)議,在計算時,各參與方將自己的輸入數(shù)據(jù)秘密分割成數(shù)據(jù)分片并分發(fā)到各參與方,各參與方用自己收到的數(shù)據(jù)分片進(jìn)行計算和交互,實現(xiàn)安全多方計算。

 

秘密分享的一個經(jīng)典方案是Shamir提出的閾值秘密分享方案,其特點是秘密數(shù)據(jù)的恢復(fù)并不需要全部數(shù)據(jù)分片,只需要部分?jǐn)?shù)據(jù)分片即可。例如,我們可將一個秘密數(shù)據(jù)s分割成5份秘密分量,由5個不同人員保管,而其中任意3個人就可以恢復(fù)出秘密數(shù)據(jù)s。事實上,我們可以選取兩個隨機(jī)數(shù)a1、a2,構(gòu)造一個二次多項式f(x)=s+a1x+a2x2,計算f(1)、f(2)、f(3)、f(4)、f(5),并將它們作為秘密分量分別交由5個不同人員保管,需要恢復(fù)秘密數(shù)據(jù)s時,f(1)、f(2)、…、f(5)中任意至少3個組合在一起,通過求解方程組即可得到秘密數(shù)據(jù)s,而少于3個則無法得到秘密數(shù)據(jù)s。

 

不經(jīng)意傳輸(Oblivious Transfer,OT,也稱茫然傳輸)是一種保證通信雙方隱私安全的通信協(xié)議,由通信雙方即消息發(fā)送方和消息接收方參與。發(fā)送方將n個消息加密后發(fā)送給接收方,接收方只能解密其中k個加密消息,發(fā)送方無法確定接收方得到的消息是其中哪k個,這就是n選k不經(jīng)意傳輸。OT實現(xiàn)技術(shù)有基于RSA的不經(jīng)意傳輸協(xié)議,基于ECC的不經(jīng)意傳輸協(xié)議,基于IBC的不經(jīng)意傳輸協(xié)議等。例如,發(fā)送方A擁有3個秘密消息m1,m2,m3,接收方B欲選擇接收消息m2,以下是一種基于RSA的3選1不經(jīng)意傳輸方法:

 

C:\Users\XUEJIN~1.WAN\AppData\Local\Temp\1620443331(1).png

 

一種3選1不經(jīng)意傳輸流程

 

B由于不知A的私鑰無法得到消息m1、m3,同時,A由于不知道B所選擇的隨機(jī)數(shù)也無法知道B選取的是哪個消息。

 

一個安全的不經(jīng)意傳輸協(xié)議需具備正確性、隱私性、抗冒名攻擊、抗重放攻擊、抗中間人攻擊等性質(zhì)。

 

混淆電路(Garbled Circuit ,GC)是指一參與方將安全多方計算協(xié)議的計算邏輯編譯成布爾電路,然后將布爾電路加密并打亂順序完成混淆操作,之后,該參與方將加密電路以及與其輸入相關(guān)的標(biāo)簽發(fā)送給另一參與方。另一方(作為接收方)通過不經(jīng)意傳輸(OT)按照其輸入選取標(biāo)簽,并在此基礎(chǔ)上對混淆電路進(jìn)行解密獲取計算結(jié)果。混淆電路可以解決通用的安全多方計算問題,但是效率和性能有待進(jìn)一步提升和優(yōu)化,以更好地滿足實際應(yīng)用的需求。

 

同態(tài)加密(Homomorphic Encryption,HE)是一種特殊加密算法。利用同態(tài)加密算法,對明文進(jìn)行某種計算再進(jìn)行同態(tài)加密,等價于對明文進(jìn)行同態(tài)加密再進(jìn)行相應(yīng)計算?;谕瑧B(tài)加密的這種特性,可以實現(xiàn)安全多方計算。首先,用戶方對自己的私密數(shù)據(jù)進(jìn)行同態(tài)加密后提供給計算方,然后計算方對經(jīng)過同態(tài)加密的密數(shù)據(jù)進(jìn)行相應(yīng)的計算。結(jié)果獲取方最后將加密數(shù)據(jù)的計算結(jié)果進(jìn)行同態(tài)解密,就得到了原始的基于私密數(shù)據(jù)的相應(yīng)計算。同態(tài)加密解密的特性也保證了計算結(jié)果的正確性和數(shù)據(jù)的隱私性。

 

SMC有哪些場景應(yīng)用

 

SMC的應(yīng)用是多方面的,SMC是解決云計算安全的關(guān)鍵技術(shù)之一。首先,可用于解決計算的安全性問題。例如,多方私密數(shù)據(jù)的計算(如資產(chǎn)價值求和),SMC可在不透露自己私密數(shù)據(jù)的情況下得出計算結(jié)果。SMC還可以進(jìn)行私密數(shù)據(jù)的排序、比較大小等。

 

此外,SMC還應(yīng)用于數(shù)據(jù)安全查詢、聯(lián)合數(shù)據(jù)分析、隱私求交、選舉投票等方面。數(shù)據(jù)安全查詢問題是安全多方計算的重要應(yīng)用領(lǐng)域。使用安全多方計算技術(shù),能保證數(shù)據(jù)查詢方僅得到查詢結(jié)果,但對數(shù)據(jù)庫其他記錄信息不可知。同時,擁有數(shù)據(jù)庫的一方,不知道用戶具體的查詢請求。

 

聯(lián)合數(shù)據(jù)分析中的隱私和安全性問題倍受關(guān)注。將安全多方計算技術(shù)引入傳統(tǒng)的數(shù)據(jù)分析領(lǐng)域,能夠解決安全性問題,其主要目的是改進(jìn)已有的數(shù)據(jù)分析算法,通過多方數(shù)據(jù)源協(xié)同分析計算,使得敏感數(shù)據(jù)不被泄露。

 

隱私求交(Private Set Intersection ,PSI)屬于安全多方計算領(lǐng)域的特定應(yīng)用問題,具有重要的理論意義和很強(qiáng)的應(yīng)用價值,PSI在近年來得到了極大的發(fā)展。PSI允許持有各自集合的兩方來共同計算兩個集合的交集,同時彼此不透露各自的完整集合。比如,當(dāng)集合是用戶的通訊錄(聯(lián)系人)時,通過PSI,得到兩個用戶的共同的聯(lián)系人,但同時不彼此透露非共有的聯(lián)系人。

 

基于SMC設(shè)計的選舉投票方案,統(tǒng)計方可以在不知道投票者投票內(nèi)容的前提下,對投票結(jié)果進(jìn)行統(tǒng)計,既保證了投票者的隱私安全,又能夠保證投票結(jié)果的公證。

 

海泰方圓愿與業(yè)界同仁一道,賦能共贏,推動安全多方計算在數(shù)據(jù)安全治理中發(fā)揮更大的價值。

售后在線客服

售前咨詢
010-59790009轉(zhuǎn)8055

售后服務(wù)
400-109-9696