張紀(jì),方歡,2
(1.安徽理工大學(xué)數(shù)學(xué)與大數(shù)據(jù)學(xué)院, 安徽 淮南 232001;2.安徽省煤礦安全大數(shù)據(jù)分析與預(yù)警技術(shù)工程實(shí)驗(yàn)室, 安徽 淮南 232001)
圖書館作為一個(gè)收集、整理、保存、傳播知識(shí)并利用的科學(xué)、文化、教育機(jī)構(gòu),在我國(guó)每個(gè)城市以及各個(gè)高校一直都占據(jù)著重要的地位.隨著2015年以來(lái)大數(shù)據(jù)的迅猛發(fā)展,智能化以數(shù)據(jù)深度挖掘和融合應(yīng)用為主要特征,再加上云計(jì)算、人工智能、5G技術(shù)的全面興起,各行各業(yè)都在推進(jìn)數(shù)據(jù)化轉(zhuǎn)型、開(kāi)展智慧建設(shè).從2017年起,我國(guó)圖書館開(kāi)始了智慧圖書館建設(shè)的歷程[2].伴隨著智慧圖書館的發(fā)展,用戶的隱私問(wèn)題也逐漸顯現(xiàn).大數(shù)據(jù)技術(shù)的應(yīng)用需要采集讀者的個(gè)人信息和數(shù)據(jù),并通過(guò)分析以提供相應(yīng)的服務(wù)內(nèi)容.如果出現(xiàn)不當(dāng)?shù)拇髷?shù)據(jù)處理或者應(yīng)用方式不正確,則會(huì)導(dǎo)致讀者的個(gè)人隱私數(shù)據(jù)發(fā)生泄漏,對(duì)用戶造成不利影響,致使用戶的滿意度下降[3].當(dāng)前圖書館的服務(wù)模式?jīng)Q定了讀者個(gè)人隱私泄露的風(fēng)險(xiǎn)主要存在于數(shù)據(jù)信息的儲(chǔ)存和傳播中[4].
文獻(xiàn)[5]提出了一種基于云背景的圖書館隱私保護(hù)模型,其從圖書館模塊、用戶模塊、云端模塊等四個(gè)模塊進(jìn)行圖書館隱私保護(hù)技術(shù)模型的構(gòu)建.文獻(xiàn)[6]基于一種圖聚類k匿名得到了一種隱私保護(hù)方法.該方法利用用戶節(jié)點(diǎn)的屬性以及結(jié)構(gòu)進(jìn)行聚類并對(duì)聚類后的數(shù)據(jù)進(jìn)行匿名化的處理從而保護(hù)了用戶的數(shù)據(jù)隱私.文獻(xiàn)[7]提出了一種IDP k-means算法,該方法通過(guò)驗(yàn)證滿足ε異構(gòu)隱私保護(hù).文獻(xiàn)[8]提出了一種基于區(qū)塊鏈技術(shù)的智慧圖書館數(shù)字資源管理框架,深入討論了圖書數(shù)字資源管理學(xué)中要解決的重點(diǎn)問(wèn)題,但其并未涉及圖書館用戶的相關(guān)信息的隱私保護(hù).文獻(xiàn)[9]利用Petri網(wǎng)對(duì)數(shù)字圖書館書刊流通系統(tǒng)進(jìn)行建模,但是沒(méi)有考慮到大數(shù)據(jù)背景下的用戶信息以及圖書館所收集分析的數(shù)據(jù)的隱私.
基于Petri網(wǎng)的相關(guān)背景知識(shí),根據(jù)文獻(xiàn)[1]中所提出的基于區(qū)塊鏈的智慧圖書館隱私保護(hù)模型對(duì)用戶信息的收集、加密、傳輸、存儲(chǔ)等流程進(jìn)行分析并建立了智慧圖書館用戶信息存儲(chǔ)的Petri網(wǎng)模型,最后使用PIPE軟件對(duì)模型進(jìn)行模擬運(yùn)行分析,表明模型具有安全性以及有界性.
定義1[10](網(wǎng))滿足以下條件的三元組N=(S,T;F)稱作一個(gè)網(wǎng):
1)S∪T≠φ
2)S∩T=φ
3)F?(S×T)∪(T×S)
4)dom(F)∪cod(F)=S∪T
其中
dom(F)={x∈S∪T|?y∈S∪T:(x,y)∈F}
cod(F)={x∈S∪T|?y∈S∪T:(y,x)∈F}
定義2[10](可達(dá)性)設(shè)Σ=(S,T;F,M)為一個(gè)Petri網(wǎng).如果存在t∈T,使M[t>M′,則稱M′為從M直接可達(dá)的.
定義3[11](區(qū)塊鏈技術(shù))區(qū)塊鏈?zhǔn)遣扇》植际郊夹g(shù)與共識(shí)算法來(lái)構(gòu)造出一個(gè)全新的信任機(jī)制,利用密碼學(xué)的方法相互關(guān)聯(lián)形成一串串的數(shù)據(jù)塊,一次網(wǎng)絡(luò)交易的數(shù)據(jù)就保存在一個(gè)對(duì)應(yīng)的數(shù)據(jù)塊里面,起到驗(yàn)證其數(shù)據(jù)的真實(shí)性并且產(chǎn)生一個(gè)新的區(qū)塊.
定義4[12](Merkle trees)在計(jì)算機(jī)科學(xué)與密碼學(xué)中,Merkle trees是一種樹(shù)形數(shù)據(jù)結(jié)構(gòu).每個(gè)葉子節(jié)點(diǎn)均以數(shù)據(jù)塊的哈希值作為標(biāo)簽, 而除了葉子節(jié)點(diǎn)之外的節(jié)點(diǎn),則以其子節(jié)點(diǎn)標(biāo)簽的加密哈希值作為標(biāo)簽Merkle trees,可以實(shí)現(xiàn)快捷的數(shù)據(jù)驗(yàn)證, 因此能夠高效地驗(yàn)證大型數(shù)據(jù)結(jié)構(gòu)的內(nèi)容.
定義5[13](智能合約)智能合約是區(qū)塊鏈中每一筆交易之間重要的“合同”,這份合同包含了眾多對(duì)交易雙方的約束規(guī)則,交易前只需預(yù)置好合同內(nèi)容,就可保證交易的安全性和不可逆性.
智能圖書館中儲(chǔ)存有大量的資源以及用戶信息.目前,圖書館網(wǎng)絡(luò)建設(shè)和應(yīng)用大多采用中心化架構(gòu),在這種網(wǎng)絡(luò)結(jié)構(gòu)體系中分布式或聯(lián)盟鏈上的節(jié)點(diǎn)之間的數(shù)據(jù)傳輸需由核心服務(wù)器控制、分配來(lái)完成,此種方式在通信過(guò)程中容易出現(xiàn)非法獲取、篡改、欺騙等數(shù)據(jù)安全問(wèn)題.因中心化故障引發(fā)連鎖反應(yīng),造成整個(gè)系統(tǒng)崩潰,中心化作用和地位已成為整個(gè)網(wǎng)絡(luò)系統(tǒng)的潛在安全威脅[14].區(qū)塊鏈作為一項(xiàng)新興的技術(shù),恰恰具有去中心化、多節(jié)點(diǎn)、可追溯、自動(dòng)化等特點(diǎn),其可以保護(hù)圖書館用戶數(shù)據(jù)傳輸?shù)目煽啃耘c完整性,對(duì)用戶信息使用非對(duì)稱加密技術(shù),有效降低了用戶的個(gè)人信息被獲取修改的風(fēng)險(xiǎn).
圖1是基于區(qū)塊鏈的圖書館用戶隱私保護(hù)模型[1],其分為四個(gè)模塊:利益相關(guān)者模塊、信息生命周期模塊、隱私風(fēng)險(xiǎn)識(shí)別模塊、區(qū)塊鏈基礎(chǔ)架構(gòu)模塊.基于區(qū)塊鏈的圖書館用戶隱私保護(hù)模型共分為四個(gè)步驟[1],流程圖如圖 2所示.
1)信息采集以及組織加工.該階段將圖書館用戶再注冊(cè)時(shí)提交的基本信息以及用戶在使用圖書館服務(wù)時(shí)產(chǎn)生的行為信息采集起來(lái).其中包含了用戶的敏感信息以及非敏感信息.在采集了此類信息后使用哈希函數(shù)對(duì)所有信息進(jìn)行加密處理.接著用戶可以自行決定信息是否公開(kāi)以及公開(kāi)的內(nèi)容,用戶此時(shí)可以對(duì)自己的信息進(jìn)行增、刪、改、查等一系列操作.
2)信息傳輸存儲(chǔ).在圖書館服務(wù)模式下,每天有相當(dāng)多的用戶信息需要圖書館對(duì)其傳輸存儲(chǔ),而傳統(tǒng)的數(shù)據(jù)存儲(chǔ)模式采用的是中心化的存儲(chǔ)模式,而中心化存儲(chǔ)存在諸多問(wèn)題,例如,其成本較高,還容易受到非法攻擊.因此,去基于分布式存儲(chǔ)的區(qū)塊鏈滿足了對(duì)用戶信息存儲(chǔ)方面的需求.在經(jīng)過(guò)前一步的操作之后,用戶的加密信息被存入到聯(lián)盟鏈的圖書館用戶節(jié)點(diǎn)上,通過(guò)檢測(cè)用戶的信用等級(jí)判斷是否進(jìn)行下一步操作.若用戶信用等級(jí)較高,則可以繼續(xù)存儲(chǔ),下一步進(jìn)行數(shù)據(jù)完整性的檢查,若某一用戶節(jié)點(diǎn)遭受非法攻擊或者存在完整性缺失,則我們會(huì)用其他節(jié)點(diǎn)的數(shù)據(jù)對(duì)其進(jìn)行恢復(fù)并返回再次檢查完整性以及全網(wǎng)廣播.
3)信息評(píng)價(jià)與儲(chǔ)存.當(dāng)數(shù)據(jù)完整性被確認(rèn)過(guò)后,系統(tǒng)會(huì)根據(jù)廣播內(nèi)容評(píng)價(jià)用戶的信用等級(jí)并打包同用戶信息一同加密存儲(chǔ)到用戶節(jié)點(diǎn)上,并傳輸?shù)絽^(qū)塊鏈中與其他圖書館所掌握的用戶信息進(jìn)行傳播共享.
4)信息傳播共享.用戶節(jié)點(diǎn)以及圖書館自身所存儲(chǔ)的數(shù)據(jù)信息會(huì)被打上數(shù)字水印,接著信息會(huì)被加蓋時(shí)間戳,也就是對(duì)信息生命周期中各階段的用戶信息加蓋時(shí)間證明,以方便通過(guò)Merkle trees對(duì)其進(jìn)行真實(shí)性驗(yàn)證.當(dāng)驗(yàn)證通過(guò)時(shí),數(shù)據(jù)將會(huì)被發(fā)布到區(qū)塊鏈上以便共享;若未通過(guò)則說(shuō)明數(shù)據(jù)信息受到污染,利用區(qū)塊鏈的可追溯性結(jié)合時(shí)間戳以及數(shù)字水印,對(duì)用戶隱私失真的問(wèn)題進(jìn)行解決并將用戶信息以及失真原因在全網(wǎng)登記廣播.
圖2 基于區(qū)塊鏈的圖書館用戶隱私保護(hù)流程圖
根據(jù)前面給出的流程,構(gòu)建基于區(qū)塊鏈的圖書館隱私保護(hù)Petri網(wǎng)模型,如圖3所示.該模型包括的主體有用戶節(jié)點(diǎn)和圖書館節(jié)點(diǎn),應(yīng)用到的技術(shù)有非對(duì)稱加密、Merkle trees、智能合約、分布式數(shù)據(jù)庫(kù)等.我們將用戶隱私數(shù)據(jù)保護(hù)模型的四個(gè)步驟中所發(fā)生的活動(dòng)用Petri網(wǎng)中的變遷T來(lái)表示,共計(jì)有37個(gè)變遷.每個(gè)變遷所表示的含義如表 1所示.變遷t1節(jié)點(diǎn)創(chuàng)建后,首先對(duì)數(shù)據(jù)進(jìn)行收集并對(duì)收集的數(shù)據(jù)應(yīng)用做初步的加密,從變遷t18處開(kāi)始,數(shù)據(jù)分別進(jìn)入用戶節(jié)點(diǎn)和圖書館節(jié)點(diǎn)做進(jìn)一步的處理,變遷t28發(fā)生時(shí)會(huì)將數(shù)據(jù)存儲(chǔ)到用戶節(jié)點(diǎn)上,這種去中心化的存儲(chǔ)方式大大降低了圖書館的物理存儲(chǔ)空間成本,同時(shí)提高了用戶信息的安全性以及可靠性,變遷t36發(fā)生時(shí),用戶信息將會(huì)被在加入?yún)^(qū)塊鏈的圖書館之間相互傳播共享,提高了知識(shí)服務(wù)傳播的效率.
表1 各變遷代表的活動(dòng)
圖3 基于區(qū)塊鏈的圖書館用戶隱私保護(hù)Petri網(wǎng)模型
通過(guò)利用區(qū)塊鏈技術(shù)可以很好的保護(hù)圖書館用戶的隱私信息不被攻擊泄露,具體體現(xiàn)在如下方面.
1) 將用戶信息通過(guò)區(qū)塊包裝永久記錄到區(qū)塊鏈的數(shù)據(jù)區(qū)塊上.
2) 利用數(shù)字簽名技術(shù)產(chǎn)生時(shí)間戳,以此證明圖書館用戶信息產(chǎn)生的時(shí)間.
3) 通過(guò)哈希算法將任意長(zhǎng)度的二進(jìn)制值映射為固定長(zhǎng)度的二進(jìn)制值以實(shí)現(xiàn)區(qū)塊鏈上的用戶信息不被篡改.
4) 通過(guò)Merkle trees對(duì)比驗(yàn)證處理用戶信息真實(shí)性.
5) 通過(guò)設(shè)計(jì)公私鑰的形式實(shí)現(xiàn)非對(duì)稱加密,只有用相應(yīng)的私鑰才能解密用公鑰加密的用戶信息.
在保證圖書館用戶隱私信息安全的前提下,基于區(qū)塊鏈的網(wǎng)絡(luò)層可以實(shí)現(xiàn)各利益相關(guān)者之間的信息交流.用戶信息在被打包成區(qū)塊信息后會(huì)通過(guò)廣播的形式傳遞到其他節(jié)點(diǎn)上去,而經(jīng)過(guò)51%的用戶節(jié)點(diǎn)驗(yàn)證過(guò)的信息將被寫入到區(qū)塊鏈主鏈上去.這些信息的交換構(gòu)成了一個(gè)沒(méi)有中心服務(wù)器的互聯(lián)網(wǎng)體系,達(dá)到了用戶信息共享的目的.通過(guò)對(duì)區(qū)塊鏈上用戶信息的分析,圖書館能將更符合用戶喜好的服務(wù)推薦給每個(gè)圖書館用戶.
PIPE是一個(gè)開(kāi)源、獨(dú)立于平臺(tái)的工具,用于創(chuàng)建和分析包括GSPN在內(nèi)的Petri網(wǎng).它的功能完全由Java實(shí)現(xiàn),以確保平臺(tái)獨(dú)立性,并提供優(yōu)雅、易于使用的圖形用戶界面,允許創(chuàng)建、保存和加載符合PNML交換格式的Petri網(wǎng).PIPE還提供了一套完整的分析模塊,用于檢查行為屬性、生成性能統(tǒng)計(jì)數(shù)據(jù)以及一些不太常見(jiàn)的功能,如PN比較和分類.利用PIPE對(duì)上述Petri網(wǎng)模型進(jìn)行仿真運(yùn)行以及分析,結(jié)果如圖 4所示.從圖 4可以得出,基于區(qū)塊鏈的圖書館用戶隱私保護(hù)Petri網(wǎng)模型具有有界性和安全性.
圖4 模型分析結(jié)果
傳統(tǒng)圖書館用戶隱私保護(hù)模型大多采用中心化存儲(chǔ)架構(gòu),在這種網(wǎng)絡(luò)結(jié)構(gòu)體系中分布式或聯(lián)盟鏈上的節(jié)點(diǎn)之間的數(shù)據(jù)傳輸需由中心服務(wù)器控制、分配來(lái)完成,在數(shù)據(jù)存儲(chǔ)成本上花費(fèi)較高,存儲(chǔ)效率往往偏低.對(duì)于基于區(qū)塊鏈的圖書館用戶隱私保護(hù)模型,由于采用了去中心化的方式將數(shù)據(jù)信息存儲(chǔ)到用戶節(jié)點(diǎn)上,發(fā)揮了信任機(jī)制的最大效果,使得用戶數(shù)據(jù)以及信息在網(wǎng)絡(luò)中完整有效安全且可靠的傳遞,圖 5展示了用戶信息的兩種儲(chǔ)存方式.
模型的去中心化主要體現(xiàn)在用戶的信息傳輸儲(chǔ)存階段.在用戶信息被加密之后將會(huì)存儲(chǔ)在用戶的各個(gè)節(jié)點(diǎn)上.當(dāng)某個(gè)數(shù)據(jù)節(jié)點(diǎn)收到非法攻擊從而導(dǎo)致該節(jié)點(diǎn)數(shù)據(jù)損毀時(shí),其他節(jié)點(diǎn)依舊保持?jǐn)?shù)據(jù)的穩(wěn)定以及安全性.被攻擊的用戶節(jié)點(diǎn)通過(guò)使用其他節(jié)點(diǎn)的數(shù)據(jù)便可對(duì)自身數(shù)據(jù)進(jìn)行恢復(fù).
圖5 用戶信息中心化存儲(chǔ)方式與去中心化存儲(chǔ)方式
表2是傳統(tǒng)圖書館用戶隱私保護(hù)模型與基于區(qū)塊鏈的圖書館用戶隱私保護(hù)模型的詳細(xì)對(duì)比情況.借助PIPE對(duì)模型作進(jìn)一步分析,得出基于區(qū)塊鏈的圖書館用戶隱私保護(hù)模型有著較好的穩(wěn)定性,且是有界、安全、無(wú)死鎖的,證明了模型的安全性以及可靠性.
表2 傳統(tǒng)圖書館用戶隱私保護(hù)模型與基于區(qū)塊鏈的圖書館用戶隱私保護(hù)模型對(duì)比
介紹了圖書館隱私保護(hù)的背景知識(shí)并列舉了幾種常用的隱私保護(hù)模型.針對(duì)新興的智慧圖書館,結(jié)合Petri網(wǎng)的相關(guān)知識(shí)對(duì)文中提出的一種基于區(qū)塊鏈的圖書館用戶隱私保護(hù)模型,進(jìn)一步建模從而生成了基于Petri網(wǎng)的區(qū)塊鏈圖書館用戶隱私保護(hù)模型.使用PIPE軟件模擬運(yùn)行分析,結(jié)果表明該模型具有安全性和有界性.未來(lái)的工作中,會(huì)注重于將模型與應(yīng)用場(chǎng)景實(shí)踐結(jié)合起來(lái)以驗(yàn)證其可操作性,同時(shí)對(duì)比實(shí)際應(yīng)用場(chǎng)景對(duì)目前模型存在的不足作進(jìn)一步的改進(jìn)與完善.