發布時間:2020-03-25所屬分類:計算機職稱論文瀏覽:1次
摘 要: 摘要:針對互聯網租車場景中個人隱私保護問題,提出一種基于區塊鏈的個人隱私保護機制。首先,針對互聯網租車中暴露的個人隱私問題提出一個基于區塊鏈的個人隱私保護解決方案框架;然后,通過參與者簡介、數據庫設計以及性能分析給出模型的設計和定義,并從授
摘要:針對互聯網租車場景中個人隱私保護問題,提出一種基于區塊鏈的個人隱私保護機制。首先,針對互聯網租車中暴露的個人隱私問題提出一個基于區塊鏈的個人隱私保護解決方案框架;然后,通過參與者簡介、數據庫設計以及性能分析給出模型的設計和定義,并從授予權限、寫入數據、讀取數據和撤銷權限等方面闡述該模型的框架和實現;最后,通過基于區塊鏈的系統開發表明了該機制的可實現性。
關鍵詞:個人隱私保護;區塊鏈;互聯網租車;數據交互審計平臺
0引言
隨著計算機和網絡的普及,個人隱私保護逐漸成為人們關注和擔心的問題。如果忽視個人隱私保護問題或者對其處理不當,可能會給人們帶來經濟名譽損失甚至阻礙網絡創新等后果。個人隱私保護問題可以通過法律和技術兩條途徑進行解決,而當前出現的區塊鏈技術正好可以成為個人隱私保護問題的有效解決方案。區塊鏈是一個分布式的賬本,記錄了每個交易發送和驗證的歷史,同時也記錄了交易中包含的額外信息…。區塊鏈中所有的區塊都按照時間先后順序排列,由礦工不斷地創造添加,并且每個節點都有一份區塊鏈信息的備份。區塊鏈技術由于具有去中心化、永久記錄和便于審計等特點口j,剛好可用于滿足隱私數據的完整性、可限制性以及可審計性等數據安全需求,因此可以作為個人隱私保護問題的有效解決方案。
國內外關于區塊鏈技術的文獻不多,其中關于區塊鏈技術在個人隱私保護問題上應用的文獻更是鳳毛麟角。在區塊鏈技術對于個人隱私保護問題的應用領域方面,Swan提到健康隱私問題的嚴重性,認為區塊鏈技術可以提供一個保護個人健康隱私數據不受侵犯的機制,但是卻沒有給出區塊鏈對于個人隱私保護問題的應用場景實現細節。在使用區塊鏈技術解決實際問題并提供具體實現細節方面,Zyskind等提出了一種去中心化的個人信息管理系統,通過某種協議,可以在該系統中使用比特幣來傳遞存儲、詢問和數據分析等指令,從而確保用戶擁有和控制他們自己的信息;但是該文并沒有提出具體的案例應用,也沒有關于個人隱私理論問題的闡述。Kosba等認為當前的區塊鏈交易環境缺乏交易的隱私保護,虛擬地址之間的金錢流動完全暴露在區塊鏈環境中,因此提出了一個叫作Hawk的去中心化智能合約系統,通過避免在區塊鏈上存儲財務交易的明文形式來保障交易的隱私性;但是該方法只能保障交易信息的隱私性,缺乏更加廣闊的實際生活領域應用空間。Lazarovich_o詳細給出了如何使用區塊鏈技術來保護個人隱私,提出了基于分布式存儲的第三方數據庫escrow以及基于區塊鏈審計的隱形墨水系統,并以醫療信息個人隱私保護為例來闡明區塊鏈技術在個人隱私問題上的應用;但是缺乏對個人隱私問題的探討以及區塊鏈應用細節的展示。綜上所述,國內外學者對區塊鏈在個人隱私保護問題上應用的研究還十分有限。因此,本文將通過代入具體應用場景,將區塊鏈技術個人隱私保護機制的應用細節進行逐一闡述,為進一步研究個人隱私保護問題提供機制參考。
相關期刊推薦:《計算機應用》把介紹計算機應用技術作為重點,以推動經濟發展和科技進步為宗旨,把促進計算機開發應用創新作為目標。多年來,雜志以中國計算機學會為依托,受到國內計算機各應用領域專家的關注。讀者對象:計算機應用工程技術人員、大專院校師生、企事業單位管理干部、科研院所從事計算機開發應用人員、計算機公司職員等必備的工具,是啟迪思維、開拓進取、更新知識、開發應用的良師益友。
劉雅輝等提出,個人隱私保護問題的技術層面解決方案需要考慮匿名、數據訪問控制、審計、在線社會網絡隱私保護、移動定位隱私保護以及數據庫個人隱私保護等方面的問題和需求。廣受社會關注的互聯網租車場景剛好貼合上述需求,具有一定的普遍性和代表性,因此本文將其作為區塊鏈技術個人隱私保護機制的應用場景。
1互聯網租車及其個人隱私問題
1.1互聯網租車場景及流程
互聯網租車以“租車+代駕”為基本模式為乘客提供了一種新型的城市出行方式,我國的“滴滴出行”等互聯網租車軟件平臺已經受到了民眾的歡迎。但是隨著互聯網租車的逐漸盛行,個人隱私問題也暴露無遺,并引起了社會的廣泛關注。
考慮這樣一個場景:乘客想要通過互聯網租車軟件出行去公司上班。首先,乘客在互聯網租車軟件中輸入目的地;然后由互聯網租車軟件自動獲取乘客出發地,推薦一定范圍內的司機,并將乘客出發地信息發送給司機;司機接收到后決定是否搶單,而搶單成功的司機有優先權完成本次交易。
1.2該流程暴露的問題
乘客每天都使用該軟件,出行路線也比較固定。在此過程中,乘客遇到了一些個人隱私方面的問題:
問題1乘客無法保證互聯網租車平臺會對自己的個人信息進行保密,上傳的行程路線信息可能會被互聯網租車平臺盜用于推銷廣告以及獲取其他商業價值。
問題2平臺及各個司機可以隨意查看乘客行駛路線信息,使得乘客難以有效掌控自己的個人隱私信息。
問題3當乘客想要停止使用該互聯網租車軟件時,之前保存于該軟件上的信息卻無法清空。
問題4假如乘客已經成功要求該互聯網租車軟件刪除自己的個人信息,若之后該軟件受到黑客攻擊,乘客發現泄漏名單中竟然有自己的名字,也沒有任何證據對其進行訴訟。
1.3解決方案
為了解決上述四個隱私保護問題,本文使用基于區塊鏈的第三方數據庫和數據交互審計平臺來進行個人隱私保護。
第三方數據庫是指用戶可以選擇自己信任的數據庫來實現個人隱私數據的托管。第三方數據庫是一種開源的數據庫,只要提供一個鏈接便可使用。由于其存放的是用戶隱私數據的加密形式,因此看不見隱私數據具體內容。不同用戶可選擇不同的第三方數據庫,通過這樣的分布式存儲可以增強數據安全性以及減少互聯網租車軟件服務器的數據存儲量。
數據交互審計平臺是一種建構在區塊鏈之上并對所有數據操作行為進行審計的系統。數據交互審計平臺使用區塊鏈來記錄互聯網租車平臺、司機以及其他團體對用戶數據的每一次操作,包括讀數據、寫數據、更新數據以及許可管理。數據交互審計平臺可保證所有相關數據操作都被記錄在區塊鏈中,從而加強了互聯網租車軟件平臺等各方的操作合規性,同時能夠讓用戶真正控制和掌握自己的數據。
本文解決機制框架如圖1所示。首先,乘客、第三方數據庫和數據交互審計平臺之間進行初始密鑰交換,并由乘客授予數據交互審計平臺權限。為了租車,乘客將上傳自己的行程路線隱私信息。通過第三方數據庫及區塊鏈審計方法,回避互聯網租車軟件平臺,使得其無法獲取用戶的整個行程路線,問題1將得到解決。
其次,在互聯網租車軟件平臺和司機讀取乘客行程路線的過程中,兩者通過數據交互審計平臺獲取用戶數據,其所有操作都記錄在區塊鏈上;再加上第三方數據庫無法看到用戶數據明文形式,其分布式存儲可保障用戶數據安全。上述均增強了乘客對個人隱私信息的掌控感,問題2將得到解決。
然后,乘客可以讀取訪問者記錄,不僅增強了對自身數據的掌控感,同時假如平臺泄露隱私,乘客還可以有證據狀告該平臺的違規操作,問題4將得到解決。
最后,當用戶不想繼續使用該互聯網租車軟件平臺時,可以撤銷該平臺所在數據交互審計平臺的操作權限,從而保障自身隱私免受侵害,問題3得到解決。
2模型設計和定義
2.1參與者
模型中包括以下參與者:
1)乘客移動終端(本文用u表示)。乘客移動終端可以是下載了互聯網租車平臺APP的用戶手機,代表了用戶身份。
2)數據交互審計平臺(本文用s表示)和第三方數據庫server(本文用E表示)。
3)互聯網租車軟件平臺(本文用A表示);ヂ摼W租車軟件平臺即常見的打車軟件。A需要獲取乘客出發地點,以此來提供可匹配的最佳司機源(比如一定范圍內的司機)。
4)互聯網租車軟件司機(本文用C表示);ヂ摼W租車軟件司機可以是下載了互聯網租車平臺(司機版)的司機移動終端。當A提供了若干個可匹配的最佳司機C后,會將乘客出發地發送給C。C申請查看乘客行程路線后決定是否搶單。
2.2數據庫
2.2.1區塊鏈數據庫
對于區塊鏈數據庫的設計來說,首先要提到區塊鏈交易的說明書定制。Herbert等在解決授權問題時提到了兩種方法:一種是Masterbiteoin模型,另外一種是Bespoke模型。Herbert等想要解決的問題是如何通過區塊鏈來完成對軟件使用的授權,以及如何保障軟件完整、防止軟件盜版、實現軟件更新。在Masterbitcoin模型中,軟件廠商通過區塊鏈,在特定的區塊鏈錢包地址中向用戶錢包地址轉移1單位的Masterbitcoin,以此來代表廠商對用戶授予軟件的使用權。用戶手中欲購買的軟件將自動讀取交易,若驗證得到用戶地址中的Masterbitcoin確實來自于廠商的特定地址,則自動啟動安裝;否則用戶將無法安裝軟件。而Bespoke模型則使用了一種具有特殊說明書(specification)的區塊鏈,將一些額外的域成分包含在說明書中。這些額外的域成分是為軟件授權的靈活要求量身定制的,比如可以在說明書中加入token、license、softwareHash以及signature等域,來進一步實現軟件的所有權轉移和完整性檢查等高級功能。另外,區塊鏈說明書對于不同的加密貨幣是不同的,有時候可以根據自己的需要來構筑這種說明書,從而滿足特定的應用需求。
Herbert方法對于本文的互聯網租車案例也有一定的啟發。本文可以通過實現不同個體在區塊鏈上發送交易來達到對交易內容的審計,因此本文也需要使用一種特別定制說明書的區塊鏈。也就是說,本文可以根據特定的目的來構造一種更為獨特的區塊鏈說明書。本文的交易說明書如圖2所示。
圖2中Hash(meta-data)是該交易所需要傳達的某個消息meta.data的哈希值,目的是為了以一種較短字節的方式來存儲較長的消息meta-data;token用來記錄是誰查看或者操作了乘客u的信息;signature則用來記錄發送者的簽名,主要是為了驗證發送者的身份,從而能夠確定該交易的真實性;tx—id是特定的交易號,起到區塊鏈當中的唯一標識作用。
在本文的定制交易中,發送者使用接收者的公鑰對消息進行加密生成Hash,接收者使用自己的私鑰進行解密;發送者使用自己的私鑰進行簽名生成signature,接收者使用發送者的公鑰進行簽名驗證。
2.2.2第三方數據庫
第三方數據庫E需要有能力為每一個“用戶一數據交互審計平臺”組合建立和維護一張表thechainoftitle,以此來記錄它曾驗證過的所有區塊鏈交易號tx—id以及其對應交易的詳細信息(比如token和signature)。該表構造如圖3所示。
圖3中Hash(meta—data1)是某個消息meta-datal的哈希值,對E不可見。token存放乘客隱私信息的數據操作動作,對E可見,且E可根據token具體內容采取相應措施。signature是E需要使用相應發送者的公鑰進行驗證的部分。Encrypt(meta-data2)是用戶個人隱私數據的加密形式,E無法看到其明文形式。
2.2.3數據交互審計平臺數據庫
數據交互審計平臺數據庫存放了各參與者(如U、E、A、s)進行數據交互時所需的一些必要信息,包括區塊鏈地址(如U的區塊鏈地址UAddress)、非區塊鏈ID號碼(如U的非區塊鏈ID號碼UID)等,其角色類圖、角色屬性、角色方法如圖4和表1所示。
該數據庫有如下幾種角色方法。
1)send(X;Y)。向x發送內容Y。發送方式包括發送到區塊鏈地址和非區塊鏈地址兩種。發送到區塊鏈地址是指將相應交易發送到某角色所在區塊鏈的錢包地址當中。由于區塊鏈定制域中包含了meta-data等定制內容,通過該交易剛好能實現對所裝載信息的審計。以參與者U為例,一般的發送形式為U.send(XAddress;Hash(meta-data,token,signature)。發送到非區塊鏈地址是指將相應內容通過電子郵件等方式進行發送。以參與者U為例,一般的發送形式為U.send(X;Y)。其中接收者具有辨識內容Y并且由此觸發相應動作的能力,而內容Y包括普通信息、授權指令等類型。
2)read(X)。讀取區塊鏈上的交易x。一般由E通過txid將區塊鏈上相應的交易查找出來,比如根據一個tx—id“002”找到區塊鏈上的相應交易并提取出來。讀取所有交易(如讀取al1.token),則是將對應參與者的所有交易依次遍歷提取出來。
3)generate(X)。生成密鑰x。本模型中,生成密鑰主要包括生成非對稱密鑰和生成對稱密鑰兩種類型。生成非對稱密鑰是指系統將用戶鼠標或觸屏的滑動路線數據作為輸入,采用橢圓曲線密碼體制(EllipticCurveCryptography,ECC)生成公鑰和私鑰。而生成對稱密鑰是指系統將用戶鼠標或觸屏的滑動路線數據作為輸入,采用高級加密標準(AdvancedEncryptionStandard,AES)算法生成對稱密鑰作為雙方共享密鑰。
SCISSCIAHCI