国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

區(qū)塊鏈在交易可信管理上的研究綜述*

2023-08-07 20:34:36毛湘科張桂剛邢春曉
關(guān)鍵詞:數(shù)據(jù)管理區(qū)塊交易

毛湘科 李 超,2 張桂剛,4 張 健 蔚 欣 邢春曉,2,3

(1.清華大學(xué)信息國(guó)家研究中心 北京 100084)(2.清華大學(xué)計(jì)算機(jī)系 北京 100084)(3.清華大學(xué)互聯(lián)網(wǎng)產(chǎn)業(yè)研究院 北京 100084)(4.中國(guó)科學(xué)院自動(dòng)化研究所 北京 100190)

1 引言

2008 年,中本聰發(fā)表了關(guān)于加密數(shù)字貨幣的論文,標(biāo)志著區(qū)塊鏈技術(shù)的誕生[1]。區(qū)塊鏈?zhǔn)且环N通過(guò)共識(shí)協(xié)議、P2P 網(wǎng)絡(luò)、加密算法和鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)等來(lái)實(shí)現(xiàn)去中心化環(huán)境下數(shù)據(jù)一致性的技術(shù)。在十余年的發(fā)展過(guò)程中,區(qū)塊鏈技術(shù)從最初的加密貨幣領(lǐng)域發(fā)展遍及到物聯(lián)網(wǎng)[2]、供應(yīng)鏈[3]、醫(yī)療健康[4]、金融科技[5]等眾多領(lǐng)域。從任何用戶(hù)都可以參與的公鏈發(fā)展出需要獲得許可認(rèn)證的聯(lián)盟鏈。從存儲(chǔ)地之間的轉(zhuǎn)賬交易發(fā)展成了存儲(chǔ)文本、圖片和表格等多種類(lèi)型的數(shù)據(jù);從完全的去中心化、脫離監(jiān)管法,發(fā)展成了多中心化和強(qiáng)調(diào)監(jiān)管的重要性。這些發(fā)展趨勢(shì)都越來(lái)越凸顯區(qū)塊鏈所具備的防篡改、透明和可追溯等特性對(duì)交易數(shù)據(jù)的可信管理能力。

區(qū)塊鏈具備與分布式數(shù)據(jù)庫(kù)相類(lèi)似的數(shù)據(jù)存儲(chǔ)管理能力,已經(jīng)有一些學(xué)者就區(qū)塊鏈和分布式數(shù)據(jù)庫(kù)在存儲(chǔ)、共識(shí)算法和查詢(xún)等方面進(jìn)行了詳細(xì)的對(duì)比[6]。相比傳統(tǒng)的分布式數(shù)據(jù)庫(kù),區(qū)塊鏈在數(shù)據(jù)管理方面最大的優(yōu)勢(shì)在于實(shí)現(xiàn)了去中心化環(huán)境下對(duì)交易的可信管理。區(qū)塊鏈能夠?qū)崿F(xiàn)對(duì)數(shù)據(jù)的可信管理主要體現(xiàn)在三個(gè)方面:1)區(qū)塊鏈的共識(shí)協(xié)議、鏈?zhǔn)浇Y(jié)構(gòu)和加密算法確保了去中心化環(huán)境下各節(jié)點(diǎn)間的數(shù)據(jù)的一致性,這是數(shù)據(jù)可信的前提。2)區(qū)塊鏈提供的可驗(yàn)證查詢(xún)方法,確保了不同類(lèi)型節(jié)點(diǎn)在執(zhí)行查詢(xún)?cè)L問(wèn)結(jié)果的完整性和可信性。3)區(qū)塊鏈上存儲(chǔ)的交易數(shù)據(jù)是透明的、全過(guò)程留痕的和可追溯的,任何參與者都可以對(duì)交易的真實(shí)性進(jìn)行驗(yàn)證。

與已有的數(shù)字貨幣、共識(shí)協(xié)議、系統(tǒng)架構(gòu)、交易分析等類(lèi)型的區(qū)塊鏈技術(shù)綜述文章不同,本文的主要工作是從區(qū)塊鏈對(duì)數(shù)據(jù)可信管理的角度出發(fā),對(duì)近些年區(qū)塊鏈在數(shù)據(jù)可信管理上相關(guān)的研究工作進(jìn)行梳理。首先,我們從區(qū)塊鏈的底層實(shí)現(xiàn)出發(fā),對(duì)去中心化環(huán)境下提供區(qū)塊鏈實(shí)現(xiàn)可信管理的共識(shí)協(xié)議算法和ADS進(jìn)行了簡(jiǎn)單的梳理分析。接著,從區(qū)塊鏈進(jìn)行數(shù)據(jù)管理所需要的最基礎(chǔ)的查詢(xún)功能出發(fā),對(duì)區(qū)塊鏈上查詢(xún)方法的改進(jìn)進(jìn)行了歸納總結(jié),并且從醫(yī)療數(shù)據(jù)管理、物聯(lián)網(wǎng)數(shù)據(jù)管理和數(shù)據(jù)溯源三個(gè)方面對(duì)查詢(xún)的應(yīng)用進(jìn)行了討論。

2 區(qū)塊鏈交易可信管理的基礎(chǔ)

區(qū)塊鏈作為一種去中心化的分布式賬本,共識(shí)算法、可驗(yàn)證數(shù)據(jù)結(jié)構(gòu)是實(shí)現(xiàn)區(qū)塊鏈對(duì)交易可信管理的基礎(chǔ)。

2.1 區(qū)塊鏈共識(shí)算法

共識(shí)算法是維護(hù)區(qū)塊鏈在互不信任的環(huán)境中各節(jié)點(diǎn)間數(shù)據(jù)一致性的基礎(chǔ),各節(jié)點(diǎn)間數(shù)據(jù)的一致性是交易可信管理的最低要求。在比特幣中,中本聰設(shè)計(jì)了基于工作量證明的共識(shí)算法(Proof of Work,PoW),通過(guò)消耗計(jì)算資源解決難題的方式來(lái)達(dá)成一致共識(shí),是目前區(qū)塊鏈系統(tǒng)中最常用的共識(shí)算法。隨著區(qū)塊鏈技術(shù)的發(fā)展和在不同場(chǎng)景下的應(yīng)用,一些新的共識(shí)算法也被相繼提出,例如權(quán)益證明(Proof of Stake,PoS)[7]、委托權(quán)益證明(Delegated Proof of Stake,DPoS)[8]和實(shí)用拜占庭容錯(cuò)(Practical Byzantine Fault Tolerance,PBFT)[9]算法等。

2.2 可信數(shù)據(jù)結(jié)構(gòu)

為了實(shí)現(xiàn)對(duì)區(qū)塊鏈中存儲(chǔ)的交易數(shù)據(jù)進(jìn)行快速的可信查詢(xún)驗(yàn)證,區(qū)塊鏈在設(shè)計(jì)的時(shí)候提供了ADS數(shù)據(jù)結(jié)構(gòu)來(lái)對(duì)交易進(jìn)行組織。

1)Merkle Hash Tree

Merkle Hash Tree(MHT)是由密碼學(xué)家Merkle提出來(lái)的。MHT 通過(guò)樹(shù)狀結(jié)構(gòu)把一系列的元素組織起來(lái),通過(guò)樹(shù)內(nèi)路徑就可以快速完成驗(yàn)證其中某個(gè)元素。

MHT 是一棵由哈希值構(gòu)成的二叉樹(shù),通過(guò)對(duì)一組有序的數(shù)據(jù)集合進(jìn)行哈希運(yùn)算,并將哈希值作為葉子節(jié)點(diǎn),通過(guò)二叉樹(shù)的構(gòu)建和哈希運(yùn)算構(gòu)建MHT。首先將數(shù)據(jù)塊集合D中的所有元素進(jìn)行哈希運(yùn)算,得到有序的哈希集合。有序的哈希集合H作為葉子節(jié)點(diǎn)層,按照排序?qū)γ績(jī)蓚€(gè)相鄰的節(jié)點(diǎn)進(jìn)行拼接,并進(jìn)行哈希運(yùn)算作為兩個(gè)節(jié)點(diǎn)的父節(jié)點(diǎn)。自底向上如此返回對(duì)每層節(jié)點(diǎn)進(jìn)行運(yùn)算,最后得到一個(gè)MHT根的值。

2)Merkle Patricia Tree

在以太坊[10]和Hyperledger Fabric[11]等區(qū)塊鏈系統(tǒng)中,除了包含有交易數(shù)據(jù)的Merkle 根外,還含有針對(duì)賬戶(hù)狀態(tài)數(shù)據(jù)的狀態(tài)Merkle根(State Root),以太坊塊頭還含有針對(duì)交易執(zhí)行日志的收據(jù)Merkle 根(Receipts Root)。以太坊計(jì)算Merkle 根使用的是Merkle Patricia 樹(shù),雖然區(qū)塊中的交易數(shù)據(jù)是不變的,但狀態(tài)數(shù)據(jù)經(jīng)常改變且數(shù)量眾多,構(gòu)建新區(qū)塊時(shí),MPT 僅需計(jì)算在新區(qū)塊中變化了的賬戶(hù)狀態(tài),狀態(tài)沒(méi)有變化的分支可直接引用,而無(wú)需重新計(jì)算整棵樹(shù)。在MPT 樹(shù)中,包含了擴(kuò)展節(jié)點(diǎn)、分支節(jié)點(diǎn)和葉子結(jié)點(diǎn)。擴(kuò)展節(jié)點(diǎn)包含了共同的Key 前綴;分支節(jié)點(diǎn)通常在擴(kuò)展結(jié)點(diǎn)之后,基于單個(gè)16 進(jìn)制字符的key 前綴實(shí)現(xiàn)了樹(shù)的分支;葉子結(jié)點(diǎn)包含一個(gè)以太坊賬戶(hù)狀態(tài)。MPT 樹(shù)實(shí)質(zhì)上是融合了MHT 和前綴樹(shù),因此其具有查找能力。以一個(gè)以太坊賬戶(hù)地址為查找路徑,能夠快速地從MPT 根向下查找到葉子節(jié)點(diǎn)中賬戶(hù)的狀態(tài)數(shù)據(jù),這種查找能力是MHT樹(shù)所不具備的。

3)Merkle Bucket Tree

在Hyperledger Fabric 中計(jì)算狀態(tài)Merkle 根使用的是Merkle Bucket 樹(shù),Merkle Bucket 樹(shù)是多叉樹(shù),每個(gè)葉子結(jié)點(diǎn)是一個(gè)桶,桶中存放的是Key-Value類(lèi)型的狀態(tài)數(shù)據(jù)集。為新區(qū)塊計(jì)算狀態(tài)根時(shí),沒(méi)有變化的桶可以被跳過(guò),因而可快速計(jì)算狀態(tài)根。Merkle Bucket 樹(shù)可通過(guò)調(diào)整桶數(shù)和分支樹(shù)控制樹(shù)的深度和寬度,從而可在不同的性能和資源需求間權(quán)衡。

3 區(qū)塊鏈查詢(xún)

區(qū)塊鏈具備與數(shù)據(jù)庫(kù)相類(lèi)似的存儲(chǔ)功能,其也經(jīng)常被用來(lái)與分布式數(shù)據(jù)庫(kù)進(jìn)行比較。對(duì)于區(qū)塊鏈上交易數(shù)據(jù)的可信管理,離不開(kāi)數(shù)據(jù)查詢(xún)。在比特幣、以太坊和超級(jí)賬本三種典型的區(qū)塊鏈系統(tǒng)中,均采用Key-Value 數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ),有限的表達(dá)能力限制了這些系統(tǒng)定義更復(fù)雜的查詢(xún)。同時(shí),受限于可信數(shù)據(jù)結(jié)構(gòu)(ADS)所支持的查詢(xún)類(lèi)型,這些系統(tǒng)只支持交易驗(yàn)證、賬戶(hù)狀態(tài)查詢(xún)等簡(jiǎn)單查詢(xún),無(wú)法支持更豐富的可驗(yàn)證查詢(xún)。特別是,區(qū)塊鏈通常為鏈?zhǔn)浇Y(jié)構(gòu),當(dāng)存儲(chǔ)的交易數(shù)據(jù)量較大時(shí),執(zhí)行復(fù)雜查詢(xún)的效率會(huì)十分低下,無(wú)法滿(mǎn)足大規(guī)模的查詢(xún)需求。為了提升區(qū)塊鏈上查詢(xún)的可信度、高效性和支持復(fù)雜查詢(xún),已經(jīng)有許多的研究者進(jìn)行了大量的研究工作。接下來(lái),將從對(duì)區(qū)塊鏈的查詢(xún)改進(jìn)和查詢(xún)應(yīng)用兩方面分別進(jìn)行敘述。

3.1 查詢(xún)改進(jìn)

區(qū)塊鏈作為僅追加的鏈?zhǔn)浇Y(jié)構(gòu),其提供的簡(jiǎn)單的查詢(xún)功能難以滿(mǎn)足用戶(hù)的需求。為了提升查詢(xún)的效率,支持更復(fù)雜的查詢(xún)類(lèi)型,許多的研究工作對(duì)原有區(qū)塊鏈的查詢(xún)方案進(jìn)行了改進(jìn)。

受啟發(fā)于傳統(tǒng)數(shù)據(jù)庫(kù)提供的豐富查詢(xún)功能和區(qū)塊鏈系統(tǒng)的防篡改性,已經(jīng)有一些系統(tǒng)將區(qū)塊鏈和數(shù)據(jù)庫(kù)的優(yōu)勢(shì)進(jìn)行了結(jié)合。結(jié)合的方式主要有兩種,一種是在區(qū)塊鏈系統(tǒng)的基礎(chǔ)上融入數(shù)據(jù)庫(kù)查詢(xún)管理功能,提升區(qū)塊鏈的查詢(xún)的效率;另一種是在數(shù)據(jù)庫(kù)的基礎(chǔ)上融入?yún)^(qū)塊鏈層,來(lái)提升數(shù)據(jù)庫(kù)的防篡改性和可信性。

對(duì)于第一種結(jié)合的方式,其通常將區(qū)塊鏈上的數(shù)據(jù)復(fù)制存儲(chǔ)至數(shù)據(jù)庫(kù)中。例如:在EtherQL[12]中,其通過(guò)以太坊提供的監(jiān)聽(tīng)接口將區(qū)塊數(shù)據(jù)導(dǎo)入到MongDB 數(shù)據(jù)庫(kù)中,然后通過(guò)MongoDB 提供的查詢(xún)功能進(jìn)行數(shù)據(jù)查詢(xún)。在ChainSQL[13]中,其通過(guò)在區(qū)塊鏈實(shí)現(xiàn)拜占庭協(xié)議,將區(qū)塊鏈和數(shù)據(jù)庫(kù)相結(jié)合,并將所有事務(wù)傳輸?shù)疥P(guān)系型數(shù)據(jù)庫(kù)中豐富查詢(xún)功能。在EtherQL和ChainSQL等類(lèi)似系統(tǒng)中,數(shù)據(jù)存儲(chǔ)在鏈下數(shù)據(jù)庫(kù)中并缺少查詢(xún)結(jié)果集完整性驗(yàn)證機(jī)制,難以確保數(shù)據(jù)不被篡改,因此對(duì)數(shù)據(jù)的可信管理支持不好。在BlockchainDB[14]中,其在區(qū)塊鏈系統(tǒng)的基礎(chǔ)上提供了一層key-value 的數(shù)據(jù)庫(kù)層,其可以通過(guò)簡(jiǎn)單的put/get方法進(jìn)行數(shù)據(jù)的獲取和驗(yàn)證。在FalconDB[15]中,其在區(qū)塊鏈的上層提供了一層數(shù)據(jù)庫(kù)層,并在數(shù)據(jù)庫(kù)內(nèi)容的基礎(chǔ)上建立一種ADS來(lái)為客戶(hù)端提供可信查詢(xún)驗(yàn)證,但是其每個(gè)區(qū)塊內(nèi)只能存儲(chǔ)一筆交易會(huì)造成存儲(chǔ)資源的浪費(fèi)。Veritas[16]也在區(qū)塊鏈之上添加了一層可驗(yàn)證的數(shù)據(jù)庫(kù)系統(tǒng)層,并且提供了對(duì)SQL 語(yǔ)言的支持。雖然在BlockchainDB、FalconDB和Veritas等系統(tǒng)中提供了交易可信查詢(xún)支持,但是存儲(chǔ)數(shù)據(jù)至傳統(tǒng)據(jù)庫(kù)中仍然會(huì)有數(shù)據(jù)被篡改的風(fēng)險(xiǎn)。

對(duì)于第二種結(jié)合的方式,每個(gè)節(jié)點(diǎn)都管理自己的數(shù)據(jù)庫(kù)實(shí)例并在其上面執(zhí)行全局排序的事務(wù)。例如:在BigChainDB[17]中,其在MongDB 的基礎(chǔ)上添加了一層區(qū)塊鏈層,每個(gè)節(jié)點(diǎn)維護(hù)本地的Mong-DB數(shù)據(jù)庫(kù),并且所有的區(qū)塊,交易和原數(shù)據(jù)都存儲(chǔ)在MongDB 中,因此在查詢(xún)時(shí)可以具備與MongDB相類(lèi)似的查詢(xún)能力。在Blockchain Relational Database[18]中,其將區(qū)塊鏈層與關(guān)系數(shù)據(jù)庫(kù)PostgreSQL進(jìn)行了整合。ChainfyDB[19]提出了在任意與SQL-99兼容的數(shù)據(jù)庫(kù)管理系統(tǒng)上添加區(qū)塊鏈層的解決方案。

上述兩種類(lèi)型的解決方案,都過(guò)度地依賴(lài)于與其相關(guān)的數(shù)據(jù)庫(kù)的能力。然而,這些數(shù)據(jù)庫(kù)對(duì)于區(qū)塊鏈查詢(xún)中常見(jiàn)的區(qū)間范圍查詢(xún),時(shí)間范圍查詢(xún)和可信查詢(xún)等都不能提供良好的支持。

區(qū)塊鏈?zhǔn)墙⒃诓豢尚怒h(huán)境下的,當(dāng)用戶(hù)獲得查詢(xún)結(jié)果時(shí),往往需要驗(yàn)證其查詢(xún)結(jié)果的可信性和完整性。vChain[20]是一個(gè)實(shí)現(xiàn)了高效可驗(yàn)證查詢(xún)處理算法的系統(tǒng),其假定用戶(hù)節(jié)點(diǎn)并不一定存儲(chǔ)整個(gè)區(qū)塊鏈的全部數(shù)據(jù),而只存儲(chǔ)所有區(qū)塊中的Hash,并且其在每個(gè)區(qū)塊中添加了一個(gè)額外的AttDigest 字段來(lái)對(duì)查詢(xún)結(jié)果的真實(shí)性進(jìn)行驗(yàn)證。SEBDB[21]在以太坊的基礎(chǔ)上實(shí)現(xiàn)了一個(gè)支持關(guān)系型語(yǔ)義、可信查詢(xún)和鏈上鏈下查詢(xún)的區(qū)塊鏈數(shù)據(jù)庫(kù)。文獻(xiàn)[22]針對(duì)使用一般驗(yàn)證查詢(xún)方法驗(yàn)證區(qū)塊鏈上的范圍查詢(xún)結(jié)果真實(shí)性時(shí)開(kāi)銷(xiāo)巨大的情況,提出了一種GEM2-Tree 數(shù)據(jù)結(jié)構(gòu),來(lái)達(dá)到減少gas開(kāi)銷(xiāo)的目的。文獻(xiàn)[23]和[24]基于信任執(zhí)行環(huán)境(TEE)的Intel SGX來(lái)執(zhí)行面向輕節(jié)點(diǎn)可驗(yàn)證查詢(xún),以解決一般的基于ADS 的可信驗(yàn)證查詢(xún)和驗(yàn)證對(duì)象(VO)所需要的網(wǎng)絡(luò)、存儲(chǔ)和計(jì)算開(kāi)銷(xiāo)。在文獻(xiàn)[25]中,針對(duì)混合存儲(chǔ)模型區(qū)塊鏈系統(tǒng)中關(guān)鍵詞可信查詢(xún),設(shè)計(jì)了Suppressed Merkle inverted index 和Chameleon inverted index 兩種類(lèi)型的索引結(jié)構(gòu)來(lái)減少維護(hù)ADS的gas開(kāi)銷(xiāo)。

從上述所列舉的文獻(xiàn),大部分的工作對(duì)區(qū)塊鏈上的查詢(xún)研究都是圍繞單一類(lèi)型的交易數(shù)據(jù)和單鏈系統(tǒng)進(jìn)行的,對(duì)于包含多種類(lèi)型交易數(shù)據(jù)和多條鏈系統(tǒng)的區(qū)塊鏈研究工作較少,這是將來(lái)具有挑戰(zhàn)的問(wèn)題。

3.2 查詢(xún)應(yīng)用

區(qū)塊鏈具備的透明性、可追溯性和防篡改性使得區(qū)塊鏈被使用在各種不同的應(yīng)用場(chǎng)景中進(jìn)行數(shù)據(jù)的可信管理,常見(jiàn)的有醫(yī)療健康數(shù)據(jù)管理、物聯(lián)網(wǎng)數(shù)據(jù)管理和數(shù)據(jù)溯源等。

3.2.1 醫(yī)療健康數(shù)據(jù)管理

醫(yī)療健康領(lǐng)域信息化技術(shù)的普及,產(chǎn)生了大量的電子醫(yī)療數(shù)據(jù),如病歷、化驗(yàn)數(shù)據(jù)、處方等,這些數(shù)據(jù)對(duì)于患者的治療,醫(yī)學(xué)研究和新藥研發(fā)都起著至關(guān)重要的作用。但是,受限于患者隱私,數(shù)據(jù)所有權(quán)不明確和數(shù)據(jù)格式不一等問(wèn)題,難以使得醫(yī)療數(shù)據(jù)在患者、醫(yī)療機(jī)構(gòu)和科研機(jī)構(gòu)之間進(jìn)行可信的管理,從而影響數(shù)據(jù)的共享。區(qū)塊鏈的技術(shù)出現(xiàn)為醫(yī)療健康數(shù)據(jù)的可信管理提供了解決方案,因?yàn)樗试S去中心化的數(shù)據(jù)管理。

已經(jīng)有多個(gè)綜述對(duì)區(qū)塊鏈在醫(yī)療數(shù)據(jù)的可信管理進(jìn)行了詳細(xì)的歸納總結(jié)[26~29]?,F(xiàn)有的基于區(qū)塊鏈進(jìn)行管理的醫(yī)療數(shù)據(jù)主要有兩種類(lèi)型,一種是醫(yī)生錄入的信息系統(tǒng)的患者病歷、檢查結(jié)果和處方等文件類(lèi)型的數(shù)據(jù)。另一類(lèi)是患者通過(guò)智能手環(huán)、血壓計(jì)和血糖儀等聯(lián)網(wǎng)健康檢測(cè)設(shè)備自測(cè)的數(shù)據(jù)。從單個(gè)患者的角度出發(fā),從區(qū)塊鏈上獲取與個(gè)人相關(guān)的當(dāng)前健康數(shù)據(jù)、特定時(shí)間區(qū)間內(nèi)的健康數(shù)據(jù)和匯總健康數(shù)據(jù)等都離不開(kāi)區(qū)塊鏈系統(tǒng)上的查詢(xún)支持。典型的查詢(xún)類(lèi)型包括但不限于:1)獲取患者在某段時(shí)間內(nèi)的診斷記錄。2)查詢(xún)某個(gè)醫(yī)生在某個(gè)特定時(shí)間內(nèi)的接診記錄和開(kāi)具的診斷書(shū)等。3)檢索患者的最新診斷結(jié)果。4)根據(jù)某個(gè)關(guān)鍵詞進(jìn)行醫(yī)療記錄的查詢(xún)等。

現(xiàn)有的基于區(qū)塊鏈的醫(yī)療數(shù)據(jù)可信管理方法中仍然存在著許多需要解決的問(wèn)題。例如醫(yī)療數(shù)據(jù)的類(lèi)型復(fù)雜,包括了文本、表格和圖片等,現(xiàn)有的基于區(qū)塊鏈的系統(tǒng)難以實(shí)現(xiàn)精確而高效的查詢(xún),且對(duì)于一些關(guān)聯(lián)查詢(xún)和語(yǔ)義查詢(xún)支持較差。區(qū)塊鏈?zhǔn)枪_(kāi)透明的,所有參與者都可以完全訪(fǎng)問(wèn)所有數(shù)據(jù),這顯然不利于對(duì)患者隱私的保護(hù),因此在對(duì)參與者的訪(fǎng)問(wèn)權(quán)限進(jìn)行管理和控制,或者采用零知識(shí)證明、同態(tài)加密算法等技術(shù)來(lái)解決查詢(xún)中的隱私泄露問(wèn)題。

3.2.2 物聯(lián)網(wǎng)數(shù)據(jù)管理

隨著物聯(lián)網(wǎng)技術(shù)的廣泛應(yīng)用,物聯(lián)網(wǎng)設(shè)備產(chǎn)生的數(shù)據(jù)爆炸式的增長(zhǎng)。物聯(lián)網(wǎng)數(shù)據(jù)異構(gòu)程度高,隱私難以保障和數(shù)據(jù)分散的特點(diǎn)導(dǎo)致了數(shù)據(jù)難以管理的問(wèn)題。為了更好地管理和利用物聯(lián)網(wǎng)數(shù)據(jù),基于區(qū)塊鏈技術(shù)對(duì)的物聯(lián)網(wǎng)數(shù)據(jù)管理受到了廣泛的關(guān)注。

已經(jīng)有多個(gè)綜述文獻(xiàn)對(duì)區(qū)塊鏈在物聯(lián)網(wǎng)數(shù)據(jù)管理上的應(yīng)用進(jìn)行了闡述[2,30~33]?;谶@些研究,我們可以發(fā)現(xiàn)區(qū)塊鏈對(duì)物聯(lián)網(wǎng)數(shù)據(jù)的管理已經(jīng)涉及到了智能交通、智慧城市、食品供應(yīng)鏈和智能穿戴設(shè)備等領(lǐng)域,并且已經(jīng)應(yīng)用在了數(shù)據(jù)的采集、數(shù)據(jù)處理和數(shù)據(jù)共享等多個(gè)不同的階段。考慮到物聯(lián)網(wǎng)所涉及的數(shù)據(jù)規(guī)模大,完全將數(shù)據(jù)存儲(chǔ)在區(qū)塊鏈上需要大量的存儲(chǔ)空間,同時(shí)對(duì)于區(qū)塊鏈的吞吐量要求也較高,因此有些工作采用鏈上存儲(chǔ)數(shù)據(jù)摘要,鏈下存儲(chǔ)原始數(shù)據(jù)的方式來(lái)減輕區(qū)塊鏈的負(fù)擔(dān)??紤]到物聯(lián)網(wǎng)所涉及的范圍較廣,下面以傳感器網(wǎng)絡(luò)為例例舉幾個(gè)常見(jiàn)的管理應(yīng)用:1)驗(yàn)證鏈下存儲(chǔ)的原始數(shù)據(jù)的摘要是否與鏈上存儲(chǔ)的哈希值一致來(lái)判斷數(shù)據(jù)是否可信。2)查詢(xún)某個(gè)傳感器所有的數(shù)據(jù)記錄。3)查詢(xún)某個(gè)區(qū)域內(nèi)所有傳感器在某個(gè)區(qū)域內(nèi)的數(shù)據(jù)記錄。

盡管已經(jīng)有許多的工作采用區(qū)塊鏈在物聯(lián)網(wǎng)數(shù)據(jù)的管理上做了嘗試,但是仍然有許多需要解決的問(wèn)題。考慮到物聯(lián)網(wǎng)數(shù)據(jù)的差異性巨大,現(xiàn)有的基于區(qū)塊鏈的系統(tǒng)難以實(shí)現(xiàn)對(duì)多種不同來(lái)源的數(shù)據(jù)進(jìn)行綜合管理。在鏈上和鏈下相結(jié)合的混合型區(qū)塊鏈系統(tǒng)中,解決復(fù)雜類(lèi)型查詢(xún)和提升大規(guī)模查詢(xún)的效率都是需要解決的。

3.2.3 數(shù)據(jù)溯源

數(shù)據(jù)溯源可以視為一種特殊類(lèi)型的查詢(xún)。溯源查詢(xún)可以形式化的描述為。P表示查詢(xún)的條件,表示查詢(xún)的區(qū)間,可以是時(shí)間戳或者是區(qū)塊號(hào)。如果交易之間存在依賴(lài)關(guān)系,則Q返回區(qū)間中與交易TXi存在直接或間接依存關(guān)系的所有交易。如果交易為包含某些屬性的交易數(shù)據(jù),則Q 返回[f,t]內(nèi)包含該屬性的所有交易。

區(qū)塊鏈上存儲(chǔ)交易數(shù)據(jù)不可篡改、公開(kāi)透明和全過(guò)程留痕的特性使得其能夠完美地適用于數(shù)據(jù)溯源類(lèi)型的應(yīng)用場(chǎng)景。數(shù)據(jù)溯源作為一種驗(yàn)證數(shù)據(jù)來(lái)源是否可信的方式,對(duì)于交易數(shù)據(jù)的可信管理是至關(guān)重要的。已經(jīng)有許多綜述對(duì)農(nóng)產(chǎn)品[34]、供應(yīng)鏈[35]和奢侈品[39]等行業(yè)利用區(qū)塊鏈進(jìn)行溯源的研究進(jìn)行了總結(jié)概括。區(qū)塊鏈屬于僅追加的鏈?zhǔn)浇Y(jié)構(gòu),在進(jìn)行數(shù)據(jù)溯源時(shí),最簡(jiǎn)單的做法是從最新的區(qū)塊向前面的區(qū)塊依次進(jìn)行查找,直到找出所有符合查詢(xún)條件的交易數(shù)據(jù)為止。但是,隨著區(qū)塊鏈上的區(qū)塊數(shù)目增多,存儲(chǔ)的交易量變大時(shí),依次查找的方法會(huì)變得十分緩慢。為了提升溯源的效率,使用數(shù)據(jù)庫(kù)或者數(shù)據(jù)結(jié)構(gòu)對(duì)交易進(jìn)行重構(gòu)成了一種常見(jiàn)的解決辦法。在文獻(xiàn)[36]中,其利用交易數(shù)據(jù)間的依賴(lài)關(guān)系,采用有向無(wú)環(huán)圖(DAG)對(duì)交易進(jìn)行重構(gòu),從而將溯源問(wèn)題轉(zhuǎn)換成DAG 上的搜索問(wèn)題,大大提升效率。對(duì)于結(jié)構(gòu)化的交易數(shù)據(jù),可以采用關(guān)系型數(shù)據(jù)庫(kù)來(lái)進(jìn)行數(shù)據(jù)復(fù)制,在確保不被篡改的前提下,直接利用關(guān)系數(shù)據(jù)庫(kù)的查詢(xún)語(yǔ)言進(jìn)行溯源查找。對(duì)半結(jié)構(gòu)化和非結(jié)構(gòu)化類(lèi)型的交易數(shù)據(jù),可以采用信息檢索中構(gòu)建索引的方式加快數(shù)據(jù)查詢(xún)等。

4 未來(lái)研究挑戰(zhàn)

區(qū)塊鏈技術(shù)已經(jīng)在可信交易管理上被廣泛的使用。接下來(lái),本文將結(jié)合區(qū)塊鏈技術(shù)的發(fā)展趨勢(shì)和在交易管理上現(xiàn)存的問(wèn)題,對(duì)區(qū)塊鏈技術(shù)在交易可信管理上可能面臨的挑戰(zhàn)進(jìn)行展望。

設(shè)計(jì)面向包含多種類(lèi)型交易數(shù)據(jù)的區(qū)塊鏈系統(tǒng)的查詢(xún)算法。區(qū)塊鏈系統(tǒng)存儲(chǔ)的交易數(shù)據(jù)日益趨于多樣化,不再是地址之間的轉(zhuǎn)賬交易數(shù)據(jù)。在區(qū)塊鏈上可能同時(shí)包含有文本、表格和圖片等多種類(lèi)型的交易數(shù)據(jù),但是在現(xiàn)有的區(qū)塊鏈查詢(xún)算法中,針對(duì)同時(shí)包含文本、表格和圖片等交易的區(qū)塊鏈的查詢(xún)算法尚未出現(xiàn)。因此,在區(qū)塊鏈技術(shù)被各領(lǐng)域廣泛使用的背景下,設(shè)計(jì)出面向包含多種類(lèi)型交易數(shù)據(jù)的區(qū)塊鏈系統(tǒng)的查詢(xún)算法是亟待解決的問(wèn)題。

針對(duì)多鏈上的數(shù)據(jù)查詢(xún)解決方法設(shè)計(jì)。隨著業(yè)務(wù)的不斷發(fā)展,單鏈系統(tǒng)已經(jīng)無(wú)法滿(mǎn)足業(yè)務(wù)的需求。在未來(lái)的區(qū)塊鏈系統(tǒng)中,必將越來(lái)越青睞于多鏈系統(tǒng),最終會(huì)鏈鏈互聯(lián)組成互鏈網(wǎng)。但是,目前的查詢(xún)算法還未涉及到多鏈系統(tǒng)中,因此設(shè)計(jì)出多鏈系統(tǒng)中的查詢(xún)算法也是十分關(guān)鍵的問(wèn)題。

如何通過(guò)外置數(shù)據(jù)庫(kù)或者數(shù)據(jù)結(jié)構(gòu)提升復(fù)雜查詢(xún)的效率。區(qū)塊鏈屬于鏈?zhǔn)浇Y(jié)構(gòu),且只具備數(shù)據(jù)追加功能,在執(zhí)行聚合、聯(lián)合和溯源等類(lèi)型的查詢(xún)時(shí),效率低下。在關(guān)系數(shù)據(jù)庫(kù)中能較快的執(zhí)行聚合、聯(lián)合類(lèi)查詢(xún),在圖數(shù)據(jù)結(jié)構(gòu)中能較快速的執(zhí)行溯源查詢(xún)。但是,外置的數(shù)據(jù)庫(kù)或者數(shù)據(jù)結(jié)構(gòu)不具備防篡改特性,難以確保返回查詢(xún)結(jié)果的完整性和可信性。因此,在確保查詢(xún)結(jié)果完整可信的前提下,如何利用外置的數(shù)據(jù)庫(kù)或者數(shù)據(jù)結(jié)構(gòu)提升查詢(xún)的效率是本研究需要解決的重要問(wèn)題。

如何提升復(fù)雜區(qū)塊鏈系統(tǒng)中大規(guī)模查詢(xún)的效率。隨著參與組織以及鏈數(shù)量的增加,參與的用戶(hù)也會(huì)增加,查詢(xún)的請(qǐng)求數(shù)量也會(huì)增加。當(dāng)復(fù)雜區(qū)塊鏈系統(tǒng)中的查詢(xún)請(qǐng)求數(shù)量特別大時(shí),在保證返回查詢(xún)結(jié)果完整性和可信性的前提下,如何確保查詢(xún)的高效性,是需要研究的關(guān)鍵問(wèn)題。

5 結(jié)語(yǔ)

本文對(duì)近期區(qū)塊鏈在可信交易管理上的開(kāi)展研究工作進(jìn)行了總結(jié)概括。首先,我們從共識(shí)算法、ADS兩方面對(duì)區(qū)塊鏈能夠?qū)崿F(xiàn)對(duì)交易可信管理的基礎(chǔ)進(jìn)行了敘述,接著對(duì)實(shí)現(xiàn)區(qū)塊鏈上交易可信管理的查詢(xún)方法從查詢(xún)的改進(jìn)和應(yīng)用兩個(gè)方面進(jìn)行了歸納總結(jié),然后對(duì)未來(lái)區(qū)塊鏈在交易可信管理上的挑戰(zhàn)進(jìn)行了展望。在將來(lái),我們將對(duì)第4 節(jié)中提出的挑戰(zhàn)性問(wèn)題進(jìn)行解決。

猜你喜歡
數(shù)據(jù)管理區(qū)塊交易
企業(yè)級(jí)BOM數(shù)據(jù)管理概要
定制化汽車(chē)制造的數(shù)據(jù)管理分析
海洋環(huán)境數(shù)據(jù)管理優(yōu)化與實(shí)踐
區(qū)塊鏈:一個(gè)改變未來(lái)的幽靈
科學(xué)(2020年5期)2020-11-26 08:19:12
CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
區(qū)塊鏈:主要角色和衍生應(yīng)用
科學(xué)(2020年6期)2020-02-06 08:59:56
區(qū)塊鏈+媒體業(yè)的N種可能
讀懂區(qū)塊鏈
交易流轉(zhuǎn)應(yīng)有新規(guī)
大宗交易
大化| 衡阳市| 九龙坡区| 松潘县| 惠水县| 双鸭山市| 东台市| 文化| 德保县| 南城县| 巧家县| 台东县| 湘西| 曲麻莱县| 土默特左旗| 台前县| 莱阳市| 冀州市| 河东区| 安顺市| 简阳市| 建德市| 健康| 金门县| 彰化市| 洞口县| 清苑县| 大埔县| 德昌县| 赣榆县| 永川市| 米泉市| 桓仁| 吕梁市| 长丰县| 钦州市| 应城市| 永泰县| 达日县| 岑溪市| 扬州市|