應(yīng)臣浩 夏福源 李 頡,2,3 斯雪明,2,3 駱 源,2,3
1(上海交通大學(xué)計算機科學(xué)與工程系 上海 200240) 2(上海交通大學(xué)區(qū)塊鏈研究中心 上海 200240) 3(無錫市區(qū)塊鏈高等研究中心 江蘇無錫 214000)
隨著大數(shù)據(jù)、人工智能技術(shù)、5G通信技術(shù)的高速發(fā)展,人們開始進入一個萬物互聯(lián)的物聯(lián)網(wǎng)時代.根據(jù)華為《華為全球產(chǎn)業(yè)展望 GIV 2025》所述,到2025年,全球?qū)⒂? 000億臺可以智能互聯(lián)的設(shè)備,同時個人智能移動終端數(shù)量將達到400億,智能家居及其他可穿戴設(shè)備數(shù)量將達到210億,其中智能手機數(shù)量將達到80億,平板和個人電腦數(shù)量將達到30億,各類可穿戴設(shè)備數(shù)量將達到80億.90%的人群將擁有個人智能助理,12%的家庭將享有智能服務(wù)機器人,20%的人將擁有10個以上的智能終端,平均每個人將擁有5個智能終端.各類數(shù)據(jù)利用率將劇增至80%,全球每年產(chǎn)生的數(shù)據(jù)將從2015年的8 ZB增長到1 800 ZB,而且全球人均日通信流量將達到4 GB,同時,人均日移動通信流量將達到1 GB.面對如此龐大的數(shù)據(jù)量,利用可持續(xù)和成本低廉的數(shù)據(jù)感知和收集方案變得越來越重要.群智感知系統(tǒng)[1-4]在此需求下應(yīng)運而生,該系統(tǒng)利用人們擁有的無處不在的智能移動設(shè)備(如智能手機、可穿戴設(shè)備、智能車輛等)中嵌入的傳感器(如照相機、陀螺儀等)來獲取各種各樣的數(shù)據(jù)[5-8],并將收集到的數(shù)據(jù)傳給遠程數(shù)據(jù)中心進行處理[9-11].
目前,群智感知系統(tǒng)已經(jīng)成為了一種極具吸引力的大規(guī)模數(shù)據(jù)收集與分析的模式,為面積廣袤、人流擁擠地區(qū)的信息收集提供了有效的解決方案[12-14].該系統(tǒng)強大而有效的數(shù)據(jù)收集能力使其成為現(xiàn)代智慧城市不可或缺的組成部分[15].此外,當(dāng)前嵌入在可穿戴設(shè)備和智能手機中的各種傳感器,使群智感知系統(tǒng)在學(xué)術(shù)界和工業(yè)界獲得了相當(dāng)大的關(guān)注,并被應(yīng)用于環(huán)境監(jiān)控[16]、智能交通[17]、智能車輛網(wǎng)絡(luò)[18]、社交應(yīng)用[19]、健康監(jiān)測[20]以及其他許多方面[21-23].目前主流的群智感知系統(tǒng)有Mechanical Turk,Upwork,BikeNet和Uber等.
Fig.1 Blockchain-based mobile crowd sensing systems
盡管最近移動設(shè)備的普及推動了群智感知系統(tǒng)的大范圍普及,但由于集中式平臺和移動用戶之間的大量數(shù)據(jù)處理操作和頻繁的通信,此類系統(tǒng)會導(dǎo)致網(wǎng)絡(luò)擁塞和嚴(yán)重延遲[24].不僅如此,由于移動用戶參與群智感知系統(tǒng)會產(chǎn)生花費,所以需要設(shè)計激勵機制來激勵移動用戶加入到該系統(tǒng)中[25],但是在該群智感知系統(tǒng)中,激勵機制的實施依賴于一個可信的第三方,然而在實際應(yīng)用中,這樣一個可信第三方會帶來許多新的問題:1)平臺的功能可能會受到參與的移動用戶或外部攻擊者的損害[26];2)該平臺可能不穩(wěn)定[27];3)增加了大規(guī)模隱私泄露的風(fēng)險[28].
最近,區(qū)塊鏈作為一種分布式賬本[29-31],以其去中心化、安全、透明、不可篡改等優(yōu)越功能,被廣泛應(yīng)用于各種領(lǐng)域.同時,區(qū)塊鏈中設(shè)置的智能合約[32]可以高效、準(zhǔn)確、快捷地實現(xiàn)各種復(fù)雜的交易和功能[33-34].因此,本文利用區(qū)塊鏈的智能合約,建立一類如圖1所示的區(qū)塊鏈群智感知系統(tǒng)中基于隱私保護數(shù)據(jù)真值估計的用戶激勵機制.該機制由數(shù)據(jù)真值估計模塊和移動用戶激勵模塊共同組成,該機制能夠有效提高數(shù)據(jù)真值估計的準(zhǔn)確度,并能夠激勵更多的移動用戶參與到該系統(tǒng)中.
本文的主要貢獻有3個方面:
1)機制設(shè)計.本文的第1個貢獻是利用全同態(tài)加密算法構(gòu)建了一類區(qū)塊鏈群智感知系統(tǒng)中基于隱私保護數(shù)據(jù)真值估計的用戶激勵機制.該機制由數(shù)據(jù)真值估計模塊(PATD)和參與者激勵模塊(PFPI)組成,能夠?qū)崿F(xiàn)高準(zhǔn)確度的數(shù)據(jù)真值估計和參與者激勵.據(jù)調(diào)研所知,本文嘗試在全同態(tài)加密狀態(tài)下實現(xiàn)具有數(shù)據(jù)真值估計功能的用戶激勵機制.與傳統(tǒng)的機制不同,本文所提機制需要克服移動用戶自私屬性,提高數(shù)據(jù)真值估計的準(zhǔn)確性,同時要保證全同態(tài)加密狀態(tài)下機制運行的速率.從實驗中可以看到,PATD的數(shù)據(jù)真值估計準(zhǔn)確度相較于已有的方法提高了至少33%,而PFPI達到的社會福利相較于已有的方法提高了至少21%.同時,當(dāng)系統(tǒng)具有128個數(shù)據(jù)感知任務(wù)時,整個系統(tǒng)的運行時間約為300 s,且通過不同的參數(shù)選擇,還可以進一步加快機制運行速度,這表明該機制可被應(yīng)用于實際的場景.
2)真值估計.本文的第2個貢獻是實現(xiàn)了全同態(tài)加密狀態(tài)下的數(shù)據(jù)真值估計,在保證真值估計的準(zhǔn)確度和機制運行速度的同時,保護了用戶的數(shù)據(jù)隱私.由于數(shù)據(jù)采集設(shè)備精確度不夠等原因,用戶收集的數(shù)據(jù)往往具有噪聲,因此PATD對用戶提交的含有噪聲的數(shù)據(jù)的加密結(jié)果進行計算,并將解密后的計算結(jié)果作為相應(yīng)數(shù)據(jù)真值的估計.因為所用的數(shù)據(jù)均是加密的,因此可以保護用戶數(shù)據(jù)隱私,該性質(zhì)在定理3中給出.同時,該機制還可以保證解密后的估計值具有較高的估計精度,可以從定理1中看到,估計誤差呈指數(shù)衰減.就本文作者所知,CKKS是目前性能最好、計算速度最快的同態(tài)加密方案[35],且該方案被ZAMA所應(yīng)用并進行了適當(dāng)?shù)母倪M[36].
3)用戶激勵.本文的第3個貢獻是在全同態(tài)狀態(tài)下保證數(shù)據(jù)真值估計準(zhǔn)確性的同時實現(xiàn)了移動用戶的激勵.PFPI同樣利用CKKS方案實現(xiàn)了競價加密狀態(tài)下用戶激勵,同時還從理論上證明了其滿足真實性和個體合理性,并可以達到較高的社會福利,可以從定理2看到,PFPI在社會福利上達到了2的近似度,同時可以從定理4得到,PFPI可以保護用戶競價的隱私.
目前,已有基于區(qū)塊鏈的群智感知系統(tǒng),它們利用區(qū)塊鏈去中心化、安全、透明的性能構(gòu)建了數(shù)據(jù)真值估計機制和移動用戶激勵機制,分別實現(xiàn)了高效的性能表現(xiàn),但是這些機制都是分開來建立的,即只建立了數(shù)據(jù)真值估計機制或者只建立了移動用戶激勵機制.由這些機制組成的數(shù)據(jù)收集機制往往很難在實際的系統(tǒng)中實現(xiàn)較好的表現(xiàn).接下來,我們將分別介紹基于區(qū)塊鏈的數(shù)據(jù)真值估計機制和用戶激勵機制.
Tian等人[37]提出了一個分布式數(shù)據(jù)真值估計機制,該機制可以有效地保護用戶數(shù)據(jù)的隱私.該機制將數(shù)據(jù)融合和處理任務(wù)委托給分布式的參與者,通過利用區(qū)塊鏈中的智能合約技術(shù)來執(zhí)行和驗證其行為.同時,由于區(qū)塊鏈缺乏對鏈上數(shù)據(jù)保密性的支持,它們利用隱私保護解決方案防止數(shù)據(jù)泄露.此外,鑒于它們框架的去中心化性質(zhì),使得該框架還克服了單點故障的限制,增加了系統(tǒng)的穩(wěn)定性.但是,該機制對數(shù)據(jù)隱私的保護是通過對原始數(shù)據(jù)加入高斯噪聲實現(xiàn)的,由于無法消除高斯噪聲對真值估計的影響,雖然在理論上可以證明其具有一定的真值估計準(zhǔn)確度,但是在實際操作時往往無法達到很好的效果.
Wu等人[38]提出了一個基于區(qū)塊鏈的數(shù)據(jù)真值估計機制,該機制可以提供可靠的數(shù)據(jù)真值.為了減輕惡意參與者的影響,該機制集成了一種具有隱私保護的感知驗證協(xié)議.通過該協(xié)議,一些數(shù)據(jù)參與者可以在不知道任何數(shù)據(jù)的情況下協(xié)作驗證真值估計結(jié)果.同時,該機制還可以通過經(jīng)濟激勵,促使移動用戶誠實地參與到群智感知系統(tǒng)中.但是該系統(tǒng)使用的是加法同態(tài)加密方案,由于該方案的局限性,使其無法保證數(shù)據(jù)真值估計的準(zhǔn)確度.不僅如此,該機制在移動用戶激勵中,無法保護用戶的隱私信息.
Huang等人[39]通過區(qū)塊鏈中的智能合約提出了一個基于完整信息動態(tài)博弈的激勵機制,該機制利用完全信息的Stackelberg博弈來對用戶數(shù)據(jù)進行選擇,平臺和移動用戶都是根據(jù)對方可能的策略來選擇自己的策略以保證自己在對方策略下的利益最大化,從而達到納什均衡.該博弈具有唯一納什平衡點,并應(yīng)用基于區(qū)塊鏈的同態(tài)水印技術(shù)來保護數(shù)據(jù)版權(quán).但是該機制無法在用戶激勵過程中保護它們的隱私,所以無法在實際系統(tǒng)中取得很好的效果.
Zhang等人[40]提出了一種新穎的隱私保護和可靠的車輛移動群智感知系統(tǒng).該機制包含一種具有隱私保護的車輛數(shù)據(jù)聚合方案,以保護參與車輛與感知數(shù)據(jù)之間的數(shù)據(jù)隱私和不可鏈接性.此外,還包括2個協(xié)議來保護數(shù)據(jù)隱私并為移動用戶提供公平的回報.該系統(tǒng)實現(xiàn)了隱私保護、可靠性和公平性,且具有較高的計算和通信效率.但是該系統(tǒng)依據(jù)的同樣是加法同態(tài)加密方案,所以無法實現(xiàn)在用戶激勵階段的隱私保護.
Xie等人[41]提出了一種新穎的基于名譽激勵的無人機輔助移動群智感知框架.該框架利用名譽激勵方案來選擇具有高名譽的無人機來執(zhí)行數(shù)據(jù)感知任務(wù),從而保護無人機和任務(wù)發(fā)布者之間的數(shù)據(jù)共享免受內(nèi)部資源不足的無人機攻擊.同時,該框架利用一種基于區(qū)塊鏈的數(shù)據(jù)安全傳輸方案安全地記錄無人機的數(shù)據(jù)交易.此外,由于資源有限的無人機難以執(zhí)行計算密集型挖礦任務(wù),因此結(jié)合邊緣計算以增加區(qū)塊創(chuàng)建的成功概率.無人機與邊緣計算提供者之間的交互被建模為Stackelberg 博弈,以激勵無人機參與區(qū)塊創(chuàng)建過程,同時提供高質(zhì)量的服務(wù),在該博弈中,無人機和平臺根據(jù)對方可能的策略來選擇策略以保證自己在對方策略下的利益最大化,從而達到納什均衡.但是與之前的機制類似,該框架只保護了無人機傳輸數(shù)據(jù)的隱私安全,但是并沒有考慮用戶激勵過程中的隱私保護.
本節(jié)分別介紹系統(tǒng)概述、數(shù)據(jù)真值估計、激勵模型、同態(tài)加密方案和攻擊模型.
本文考慮一個基于區(qū)塊鏈的群智感知系統(tǒng),系統(tǒng)組成部分包括:智能合約、一個加密服務(wù)中心、一個數(shù)據(jù)收集者集合W={w1,w2,…,wm}、一個數(shù)據(jù)需求者集合R={r1,r2,…,rn}和感知任務(wù)需求集合T={τ1,τ2,…,τn},其中每個需求者ri的任務(wù)需求為τi.這些感知任務(wù)需要一些數(shù)據(jù)收集者在本地利用智能設(shè)備進行數(shù)據(jù)收集,然后將感知數(shù)據(jù)通過區(qū)塊鏈發(fā)送給相應(yīng)的需求者,其中,用戶wj對于任務(wù)τi的感知數(shù)據(jù)表示為mi,j.為了消除每個移動用戶設(shè)備差異帶來的數(shù)據(jù)誤差,對于每一個任務(wù)τi,智能合約會聚合相關(guān)收集者的數(shù)據(jù)以計算一個數(shù)據(jù)融合結(jié)果mi,該結(jié)果被視為任務(wù)τi的真值m*i的估計,其中m*i對參與者和數(shù)據(jù)收集者而言是未知的.因為智能合約是公開可見的,所以為了防止隱私信息在智能合約進行一些相關(guān)操作時泄露,每個數(shù)據(jù)需求者和數(shù)據(jù)收集者借助加密服務(wù)中心加密他們的信息(包括收集到的數(shù)據(jù)、上報的競價),其中加密服務(wù)服務(wù)中心也是不可信任的,因此也需要防止中心對信息的竊取.圖2所示為本文所提的基于區(qū)塊鏈的群智感知系統(tǒng)中數(shù)據(jù)收集框架的工作流程.為了方便,表1列了一些重要的符號解釋.
Fig.2 Workflow of data collection mechanism for blockchain-based mobile crowd sensing systems
Table 1 Description of Some Important Symbols
5)報酬收集.最后,智能合約向獲勝的需求者ri收取費用pri(步驟)),并向被獲勝的收集者wj支付報酬pwj(步驟)).
為了消除由于數(shù)據(jù)收集者設(shè)備差異帶來的數(shù)據(jù)誤差,對于每個任務(wù),智能合約利用數(shù)據(jù)收集者的數(shù)據(jù)估計數(shù)據(jù)真值.因此,與已有的工作類似,本文也采用了Jin等人在文獻[42]中提出的數(shù)據(jù)真值估計機制.為簡便起見,在算法1中描述了相應(yīng)的算法.需要注意的是,本文主要關(guān)注的是連續(xù)任務(wù),而離散任務(wù)的真值估計則省略了,但是它可以用類似的方法獲得.
算法1.數(shù)據(jù)真值估計算法.
輸入:獲勝需求者選擇集合SR和對應(yīng)的獲勝收集者集合SWi,其中i:ri∈SR,每個任務(wù)τi的閾值參數(shù)αi,每個獲勝收集者wj對于任務(wù)τi的置信度θi,j和收集的數(shù)據(jù)mi,j;
輸出:每個獲勝數(shù)據(jù)需求者ri的任務(wù)τi的數(shù)據(jù)真值的估計值mi.
/*智能合約的操作*/
for 獲勝需求者ri∈SR的任務(wù)τi∈Γdo
① 計算:
end for
如算法1所示,智能合約利用如下公式計算需求者ri的連續(xù)任務(wù)τi真值的估計值:
(1)
定義1.收集者wj對于一個連續(xù)任務(wù)τi∈Γ的置信水平θi,j為
θi,j=E[|Mi,j-m*i|]∈[0,1],
(2)
其中數(shù)學(xué)期望是由于Mi,j的隨機性.
此外,作為一個數(shù)據(jù)真值的估計需要具有較高的準(zhǔn)確度.因此,定義2給出了連續(xù)任務(wù)(α,γ)-準(zhǔn)確度的概念.
定義2.對于范圍[0,1]內(nèi)的2個隨機變量Y1和Y2,當(dāng)Pr[|Y1-Y2|≥α]≤γ時,我們稱Y1對Y2是(α,γ)-準(zhǔn)確的,其中α,γ∈(0,1).
這意味著一旦數(shù)據(jù)估計值和真值滿足定義2,則它們有很高概率是相當(dāng)接近的.
數(shù)據(jù)收集者和數(shù)據(jù)請求者都是自私的,因此都希望最大化她們各自的收益.為了激勵更多參與者加入到系統(tǒng)中,本文采用了類似于Jin等人在文獻[43]中的雙邊激勵模型,其定義如下.
對于任務(wù)τi,當(dāng)需求者ri∈R能夠獲得的價值為vi,需求者wj∈W的實際開銷為ci,j時,需求者ri的對應(yīng)收益為
(3)
收集者wj的對應(yīng)收益為
(4)
此外,智能合約的收益可以表示為
(5)
除了真實性,為了激勵更多的參與者,設(shè)計的激勵模塊還需要滿足個體合理性,具體定義如下.
定義5.如果需求者ri和收集者wj的收益分別滿足uri>0和uwj>0,激勵模型滿足雙邊個體合理性.
定義6.基于區(qū)塊鏈的群智感知系統(tǒng)的社會福利定義為
(6)
每個數(shù)據(jù)收集者和數(shù)據(jù)需求者的信息(例如,收集的數(shù)據(jù)和提交的競價)可能會被其他參與者竊聽.因此,本文采用Cheon等人在文獻[44]中提出的同態(tài)加密方案CKKS來保護它們的隱私.作為同態(tài)加密方案,CKKS支持實數(shù)和復(fù)數(shù)的近似計算.算法如下,其中為實數(shù)域,為復(fù)數(shù)域.
1)密鑰生成操作KeyGen(L,1λ)
① 給定一個深度參數(shù)L和一個安全參數(shù)λ,算法選擇一個2的冪整數(shù)N并設(shè)置密文的模值q=q0×p,其中1≤≤L,q0>0,p>0.q0是一個基本模數(shù),p是一個底數(shù),二者都是整數(shù).
② 密鑰分布χkey、誤差分布χerr和加密分布χenc都在R[X]/(XN-1)多項式環(huán)上設(shè)置,其中是整數(shù)環(huán).
③ 算法選取一個密鑰參數(shù)s←χkey并設(shè)置密鑰為sk←(1,s).
2)加密操作Enc(pk,m)
①H={z∈其中N為z∈N的共軛.在通過簡單地復(fù)制明文m獲取后,算法的加密操作利用同構(gòu)映射π:H→N/2計算在這之后,該算法進一步計算一個消息多項式
注意,CKKS的加密過程引入了一個誤差,因此它的解密值與輸入值不完全相同.下面將介紹相應(yīng)的同態(tài)運算,包括加法、乘法、標(biāo)量乘法和縮放.
與之前在具有隱私保護的數(shù)據(jù)真值估計方面的工作類似,我們的安全目標(biāo)是確保在整個數(shù)據(jù)真值估計過程中,數(shù)據(jù)收集者和數(shù)據(jù)需求者的競價以及獲勝收集者提交的數(shù)據(jù)受到保護,隱私信息不會被其他參與者獲取.事實上,智能合約對于所有參與者是公開透明的,因此其他參與者可能通過竊聽智能合約得到需求者和收集者的隱私信息,同時加密服務(wù)中心也是誠實但是好奇的,這意味著,加密服務(wù)中心能夠誠實地遵循預(yù)先設(shè)計的通信協(xié)議,但也試圖通過機制執(zhí)行過程中收到的智能合約發(fā)送的信息推斷參與者提交的競價和感知數(shù)據(jù).此外,所有其他數(shù)據(jù)收集者和數(shù)據(jù)需求者也誠實地遵循預(yù)先設(shè)計的通信協(xié)議,但是,他們也都對其他參與者提交的競價和數(shù)據(jù)感到好奇.遵循現(xiàn)有工作中的類似假設(shè),我們假設(shè)加密服務(wù)中心和其他參與者之間不存在共謀.特別注意,在機制執(zhí)行過程中,加密服務(wù)中心不會主動對智能合約進行竊聽并對加密數(shù)據(jù)進行解密,只會從智能合約發(fā)來的信息中推斷參與者隱私信息.
需要注意的是,檢測那些提交無效數(shù)據(jù)和競價來故意破壞系統(tǒng)的惡意數(shù)據(jù)收集者和數(shù)據(jù)需求者并不是本文研究的內(nèi)容.請注意,在本文提出的數(shù)據(jù)收集框架中,可以使用安全傳輸協(xié)議,例如SSL來驗證不同參與方之間的通信.
基于區(qū)塊鏈的群智感知系統(tǒng)中數(shù)據(jù)收集框架由2部分組成,本節(jié)將詳細介紹具有隱私保護的數(shù)據(jù)真值估計模塊.
由于數(shù)據(jù)采集設(shè)備內(nèi)部的各個器件本身尺寸具有誤差,以及不同數(shù)據(jù)采集應(yīng)用之間存在差異,移動用戶利用不同設(shè)備不同應(yīng)用對同一個任務(wù)采集到的數(shù)據(jù)往往帶有噪聲,即彼此數(shù)據(jù)并不相同.因此,為了能夠準(zhǔn)確得到數(shù)據(jù)的真值,需要利用收集到的大量用戶數(shù)據(jù)進行真值估計.實際上,真值估計機制的設(shè)計是移動群智感知系統(tǒng)中一個重要的研究方向[1,8,12].
移動用戶提交的數(shù)據(jù)往往含有用戶的隱私信息,雖然因為設(shè)備和應(yīng)用自身的差異使得采集到的數(shù)據(jù)具有噪聲,但是這些噪聲較為微小,因此這些數(shù)據(jù)雖然各不相同,但卻都在一個較小的范圍波動.得到這些數(shù)據(jù)后,仍然可以推測用戶的隱私信息.例如測量移動用戶所在地中午12點的氣溫,雖然測得的數(shù)據(jù)含有噪聲,但是溫度數(shù)據(jù)僅在很小的范圍波動,因此可以利用這些數(shù)據(jù)推測用戶所在地的一些信息.甚至有時候因為用戶設(shè)備所帶來的噪聲,也會導(dǎo)致用戶隱私泄露.例如用不同的手機拍攝同一個物品,因為設(shè)備的不同,照片的色溫等參數(shù)可能不同.在得到這些照片后,可以從這些差別中分析用戶使用的設(shè)備品牌.因此在利用用戶采集的數(shù)據(jù)進行真值估計的同時,還需要保護用戶的隱私信息,防止隱私泄露.為此本文利用全同態(tài)加密算法設(shè)計了數(shù)據(jù)真值估計機制,該機制在保護用戶隱私的同時,具有較高的估計準(zhǔn)確度.
為防止隱私泄露,數(shù)據(jù)真值估計模塊利用了CKKS同態(tài)加密方案對每個數(shù)據(jù)收集者和數(shù)據(jù)需求者提交的信息(包括競價和感知數(shù)據(jù))進行加密.利用式(1)對加密數(shù)據(jù)的真值進行估計,具有隱私保護的數(shù)據(jù)真值估計模塊(PATD)的工作方式如下:
算法2.具有隱私保護的數(shù)據(jù)真值估計算法.
輸出:每個獲勝數(shù)據(jù)需求者ri的任務(wù)τi數(shù)據(jù)的真值的估計值mi.
/*智能合約的操作*/
for 獲勝需求者ri∈SR的任務(wù)τi∈Tdo
for 獲勝收集者wj∈SWido
end for
④ 利用縮放操作Res(·,·)計算
(modq);
for 獲勝收集者wj∈SWido
⑤ 利用加法操作Add(·,·)計算
end for
end for
與其他已有的數(shù)據(jù)真值估計的工作類似,本節(jié)也分析了PATD模塊的估計準(zhǔn)確性.因為所用的CKKS同態(tài)加密方案是一個近似計算方案,所以需要設(shè)計參數(shù)來消除近似誤差,為此有下面的引理.
(7)
證畢.
雖然如引理1所示,乘法操作、縮放操作和加法操作引入了一些噪聲,但一些工作證明了解密后的值仍然確保較高的精度.為此,下面的定理分析PATD模塊的準(zhǔn)確性.
Pr[|Mi-εi-m*i|≥αi]≤
此外,當(dāng)
(8)
時,所提模塊是(αi,γi)-準(zhǔn)確的,也就是說對于誤差滿足Pr[|Mi-εi-m*i|≥αi]≤γi,其中εi是由CKKS加密方案引起的誤差,m*i是任務(wù)τi的數(shù)據(jù)真值,Mi是隨機變量,表示數(shù)據(jù)的估計值.
證明.為方便起見,需求者ri的任務(wù)τi的融合結(jié)果可以表示為
(9)
由于收集者wj關(guān)于每個任務(wù)τi的數(shù)據(jù)在該任務(wù)被執(zhí)行之前可以被認(rèn)作是隨機變量Mi,j,這些數(shù)據(jù)的融合結(jié)果也能夠被認(rèn)作是隨機變量.因此,有
(10)
其中,εi,j為加解密過程中CKKS引入的誤差,因為CKKS的計算為近似結(jié)果.
該證明首先分析|εi|,由定理1可得
(11)
其中
(12)
p(2|SWi|·Bscale+N)≤p2.
(13)
(14)
(15)
(16)
因此,利用霍夫丁不等式,有
Pr[|Mi-m*i|≥αi]≤
(17)
為了最小化式(17)最后一個等號后的式子,我們等價地最大化函數(shù)φ(λi),該函數(shù)定義為
(18)
根據(jù)柯西-施瓦茨不等式,可得
(19)
(20)
因此,當(dāng)λi,j滿足式(20),有
Pr[|Mi-εi-m*i|≥αi]≤
根據(jù)相應(yīng)的定義,PATD模塊是(αi,γi)-準(zhǔn)確的,如果
(21)
即結(jié)論成立.
證畢.
在介紹了PATD模塊后,本節(jié)將接著介紹具有隱私保護的參與者激勵(PFPI)模塊,將分別介紹激勵模塊的數(shù)學(xué)優(yōu)化模型、提出算法,并進行理論分析.
數(shù)據(jù)真值的估計準(zhǔn)確度與所收集的數(shù)據(jù)量有關(guān),同時,所提框架希望能夠最大化系統(tǒng)的社會福利,為此將建立式(22)數(shù)學(xué)優(yōu)化模型.
優(yōu)化問題.社會福利最大化:
(22)
1)優(yōu)化常數(shù).社會福利最大化時,每一個任務(wù)τi所對應(yīng)的數(shù)據(jù)收集者集合Wi,數(shù)據(jù)需求者ri的競價ai,數(shù)據(jù)收集者wj的競價bi,j,任務(wù)集合T,每個數(shù)據(jù)收集者wj的信任水平θi,j,準(zhǔn)度參數(shù)αi和γ是常數(shù),且γ=min{γi|i:ri∈SR}.
2)目標(biāo)函數(shù).為了能夠保證PATD模塊的準(zhǔn)確度,對于任意一個任務(wù)τi,算法將該任務(wù)的所有數(shù)據(jù)都收集上來,并在此前提下最大化社會福利.
3)優(yōu)化約束.根據(jù)式(8)和參數(shù)γ的選中,可知當(dāng)約束不等式成立時,對于每一個任務(wù)τi,其數(shù)據(jù)真值估計都滿足(αi,γi)-準(zhǔn)確度.
4)優(yōu)化變量.該優(yōu)化問題中的優(yōu)化變量為xi,當(dāng)xi=1表示任務(wù)τi被智能合約選中并執(zhí)行,當(dāng)xi=0表示該任務(wù)沒有被選中.
通過上述數(shù)學(xué)模型,可以得到該優(yōu)化問題是NP難問題.
引理2.上述優(yōu)化問題是NP難的.
證明.為了簡化問題,令
(23)
上述問題可簡化為
(24)
可以知道這是一個0-1背包問題,已知0-1背包問題為一個NP完全問題,所以可知,上述優(yōu)化問題是一個NP難問題.
證畢.
由于該問題的NP困難屬性,因此,4.2節(jié)將提出一個近似算法,高效地解決該問題.
為了解決該問題,本節(jié)提出一個近似算法.該算法的偽代碼如算法3所示,其具體流程如下.
具有隱私保護的用戶激勵算法由2部分組成,即參與者選擇部分和報酬確定部分.
4.2.1 參與者選擇部分
算法主體:對于每一個任務(wù)τi,智能合約計算權(quán)重
(25)
(26)
(27)
算法輸出:獲勝需求者集合SR和每個獲勝需求者ri對應(yīng)的獲勝收集者集合SWi,其中i:ri∈SR.
算法3.參與者選擇部分.
輸出:獲勝需求者集合SR和對應(yīng)的獲勝收集者集合SWi,其中i:ri∈SR.
/*智能合約的操作*/
① 定義需求者選擇集合SR=?和對應(yīng)的收集者選擇集合SWi=?,其中i:ri∈SR,并定義常數(shù)C=0;
for 每一個τi∈Tdo
end for
for 每一個τi∈Tdo
⑤ 選擇一個隨機數(shù)Rj;
end for
end for
while ?i+C≤βdo
⑩AR=AR∪{ri},AWi=Wi;
end while
其中i:ri∈SR;
else
end if
/*加密服務(wù)中心的操作*/
for 每一個τi∈Tdo
ifζi,j<ηdo
end if
end for
end for
在進行完參與者選擇部分后,智能合約進入報酬確定部分.
4.2.2 報酬確定部分
算法主體:對于每一個獲勝需求者ri∈SR,智能合約計算
(28)
對于相應(yīng)的獲勝收集者wj∈SWi,智能合約計算
(29)
算法輸出:每一個獲勝需求者ri∈SR需要支付的費用pi和對應(yīng)的獲勝收集者wj∈SWi能夠收到的報酬pi,j,其中i:ri∈SR.
算法4.報酬確定部分.
輸出:獲勝需求者ri∈SR的支付費用pi和對應(yīng)獲勝收集者wj∈SWi收到的報酬pi,j,其中i:ri∈SR.
/*智能合約的操作*/
for 每一個ri∈SRdo
③ 計算式(28);
for 每一個wj∈SWido
⑥ 計算式(29);
⑨ returnpi,j;
end for
⑩ returnpi;
end for
/*加密服務(wù)中心的操作*/
end for
end for
在結(jié)束本節(jié)之前,我們給出一個例子來具體說明該算法的工作流程.
本節(jié)將證明所提出的PFPI模塊滿足雙邊真實性、雙邊個體合理性,同時在社會福利最大化中達到了2 的近似比.
引理3.PFPI對于每個需求者和收集者都滿足真實性,這意味著每個需求者和收集者都誠實的報告競價.
證明.我們通過證明PFPI滿足單調(diào)性和臨界報酬2個性質(zhì)來說明參與的需求者具有真實性,而對于參與的收集者,可以用相似的方法得到結(jié)論,因此將省略相關(guān)的證明過程.注意,算法使用的CKKS是近似算法,但是由于算法的設(shè)計,使其在密文狀態(tài)下的各種計算并沒有改變相應(yīng)的數(shù)值,因此在證明過程中所有變量均為明文.
證畢.
除了真實性,還需要保證PFPI模塊具有個體合理性.
引理4.PFPI模塊滿足每個需求者和收集者的個體合理性,這意味著每個需求者和收集者都可以得到非負的收益.
證明.這里只證明對于每個需求者,PFPI模塊滿足個體合理性,對于收集者的情況可以利用相同的方法得到結(jié)論.證明中所有變量都是明文.
證畢.
接下來將證明PFPI模塊在系統(tǒng)的社會福利上達到了2的近似度.為了證明該結(jié)論,將利用分?jǐn)?shù)背包問題,其定義如下.
問題.分?jǐn)?shù)背包問題:
(30)
證畢.
利用引理5,可以得到如下定理.
定理2.PFPI模塊在系統(tǒng)的社會福利上達到了2的近似比.
(31)
其中OPT是原始優(yōu)化問題的最大值.由此可知
(32)
由算法3可知,選中需求者集合為SR=AR或SR={ri*},其中i*=arg max{δi|i:ri∈R},因此δi*≥δ.由此可知該算法滿足
(33)
所以結(jié)論成立.
證畢.
如第3節(jié)和第4節(jié)所示,所提出的基于區(qū)塊鏈的群智感知系統(tǒng)中數(shù)據(jù)收集框架利用 CKKS 保護數(shù)據(jù)需求者和數(shù)據(jù)收集者的數(shù)據(jù)以及競價隱私.本節(jié)將詳細分析所提框架的安全性.
定理3.PATD模塊保證了收集者提交的數(shù)據(jù)對誠實但是好奇的竊聽者的安全性,這意味著在執(zhí)行算法過程中,加密服務(wù)中心和其他參與者除了最后的數(shù)據(jù)真值的估計值外無法獲得其他關(guān)于數(shù)據(jù)的任何信息.
證明.如PATD模塊所示,在提交數(shù)據(jù)之前,每個收集者使用加密服務(wù)中心生成的密鑰對各自數(shù)據(jù)進行加密,然后智能合約根據(jù)加密數(shù)據(jù)估計數(shù)據(jù)真值.最后,加密狀態(tài)的數(shù)據(jù)估計值由加密服務(wù)中心進行解密.在此過程中,CKKS的安全性保證了數(shù)據(jù)隱私.與現(xiàn)有的工作類似,假設(shè)加密服務(wù)中心和其他參與者(數(shù)據(jù)需求者和數(shù)據(jù)收集者)之間沒有勾結(jié),且加密服務(wù)中心不會在模塊執(zhí)行過程中主動解密收集者提交的加密數(shù)據(jù),因此,除了最后公開的數(shù)據(jù)真值的估計值,沒有人可以獲得數(shù)據(jù)的任何信息.綜上分析,PATD模塊可以保證數(shù)據(jù)的安全性.
證畢.
值得注意的是,現(xiàn)有的許多具有隱私保護的數(shù)據(jù)真值估計算法為了得到最終的估計值需要在計算的過程中解密一些中間結(jié)果,而這些解密操作會導(dǎo)致數(shù)據(jù)隱私泄露,與這些工作不同,PATD模塊不需要解密中間結(jié)果來得到最終的數(shù)據(jù)真值估計值,因此進一步保證了數(shù)據(jù)的安全性.此外,現(xiàn)在的一些已有工作在保護數(shù)據(jù)隱私的同時,還保護用戶權(quán)重的隱私,因為研究者認(rèn)為在估計真值過程中使用的用戶權(quán)重也是隱私信息.與這些工作不同,在本文所提算法中,用戶權(quán)重是他們的置信度,而這些置信度在區(qū)塊鏈中是公開可見的,實際上,在區(qū)塊鏈中,往往要根據(jù)每個參與者的置信度來決定誰有資格當(dāng)?shù)V工.
定理4.具有隱私保護的激勵模塊在面對半誠實但是好奇的攻擊者時,可以保護數(shù)據(jù)需求者和數(shù)據(jù)收集者競價的隱私安全,這意味著在執(zhí)行算法過程中,智能合約、加密服務(wù)提供方和其他參與者除了最后的報酬外無法獲得其他關(guān)于競價的任何信息.
證明.根據(jù)算法3和算法4,數(shù)據(jù)需求者和數(shù)據(jù)收集者提交的是加密競價,這意味著智能合約無法直接獲取他們的競價.該激勵模塊由2個子模塊組成,參與者選擇模塊和報酬確定模塊,因此下面的證明將分別從對2個子模塊的安全性進行分析.
證畢.
本節(jié)將從實驗仿真的角度驗證所提機制的性能,該節(jié)首先介紹比較基線,之后將說明實驗仿真中的參數(shù)設(shè)置,最后將給出實驗結(jié)果.
本文所提的區(qū)塊鏈群智感知系統(tǒng)中基于隱私保護數(shù)據(jù)的用戶激勵機制包含PATD模塊和PFPI模塊2部分,因此本節(jié)將驗證這2個機制的性能.
1)具有隱私保護的數(shù)據(jù)真值估計機制.實驗仿真考慮3種比較基線:第1種是均值估計基線(MEAN),該基線將數(shù)據(jù)的均值作為最后的數(shù)據(jù)真值的估計值輸出;第2種是中位數(shù)估計基線(MEDIAN),該基線將數(shù)據(jù)的中位數(shù)作為最后的數(shù)據(jù)真值估計的輸出;第3種是迭代估計基線(IBTD),該基線由Zhang等人在文獻[46]中提出,在每次迭代時,更新每個數(shù)據(jù)的權(quán)重,并利用更新后的權(quán)重計算數(shù)據(jù)真值估計,在達到迭代次數(shù)后,機制輸出估計結(jié)果.注意,實驗仿真過程中,均使用CKKS同態(tài)加密方案對數(shù)據(jù)進行加密.
2)具有隱私保護的參與者激勵機制.因為目前沒有基于同態(tài)加密方案的激勵機制,因此實驗仿真考慮2種基線:第1種基于收益的激勵機制(BFI),該機制將每個任務(wù)τi的δi從大到小進行排序,然后從最大的開始選擇獲勝的數(shù)據(jù)需求者和收集者;第2種基于權(quán)重的激勵機制(WFI),該機制將每個任務(wù)τi的權(quán)重?i按照從小到大排序,然后每次選擇權(quán)重最小的任務(wù)確定相應(yīng)的獲勝數(shù)據(jù)需求者和收集者.
為了方便,本節(jié)將實驗的參數(shù)設(shè)置列在了表2中.與Jin等人的文獻[43]類似,一些參數(shù)都是在某個區(qū)間均勻隨機選擇.具體而言,對于每一個任務(wù)τi,閾值參數(shù)αi和精度參數(shù)γi在[0.2,0.3]均勻隨機選取,每個數(shù)據(jù)需求者ri能夠獲得的價值vi在[20,25]上均勻隨機選取.同時,每個數(shù)據(jù)收集者wj的數(shù)據(jù)xi,j都是從均值為μi,j、方差為σi,j的截斷高斯分布中采樣得到的,即xi,j∈[0,1],且μi,j取值為[0,1],而σi,j取值為[1,2],數(shù)據(jù)置信度θi,j在[0,0.1]均勻選取,花費ci,j取值為[0,1],同時愿意執(zhí)行的任務(wù)集合Γj中任務(wù)的數(shù)量|Γj|取值區(qū)間為[1,5].在仿真集合Ⅰ中,數(shù)據(jù)收集者的數(shù)量M從2變到512,而數(shù)據(jù)需求者的數(shù)量N保持100不變;在仿真集合Ⅱ中,數(shù)據(jù)需求者的數(shù)量N從2變到512,而數(shù)據(jù)收集者的數(shù)量M保持100不變.
Table 2 The Simulation Parameter Settings
此外,本文采用CKKS作為同態(tài)加密方案,因此,相關(guān)參數(shù)設(shè)置為:
維度參數(shù)N=213,縮放因子Δ=240,密文模數(shù)qL=21 503.同時,如Cheon等人在參考文獻[47]中采用的多項式組合方法,本文也利用相同的方法,其中多項式fd和gd分別選取d=3,而相應(yīng)的表達式為
f3(x)=(35x-35x3+21x5-5x7)/24,
g3(x)=(4 589x-16 577x3+25 614x5-
12 860x7)/210.
相應(yīng)的組合參數(shù)分別為df和dg,其中fdf表示f°f°…°f做df次組合,同樣gdg表示g°g°…°g做dg次組合.
本實驗環(huán)境為Ubuntu 18.04.2 LTS,AMD Ryzen 7 5800H CPU,16 GB 內(nèi)存,16線程.
本文仿真實驗中的考察指標(biāo)——社會福利,為整個機制運行完后對PFPI的性能評價指標(biāo),另一個考察指標(biāo)——真值估計準(zhǔn)確度,為整個機制運行完后對PATD的性能評價指標(biāo).最后一個評價指標(biāo)——運行時間,為整個機制運行完成后所需的時間,但是因為PATD模塊只涉及同態(tài)加法操作,運行時間較短,而PFPI涉及到排序操作和大量乘法操作,運行時間較長.
Fig.3 MAE under different number of data collectors
圖3、圖4所示為PATD的仿真結(jié)果.圖3為數(shù)據(jù)收集者數(shù)量不同時,各數(shù)據(jù)真值估計機制的MAE;而圖4為數(shù)據(jù)需求者數(shù)量不同時,各數(shù)據(jù)真值估計機制的MAE.其中,MAE表示各數(shù)據(jù)的估計值與真值之間的平均距離,計算公式為
(34)
Fig.4 MAE under different number of data requesters
從式(34)可以知道,MAE的值越小,表示算法的準(zhǔn)確性越高.從圖3和圖4中可以看出,本文所提的PATD算法具有最小的MAE,因此,在所有比較的數(shù)據(jù)真值估計機制中具有最好的性能表現(xiàn).在對IBTD機制進行仿真時,其迭代次數(shù)被設(shè)置為1 000次.
Fig.5 Social welfare under different number of data collectors
本文所提的區(qū)塊鏈群智感知系統(tǒng)中基于隱私保護數(shù)據(jù)的用戶激勵機制包括2部分,即PATD和PFPI,在驗證了PATD的性能后,接著對PFPI的性能進行驗證.
圖5、圖6所示為PFPI的仿真結(jié)果.圖5為數(shù)據(jù)收集者數(shù)量不同時,各具有隱私保護的激勵機制達到的社會福利;而圖6為數(shù)據(jù)需求者數(shù)量不同時,各具有隱私保護的激勵機制達到的社會福利.需要指出的是,其中BFI機制可以滿足真實性和個體合理性,而WFI機制只滿足個體合理性但不滿足真實性,在進行仿真的過程中,BFI和WFI中數(shù)據(jù)需求者和收集者提交的競價都利用CKKS同態(tài)加密方案進行加密.從仿真結(jié)果可以看出PFPI達到的社會福利最高,這說明PFPI與其他基準(zhǔn)激勵機制相比具有更好的性能.同時,在圖5和圖6中可以看到,BFI的性能相較于WFI的性能更好.
Fig.6 Social welfare under different number of data requesters
由于區(qū)塊鏈每時每刻發(fā)生大量的交易,因此對于各種基于區(qū)塊鏈的應(yīng)用的運行速度有較高的要求,在性能仿真的最后,本節(jié)驗證了利用本文所提區(qū)塊鏈群智感知系統(tǒng)中基于隱私保護數(shù)據(jù)的用戶激勵機制的運行時間,并將仿真結(jié)果列于表3中.在表3中分別讓(df,dg)取不同的組合,并統(tǒng)計任務(wù)數(shù)從2增加到512時,不同任務(wù)數(shù)所需的運行時間.從表3中可以看出,隨著任務(wù)數(shù)的增加,所需要的運行時間在增加,這是因為需要的乘法操作在增加.同時可以看出不同的(df,dg)組合所需的時間不同,這是因為不同的組合需要計算的乘法操作次數(shù)是不同的,而且可以看出df的影響要比dg的影響大.
Table 3 Running Time of Different Parameters
表3為PFPI的運行速度,為了整個實驗的完整性,本文最后對所提機制整體進行運行時間的仿真,以此來論證機制的合理性與連續(xù)性.
從表4可以看出,PFPI的運行時間相較于PATD要長得多,這是因為PATD模塊僅涉及同態(tài)加法操作以及少量的明文與密文的乘法操作,這些操作所需時間較短.與之相反,PFPI在用戶選擇階段和報酬確定階段均涉及到排序操作,而排序操作需要大量的密文之間的同態(tài)乘法計算來完成,而乘法操作需要時間較長.從表4中可以看到,所提機制對時間敏感度不高的在線系統(tǒng)或者是完全線下的系統(tǒng)操作性較強.
Table 4 Running Time of the Whole Scheme
本文針對現(xiàn)有基于區(qū)塊鏈群智感知系統(tǒng)的數(shù)據(jù)收集框架總是獨立分離設(shè)計數(shù)據(jù)真值估計機制和參與者激勵機制而導(dǎo)致其無法達到最佳性能的問題,提出一類新的具有隱私保護的數(shù)據(jù)收集機制.該機制由數(shù)據(jù)真值模塊PATD和參與者激勵模塊PFPI共同構(gòu)成.相較于分離設(shè)計的框架,該機制具有更好的性能.為了保護參與者的隱私信息,該機制利用CKKS同態(tài)加密方案.本文在提出數(shù)據(jù)收集機制后,從理論角度證明了PATD具有較高的真值估計準(zhǔn)確度,同時證明了PFPI不僅滿足真實性和個體合理性,而且具有較高的社會福利;從實驗仿真的角度驗證了PATD和PFPI的安全性能.從仿真結(jié)果可知,它們與各自的基準(zhǔn)方案相比具有更好的安全性能.
作者貢獻聲明:應(yīng)臣浩提出了算法思路和實驗方案;夏福源負責(zé)完成實驗仿真;李頡提出理論分析指導(dǎo)意見;斯雪明提出實驗仿真指導(dǎo)意見;駱源提供論文修改意見.