吳煒,劉兒兀,楊昌鑫,王睿
基于區塊鏈的零知識位置證明系統設計
吳煒,劉兒兀,楊昌鑫,王睿
(同濟大學電子與信息工程學院,上海 201804)
智能終端設備及定位技術的發展催生了許多基于位置的服務,如定點打卡服務(訪問特定地點獲取相應的獎勵),這導致非法用戶為了獲取利益對位置服務器進行位置欺騙。因此,需要對用戶提供的位置證書進行驗證。但現有的位置證明系統在驗證用戶位置證書的同時對用戶隱私保護并不周全,且用戶對位置證書的控制并不靈活。基于區塊鏈技術,提出一種分布式位置證明系統架構;進而在此架構基礎上,引入零知識證明,提出一種零知識位置證明協議。架構與協議組成的零知識位置證明系統允許用戶根據需求,自由選擇披露的證書內容及位置精度,實現分級的位置隱私保護。
區塊鏈;零知識證明;隱私保護;位置證明系統
隨著智能終端設備和高精度定位技術的發展,越來越多的位置服務(LBS,location-based service)[1]使人們生活更加便利。例如,基于位置的定點簽到服務,用戶需到達指定地點簽到獲取相應的獎勵;基于位置的個性推薦服務,用戶需向位置服務提供商(LBSP,location-based service provider)提供位置信息,LBSP則根據該信息,為用戶提供興趣點推薦[2];基于位置的社交網絡:用戶可通過智能手機、平板、智能穿戴設備等對當前所在的興趣點簽到,并將簽到信息和用戶體驗與好友分享。為了防止惡意用戶濫用LBSP維護的服務資源,LBSP要求請求位置服務的用戶提供相關的位置證明(PL,proof of location),證明其位置證書(LC,location certificate)的合法性。但是,用戶的某些不必要披露的隱私信息會隨PL暴露給LBSP,因此,在實現用戶LC可驗證的同時保護位置隱私是必要的。
國內外有許多學者對位置證明系統進行研究,并取得了豐富的成果。現有位置證明系統大致可分為兩種:中心式系統與分布式系統。在中心式位置證明系統中,用戶LC存儲在單一的中央服務器或服務器群上,而在分布式位置證明系統中,用戶LC存儲在分布式網絡上。Tyagi等[3]基于類混合空間模型,結合其他多種方法,提出一種位置證明系統,保護用戶隱私。Javali等[4]基于信道狀態信息(CSI,channel state information)以及密碼基元fuzzy vault,提出一種包含證書生成與證書簽發兩部分的位置證明系統,該系統允許用戶以高概率證明其LC的有效性。Li等[5]基于Wi-Fi或蜂窩網接入點(AP,access point),提出一種基于基礎設施的位置證明系統,該系統允許數據庫在不知道用戶精確位置的情況下驗證LC的有效性。上述位置證明系統均為中心式,存在以下幾點缺陷:第一,中心式位置證明系統需要專用的大功率中央服務器用于服務大量用戶,造成負載不均衡,一旦中央服務器過載,整個系統就會癱瘓;第二,中央服務器成為安全的焦點,惡意攻擊者更容易攻陷系統;第三,用戶LC完全由中央服務器管理,用戶失去對其數據控制權,用戶隱私安全建立在中央服務器誠實的基礎上。為了解決這些問題,一系列分布式位置證明系統被提出,如Zhu等[6]提出的APPLAUS、Wang等[7]提出的STAMP以及Nosouhi等[8]提出的SPARSE。另外,Amoretti等[9]提出了基于區塊鏈的位置證明系統,在這些系統中,用戶以短程通信方式請求鄰近的證人節點為其簽發LC。
盡管這些解決方案克服了中心式系統的弊端且不需要Wi-Fi、AP等基礎設施,但它們或存在證人節點作惡不可控造成系統的合謀攻擊問題;或存在假名而非匿名造成的用戶隱私推導攻擊問題。因此,本文結合區塊鏈技術,提出一種分布式的位置證明系統架構,該架構由3種節點組成:用戶節點、LBSP節點以及證書簽發節點(CIN,certificate issuing node),證書簽發節點可以是Wi-Fi、AP、微基站等。特別注意的是,證書簽發節點依據地理位置進行二進制編碼,其目的是實現不同精度的位置證明。然后,在該系統架構的基礎上,提出一種零知識位置證明協議。完整位置證明系統允許用戶自主選擇披露的LC參數,提供任意精度的位置證明,實現用戶可控的分級隱私保護,適應不同的應用場景。此外,本文針對可能的惡意攻擊,對系統的安全性進行理論分析,得知系統可抵御這些惡意攻擊。最后,對不同位置精度等級的位置證明系統進行實驗研究,得出位置精度等級與系統性能關系:位置證明系統執行時延隨位置精度等級增加而增大。
區塊鏈技術是多種技術的融合,包括加密、共識機制、激勵機制、分布式存儲和智能合約[10-13]。本質上,區塊鏈是用密碼方法保證其不可破壞的、不可篡改的鏈式數據結構(或公共賬本),它由一系列區塊組成,后一個區塊通過包含前一個區塊的加密散列值與前一個區塊相連,該區塊還包含時間戳、隨機數、交易數據等。然后,通過共識算法,如工作量證明(PoW)和權益證明(PoS),網絡中的所有對等點對區塊數據寫入權(公共賬本記賬權)達成共識。獲得記賬權的對等節點隨后將打包的塊添加到鏈中,鏈上記錄的數據無法修改。這整個過程被稱作挖礦,參加記賬權競爭的對等節點被稱為“礦工”。對公有鏈來說,最終獲得記賬權并完成記賬的“礦工”將獲得代幣獎勵,這種機制稱為激勵機制。當前,至少有4種類型的區塊鏈網絡:公有鏈、私有鏈、聯盟鏈和混合鏈。本文介紹的區塊鏈網絡是混合鏈,混合鏈網絡中不同的對等節點根據其不同的職能有不同的權限。
用戶的位置數據描繪了用戶的數字軌跡。除此之外,攻擊者可通過數字挖掘,探尋該數字軌跡更深層次的上下文信息,如個人習慣、興趣愛好、社交活動等。這些敏感信息的暴露使用戶成為追蹤廣告、垃圾郵箱、惡意跟蹤等非法活動的受害者,造成用戶的精神及財產損失,甚至使用戶受到人身傷害[14]。傳統位置證明系統架構中,用戶的LC不由用戶控制,或存儲在中央服務器上,或存儲在分布式數據庫上,為了解決這些缺陷,本文提出基于區塊鏈的位置證明系統架構,并結合零知識位置證明(ZK-PL,zero-knowledge proof of location)協議,使用戶完全掌握自身的LC。

圖1 零知識位置證明系統架構
Figure 1 Zero-knowledge location proof system architecture diagram
ZK-PL系統架構由3個組件組成,分別是公共賬本、LBSP以及用戶,如圖1所示。公共賬本是由CIN組成區塊鏈網絡,每個CIN為一個點,兩個地理位置相鄰的CIN組成一個塊,兩個地理位置相鄰的塊組成一個區,兩個地理位置相鄰的區組成一個域,兩個地理位置相鄰的域組成一個宏,以此方式,公共賬本覆蓋的地理范圍呈指數級方式增加,滿足任何的應用場景。對每個CIN進行二進制編碼,圖中CIN編號范圍為0000~1111,其中左上角CIN為0000號,右下角為1111號(按照左0右1、上0下1編碼方式)。公共賬本的主要職能有:第一,為用戶簽發LC;第二,記錄LC指紋;第三,為用戶提供生成PL所需要的公共參數(CRS,common reference string);第四,保存服務記錄。用戶主要職能有:第一,以短程通信方式接入區塊鏈網絡,向附近CIN請求簽發LC;第二,利用LC生成PL,以遠程通信方式向LBSP請求相關位置服務。LBSP的主要職能有:第一,驗證PL,為用戶提供位置服務;第二,以遠程通信方式請求CIN保存服務記錄。該系統架構實現用戶位置數據與位置服務的分離,各組件職能明確,避免了服務器或其他第三方掌握敏感的用戶隱私信息。公共賬本作為可信之根本,在不暴露用戶隱私的情況下杜絕了LC的偽造、篡改及抵賴。用戶則可通過生成零知識位置證明,向LBSP證明其持有證書的合法性,獲取位置服務。相對地,LBSP只能從ZK-PL中獲取必要的用戶位置信息,避免了用戶隱私泄露。
明確了系統架構組成及各組件職能之后,需要明確各個組件之間的交互細節。為此,下文提出一種零知識位置證明協議(ZK-PLP,zero-knowledge proof of location protocol)。
ZK-PLP由兩部分組成,分別是LC簽發協議和LC驗證協議。其中,LC簽發協議主要用于規定用戶如何與CIN交互,請求簽發LC;LC驗證協議主要用于規定用戶如何產生ZK-PL以及LBSP如何驗證ZK-PL的合法性。協議流程如圖2所示。LC簽發階段,用戶首先以短程通信方式接入區塊鏈網絡,請求鄰近CIN簽發LC。CIN在收到請求后,驗證請求的有效性,驗證通過則返回LC參數;同時,CIN結合用戶請求中包含的信息,生成LC指紋并將指紋廣播至整個區塊鏈網絡,等待網絡中節點挖礦保存指紋。而用戶在收到CIN返回的LC參數后,生成LC保存至本地,留待請求位置服務時使用。LC驗證階段,用戶使用本地保存的LC生成ZK-PL。然后,以遠程通信方式將ZK-PL發送給LBSP,請求位置服務。LBSP在收到ZK-PL后,驗證ZK-PL的有效性,驗證通過則返回位置服務;同時,LBSP生成服務記錄并請求CIN將服務記錄保存至區塊鏈網絡。

圖2 零知識位置證明協議流程
Figure 2 Zero-knowledge location proof protocol flowchart
在闡述LC簽發協議細節之前,首先說明LC格式及其各參數的含義,LC格式如下。

各個參數含義如表1所示。需要額外說明的是,每個用戶擁有唯一的公私鑰對,可由權威中心(政府)統一管理,類似于個人身份證。CIN編號之所以能表征用戶出現地點,是因為CIN的地理位置是固定的且用戶只有在短程通信范圍內才能成功簽發LC,通信范圍越小,其表征的用戶位置越精確。

表1 LC參數
下面說明LC簽發流程細節:假設某用戶需要簽發一張LC,首先,該用戶通過短程通信的方式接入區塊鏈網絡,向鄰近的CIN發起證書簽發請求,請求格式如下。

CIN收到用戶請求之后,做如下檢測:
1) 請求內容是否被篡改;
2) 用戶與其通信方式是否為短程通信。
檢測通過后,CIN響應用戶,響應格式如下。

其中,證書序列號為CIN生成的隨機數,一定程度上,證書序列號代表著證書所有權。CIN以類似方式對響應及響應中的消息分別進行加密和數字簽名,確保惡意中間人無法篡改與竊聽。


現有的位置服務種類繁多,不同的位置服務中,LBSP需要查驗的用戶位置信息也不盡相同。例如,在打卡獲取商場優惠券服務中,LBSP只需驗證用戶是否去過特定商場,而不需要知道用戶身份(即公鑰)、去該商場的時間以及去到商場的哪個特定位置(假設商場為一個宏,LBSP不需知道用戶去哪個域、哪個區、哪個塊甚至哪個點)。再比如,某用戶需要向法院提供不在場證明,則他/她需要提供證明,披露其身份以及在特定時間出現在特定地點。基于ZK-SNARK[16]的LC驗證協議允許用戶根據位置服務類型,生成不同的ZK-PL,只披露必要的位置信息,更好地保護用戶隱私。
依據前面分析,不同位置服務可能要求用戶披露不同的LC參數,也可能需要不同的位置精度。因此,按披露參數不同,將ZK-PL分為若干類型,如表2所示。

表2 ZK-PL參數
表2中公共參數與私密參數統稱為輸入參數,為生成ZK-PL的輸入;公共參數直接披露給LBSP。位置精度由CIN的短程通信范圍決定,通信范圍越小精度越高,相同覆蓋面積所需要的CIN個數越多,最終導致CIN的編碼長度越長。在打卡獲取商場優惠券的例子中,商場由8個CIN覆蓋,因此編碼長度為4位(即精度等級為4)。
下面說明LC驗證流程細節:假設上述LC簽發流程中用戶欲使用簽發完成的LC生成ZK-PL,向LBSP證明他/她去過0域1區,從而獲取相應的獎勵。此場景應選擇表2中類型1的ZK-PL。用戶需要證明以下算式成立。


表3 位置掩碼
(1) 計算問題到QAP問題[17]的轉化
一般計算問題需轉化為QAP問題才能通過ZK-SNARK協議,以零知識的方式證明其計算的正確性。QAP問題可以簡單地描述為:對于一系列多項式以及一個目標多項式,尋找這些多項式的線性組合,使目標多項式能夠整除此多項式組合。計算問題(5)可轉化為以下QAP問題。


使之滿足


(2) 計算CRS



用戶利用證明密鑰及本地計算的見證生成ZK-PL并發送給LBSP。然后,LBSP利用驗證密鑰驗證ZK-PL的有效性。一旦CRS計算完畢,隨機值組立刻刪除。因為任何擁有該隨機值組的惡意中間人可在不知道問題正確解的情況下偽造ZK-PL,通過LBSP的驗證,騙取位置服務。因此,隨機值組也被稱為“毒廢料”。步驟1)、步驟2)統稱為可信初始化(TS,trusted setup),由系統中的CIN完成。正如前文所述,CIN中嵌入的智能合約可規范其行為,保證用戶隱私不泄露,保證ZK-PL不可偽造。
(3) 計算見證
初始化完成以后,為了生成ZK-PL,用戶需要根據自己的LC證書,本地生成QAP問題的解,類似于式(7)。

(4) 生成ZK-PL

用戶計算

然后用戶根據證明密鑰計算


然后用戶計算變量一致性多項式。

最后,用戶將計算的各部分組成ZK-PL。

用戶將生成的ZK-PL發送給LBSP,請求位置服務,請求格式如下。

(5) 驗證ZK-PL
LBSP收到用戶請求后,首先檢測該LC是否失效。LC失效是因為某些位置服務存在響應次數限制。例如,打卡獲取商場優惠券服務中,每張LC只能兌換一張或者數張優惠券。LC有效性檢測通過查詢公共賬本服務記錄的方式實現,每次LBSP完成一次服務之后,會請求CIN保存服務記錄,服務記錄具體格式后文說明。
檢測LC有效后,LBSP檢測ZK-PL是否合法:LBSP使用驗證密鑰計算驗證變量多項式。

然后檢測下面式子是否成立。



檢測ZK-PL合法后,LBSP返回用戶請求的服務并生成服務記錄。

其中,為該LBSP的唯一公鑰;DLC為本次服務用戶所用的DLC;index為本次提供的位置服務類型;times為截至當前提供該類型位置服務給該用戶的次數。生成服務記錄之后,LBSP以遠程通信方式請求區塊鏈網絡中某個CIN保存服務記錄。收到請求的CIN以同樣的方式將服務記錄廣播至區塊鏈網絡,等待“挖礦”保存在公共賬本中。如上文所述,之后LBSP可通過查詢賬本中服務記錄的內容判斷用戶使用的LC是否有效。
Figure 3 Bilinear mapping diagram
至此,用戶完成了證明其在0域1區并獲得了相應的獎勵,其他應用場景交互流程類似,由于篇幅限制,本文不再詳細討論。下文將對提出的位置證明系統的安全性進行分析,并進行實驗研究位置精度等級對該位置證明系統效率的影響。
本節討論提出的位置證明系統面對數種可能攻擊的安全性,以及位置精度對系統性能的影響。
(1) 身份欺騙


(2) 服務欺騙
服務欺騙指的是不擁有LC的惡意用戶生成假證明騙取LBSP的位置服務以及惡意用戶重復利用同一LC騙取某些特殊的、請求次數有限制的位置服務。可通過檢測式(18)~式(20)是否成立來杜絕第一種行為。可通過查詢公共賬本中的服務記錄來杜絕第二種行為,即查詢用戶使用的LC是否已經超過其使用次數限制。
(3) 隱私推導
隱私推導指的是惡意攻擊者利用可見協議漏洞、DLC及ZK-PL推導用戶位置隱私及位置隱私包含的其他上下文信息。在LC簽發過程中,用戶位置信息只有用戶自身以及CIN可獲得,但是因為CIN由內嵌智能合約限制,不會泄露用戶位置隱私。并且,公共賬本上只存儲了DLC,哈希函數的抗碰撞性以及其逆向不可計算性可保證無法從DLC中得到LC,從而不會泄露用戶隱私。在LC驗證協議中,單項陷門函數可保證惡意用戶無法從CRS以及ZK-PL中獲取見證。因此,LBSP只能獲得其應知曉的信息而不會獲得額外的隱私信息。
下面通過實驗仿真研究位置精度等級,即CIN編碼位數對系統性能的影響。實驗環境如下:主機型號MateBook 13、1.8 GHz i7處理器、8 GB RAM。實驗基于Github開源項目Circom[19]和 Snarkjs[20]進行二次開發,主要開發語言為JavaScript。Circom是將計算問題(程序)轉化為算術電路的電路生成器,而Snarkjs是可以對Circom生成的計算電路進行滿足性驗證的密碼學證明系統。由于提出的位置證明系統主要時延來自ZK-PL的產生與驗證,因此實驗針對位置精度等級4到位置精度等級70的零知識位置證明系統,測試其LC驗證過程各階段執行時間,得到如圖4所示結果(位置精度等級70對應CIN編碼位數為70,可對量級1021的CIN進行編號。假設每個CIN覆蓋范圍為1 m3,則70位的CIN可覆蓋范圍為1×1021m3。而地球體積約為1×1012m3,因此,70位的CIN編碼滿足實際應用需求)。
從實驗結果圖可知:計算見證的執行時間基本不隨位置精度等級變化,穩定在650 ms左右;同樣地,驗證ZK-PL的執行時間不隨位置精度變化,穩定在3 800 ms左右。可信初始化的執行時間大致隨位置精度等級呈線性增長,最小值為 1 024 ms,最大值為4 299 ms;生成ZK-PL的執行時間隨位置精度等級增加而始化時執行一次,此后每次不同位置服務過程無須再執行,因此提出的位置證明系統的總執行時間可大致估計為其余三者時間總和,約為5 240~6 686 ms。該執行時延滿足大部分位置服務,如基于位置的個性推薦服務、基于位置的社交網絡、基于位置的定點簽到服務等。但對于一些時延十分敏感的服務,如實時定位導航,該系統有所欠缺。因此,此后的工作將圍繞如何縮短系統時延展開,將從協議流程、電路生成器、密碼學證明系統[21]等方面出發,優化提出的零知識位置證明系統。

圖4 系統效率與位置精度等級關系
Figure 4 Diagram of system efficiency and position accuracy
零知識位置證明系統首次將零知識證明引入位置證明系統中。零知識證明協議保證了它的隱私保護性,另外,5~7 s的延遲可滿足絕大多數位置服務。因此,零知識位置證明系統有著較好的隱私性和效率。
本文設計了一種新型的位置證明系統架構,并且在此系統架構的基礎上,首次引入零知識證明,設計了一種基于ZK-SNARK的位置證明協議,由此二者組成零知識位置證明系統。該零知識位置證明系統允許用戶自主選擇披露的LC參數,提供任意精度的位置證明,實現用戶可控的分級隱私保護。此外,本文對提出的零知識位置證明系統安全性進行理論分析,分析表明,該系統可應對可能的安全攻擊。最后,針對位置精度等級對系統效率的影響,進行實驗探究。實驗結果表明:位置證明系統執行時延隨位置精度等級增加而增大,等級4~70的執行時延為5 240~6 686 ms。70位的編號可對量級為1021的CIN進行編碼,該量級的CIN可覆蓋足夠大的范圍,具有較好的實用性。另外,除了少部分時延非常敏感的位置服務外,如實時定位導航,提出的零知識位置證明系統的時延可滿足大部分位置服務,如基于位置的個性推薦服務、基于位置的社交網絡、基于位置的定點簽到服務等。之后,筆者將考慮通過優化協議流程,采用不同的電路生成器以及密碼學證明系統等方式優化零知識位置證明系統性能,使之適用于所有的位置服務。
[1] JUNGLAS I A,WATSON R T. Location-based services[J]. Communications of the ACM, 2008,51(3): 65.
[2] 任星怡, 宋美娜, 宋俊德. 基于位置社交網絡的上下文感知的興趣點推薦[J]. 計算機學報, 2017, 40(4): 824-841.
REN X Y, SONG M N, SONG J D. Context-aware point-of-interest recommendation in location-based social networks[J]. Chinese Journal of Computers, 2017, 40(4): 824-841.
[3] TYAGI A K, SREENATH N. Location privacy preserving techniques for location based services over road networks[C]//2015 International Conference on Communications and Signal Processing (ICCSP). 2015: 1319-1326.
[4] JAVALI C, REVADIGAR G, RASMUSSEN K B, et al. I am Alice, I was in wonderland: secure location proof generation and verification protocol[C]//2016 IEEE 41st Conference on Local Computer Networks (LCN). 2016: 477-485.
[5] LI Y ,ZHOU L ,ZHU H, et al. Privacy-preserving location proof for securing large-scale database-driven cognitive radio networks[J]. IEEE Internet of Things Journal, 2015,3(4): 563-571.
[6] ZHU Z, CAO G. Toward privacy preserving and collusion resistance in a location proof updating system[J]. IEEE Transactions on Mobile Computing,2013, 12(1): 51-64.
[7] WANG X, PANDE A, ZHU J, et al. STAMP: enabling privacy-preserving location proofs for mobile users[J]. IEEE/ACM Transactions on Networking, 2016, 24(6): 3276-3289.
[8] NOSOUHI M R YU, S, GROBLER M., et al. PARSE: privacy-aware and collusion resistant location proof generation and verification[C]//2018 IEEE Global Communications Conference (GLOBECOM). 2018: 1-6.
[9] AMORETTI M, BRAMBILLA G , MEDIOLI F, et al. Blockchain based proof of location[C]//2018 IEEE International Conference on Software Quality, Reliability and Security Companion (QRS-C). 2018: 146-153.
[10] TSCHORSCH F, SCHEUERMANN B. Bitcoin and beyond: atechnical survey on decentralized digital currencies[J]. IEEE Communications Surveys & Tutorials, 2016, 18(3): 2084–2123.
[11] NAKAMOTO S. Bitcoin: a peer-to-peer electronic cash system[R]. 2008.
[12] 章峰, 史博軒, 蔣文保. 區塊鏈關鍵技術及應用研究綜述[J]. 網絡與信息安全學報, 2018, 4(4): 22-29.
ZHANG F, SHI B X, JIANG W B. Review of key technology and its application of blockchain [J]. Chinese Journal of Network and Information Security, 2018, 4(4): 22-29.
[13] 沈鑫, 裴慶祺, 劉雪峰. 區塊鏈技術綜述[J]. 網絡與信息安全學報, 2016, 2(11): 11-20.
SHEN X, PEI Q Q, LIU X F. Survey of block chain[J]. Chinese Journal of Network and Information Security, 2016, 2(11): 11-20.
[14] SHOKRI R, THEODORAKOPOULOS G, BOUDEC J Y. et al. Quantifying location privacy[C]//2011 IEEE Symposium on Security and Privacy. 2011: 247-262.
[15] Ethereum: a next-generation smart contract and decentralized application platform[EB].
[16] BITANSKY N , CANETTI R, CHIESA A, et al. From extractable collision resistance to succinct non-interactive arguments of knowledge, and back again[C]//The 3rd Innovations in Theoretical Computer Science Conference. 2012: 326-349.
[17] GENNAROR, GENTRY C, PARNO B, et al. Quadratic span programs and succinct NIZKs without PCPs[C]//Annual International Conference on the Theory and Applications of Cryptographic Techniques. 2013: 626-645.
[18] PETKUS M. Why and how ZK-SNARK works[J]. ArXiv, abs/ 1906.07221, 2019.
[19] Circom: Circuit compiler for zk-SNARKs[EB].
[20] Snarkjs: zk-SNARK implementation in JavaScript[EB].
[21] BEN-SASSON E, CHIESA A, TROMER E, et al, Succinct noninteractive zero knowledge for a von neumann architec-ture[C]//23rd USENIX Security Symposium (USENIX Security 14), 2014: 781-796.
Design of blockchain based zero-knowledge proof of location system
WU Wei, LIU Erwu, YANG Changxin, WANG Rui
School of Electronics and Information Engineering, Tongji University, Shanghai 201804, China
With the development of precise positioning technology, a growing number of location-based services (LBS) emerge. For example, visit a specific place to get the corresponding reward. This also leads to location fraud by illegal users in order to gain benefits. Thus, it is necessary to verify location certificates provided by users. However, present proof of location systems are deficient in verifying users’ location certificates while protecting users’ privacy. Users do not flexibly control their location certificates either. Based on blockchain, a kind of distributed proof of location system architecture was proposed and based on the proposed system architecture, a kind of proof of location protocol with zero-knowledge proof was proposed further. With the proposed architecture and the protocol, the proposed proof of location system allows users to freely select disclosed certificate parameters and positional accuracy according to their needs so that hierarchical location privacy protection was achieved.
blockchain, zero-knowledge proof, privacy protection, proof of location system
Shanghai Integrated Military and Civilian Development Fund (No.JMRH-2018-1075), The National Natural Science Foundation of China (No.61571330), Science and Technology Commission of Shanghai Municipality Research Project (No.19511102002)
TP393
A
10.11959/j.issn.2096?109x.20200020

吳煒(1995? ),男,安徽安慶人,同濟大學碩士生,主要研究方向為區塊鏈和隱私保護。
劉兒兀(1973? ),男,福建福安人,同濟大學教授、博士生導師,主要研究方向為位置服務、定位導航、人工智能和區塊鏈。

楊昌鑫 (1997? ),男,河南信陽人,同濟大學碩士生,主要研究方向為區塊鏈。
王睿(1984? ),男,安徽宣城人,同濟大學副教授、博士生導師,主要研究方向為無線通信和智能信號處理。
論文引用格式:吳煒, 劉兒兀, 楊昌鑫, 等. 基于區塊鏈的零知識位置證明系統設計[J]. 網絡與信息安全學報, 2020, 6(2): 67-76.
WU W, LIU E W, YANG C X, et al. Design of blockchain based zero-knowledge proof of location system[J]. Chinese Journal of Network and Information Security, 2020, 6(2): 67-76.
2020?01?03;
2020?03?17
劉兒兀,erwuliu@tongji.edu.cn
上海市軍民融合發展專項基金資助項目(No.JMRH-2018-1075);國家自然科學基金資助項目(No.61571330);上海市科學技術委員會科研計劃基金資助項目(No.19511102002)