桑梓森 王鳳英
摘 要 計算機的廣泛應用導致了信息爆炸式增長,這些信息可以分為原始采集錄入的數(shù)據(jù)以及由這些原始數(shù)據(jù)派生的數(shù)據(jù)這兩類。其中派生數(shù)據(jù)占大多數(shù),它們一般都經(jīng)過了一系列的處理,由于其派生過程無法得知,用戶往往懷疑這種數(shù)據(jù)的可靠性及安全性,因此,關(guān)心這些信息的產(chǎn)生過程和產(chǎn)生它們的源數(shù)據(jù)對于保證數(shù)據(jù)安全性是十分必要的。本文深入研究了基于W3C的起源模型PROV-DM,從該起源模型的六個組件的角度進行描述,并以萬維網(wǎng)上的一個文檔作為實例,采用PROV-DM數(shù)據(jù)模型討論了該文檔的產(chǎn)生及派生過程。
關(guān)鍵詞 數(shù)據(jù)起源 安全性 安全數(shù)據(jù)起源模型
中圖分類號:TP3 文獻標識碼:A
0引言
計算機的廣泛應用導致了信息爆炸式增長,人們處理的信息呈幾何級增長,這些信息可以分為原始采集錄入的數(shù)據(jù)以及由這些原始數(shù)據(jù)派生的數(shù)據(jù)這兩類。其中派生數(shù)據(jù)占大多數(shù),它們一般都經(jīng)過了一系列的處理,由于其派生過程無法得知,用戶往往懷疑這種數(shù)據(jù)的可靠性,事實上也確實如此,派生的數(shù)據(jù)往往存在紕漏甚至與原始數(shù)據(jù)毫無關(guān)系。這種現(xiàn)狀使得用戶不得不關(guān)心這些信息的產(chǎn)生過程和產(chǎn)生它們的源數(shù)據(jù),這就導致了數(shù)據(jù)起源技術(shù)的產(chǎn)生。
因為數(shù)據(jù)起源是新興的研究領(lǐng)域,所以目前對數(shù)據(jù)起源的研究主要集中在建模、計算、存儲、查詢等工作上,對確保數(shù)據(jù)起源信息安全方面的研究比較少。如果收集到的起源信息本身安全性得不到保證,無法確保起源信息的完整性和機密性,那么我們就不能依賴它們來確定數(shù)據(jù)對象是否可信,起源信息就失去了其存在的價值。所以數(shù)據(jù)起源信息安全的研究有其重要的現(xiàn)實意義。安全起源無論在法律上還是在科學實驗中都有著及其重要的作用。
數(shù)據(jù)起源的安全性主要考慮其完整性,機密性以及不可否認性。論文將在基于W3C標準的起源模型上研究安全起源,使用有向無環(huán)圖來描述起源模型。通過對各種加密算法的研究和分析,選取合適的加密算法,以實現(xiàn)起源關(guān)系和起源信息本身的完整性和機密性的要求。
1基于W3C的數(shù)據(jù)起源模型PROV-DM
PROV-DM全稱是Provenance Data Model,即數(shù)據(jù)起源模型。起源概念,表現(xiàn)為PROV-DM類型和關(guān)系。這些關(guān)系被歸納為六個組件,即實體和活動;派生;代理、義務和影響;描述包;替代化;集合。
(1)實體和活動:PROV-DM的第一個組件是關(guān)于實體和活動,及它們之間的相互關(guān)系:已使用(使用),已產(chǎn)生(產(chǎn)生),已開始(開始),已結(jié)束(結(jié)束),已失效(失效)和已被告知(通信)。實體是一個擁有固定方面的物理、電子、概念型或其他類型的事物;可以是真實的也可以是虛構(gòu)的;活動即在一段時間內(nèi)發(fā)生在、作用于實體的事件;可以包括實體的消耗、加工、轉(zhuǎn)換、修改、遷移、使用或產(chǎn)生。如圖1所示使用UML來描述第一個組件。核心結(jié)構(gòu)在黃色區(qū)域展示,包括兩個級別(實體、活動)和它們之間的3個二元關(guān)聯(lián):已使用(使用),已產(chǎn)生(產(chǎn)生),和已被告知(通信)。圖的其余部分展示了延展結(jié)構(gòu)部分,包括UML關(guān)聯(lián)級別。
圖1 實例和活動組件UML描述
(2)派生:派生是一個實體到另一個實體的轉(zhuǎn)化,一個實體更新后會成為一個新的實體或者是可以基于一個已存在的實體創(chuàng)建出一個新的實體。
(3)代理、義務和影響:代理為一個活動的發(fā)生、一個實體的存在或另一個代理的活動承擔某種形式的責任;義務是活動代理責任承擔任務,指明了代理在活動中所扮演的角色。它進一步允許一個計劃可以被指定,該計劃指的是在活動的背景下代理需要實現(xiàn)的某些目標影響是指一個實體、活動或代理有能力通過使用、開始、結(jié)束、產(chǎn)生、失效、通信、派生、屬性、關(guān)聯(lián)或授權(quán)而對相互的特性、發(fā)展或行為產(chǎn)生影響。
(4)描述包:描述包是對一系列起源描述的稱呼,它本身就是一個實體,因此可以表示起源的起源,對一個描述包的名稱進行定義可以采用描述包構(gòu)造函數(shù)進行。
(5)替代化:替代是實體間的特殊化(特殊化)和替代(替代)關(guān)系。圖 2描述了第替代組件,包括一個單獨分類和兩個二進制關(guān)系。替代組件可以對同一個數(shù)據(jù)采用兩個不同的起源描述該數(shù)據(jù)的兩個不同方面。
圖2 替代組件關(guān)系描述
(6)集合:一個集合是擁有成分的實體。成分本身也是實體,因此它們的起源可以被表達。某些應用需要能夠表達收集本身的起源:例如,誰維護該收集(屬性),在其演變中包括哪些成分,它是如何被集合起來的。
為了構(gòu)建安全數(shù)據(jù)起源模型,保證數(shù)據(jù)起源記錄的完整性和機密性,可以通過向狀態(tài)節(jié)點之中添加安全組件的方法來保證互相關(guān)聯(lián)的狀態(tài)節(jié)點的完整性及機密性。如圖3所示為一個通過添加安全組件構(gòu)建的安全數(shù)據(jù)起源模型。
圖3 加入安全組件的數(shù)據(jù)安全起源模型
為了生成并添加安全組件,在節(jié)點Pi生成節(jié)點Ai時,同時生成一個節(jié)點Si,該節(jié)點用來保存節(jié)點Ai的起源信息以及該信息的安全性。對于需要進行機密性保存的節(jié)點Ai的部分信息或元素中的某些信息,主要是節(jié)點描述中的description部分(該語義主要是描述和其他節(jié)點之間的必要元素關(guān)系,例如時間以及環(huán)境變量等),則將其保存在附加節(jié)點Si中,然后采用協(xié)議密鑰進行加密保存。
組件及其依賴性在如下圖4中有所體現(xiàn)。一個組件對另一個組件中所定義概念的依賴,在圖中顯示為前者在后者的上方。例如,組件5(替代化)依賴組件4(描述包)中所定義的概念,而其又依賴組件1(實體和活動)中所定義的概念。
圖4 PROV-DM組件間的依賴關(guān)系
2 PROV-DM實例描述
上一部分對起源的一些概念以及PROV數(shù)據(jù)模型是怎樣通過類型或關(guān)系給出這些概念的。本部分將這些概念與實際應用聯(lián)系起來,以表達一些發(fā)布在網(wǎng)絡上的文件的起源。PROV的概念在實例中相互協(xié)作,顯示起源表達式的插圖構(gòu)成了一個定向圖,據(jù)此我們可以對實體的起源進行解釋,并且指出實體、活動以及代理。這個實例同樣也展示了有時不同的起源表達式可以共存于同一個實體,這證明了追蹤起源的起源的必要性。
在本實例中,我們將發(fā)布在萬維網(wǎng)上的一些文件作為目標,描述它們的起源。為便于描述,以http://www.w3.org/TR/2011/WD-prov-dm-20111215中的文檔為例,它的起源可以從不同的角度來表達:首先,可以從作者的視角出發(fā)看起源;其次可以被看成是一個W3C過程;除此之外還可以提供這兩個起源描述的屬性。下面從過程描述的角度采用PROV-DM描述該文檔的衍生過程。
萬維網(wǎng)聯(lián)盟根據(jù)出版政策發(fā)布文檔。定期的文檔發(fā)布反應了小組工作的完成。每一個工作草案的發(fā)布都需要向發(fā)出網(wǎng)絡管理員的"發(fā)布申請"。 W3C編輯者同樣需要為文檔的最初版本提出"調(diào)整申請"。所有的工作草案都可以在一個特殊的IRI中被訪問。我們根據(jù)文檔的發(fā)表政策以及相關(guān)請求,對同樣一個文檔的不同版本進行觀察兩個版本的文檔:tr:WD-prov-dm-20111215 (第二個工作草案) 和 tr:WD-prov-dm-20111018 (第一個工作草案);
(1)WWW聯(lián)盟 (w3:Consortium)發(fā)布tr:WD-prov-dm-20111215和tr:WD-prov-dm-20111018;
(2)tr:WD-prov-dm-20111215的發(fā)布活動為ex:act2;
(3)tr:WD-prov-dm-20111018 的發(fā)布活動為ex:act1;
(4)tr:WD-prov-dm-20111215為 tr:WD-prov-dm-20111018的派生;
(5)發(fā)布活動ex:act1使用一個發(fā)布請求 (email:2011Oct/0141)以及一個編 輯請求(chairs:2011OctDec/0004);
(6)發(fā)布活動ex:act2 使用一個發(fā)布請求 (email:2011Dec/0111);
(7)文件根據(jù)發(fā)布規(guī)定 (process:rec-advance)內(nèi)容發(fā)布,即PROV術(shù)語中的計劃。
現(xiàn)在我們開始對一些PROV描述進行解釋,通過PROV-N符號對其進行表示,如下圖 5以圖解的形式呈現(xiàn)所有起源記錄的細節(jié)信息。
將一個工作草案文檔(rec54:WD)視為實體以便我們能夠描述其起源。
實體(tr:WD-prov-dm-20111215,[prov:type='rec54:WD'])
發(fā)布活動
活動(ex:act2,[prov:type="publish"])
發(fā)布活動產(chǎn)生了文檔:一個產(chǎn)生過程。此產(chǎn)生沒有指定時間因此用'-'標記。
被產(chǎn)生的(tr:WD-prov-dm-20111215,ex:act2,-)
文檔的第二個草案由第一個派生而來:一個派生過程。
派生自(tr:WD-prov-dm-20111215,tr:WD-prov-dm-20111018)
這個活動需要一個發(fā)布請求:一個使用過程。沒有指定的時間因此用'-'標記。
已使用(ex:act2,email:2011Dec/0111,-)
這個活動與互聯(lián)網(wǎng)聯(lián)盟代理有關(guān)聯(lián),根據(jù)聯(lián)盟發(fā)布政策進行:一個關(guān)聯(lián)過程。
關(guān)聯(lián)(ex:act2,w3:Consortium,process:rec-advance)
圖5通過一個多邊形展示了這種關(guān)系,關(guān)聯(lián)標簽指向一個代理和實體。這個簡單的實例展示了不同的PROV概念,例如實體、代理、活動、使用、產(chǎn)生、派生和關(guān)聯(lián)。恰巧這個例子中的所有實體本就是網(wǎng)絡資源,擁有固定的可用IRIs。我們注意到某些IRIs是可用的公共資源,但某些是有訪問限制的:只能通過其標識符來尋找起源。如果標識符之前不存在,那么一個活動可以產(chǎn)生標識符,且在實例ex:act2中,可以通過前綴指明的命名空間來確定。我們發(fā)現(xiàn)W3C開發(fā)的IRI計劃尤其適用于表示文檔起源,因為每一個IRI都代表了一個特定版本的文檔。通過PROV很容易就能夠確定個版本間的關(guān)系。我們同時發(fā)現(xiàn)關(guān)聯(lián)其實是活動、代理和計劃構(gòu)成用多邊形表示的三元的關(guān)系。
3結(jié)論
隨著計算機的逐步普及,存儲硬件的不斷更新和存儲技術(shù)的不斷完善使得大量收集和存儲數(shù)據(jù)信息成為可能,數(shù)據(jù)在其生命周期中都要經(jīng)歷從產(chǎn)生到存儲查詢以及加工處理到最后的刪除或存檔的過程,數(shù)據(jù)起源能夠記錄數(shù)據(jù)對象在其生命周期內(nèi)的演化過程,可用于驗證數(shù)據(jù)對象的可信度,同時某種程度上可反推演數(shù)據(jù)的加工過程。本文從PROV-DM的六個組件角度研究了數(shù)據(jù)起源模型,并以萬維網(wǎng)上的一個文檔作為實例,分析其產(chǎn)生及派生過程。
參考文獻
[1] 戴超凡,王濤,張鵬程.數(shù)據(jù)起源技術(shù)發(fā)展研究綜述.計算機應用研究,2010(9): 3215-3221.
[2] 李亞子.數(shù)據(jù)起源標注模式與描述模型.現(xiàn)代圖書情報技術(shù),2007,7: 10-13.
[3] Moreau,L.,Missier,P.Prov-n:The provenance notation.2013.
[4] Moreau,L.,Missier,P.Prov-dm:The prov data model.2013.
[5] Moreau,L.,Missier,P.Prov-dm: The prov data model. W3C Recommendation (April 2012), in,Editor^Editors.2012.p.