999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種實用高效的安全多方排序協(xié)議

2018-10-24 08:34:38顧昊旻
計算機應(yīng)用與軟件 2018年10期
關(guān)鍵詞:排序

王 寧 顧昊旻 鄭 彤

1(國網(wǎng)河南省電力公司信息通信公司 河南 鄭州 450052)2(安徽繼遠軟件有限公司基礎(chǔ)運維分部 安徽 合肥 230088)

0 引 言

安全多方計算研究一組互不信任的參與方之間保護隱私的合作計算問題,最早由圖靈獎得主姚期智先生于1982年提出[1]。文獻[1]構(gòu)造了這樣一個問題(簡稱百萬富翁問題):兩個百萬富翁Alice和Bob在街頭相遇,其中Alice擁有財富a,Bob擁有財富b。他們希望在不泄露自身財富信息的前提下比較出他們誰更富有,即兩方秘密比較a和b的大小。此后,出現(xiàn)了很多解決百萬富翁問題的安全方案[2-3]。

安全多方排序問題是百萬富翁問題(兩方秘密比較)的自然推廣:假定有n個參與者P1,P2,…,Pn分別擁有隱私秘密x1,x2,…,xn(令X={x1,x2,…,xn}),他們希望在不泄露各自隱私秘密的前提下得到各自秘密在有序序列X′中的位置p(xi),其中X′是X中n個秘密按從小到大排序的序列。排序問題是計算機科學(xué)領(lǐng)域最為重要并得到廣泛研究的核心問題之一,它是求解許多復(fù)雜問題的基本構(gòu)成單元。同樣地,安全多方排序在保護用戶隱私的多方協(xié)作計算領(lǐng)域有著很重要的應(yīng)用價值,是很多復(fù)雜協(xié)議的基礎(chǔ)協(xié)議。例如,保護用戶隱私的電子投標和拍賣[4]、保護用戶隱私的在線電子交易[5]、保密數(shù)據(jù)庫查詢[6]等。

目前,國外對安全多方排序問題的研究成果并不多。在為數(shù)不多的研究成果中,多數(shù)作者采用了基于比較的排序思想,因而至少需要Ω(nlogn)次兩方秘密比較。例如,2011年,文獻[7]基于排序網(wǎng)絡(luò)提出了一個安全多方排序協(xié)議。該協(xié)議需要執(zhí)行O(log2n)輪,總的計算和通信開銷均為O(nlog2n)。文獻[8]提出了一個隨機化的安全希爾排序協(xié)議,以較高概率成功排序,需要執(zhí)行O(log2n)輪,通信和計算開銷均為O(nlogn)。同年,文獻[9]提出了兩個基于比較的常數(shù)階輪次的安全排序協(xié)議,其通信和計算復(fù)雜性均為O(Nn)或O(n2),其中N表示隱私秘密的范圍大小。文獻[10]基于快速排序提出了另一個有效的安全多方排序協(xié)議,需要執(zhí)行O(logn)輪,其中通信和計算開銷也均為O(nlogn)。

國內(nèi)也有一些很好的研究成果。2007年,劉文等[11]利用EIGamal密碼體制提出了一個安全多方多數(shù)據(jù)的排序協(xié)議,保證協(xié)議在常數(shù)輪的情形下,其通信復(fù)雜性為O(n2Nlgp),計算復(fù)雜性為O(nN+k1+k2+…+kn)lgp)。2009年,邱梅等[12]利用RSA密碼體制提出了另一個安全多方多數(shù)據(jù)排序協(xié)議,其原理與性能與文獻[11]相當(dāng)。2008年,李順東等[13]基于離散對數(shù)困難性假設(shè)提出了一個高效的安全多方排序協(xié)議,其通信和計算復(fù)雜性均為O(n)。同年,肖倩等[14]基于同態(tài)加密提出了兩種安全多方排序協(xié)議,繼而基于模糊貼近度提出了另一種高效的多方排序協(xié)議,其計算和通信復(fù)雜性均降為線性O(shè)(n)。但是文獻[13]和文獻[14]中的協(xié)議均需要O(n)輪,特別是這兩個協(xié)議均不是公平的協(xié)議,其中有一個特殊的參與者P1,他與某個(或幾個)參與者聯(lián)合可以很容易得到其他參與者的隱私秘密。

本文中,我們受文獻[15]中數(shù)據(jù)擴張的啟示,反過來,采用數(shù)據(jù)壓縮的思想,結(jié)合巧妙的編碼以及高效的安全多方求和方法,提出了一個新的安全多方排序協(xié)議。與已有協(xié)議相比,建議的協(xié)議很好地兼顧了安全性、有效性、公平性,因而更實用。

1 預(yù)備知識

1.1 線性時間排序

對于排序問題,有很多經(jīng)典的求解算法,例如:插入排序、快速排序、合并排序、堆排序等。以上這些均是基于比較的排序算法。基于比較的排序算法最壞情況下的時間復(fù)雜性的下界為Ω(nlogn)。當(dāng)然,也存在其他更有效的排序算法,例如計數(shù)排序和桶排序[16]。計數(shù)排序的基本思想是對每一個輸入元素x,確定出小于x的元素個數(shù)。有了這個信息就可把x直接放到它在最終輸出數(shù)組中的位置上。在下面的算法中假定n個輸入元素中的每一個都是介于1到k之間的整數(shù)。

算法1計數(shù)排序

輸入:數(shù)組A[n],k

//A[n]存放待排序的n個數(shù)

輸出:數(shù)組B[n]

//B[n]存放排序后的n個數(shù)

1. fori←1 tok

2. doC[i]←0

3. forj←1 ton

4. doC[A[j]]←C[A[j]]+1

//C[i]現(xiàn)在包含等于

//i的元素個數(shù)

5. fori←2 tok

6. doC[i]←C[i]+C[i-1]

//C[i]現(xiàn)在包含小于

//或等于i的元素個數(shù)

7. forj←ndownto 1

8. doB[C[A[j]]]←A[j]

9.C[A[j]]←C[A[j]]-1

若k=O(n),則計數(shù)排序的時間復(fù)雜性為O(n)。在上面計數(shù)排序算法中,最關(guān)鍵的兩個步驟分別是:計算等于i的元素個數(shù),存儲于C[i]中;計算小于或等于i的元素個數(shù),存儲于新的C[i]中(更新C[i])。對于算法1,若在第4步中調(diào)用安全多方求和算法計算C[i],并公開計算結(jié)果C[1]~C[n],后面各參與者可以根據(jù)自身的隱私輸入A[j],計算小于等于C[A[j]]的值,從而判定自己的秘密在整個秘密序列中的有序位置。經(jīng)過這樣修改的算法1實質(zhì)上就是一種安全多方排序算法,在計算時保證了各參與者的隱私輸入。即,借鑒計數(shù)排序的思想,對安全多方排序問題的求解自然就轉(zhuǎn)變?yōu)閷Π踩喾角蠛蛦栴}的求解。但遺憾的是,計數(shù)排序并不是普適的,而是有一定的適用條件(適用于秘密較小的情形)。

此外,桶排序也是一種高效的排序算法,平均情形下其時間復(fù)雜性也為O(n)。它的思想就是把待排序區(qū)間劃分成多個相同大小的子區(qū)間或稱桶,然后將n個輸入數(shù)分布到各個桶中去。為了得到有序序列,先對各個桶中的數(shù)進行排序,然后按次序把各桶中的元素列出來即可。

本文結(jié)合了計數(shù)排序和桶排的思想,引入高效的安全多方求和技術(shù)以及巧妙的編碼方法,設(shè)計了一個安全有效的多方排序算法。

1.2 Paillier同態(tài)加密

在后面的安全多方求和協(xié)議中,我們引入了Paillier同態(tài)加密算法,這里先對其作簡要介紹。在1999年歐密會上,法國數(shù)學(xué)家P.Paillier提出了一個概率公鑰加密方案[17](以下簡稱Paillier加密)。具體方案如下:

wλ(N)≡1modN

(1)

wNλ(N)≡1modN2

(2)

Paillier加密方案的安全基礎(chǔ)是基于“計算合數(shù)剩余類假設(shè)”[17-19]定義函數(shù)εg:

(3)

另外Paillier加密方案具有加法同態(tài)性質(zhì),即給定明文m1、m2,有:

gm1+m2(r1·r2)NmodN2(令r=r1·r2)=

E(m1+m2)

(4)

2 提出協(xié)議

實現(xiàn)思想:

1) 避免基于比較的排序方法,借鑒計數(shù)排序和桶排序的思想,所有參與者執(zhí)行一次安全多方求和協(xié)議,計算小于各自秘密的秘密個數(shù),從而確定各自秘密x在整個有序序列中應(yīng)處的位置p(x)。

2) 為了提高效率,參與者先對各自的秘密x壓縮得到x′,要求p(x)=p(x′)。

3) 進而對新秘密x′排序:在新秘密序列中統(tǒng)計小于各自新秘密的秘密個數(shù)l(x′)(l(x)=l(x′)。

4) 最終各參與者輸出p(x)=l(x)+1,即各自秘密在有序序列中對應(yīng)的位置。

協(xié)議1基于安全多方求和的安全多方排序

輸入:各參與者Pi隱私輸入秘密xi;

//假定各個參與者的秘密各不相同,且xi∈ZN。

輸出:各參與者Pi輸出p(xi);

//即秘密xi在有序序列中對應(yīng)的位置。

(1) 所有參與者隨機選擇一個小整數(shù)m。

//m是一個小整數(shù),例如m=2,3,5。

(1) 參與者計算d=└logmN┘ /k,其中k為劃分的桶的個數(shù),而d為每個桶的區(qū)間大小。

(2) 把整個待排序空間劃分為k個區(qū)間(即k個桶),分別為(0,d],(d,2d],…,((k-1)d,└logmN┘]。

下面舉例說明,假定有4個參與者:P1、P2、P3、P4,且假定他們各自的隱私秘密為32、2 216、15、354。即P1擁有32,P2擁有2 216,P3擁有15,P4擁有354。他們希望在保證各自隱私的前提下,實施安全的排序。

其次,所有參與方公開計算并確定兩個用于劃分桶的參數(shù)d、k。這里假定d=3、k=4,則四個桶對應(yīng)四個區(qū)間(0,3]、(3,6]、(6,9]、(9,12]。因而5、11、3、8分別轉(zhuǎn)換為向量(0,1,0,0)T、(0,0,0,1)T、(1,0,0,0)T、(0,0,1,0)T。這樣對5、11、3、8的安全排序就轉(zhuǎn)變?yōu)閷ο蛄?0,1,0,0)T、(0,0,0,1)T、(1,0,0,0)T、(0,0,1,0)T的安全多方求和。每個參與方,根據(jù)5進制(n+1進制)的編碼方式,把各自的隱私向量轉(zhuǎn)變?yōu)橐粋€小整數(shù)。這里,(0,1,0,0)T對應(yīng)52=25,(0,0,0,1)T對應(yīng)50=1,(1,0,0,0)T對應(yīng)53=125,(0,0,1,0)T對應(yīng)51=5。最后,指定一個代理協(xié)助所有參與者執(zhí)行一個安全多方求和協(xié)議(見協(xié)議2),安全計算4個小整數(shù)的和25+1+125+5=156,再由代理把累加和156逆變換為5進制向量(1,1,1,1)T,并向所有參與者公開(1,1,1,1)T。

實際上(1,1,1,1)T=(0,1,0,0)T+(0,0,0,1)T+(1,0,0,0)T+(0,0,1,0)T。各參與者根據(jù)公開向量和(1,1,1,1)T及各自隱私向量,統(tǒng)計小于各自秘密的秘密個數(shù),從而推算出原始秘密在整個有序序列中所應(yīng)處的位置。P1得到l(5)=1,因而P1的秘密處于第2的位置;P2得到l(11)=3,因而P2的秘密處于第4的位置;P3得到l(3)=0,因而P3的秘密處于第1的位置;P4得到l(8)=2,因而P4的秘密處于第3的位置。實際上3<5<8<11,對應(yīng)著15< 32<354<2 216。

協(xié)議2小整數(shù)的安全多方求和

輸入:各參與者Pi隱私輸入秘密xi;

1) 每個參與者Pi(1≤i≤n)隨機生成k個整數(shù)ai,1,ai,2,…,ai,k,其中k≤(n-1)/2,k的具體值可由Pi確定,而ai,j∈[0,p0](1≤j≤k)。接著參與者Pi隨機選取k個其他參與者,假定為{Pi1,Pi2,…,Pik}。Pi分別計算gp0-ai,jmodN2,并把gp0-ai,jmodN2秘密發(fā)送給參與者Pij(1≤j≤k)。

3) 收到其他所有參與者的秘密消息gp0-ai,jmodN2或gp0+ai,jmodN2后,每個參與者Pj(1≤j≤n)計算收到的所有秘密消息的乘積Gj。例如Pj分別收到P1、P3、P5的秘密消息gp0-a1,jmodN2、gp0+a3,jmodN2、gp0-a5,jmodN2,則Pj計算Gj=gp0-a1,jgp0+a3,jgp0-a5,jmodN2。

正確性證明:

(gp0+aj,1gp0+aj,2…gp0+aj,k)]}modN2=

(5)

3 協(xié)議分析

對于任意的秘密xi和xj,有以下定理1成立。進而,對于任意的不同秘密xi和xj,有以下定理2成立。

定理1假定參與者Pi、Pj的隱私輸入分別為xi、xj,則有:

其中xi=xj的概率為1/(m└logmxi┘+1-m└logmxi┘),反之xi≠xj的概率為1-1/(m└logmxi┘+1-m└logmxi┘)。

[(N-m└logmN┘)(N-m└logmN┘-1)]=

(6)

(7)

若N=ms(其中m為小整數(shù)),則:

(8)

協(xié)議1中,若選擇一個隨機的m并執(zhí)行秘密排序1次,各參與者的輸出結(jié)果可能不是正確解,而是近似解,其最大誤差為所屬桶內(nèi)的秘密個數(shù)。顯然,當(dāng)xi所在桶內(nèi)只有一個秘密時,計算得到的l(xi)是正確的,從而p(xi)是正確的。實際上根據(jù)累加向量和,參與者可以判斷自己獲得的解p(xi)是否正確。為了提高精度,可以通過協(xié)議1的多次執(zhí)行(即重新選擇m重新計算p(xi)),各參與者總能得到正確的輸出。此外,協(xié)議1也適宜于每個參與者擁有多個秘密的情形。與單個秘密情形有所不同的僅僅是“在協(xié)議1的第2步中的第3小步驟中,根據(jù)公開劃分的桶,每方將得到一個多個分量為1(對應(yīng)多個秘密)的0/1向量”,其他計算步驟不變。

定理4在半誠實模型下,協(xié)議2是安全的。

表1 各主流協(xié)議的比較

由表1可知,與其他主流協(xié)議相比,我們的協(xié)議整體性能占勢:計算開銷相對較低,主要操作為模冪運算,其他的加法、整數(shù)與向量轉(zhuǎn)換等操作均為輕量級可忽略不計。總的通信帶寬相對較低,主要用于小整數(shù)的安全多方求和,特別地保證了協(xié)議的公平性,而且沒有秘密泄露。

4 結(jié) 語

避免傳統(tǒng)的基于比較的排序方法,借助計數(shù)排序和桶排序的思想,把安全多方排序歸約為安全多方求和。結(jié)合一種巧妙的編碼方法,設(shè)計了一個安全、高效的多方排序協(xié)議。盡管安全和效率是一對矛盾體,但建議的協(xié)議使用靈活,可以根據(jù)安全等級,動態(tài)調(diào)整相應(yīng)的安全策略。安全性高的,通信代價也相應(yīng)高,上限為O(n2);反之,通信代價低,理論上可達O(n)。與主流協(xié)議相比,綜合性能優(yōu),保證了協(xié)議的公平性,能夠在常數(shù)輪內(nèi)有效實現(xiàn)。此外,能夠滿足參與者擁有多個隱私秘密的排序情形。因而建議的協(xié)議有著很好的應(yīng)用前景,特別地,可作為基礎(chǔ)協(xié)議應(yīng)用于分布式網(wǎng)絡(luò)環(huán)境下保護用戶隱私的多方協(xié)作計算中。

猜你喜歡
排序
排排序
排序不等式
作者簡介
名家名作(2021年9期)2021-10-08 01:31:36
作者簡介
名家名作(2021年4期)2021-05-12 09:40:02
作者簡介(按文章先后排序)
名家名作(2021年3期)2021-04-07 06:42:16
恐怖排序
律句填空排序題的備考策略
節(jié)日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
作者簡介(按文章先后排序)
名家名作(2017年2期)2017-08-30 01:34:24
主站蜘蛛池模板: 亚洲精品在线91| 久久夜色精品| 中文字幕第4页| 美女被躁出白浆视频播放| 在线观看热码亚洲av每日更新| 久久福利网| 在线国产资源| 都市激情亚洲综合久久| 秋霞国产在线| 国产高清精品在线91| 午夜老司机永久免费看片 | 国产欧美日韩va另类在线播放| 成人91在线| 热九九精品| 69综合网| 91探花在线观看国产最新| 一本二本三本不卡无码| 亚洲国产中文精品va在线播放 | 亚洲人在线| 免费无码网站| 国产在线观看第二页| 精品中文字幕一区在线| 国产天天射| 日韩欧美中文亚洲高清在线| 国产真实乱人视频| 99精品伊人久久久大香线蕉 | 日韩不卡高清视频| 浮力影院国产第一页| 国产毛片高清一级国语| 黄色网在线免费观看| 亚洲国产精品久久久久秋霞影院 | 午夜啪啪福利| 91成人在线观看| 啊嗯不日本网站| 香蕉久人久人青草青草| 国模在线视频一区二区三区| 久久久久久久97| 18禁不卡免费网站| 国产区免费精品视频| 日本精品中文字幕在线不卡| 中文字幕1区2区| 国产亚洲一区二区三区在线| 国产国产人免费视频成18| 免费毛片全部不收费的| swag国产精品| 国产精品免费电影| 色悠久久综合| 97久久免费视频| 青草娱乐极品免费视频| 伊人成色综合网| 欧美一级高清免费a| 日韩第九页| 婷婷六月综合网| 五月天综合婷婷| 日本国产在线| 国产欧美精品午夜在线播放| 无码中文字幕精品推荐| 国产91麻豆视频| 亚洲嫩模喷白浆| 免费一级成人毛片| 国产成人亚洲无码淙合青草| 99这里只有精品6| 亚洲欧美日韩中文字幕在线| 91九色国产porny| 久久狠狠色噜噜狠狠狠狠97视色 | 亚洲一区二区三区香蕉| 国产永久免费视频m3u8| 欧美α片免费观看| 欧美影院久久| 99热国产这里只有精品9九| 精品午夜国产福利观看| 国产真实乱人视频| 久草热视频在线| 国产真实乱人视频| 国产免费观看av大片的网站| 日韩小视频网站hq| 青青操国产| 中文精品久久久久国产网址| 久久伊人操| 欧美日韩v| 亚洲 日韩 激情 无码 中出| 国产日韩欧美在线播放|