基于区块链的数据市场
點擊上方藍字關注我們
基于區塊鏈的數據市場
汪靖偉,?鄭臻哲,?吳帆,?陳貴海
上海交通大學計算機系,上海 200240
論文引用格式:
汪靖偉,?鄭臻哲,?吳帆,?陳貴海.?基于區塊鏈的數據市場.?大數據[J], 2020, 6(3):21-35
WANG J W, ZHENG Z Z, WU F, CHEN G H.Blockchain based data marketplace.?Big Data Research[J], 2020, 6(3): 21-35
1 引言
當今世界中的數據量正在迅速增加。在線社交網絡Facebook自成立以來,已經收集了超過300 PB的個人數據,而這個規模還在進一步擴大。IBM公司的研究人員提出,當今世界90%的數據是在過去2年中產生的,而且隨著新的設備和技術的出現,數據增長會進一步加快。在大數據時代,數據不斷地被收集和分析,進而引領科技創新和經濟增長。公司和組織使用其收集的數據提供個性化的用戶服務、優化公司決策過程、預測未來趨勢等。在廣泛的數據使用過程中,人們開始關心個人數據的安全問題,擔憂提供服務、收集數據的互聯網公司是否會保護用戶的數據隱私,而人們幾乎無法控制他們所產生的數據及其使用方式。近些年來,許多與侵犯用戶數據隱私有關的事件被報道,其中最著名的例子就是Facebook的5 000萬用戶數據被泄露,用戶的隱私遭到了很大程度的侵害。
為了保證數據的正常流通與使用,充分發揮大數據的價值,近年來興起了眾多關于個人數據共享與交易的新興機構。除了傳統的數據流通方式(即公司與用戶之間廣泛存在的數據換取服務的模式)外,還涌現出了大數據共享交易市場,通過將數據需求與數據源進行匹配來促成數據交易。這些數據市場已經具備了相當的規模,這些數據市場被估值數百億美元,并在持續增長。在數據市場中,數據持有者展示他們的數據信息,以吸引潛在的數據消費者;數據消費者搜索、選擇他們需要的數據集,并通過支付一定的費用來獲取數據使用權;數據市場通過促成數據交易來獲得收益。但隨著數據共享交易規模、數據價值的增長,共享交易過程中的欺詐和泄密的情況也會逐漸增多。集中式數據市場的架構一般如圖1所示,在這種架構中,集中式的公司或組織運營的市場平臺在系統中起著至關重要的作用。市場中涉及的各方——數據賣家、數據買家和市場平臺,能通過串通舞弊、套利購買策略等方式獲得更高的收益。此外,集中式的數據交易模式缺乏數據買方與數據賣方之間有效的信息溝通渠道,導致數據交易效率低下。最后,市場平臺擁有更多的信息優勢,即市場平臺知道數據內容,而數據買家在未購買數據之前無法知曉數據內容,因此市場平臺可以通過構建信息壁壘并控制信息披露來非法獲得收益。
集中式數據市場存在一些不可避免的數據安全隱私、數據版權保護以及共享流通性能瓶頸等問題。首先數據交易的中介(通常情況下是市場平臺)必須是安全可信的。市場平臺需要具備公信力,確保其不會非法使用交易中的數據,泄露數據持有者的隱私。然而市場平臺存在這樣的動機,而且即使它違規使用、出售了數據,一般也難以追究。同時,集中式數據市場很容易成為攻擊者的目標,用戶的敏感信息(例如位置、聊天記錄等)被保存在集中式的數據庫中,存在隱私泄露和數據丟失的風險。現有大多數的數據市場在集中式服務器上運行,這樣的系統存在著單點故障和單點性能瓶頸。有研究表明,現有的集中式數據市場還會控制買家和賣家的互相搜索,導致市場運行效率低下。
為了規避集中式數據市場的弊端,去中心化的數據市場誕生了。去中心化的數據市場架構可以規避依賴可信中介介入數據交易的要求,擺脫單點故障和單點性能瓶頸,并提高透明度和可信度。但是去中心化的數據市場由于缺乏中心的管理,其系統設計與安全性保證會比集中式數據市場更困難,比如“雙重支付”問題一直是分布式系統的難點。近些年來,區塊鏈技術日趨成熟,區塊鏈去中心化的架構可以作為數據市場的底層架構,提供良好的支持。區塊鏈是一種去中心化的分布式數據存儲技術,在數據市場系統中引入區塊鏈層,將使個人用戶能夠直接與數據需求方達成交易,不依賴任何第三方,從而讓用戶保持對數據的所有權,并確保交易過程的公開透明。
2 市場調研與相關研究
2.1 現有數據交易市場調研
由于數據有優化決策和提供服務的功能,各個組織和機構都開始關注數據的流通和交易。比如,Datashift、Gnip、NTT DATA等公司轉售來自Twitter等社交網絡的數據,Xignite公司出售金融行業的數據,Factual公司則關注地理位置數據的交易。同時,還涌現出了大數據共享交易市場,通過將數據需求與數據源匹配來促成數據交易,比如Infochimps、AWS Dataexchange、Qlik Datamarket、Here等。Datacoup是一個集中式數據市場平臺,允許用戶出售各種類型的個人數據(包括財務數據和社交賬戶數據),其客戶端應用程序允許用戶從第三方應用程序(如Facebook和Twitter)導入數據。由于Datacoup從用戶手中收集原始數據,因此用戶必須在數據存儲和數據管理上完全信任Datacoup。與Datacoup類似,People.io是一個集中式平臺,其最大的特點是不會將個人數據直接出售給其他組織。它使用機器學習算法分析用戶的個人數據,然后向用戶推送個性化廣告。用戶雖然不會因提供其個人數據而直接獲得獎勵,但是他們可以通過接收個性化的廣告來獲得收益。
圖1???集中式數據市場架構
國內數據市場的發展尚不成熟,還未形成完整的數據流通交易的產業鏈條。比如有以互聯網企業為主導的大數據共享平臺,它們的數據大多來源于旗下應用軟件收集的數據,如阿里云、京東萬象等;還有數據堂、數海、浪潮天元、數多多等數據共享與交易的平臺,這些平臺以多種途徑收集來自第三方的數據,實現大數據資源的在線交易。此外,還有由政府主導的大數據交易中心,這些中心多為政府/國企獨資,或國企與民企合資,如貴陽大數據交易所和上海數據交易中心等。然而這些數據交易中心一般比較封閉,其具體的數據市場架構技術還比較模糊。
近幾年,基于區塊鏈的分布式數據交易市場引起了業界的極大關注。IOTA是專門針對物聯網(IoT)設計的加密“貨幣”,利用區塊鏈技術已經搭建了針對物聯網數據的交易市場。類似的公司還有DataBrokerDAO、Datum、Datapace和Wibson等,這些公司有的直接出售其收集的數據集,有的向大眾收集個人數據,并將其出售給個人用戶。國內也有一些使用區塊鏈技術構建數據市場的例子,如上海數據交易中心采用聯盟鏈將與交易有關的信息存儲在區塊鏈節點中,以確保數據交易安全、高效、可信。現有的區塊鏈數據市場都只保證了數據市場構建的某些要素,沒有全面地考慮構建數據交易市場應該達到的目標:去中心化、公平性、隱私性、有效性以及經濟學性質。在第3節中,筆者將詳細討論這些性質。
2.2 相關研究工作
在研究界中也有許多工作涉及區塊鏈、數據市場及其相關問題。Balazinska M等人討論了新興數字數據市場的意義,并列出了這一方向的研究機會。Zyskind G等人使用區塊鏈保護個人數據的隱私,將區塊鏈轉變為一個不依賴受信第三方的自動訪問控制管理器,以明確數據的所有權,確保用戶控制他們的數據,但該工作只討論了數據的存儲和共享問題。Zheng X等人討論了使用區塊鏈共享個人健康數據的系統,使用戶以符合通用數據保護法規的方式安全地控制和共享其個人健康數據,這項工作著眼于數據的采集和存儲,重點引入了一個控制數據質量的方法。Goldfeder S等人研究了使用區塊鏈交易實物商品過程中的公平性、安全性和隱私性問題。The AdChain Registry是一個基于以太坊的廣告發行商注冊表,為廣告投放者提供被推薦的廣告發行商,為特定的數據買家提供一組被推薦的數據源。FairSwap則主要考慮在智能合約中實現公平交換的有效協議,它主要著重于數字商品公平性的實現。
也有一些文獻研究使用區塊鏈構建分布式的數據市場中的問題。Missier P等人考慮了物聯網的特征,構建了一個去中心化系統,并分析了其性能。Cao T D等人則構建了一個實時人類感知數據的市場。然而這些系統往往沒有考慮合適的定價機制,仍然以某種形式依賴于具有公信力的第三方,或者只是停留在理論的分析上,并沒有完整的系統。針對集中式數據市場的研究工作側重于探討定價機制的問題,對數據的收集、處理、拍賣各個過程有更細致的設計。Mun M等人提供了一個個人數據保管庫,提供了管理數據策略的機制,讓個人用戶可以細粒度地控制訪問和共享數據。CrowdBC是用區塊鏈構建的群智感知系統,作者著重討論了圖片數據在交易中的特性和處理辦法。Banerjee P等人構建了一個基于區塊鏈的數據市場,在買賣雙方的交易中引入了一個可信中間人,這雖然使得買賣雙方的交易變得更加簡單,但也會使系統的安全性降低很多。雖然Gupta P等人提出的交易仍需要第三方的介入,但是其在交易過程中設置了多個分布式的中介參與交易,限制了中介的壟斷能力。Ramachandran G S的創新在于其數據的傳輸和支付都在鏈下進行,這能節省區塊鏈昂貴的存儲空間。Liu K等人則針對基于區塊鏈的數據市場中的定價問題,設計了一種自動化的定價談判機制。DDV是一個出售個人病歷的分布式數據交易框架,當數據賣方想要出售其病歷時,他必須將其加密的數據上傳到云存儲服務提供商,并將其數據信息提交給區塊鏈智能合約。DDV仍使用第三方云存儲服務來存儲數據賣方的數據。盡管在將數據上傳到云存儲之前已進行了加密,但是數據購買者和數據出售者仍必須信任第三方云服務,以實現數據的持久性和數據傳遞。
2.3?區塊鏈概述
區塊鏈概念于1991年由W.ScottStornetta提出,他在論文中描述了一種稱為“區塊鏈”的數字體系結構系統。2008年,中本聰提出了比特幣這一新型的“數字貨幣”,其背后的區塊鏈技術也得到了許多研究領域的廣泛關注。
在區塊鏈網絡中,所有參與者本質上是一組不相互信任的編寫者,他們共享著一個沒有可信中間人的數據鏈。為了防止分叉現象在這個分布式環境中爆發,區塊鏈設計了共識協議。區塊鏈節點可以作為礦工提供計算資源,以競爭將事務記錄到區塊鏈中的權力,獲勝者將得到經濟激勵。這是區塊鏈達成共識的一種機制,叫作工作量證明(proof of work,POW)。
工作量證明使得理論上攻擊者只有掌握了超過整個系統50%的算力才能攻破區塊鏈系統。然而共識協議付出了消耗海量算力和資源的代價,近幾年,全球用于比特幣“挖礦”消耗的年用電量達到每年總電量的0.13%。每個完整節點都必須存儲所有事務,以在區塊鏈上驗證這些事務的合法性。此外,由于塊大小的限制和用于生成新塊的時間間隔,比特幣每秒只能處理7個事務,這不能滿足實時處理數百萬個事務的要求。
以太坊的概念在2013年由Buterin V受比特幣啟發后提出,其最大的特性就是增加了對智能合約的支持,它會在用戶的以太坊節點中運行一個虛擬機,其中運行的智能合約采用Solidity編寫,該語言能夠支持圖靈完備性。為了滿足在用戶客戶端的虛擬機中運行的需求,Solidity語言的功能被設計得很弱小,Solidity只以一種特殊的方法實現了JavaScrip函數中的一部分,使得智能合約在以太坊中比較容易出錯。另外,在以太坊網絡中進行的涉及狀態更新的計算都需要消耗“天然氣”(gas,采用Wei為單位,這是以太幣的最小單位),這使得在以太坊網絡中進行復雜計算變得不劃算。
區塊鏈技術為打造去中心化的數據市場、降低中間機構在交易雙方之間的干預作用提供了新的方向。區塊鏈具有一些特性:一是權力下放,在集中式系統中,每個交易需要通過中央可信的機構進行驗證,這不可避免地提高了中央服務器的成本和性能瓶頸;二是其透明性與安全性,交易可以快速驗證,誠實的礦工不會承認無效的交易,一旦交易被包含在區塊鏈中,就幾乎不可能刪除或者回滾交易;三是匿名性,每個用戶可以使用其地址與區塊鏈交互,目前很多區塊鏈系統致力于使區塊鏈成為完全匿名的系統,如Monero幣等。
由于這些特性,區塊鏈目前具有廣泛的應用前景。不同領域(如IoT、智能交通系統、命名和存儲系統以及健康記錄共享等)的應用都有基于區塊鏈技術的實現。區塊鏈的底層技術——星際文件系統(interplanetary file system, IPFS)是一種內容可尋址的對等超媒體分發協議,在分布式系統環境中也有廣泛的應用價值。
3?區塊鏈數據市場設計目標
在數據交易中,區塊鏈系統替代了集中式數據市場的地位,買賣雙方會直接就區塊鏈中智能合約的執行進行交易。設計基于區塊鏈系統的數據市場主要考慮如下幾個問題。
● 去中心化:由于集中式數據市場的弊端,許多研究開始討論建立一個去中心化的數據交易系統,讓數據持有者與數據需求者通過安全可信的分布式系統直接進行交易。然而許多現存的相關研究與系統設計仍然在一些模塊中依賴可信的第三方實體,而這些第三方實體有動機和能力通過破壞買方和賣方的交易獲益。因此對于去中心化的數據市場,筆者認為應構建一個不依賴任何可信第三方、只有數據買家與賣家參與的系統。交易直接由買賣雙方達成,各種安全性、隱私性的需求由分布式交易系統的設計來實現。
● 公平性:公平性指的是買家和賣家在整個交易中的地位應是相同的,他們會對交易的數據和其價格達成共識,他們都具備隨時停止交易的能力。最基礎的公平性應在智能合約執行結束時實現,要么買家獲得有效數據、賣家獲得付款,要么買家和賣家均不獲得任何收益,要防止數據賣家提供不合法數據、數據買家抵賴數據購買費用等不公平情況的出現。
● 隱私性:隱私性要求系統保護用戶的身份隱私和數據隱私。身份隱私即數據市場中用戶的匿名性,比特幣區塊鏈的匿名能力僅僅是化名的程度,有許多區塊鏈系統致力于提升它們的匿名能力。數據隱私指數據只能由購買了這份數據的用戶使用,攻擊者無法從存儲在區塊鏈中的信息得到數據的任何額外信息。在很多場景中,數據消費者往往是購買一份數據的一次使用權,在這種系統中,數據隱私性要求數據買家在使用完數據后也無法獲得數據的任何額外信息。
● 有效性:對于所有廣泛實施的實際系統,要能夠有效實施,需要保證參與者的使用體驗,這對系統的執行提出了運行效率和資源消耗上的要求。在基于區塊鏈的數據市場中,需要考慮區塊鏈系統自身的執行速度能否跟上大數據交易的需求。由于區塊鏈智能合約的特殊機制,應該盡量避免使用智能合約進行復雜計算。
● 經濟激勵:數據市場的一個主要目標是為所有參與系統的用戶謀取利益,以激勵他們參與到大數據共享與交易系統中。首先是買家和賣家都會在交易中獲益,數據賣家能夠通過出售自己數據的使用權得到盡可能多的經濟收益,數據買家能夠得到符合自身需求的高質量數據。同時,交易產生的手續費將激勵其他參與者做好系統平臺的維護工作。在定價博弈中,一些賣家和買家可能會串通,以攫取其他用戶的利益,因此數據市場在提供經濟激勵的同時,還需要確保不出現經濟套利等非法策略行為。
4 系統架構
本文設計的基于區塊鏈的數據市場系統由以下3個組件構成:以太坊區塊鏈中的一個智能合約、系統參與者持有的客戶端和一個點對點的數據傳輸網絡。當一個數據買家需要一些特定的數據來計算一個特定的任務時(如需要所處位置附近的溫度傳感器的數據計算當地室外溫度),他會使用數據篩選模塊,并通知智能合約。整個系統通過安全計算的方式定位到一些符合條件的數據,經過數據買家與數據賣家的交互后,數據定價模塊會確定出售的數據及其價格。付款完成后,系統又以安全計算的方式運行買家的計算任務,并將結果返回給買家,交易完成。在交易進行的過程中,系統需要確保前文提到的設計目標,后文將詳細介紹該系統的各個模塊。
4.1 數據篩選
數據購買者通常不需要所有用戶的所有數據,而是關心特定用戶的特定數據。例如,在眾包任務中,數據購買者想知道某位置的室外溫度,他可以提出限制條件:賣方提供數據的傳感器的位置需要在一定的范圍內,并且提供的數據也需要滿足一定的時效性。該過程被稱為數據篩選,買家可以將自己的數據需求整理成一個邏輯表達或者一個數學函數存入區塊鏈,以供賣家查詢判斷。
這些數據的篩選條件一般比較簡單,因此將買家的數據篩選需求直接上傳到區塊鏈是不合適的,這顯然暴露了買家和賣家的隱私。根據數據篩選的形式,攻擊者很容易推斷出買家的數據需求,從而獲取買家和賣家的隱私。在上例中,如果買家感興趣的一個位置被公開,攻擊者可能會推斷出買家的活動范圍,同時,賣家持有的臨近該位置的設備也被暴露。因此,為了保護系統參與者的隱私,應該在隱藏數據篩選條件的同時篩選出目標數據。最直觀的解決方法是函數加密,即擁有解密密鑰的用戶(買家)可以獲得密文數據的函數值(數據篩選函數),卻不會獲得有關明文的任何信息。
另外,將買家的數據篩選需求轉化成數學邏輯表達有時并不直觀。數據的交易有時也針對一些非結構化的數據,例如,買家需要一些“貓”的圖片。買家也許能夠判斷一段數據是否是他想要的,但無法通過簡單適當的邏輯來量化這些需求。為了給出買家篩選需求的邏輯表達,系統中需要運行一些復雜的數據處理算法來得到數據的質量以及與篩選需求的契合程度。由于需要對每一份潛在的數據進行運算,這些算法應盡量簡化。
4.2 數據存儲
數據存儲機制是一個通用術語,用于描述如何推送數據以及將其存儲在何處。主流公共區塊鏈對區塊中的交易數量和空間有限制,可以是區塊的大小(比特幣)或區塊中消耗“天然氣”的上限(以太坊)。對于數據交易市場而言,將海量的數據直接存儲在區塊鏈上是不可行的。
Quorum和Corda都是受區塊鏈啟發針對金融領域的平臺,它們提出了一種不將數據公開存儲在區塊鏈上的模型。其中,數據由參與的第三方(金融機構)保持脫鏈狀態,并且共識功能旨在確保交互各方達成協議。這種方法對于金融機構可能是實用的,但它違背了去中心化的設計目標。
盡管將完整的數據存儲到區塊鏈中是不現實的,但可以上傳與特定的數據綁定的“數據摘要”。因此,一般提出的數據市場針對的是非實時和可容錯的交易模式,這些系統可以在較長的時間間隔內將數據發送到數據后端,此方法需要分布式文件存儲層的輔助。IPFS和Swarm是2個主要的分布式文件存儲層。這2種技術都是點對點(P2P)技術,具有分布式的文件傳輸系統,其中文件通過其內容的哈希值進行尋址。當數據成功存儲在IPFS中時,用戶將收到一個哈希索引,這將允許用戶以后檢索該文件。這個索引將代替數據存入智能合約,節省整個系統的負擔。這些分布式文件系統也是公開透明的,其中存儲的數據應是加密的。同時,如果所有參與系統的用戶都維護一個IPFS或Swarm節點,其代價是很高的,可以讓一部分系統參與者作為分布式文件存儲的服務提供者,向上傳數據的用戶收取一定的費用。
4.3 數據定價
在數據市場中,數據售賣形式的設計和價格的設定一直是一個活躍的研究領域。本文在博弈論環境中考慮定價機制的設計,每個數據持有者對于他們的數據都有一個私人的估值,即數據持有者隱私被泄露出去的損失;數據購買者對于他將購買的數據也有一個估值,即這份數據對于購買者的價值。其中出價者可能選擇不誠實地報告他們對一份數據的估值。這會給交易的機制設計帶來麻煩,博弈論中的解決方法是設計激勵兼容的機制,讓每個出價者都在報告其真實估值時得到最高收益。出價者報告其真實估值能夠讓設計定價機制變得簡單很多。
多份相關數據的捆綁定價也是數據市場交易中常見的問題。早期研究通常簡單地假設對于數據買家,捆綁數據的期望價值等于所有數據的單獨價值的總和。后面的研究發現,數據之間相互影響,每份數據的價值依賴于整個交易數據集的內容,數據集價值的體現來自數據的相互關系。
數據作為一種商品有一些獨特的性質,這些性質使得數據定價需要考慮額外的一些問題。一是數據的邊際成本極低,或者說根本沒有邊際成本。邊際成本指在一個商品生產后,復制一份需要的代價。數據基本為零的邊際成本使得一旦數據買家獲得了數據賣家的數據,那么他就可以隨意處置、隨意出售這份數據。二是數據的價值和數據量沒有必然聯系。比如對于一個需要一些“貓”的圖片的人,一堆關于“狗”的圖片幾乎沒有價值。三是數據價值的量化。數據的價值難以量化,數據持有者很難估計出數據的價值,同時不同人之間的估值也大相徑庭。
針對這些數據的特性,數據市場中的數據交易模式也發生了變化。傳統的數據市場會直接交易用戶的數據,而不誠實的買家可以在賣家不知情的情況下轉售自己已購買的數據集,從而獲得利益。許多工作發現絕大多數數據消費者僅僅需要在大量數據背后的一些統計結果或高級特征,比如計算數據集的平均值,或者為機器學習模型訓練數據,而不是需要數據本身。因此,數據市場可以從數據持有者處收集數據,然后為數據消費者手中的計算任務服務。買家提供一個特定的任務,其輸入是其購買的多份數據的一次使用權,而輸出是買家想要的結果。這樣,數據本身就與數據消費者隔離了。
在上述設計中,對數據價值的評判實際上變成了對買家計算任務的結果準確度或者其計算結果對買家的價值的評判。雖然數據本身的價值難以量化,但任務結果的提升容易量化。由于買家需要的往往是多個賣家的數據,所以在交易中還需要區分每份數據單獨的價值。在計算數據價值時, Shapley值可以用于計算單份數據的貢獻。在博弈論中,計算Shapley值是一種將收益和成本公平分配給參與合作的多個參與者的一種解決方案。Shapley值的計算復雜度隨著數據數量的增長量指數級增長,因此在實際使用中常常采用近似算法。
4.4 安全計算
區塊鏈是一種公開透明、去中心化的數據存儲技術,所有進入區塊鏈系統的信息都是公開的,所有交易或者腳本的執行都是透明的。同時,區塊鏈智能合約的計算能力非常弱小,由于受區塊大小和gas限制,調用一次智能合約能進行的計算很少,但代價很高。因此,無論是在智能合約中直接運行買方發布的任務(智能合約幾乎無法承擔這樣的負擔),還是在區塊鏈外交給某個不受信任的個人,都是不安全的,同理,數據篩選過程和數據定價過程也存在這樣的問題。比特幣、以太坊等區塊鏈公共鏈中的節點之間互不信任的同時又完全公開透明的特性,使得隱私保護工作產生了新的問題。
本文的目標是在整個數據市場系統和市場系統內的交易過程中,數據市場不泄露任何關于用戶及其數據的額外信息。有許多方法可以安全、正確地執行系統中的計算工作,同時保護各方的隱私。安全計算的作用就是在保護隱私性、公平性等特性的同時完成各種計算任務,不同領域的研究都能不同程度、不同角度地達成目標。
密碼學是實現安全計算最直觀的方法。安全多方計算(secure multi-party computation,MPC)是密碼學中的一個子領域,也是安全計算問題的直接解決方案。MPC的目標是為各方創建聯合計算函數的方法,同時保護這些輸入的私密性。與傳統的加密方法不同,密碼學技術保證了通信或存儲的安全性和正確性,而這種模式的密碼學側重于保護參與者之間的隱私。MPC現在可以被看作各種現實問題(特別是那些只需要簡單的線性共享秘密的問題)的實際解決方案,例如分配投票、私人競標和拍賣、共享簽名或解密功能、私人信息檢索等。許多購買者的簡單任務可以通過MPC輕松地執行。然而,MPC方法不能用于深度學習任務。主流MPC框架的核心使用2種加密技術:加密電路和不經意傳輸。MPC將買家的任務函數轉換成一個亂碼電路,然后以不經意傳輸的方式發送出去。在復雜繁重的計算任務中,將深度神經網絡轉換成亂碼電路勢必會增加計算量,并失去一定的精度。同時,在MPC中,深度學習可能導致不可接受的通信復雜度。此外,同態加密和零知識證明也可以用于一些簡單的任務。
實現安全計算的另一種方法是使用可信硬件,如可信執行環境(trust execution environment,TEE)。TEE是一個通用概念,是主處理器的一個安全區域,它保證裝載在其中的代碼和數據在保密性和完整性方面受到保護。假設一部分用戶擁有一些TEE硬件,則將這些用戶視為安全用戶。賣方將發送他們的數據到安全用戶的TEE設備,買方的計算任務將在TEE中進行計算,并以安全的方式將結果返回買方。只有在TEE中運行的受信任的應用程序才能訪問設備的主處理器、外圍設備和內存的全部功能。硬件隔離保護數據和計算內容不受在主操作系統上運行的用戶安裝的應用程序的影響。支持TEE實現的典型硬件技術是ARM TrustZone和Intel SGX Software Guard擴展。SGX是Intel體系結構的擴展,可以在硬件級別保護應用程序的執行。例如,SGX可用于云計算環境中保護購買者數據,示例包括VC3和Haven。SGX技術的核心是在內存中隔離出一塊特殊區域(稱為“飛地”),指定程序可以在該區域中創建“安全區”,并將關鍵代碼和數據存儲到“安全區”中。只有CPU或程序本身可以訪問“飛地”中的代碼和數據。這些現有的硬件技術都被聲稱存在漏洞。而一些開源項目和大公司也正致力于使TEE更強大。
聯合學習是谷歌公司提出的一種不需要集中訓練數據的新型協同機器學習方法。它的工作流程是:數據賣方從買方提供的云上下載當前的模型,并通過從賣家數據中學習來改進模型,然后將更改聚合為一個小更新。模型的這個更新使用加密通信發送到云,在云中更新的模型立即與其他用戶的更新進行聚合,以改進共享模型。因此,所有的訓練數據都只保存在賣方的設備上,沒有單獨更新存儲在云中。聯合學習通常針對用戶擁有多個數據或一個數據集的情況,不適用于單個賣家僅提供少量數據的情況。如果賣方只提供了一條數據參與訓練,惡意買方可能有能力將賣方的真實數據從模型更新中進行逆推計算,且數據的訓練過程需要頻繁的通信,效率非常低。
5 系統實現與驗證
5.1 系統實現框架
根據第4節設計的數據市場框架,筆者實現了一個基于以太坊私鏈的數據市場系統,包括系統參與者持有桌面應用客戶端、以太坊網絡中的智能合約以及數據傳輸網絡。桌面客戶端采用JavaScript編寫,以太坊智能合約使用Solidity編寫,數據傳輸則直接使用IPFS的JS接口。筆者設計的系統架構以及各部分組件間的交互如圖2所示。
筆者實現了預期系統的一個簡化版本,以便于進行系統正確性與可行性的驗證與分析。筆者將系統簡化為一個買家和多個潛在的賣家進行交易,一個買家只需要一份數據,定價機制采用第二價格拍賣,即成交的數據采用賣家出價最低的數據,而數據按出價第二低的價格付款。買家的計算任務被設置成簡單的形式,可以使用同態加密或安全多方計算來保證安全計算。筆者在系統中實現了2種具體的數據形式的交易,非結構化的圖片數據和結構化的GPS行程數據。
數據市場的交易過程如圖3所示。數據賣家在智能合約中添加一份新的數據信息,數據買家添加一個包含數據需求的訂單,賣家根據訂單中的條件,在匹配到合法數據后給出一個報價,系統會運行定價機制并計算出獲勝的數據,這份數據會通過安全計算的方式計算買家的任務,同時交付數據。在系統中,用戶可以進行的操作如下。
● 注冊賬號。要在數據市場中買賣數據,用戶首先必須注冊一個以太坊賬號,客戶端中也包含一個簡單的以太坊賬號管理功能。同時用戶還需要在筆者編寫的智能合約(以下簡稱DDM)中注冊賬號,比如用戶可以在智能合約中注冊一個傳感器設備的賬號,其中需要公開傳感器設備的類別、型號等信息。
圖2???系統架構以及各部分組件間的交互
圖3???數據市場交易流程
● 添加數據。數據持有者在生成了一些他想要出售的數據后,可以將數據加密上傳到IPFS,同時在智能合約賬號中注冊這份數據,其中包含數據的存儲地址、數據的哈希值和注冊時間等。在筆者的系統設計中,鼓勵數據買家在添加數據訂單以購買數據時設置數據注冊時間要求,只有滿足數據注冊時間要求的數據持有者才有資格競標該訂單,以提升數據的時效性和可靠性。
● 發布訂單。若數據買家想要在市場中購買特定數據的一次使用權,那么他會在DDM中添加一個訂單,訂單中包含買家對數據的需求(包括數據類型、數據選擇函數、數據價格限制、數據數量限制等)和買家使用數據的計算任務。
● 數據賣家提供其出價的哈希值。數據賣家選好一份或者多份符合數據買家需求的數據,并定好一個打包的價格。由于區塊鏈完全公開透明的性質,直接在DDM中出價會導致套利發生,后報價的賣家可以看見其他賣家的出價,并通過控制自己的出價來獲得更高的利潤。筆者在系統中設置了一個時間窗口,賣家需要在窗口內提交其出價的哈希值,這樣相當于實現了一個密封拍賣。同時這樣的設計有助于實現公平性。
● 數據買家通知DDM獲取市場數據賣家的真實出價。數據買家通知DDM停止接受用戶參與交易,并開始接受已參與交易的用戶公開他們的出價。智能合約無法主動執行命令,需要區塊鏈用戶觸發,同時數據買家可以將一些賣家列入黑名單,拒絕他們的出價。
● 數據賣家公布真實出價。數據賣家公布其出價,該出價需要與之前的哈希值吻合。如果數據賣家沒有在規定時間內公布真實出價,說明賣家后悔了,則系統會降低該賣家的信譽值,以作為懲罰,成功交易數據的賣家的信譽值會提升。信譽值過低的用戶將無法參與交易,信譽值體系可以抑制系統參與者的作弊行為。
● 定價機制。筆者采用經典的維氏拍賣(Vickrey– Clarke– Groves auction)機制用于數據挑選和價格決定。VCG拍賣機制保證了真實性,因此每個投標人都有動機對自己的個人數據進行真實估價。
● 安全計算/交付數據。系統會采用同態加密的方式計算買家的計算任務,然后將加密的結果交給數據買家,訂單完成。由于現在安全計算仍處于不成熟的階段,同態加密的計算復雜度非常高,筆者僅測試了使用加法同態算法來計算買家的計算任務。在未來,筆者會支持第4節中安全計算方法中其他的方法。數據買賣方也可以直接交易數據,采用混合加密的方法,將數據的對稱密鑰用買家提供的公鑰進行加密,這種方式可以在公開透明的環境中實現無交流的數據傳遞。
5.2 系統分析與驗證
筆者從構建區塊鏈數據市場的設計目標來討論實現的演示系統的優勢,包括公平性、隱私性和有效性,同時,還考慮了系統的可擴展性。筆者發現,該系統基本實現了區塊鏈數據市場定義的設計目標,整個系統運行流暢,可用性較高,安全隱私性得到了很好的保證。
5.2.1 公平性
在交易結果達成之前,即定價機制開始執行前,交易雙方都可以終止交易,雖然這可能會導致參與者的信譽值降低,但在“后悔”不常發生的情況下,能夠確保交易的隨時終止。同時,在定價機制開始執行后,由于區塊鏈和安全計算的特性,交易雙方都無法阻止交易的繼續進行,以太幣轉移和買家任務計算就一定會執行,從而確保了數據交易的不可抵賴性,保證了交易公平。
5.2.2 隱私性
筆者在系統中保護了系統參與者的身份隱私和數據隱私。身份隱私是基于區塊鏈的匿名能力實現的,而數據隱私則得到了全方位的保護,數據加密、數據選擇機制和安全計算使攻擊者無法從交易的執行中得到數據的任何額外信息。然而筆者實現的系統中沒有考慮暴露賣家對自己數據定價所泄露的隱私,未來的工作中將會考慮出價隱私。
5.2.3 有效性
區塊鏈的運行效率問題一直是其被詬病的地方,比特幣的一份交易從完成到最后被寫入區塊鏈中需要十幾分鐘,而這份交易在網絡上最后被確認的時間甚至超過一個小時。在客戶端中計算數據選擇函數,以安全計算的方式計算買家的任務以及圖片的處理的計算,都是比較耗時的,這會降低用戶使用該應用程序的體驗滿意度。經過應用程序的隨機點擊測試發現,從客戶端用戶的角度,平均一個按鈕的響應時間為4 s左右,這說明該系統目前的設計尚無法達到實時,但可以保證基本使用需求。筆者提出的系統直接基于以太坊實現,提高數據市場系統的可用性可以采用更加高效、輕量級的區塊鏈系統。
在以太坊區塊鏈中部署合同或任何類型的交易都會產生交易費用。在以太坊區塊鏈中,使用氣體估算成本。通常,系統中的礦工會確定運行一些指令的價格,而一個事務的發起者(比如數據買家向區塊鏈添加訂單、數據賣家向區塊鏈提交出價)需要規定可以消耗氣體的最大值。由于礦工喜歡處理提供高激勵的事務,因此氣體價格較低的交易可能需要很長時間。然而由于個人數據的價值很低,因此在智能合約中復雜的計算會使得買賣雙方的收益直線降低。筆者提出的系統通過減少智能合約的計算量來保證系統參與者的利益。
通過多次測試,筆者得到了該系統中各種操作消耗氣體的平均值(見表1)。根據現在的以太坊公鏈上以太幣的價格(每個以太幣價格約250美元)計算,平均每個操作的消耗是424 587×10-18×250≈1.06×10-10美元,即便一個數據買家需要成千上萬份數據,他參與系統所需要的消耗也非常少。
智能合約中可能存儲著許多與交易有關的信息,以太坊的智能合約雖然支持多種復雜數據類型,但實際中稍微復雜的結構會導致請求失效。比如由于要上傳的數組長度很長,每一項也是很復雜的小數, 1 024維的數組根本無法被成功地上傳到智能合約。以太坊還有一個區塊氣體限制,由以太坊默認設置為8 000 000 Wei,因此事實上無法上傳維度過高的數據(見表2)。由于以太坊對區塊氣體量的限制,由以太坊默認設置為最高8 000 000 Wei,如果某一項操作消耗的氣體量超過了這個值,這項操作就會被回退,因此在DDM中添加訂單就存在被回退的可能。筆者提出的系統將復雜的數據結構(比如數據選擇函數)存儲在IPFS中,再將其地址放入訂單中存入DDM。
由于數據定價是通過智能合約在以太坊區塊鏈上執行的,因此其計算成本不可被忽略。為了評估該系統的數據定價成本,以基于VCG拍賣的數據定價測試大量賣家出價的情況下氣體的消耗。圖4顯示了VCG數據定價的耗氣量與數據訂單收到的出價數量之間的關系。盡管可以進一步優化數據定價算法的實現,但是當大量數據賣方競標同一數據訂單時,數據定價成本將非常高。如果要實現基于以太坊區塊鏈的數據市場,那么高昂的數據定價成本將成為該系統應用的一大障礙。
圖4???數據定價的Gas消耗與訂單收到的出價數量關系
5.2.4 去中心化與可擴展性
“可擴展性三難”是指區塊鏈系統在可擴展性、去中心化和安全性這3個方面的不可避免的矛盾。該系統是一個完全去中心化的系統,不依賴任何可信第三方,因此可擴展性和安全性將受到更大的挑戰。為了保證安全性,筆者提出的系統犧牲了可擴展性,如果要支持不一樣的數據形式、數據販賣方式和定價機制,就要重新編寫智能合約,而兼容性也將存在問題,這些問題都可以在實際數據市場的構建中被納入考慮。在未來數據市場的部署中,筆者將進一步就可擴展性、去中心化和安全性這3個方面的權衡做更多的探討。
6 結束語
數據是數據驅動型經濟中的重要資產,它推動了新的數據交易行業的興起。數據市場是當今數據資產化的一個重要形式,分布式的數據市場具有中心化數據市場不具備的隱私保護能力和交易安全性保障,有巨大的市場前景和研究前景。在本文中,筆者討論了未來數據市場應滿足的特性,分析了基于區塊鏈的分布式數據市場中存在的挑戰,提出了初步的解決方案,并探討了這些技術未來可能的發展方向,為實際數據市場的構建提供了參考性意見。數據市場與區塊鏈技術都處于技術快速發展的 階段,需要研究者根據這些問題進行更深入的探索與研究。
作者簡介
汪靖偉(1997-),男,上海交通大學計算機系碩士生,主要研究方向為區塊鏈應用與數據交易 。
鄭臻哲(1989-),男,博士,上海交通大學計算機科學與工程系助理教授,主要研究方向為算法博弈論、移動計算、機器學習 。
吳帆(1981-),男,博士,上海交通大學計算機科學與工程系教授,中國計算機學會專業會員,主要研究方向為網絡經濟學、無線網絡、移動計算、隱私安全 E-mail:fwu@cs.sjtu.edu.cn。
陳貴海(1963-),男,上海交通大學教授、博士生導師,主要研究方向為對等計算、數據處理、傳感器網絡、路由算法、高性能計算機體系結構、組合數學等。發表的文章被GoogleScholar引用12000余次,SCI引用1000余次,ESI高被引論文4篇,11次獲得國際會議最佳論文獎。2008年獲國家杰出青年科學基金,2011年獲國務院政府特殊津貼,2015年獲教育部自然科學獎一等獎(排名第一),2017年入選中國計算機學會會士(CCFFellow),2018年獲江蘇省科學技術獎一等獎(排名第一)。現任中國計算機學會分布計算與系統專業委員會主任,ACMSIGCOMMChina副主席 。
大數據期刊
《大數據(Big Data Research,BDR)》雙月刊是由中華人民共和國工業和信息化部主管,人民郵電出版社主辦,中國計算機學會大數據專家委員會學術指導,北京信通傳媒有限責任公司出版的期刊,已成功入選中文科技核心期刊、中國計算機學會會刊、中國計算機學會推薦中文科技期刊,并被評為2018年國家哲學社會科學文獻中心學術期刊數據庫“綜合性人文社會科學”學科最受歡迎期刊。
關注《大數據》期刊微信公眾號,獲取更多內容
往期文章回顧
《大數據》2020年第3期目次&摘要
專題導讀:數據資產化探索
數據資產化框架初探
基于利潤最大化的數據資產價值評估模型
總結
以上是生活随笔為你收集整理的基于区块链的数据市场的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 作者:李香菊(1964-),女,江西农业
- 下一篇: 【CyberSecurityLearni