張紀,方歡,2
(1.安徽理工大學數(shù)學與大數(shù)據(jù)學院, 安徽 淮南 232001;2.安徽省煤礦安全大數(shù)據(jù)分析與預警技術工程實驗室, 安徽 淮南 232001)
圖書館作為一個收集、整理、保存、傳播知識并利用的科學、文化、教育機構,在我國每個城市以及各個高校一直都占據(jù)著重要的地位.隨著2015年以來大數(shù)據(jù)的迅猛發(fā)展,智能化以數(shù)據(jù)深度挖掘和融合應用為主要特征,再加上云計算、人工智能、5G技術的全面興起,各行各業(yè)都在推進數(shù)據(jù)化轉型、開展智慧建設.從2017年起,我國圖書館開始了智慧圖書館建設的歷程[2].伴隨著智慧圖書館的發(fā)展,用戶的隱私問題也逐漸顯現(xiàn).大數(shù)據(jù)技術的應用需要采集讀者的個人信息和數(shù)據(jù),并通過分析以提供相應的服務內容.如果出現(xiàn)不當?shù)拇髷?shù)據(jù)處理或者應用方式不正確,則會導致讀者的個人隱私數(shù)據(jù)發(fā)生泄漏,對用戶造成不利影響,致使用戶的滿意度下降[3].當前圖書館的服務模式?jīng)Q定了讀者個人隱私泄露的風險主要存在于數(shù)據(jù)信息的儲存和傳播中[4].
文獻[5]提出了一種基于云背景的圖書館隱私保護模型,其從圖書館模塊、用戶模塊、云端模塊等四個模塊進行圖書館隱私保護技術模型的構建.文獻[6]基于一種圖聚類k匿名得到了一種隱私保護方法.該方法利用用戶節(jié)點的屬性以及結構進行聚類并對聚類后的數(shù)據(jù)進行匿名化的處理從而保護了用戶的數(shù)據(jù)隱私.文獻[7]提出了一種IDP k-means算法,該方法通過驗證滿足ε異構隱私保護.文獻[8]提出了一種基于區(qū)塊鏈技術的智慧圖書館數(shù)字資源管理框架,深入討論了圖書數(shù)字資源管理學中要解決的重點問題,但其并未涉及圖書館用戶的相關信息的隱私保護.文獻[9]利用Petri網(wǎng)對數(shù)字圖書館書刊流通系統(tǒng)進行建模,但是沒有考慮到大數(shù)據(jù)背景下的用戶信息以及圖書館所收集分析的數(shù)據(jù)的隱私.
基于Petri網(wǎng)的相關背景知識,根據(jù)文獻[1]中所提出的基于區(qū)塊鏈的智慧圖書館隱私保護模型對用戶信息的收集、加密、傳輸、存儲等流程進行分析并建立了智慧圖書館用戶信息存儲的Petri網(wǎng)模型,最后使用PIPE軟件對模型進行模擬運行分析,表明模型具有安全性以及有界性.
定義1[10](網(wǎng))滿足以下條件的三元組N=(S,T;F)稱作一個網(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](可達性)設Σ=(S,T;F,M)為一個Petri網(wǎng).如果存在t∈T,使M[t>M′,則稱M′為從M直接可達的.
定義3[11](區(qū)塊鏈技術)區(qū)塊鏈是采取分布式技術與共識算法來構造出一個全新的信任機制,利用密碼學的方法相互關聯(lián)形成一串串的數(shù)據(jù)塊,一次網(wǎng)絡交易的數(shù)據(jù)就保存在一個對應的數(shù)據(jù)塊里面,起到驗證其數(shù)據(jù)的真實性并且產生一個新的區(qū)塊.
定義4[12](Merkle trees)在計算機科學與密碼學中,Merkle trees是一種樹形數(shù)據(jù)結構.每個葉子節(jié)點均以數(shù)據(jù)塊的哈希值作為標簽, 而除了葉子節(jié)點之外的節(jié)點,則以其子節(jié)點標簽的加密哈希值作為標簽Merkle trees,可以實現(xiàn)快捷的數(shù)據(jù)驗證, 因此能夠高效地驗證大型數(shù)據(jù)結構的內容.
定義5[13](智能合約)智能合約是區(qū)塊鏈中每一筆交易之間重要的“合同”,這份合同包含了眾多對交易雙方的約束規(guī)則,交易前只需預置好合同內容,就可保證交易的安全性和不可逆性.
智能圖書館中儲存有大量的資源以及用戶信息.目前,圖書館網(wǎng)絡建設和應用大多采用中心化架構,在這種網(wǎng)絡結構體系中分布式或聯(lián)盟鏈上的節(jié)點之間的數(shù)據(jù)傳輸需由核心服務器控制、分配來完成,此種方式在通信過程中容易出現(xiàn)非法獲取、篡改、欺騙等數(shù)據(jù)安全問題.因中心化故障引發(fā)連鎖反應,造成整個系統(tǒng)崩潰,中心化作用和地位已成為整個網(wǎng)絡系統(tǒng)的潛在安全威脅[14].區(qū)塊鏈作為一項新興的技術,恰恰具有去中心化、多節(jié)點、可追溯、自動化等特點,其可以保護圖書館用戶數(shù)據(jù)傳輸?shù)目煽啃耘c完整性,對用戶信息使用非對稱加密技術,有效降低了用戶的個人信息被獲取修改的風險.
圖1是基于區(qū)塊鏈的圖書館用戶隱私保護模型[1],其分為四個模塊:利益相關者模塊、信息生命周期模塊、隱私風險識別模塊、區(qū)塊鏈基礎架構模塊.基于區(qū)塊鏈的圖書館用戶隱私保護模型共分為四個步驟[1],流程圖如圖 2所示.
1)信息采集以及組織加工.該階段將圖書館用戶再注冊時提交的基本信息以及用戶在使用圖書館服務時產生的行為信息采集起來.其中包含了用戶的敏感信息以及非敏感信息.在采集了此類信息后使用哈希函數(shù)對所有信息進行加密處理.接著用戶可以自行決定信息是否公開以及公開的內容,用戶此時可以對自己的信息進行增、刪、改、查等一系列操作.
2)信息傳輸存儲.在圖書館服務模式下,每天有相當多的用戶信息需要圖書館對其傳輸存儲,而傳統(tǒng)的數(shù)據(jù)存儲模式采用的是中心化的存儲模式,而中心化存儲存在諸多問題,例如,其成本較高,還容易受到非法攻擊.因此,去基于分布式存儲的區(qū)塊鏈滿足了對用戶信息存儲方面的需求.在經(jīng)過前一步的操作之后,用戶的加密信息被存入到聯(lián)盟鏈的圖書館用戶節(jié)點上,通過檢測用戶的信用等級判斷是否進行下一步操作.若用戶信用等級較高,則可以繼續(xù)存儲,下一步進行數(shù)據(jù)完整性的檢查,若某一用戶節(jié)點遭受非法攻擊或者存在完整性缺失,則我們會用其他節(jié)點的數(shù)據(jù)對其進行恢復并返回再次檢查完整性以及全網(wǎng)廣播.
3)信息評價與儲存.當數(shù)據(jù)完整性被確認過后,系統(tǒng)會根據(jù)廣播內容評價用戶的信用等級并打包同用戶信息一同加密存儲到用戶節(jié)點上,并傳輸?shù)絽^(qū)塊鏈中與其他圖書館所掌握的用戶信息進行傳播共享.
4)信息傳播共享.用戶節(jié)點以及圖書館自身所存儲的數(shù)據(jù)信息會被打上數(shù)字水印,接著信息會被加蓋時間戳,也就是對信息生命周期中各階段的用戶信息加蓋時間證明,以方便通過Merkle trees對其進行真實性驗證.當驗證通過時,數(shù)據(jù)將會被發(fā)布到區(qū)塊鏈上以便共享;若未通過則說明數(shù)據(jù)信息受到污染,利用區(qū)塊鏈的可追溯性結合時間戳以及數(shù)字水印,對用戶隱私失真的問題進行解決并將用戶信息以及失真原因在全網(wǎng)登記廣播.

圖2 基于區(qū)塊鏈的圖書館用戶隱私保護流程圖
根據(jù)前面給出的流程,構建基于區(qū)塊鏈的圖書館隱私保護Petri網(wǎng)模型,如圖3所示.該模型包括的主體有用戶節(jié)點和圖書館節(jié)點,應用到的技術有非對稱加密、Merkle trees、智能合約、分布式數(shù)據(jù)庫等.我們將用戶隱私數(shù)據(jù)保護模型的四個步驟中所發(fā)生的活動用Petri網(wǎng)中的變遷T來表示,共計有37個變遷.每個變遷所表示的含義如表 1所示.變遷t1節(jié)點創(chuàng)建后,首先對數(shù)據(jù)進行收集并對收集的數(shù)據(jù)應用做初步的加密,從變遷t18處開始,數(shù)據(jù)分別進入用戶節(jié)點和圖書館節(jié)點做進一步的處理,變遷t28發(fā)生時會將數(shù)據(jù)存儲到用戶節(jié)點上,這種去中心化的存儲方式大大降低了圖書館的物理存儲空間成本,同時提高了用戶信息的安全性以及可靠性,變遷t36發(fā)生時,用戶信息將會被在加入?yún)^(qū)塊鏈的圖書館之間相互傳播共享,提高了知識服務傳播的效率.

表1 各變遷代表的活動

圖3 基于區(qū)塊鏈的圖書館用戶隱私保護Petri網(wǎng)模型
通過利用區(qū)塊鏈技術可以很好的保護圖書館用戶的隱私信息不被攻擊泄露,具體體現(xiàn)在如下方面.
1) 將用戶信息通過區(qū)塊包裝永久記錄到區(qū)塊鏈的數(shù)據(jù)區(qū)塊上.
2) 利用數(shù)字簽名技術產生時間戳,以此證明圖書館用戶信息產生的時間.
3) 通過哈希算法將任意長度的二進制值映射為固定長度的二進制值以實現(xiàn)區(qū)塊鏈上的用戶信息不被篡改.
4) 通過Merkle trees對比驗證處理用戶信息真實性.
5) 通過設計公私鑰的形式實現(xiàn)非對稱加密,只有用相應的私鑰才能解密用公鑰加密的用戶信息.
在保證圖書館用戶隱私信息安全的前提下,基于區(qū)塊鏈的網(wǎng)絡層可以實現(xiàn)各利益相關者之間的信息交流.用戶信息在被打包成區(qū)塊信息后會通過廣播的形式傳遞到其他節(jié)點上去,而經(jīng)過51%的用戶節(jié)點驗證過的信息將被寫入到區(qū)塊鏈主鏈上去.這些信息的交換構成了一個沒有中心服務器的互聯(lián)網(wǎng)體系,達到了用戶信息共享的目的.通過對區(qū)塊鏈上用戶信息的分析,圖書館能將更符合用戶喜好的服務推薦給每個圖書館用戶.
PIPE是一個開源、獨立于平臺的工具,用于創(chuàng)建和分析包括GSPN在內的Petri網(wǎng).它的功能完全由Java實現(xiàn),以確保平臺獨立性,并提供優(yōu)雅、易于使用的圖形用戶界面,允許創(chuàng)建、保存和加載符合PNML交換格式的Petri網(wǎng).PIPE還提供了一套完整的分析模塊,用于檢查行為屬性、生成性能統(tǒng)計數(shù)據(jù)以及一些不太常見的功能,如PN比較和分類.利用PIPE對上述Petri網(wǎng)模型進行仿真運行以及分析,結果如圖 4所示.從圖 4可以得出,基于區(qū)塊鏈的圖書館用戶隱私保護Petri網(wǎng)模型具有有界性和安全性.

圖4 模型分析結果
傳統(tǒng)圖書館用戶隱私保護模型大多采用中心化存儲架構,在這種網(wǎng)絡結構體系中分布式或聯(lián)盟鏈上的節(jié)點之間的數(shù)據(jù)傳輸需由中心服務器控制、分配來完成,在數(shù)據(jù)存儲成本上花費較高,存儲效率往往偏低.對于基于區(qū)塊鏈的圖書館用戶隱私保護模型,由于采用了去中心化的方式將數(shù)據(jù)信息存儲到用戶節(jié)點上,發(fā)揮了信任機制的最大效果,使得用戶數(shù)據(jù)以及信息在網(wǎng)絡中完整有效安全且可靠的傳遞,圖 5展示了用戶信息的兩種儲存方式.
模型的去中心化主要體現(xiàn)在用戶的信息傳輸儲存階段.在用戶信息被加密之后將會存儲在用戶的各個節(jié)點上.當某個數(shù)據(jù)節(jié)點收到非法攻擊從而導致該節(jié)點數(shù)據(jù)損毀時,其他節(jié)點依舊保持數(shù)據(jù)的穩(wěn)定以及安全性.被攻擊的用戶節(jié)點通過使用其他節(jié)點的數(shù)據(jù)便可對自身數(shù)據(jù)進行恢復.

圖5 用戶信息中心化存儲方式與去中心化存儲方式
表2是傳統(tǒng)圖書館用戶隱私保護模型與基于區(qū)塊鏈的圖書館用戶隱私保護模型的詳細對比情況.借助PIPE對模型作進一步分析,得出基于區(qū)塊鏈的圖書館用戶隱私保護模型有著較好的穩(wěn)定性,且是有界、安全、無死鎖的,證明了模型的安全性以及可靠性.

表2 傳統(tǒng)圖書館用戶隱私保護模型與基于區(qū)塊鏈的圖書館用戶隱私保護模型對比
介紹了圖書館隱私保護的背景知識并列舉了幾種常用的隱私保護模型.針對新興的智慧圖書館,結合Petri網(wǎng)的相關知識對文中提出的一種基于區(qū)塊鏈的圖書館用戶隱私保護模型,進一步建模從而生成了基于Petri網(wǎng)的區(qū)塊鏈圖書館用戶隱私保護模型.使用PIPE軟件模擬運行分析,結果表明該模型具有安全性和有界性.未來的工作中,會注重于將模型與應用場景實踐結合起來以驗證其可操作性,同時對比實際應用場景對目前模型存在的不足作進一步的改進與完善.