張寅
在現(xiàn)代企業(yè)檔案工作中,電子文件的管理逐漸成為重中之重。其核心的難題始終圍繞著如何保證電子文件在長期保存過程中的真實性。2008年比特幣橫空出世,其核心“區(qū)塊鏈”技術向世界展示了一種去中心且數據不可篡改的記錄方法,以更自由的方式為解決上述難題提供一種可能。本文嘗試結合區(qū)塊鏈與XML技術提出一種電子文件元數據存儲解決方案。
1 電子文件管理
企業(yè)電子文件是指在企業(yè)生產制造、運營管理、客戶服務等各項業(yè)務活動中通過計算機等電子設備形成、辦理、傳輸和存儲的作為證據和具有查考作用的信息,其管理目標是要保證電子文件的真實(準確)、完整、可用、安全。在這四點中真實性檢測一直是電子文件在單軌制歸檔中比較棘手的難題之一,具體表現(xiàn)在:
1)技術真實性,表現(xiàn)為電子文件在整個生命周期中未被誤改或篡改,在鑒定檢測的實現(xiàn)中多數基于對電子文件執(zhí)行散列算法(例如MD5)后進行數字簽名,由可信算法保證其技術上的“真實”。
2)來源真實性,表現(xiàn)為電子文件客觀反映和真實記錄業(yè)務活動,依靠良好的元數據方案設計,通過記錄文件的來源、結構、背景來鑒別來源真實性。
在實際工作中主要通過以上兩個方面對電子文件真實性進行檢測。作為長時期內電子文件真實性憑證,元數據同樣需要使用數字簽名系技術來保證其內的信息不被篡改。而數字簽名的技術特點是基于中心化的信用機構即CA中心。雖然這種信任機制具備很高效率,但過度的中心化呈現(xiàn)出的如CA機構的職責是否清晰、資質是否完備、管理是否規(guī)范、存續(xù)時間長短、證書有效期限等一系列問題,給電子文件真實性檢測帶來許多不確定風險。
2 區(qū)塊鏈技術簡介
2.1 區(qū)塊鏈的概念與特性
從信息技術角度來講普遍認為區(qū)塊鏈技術是一個分布式賬本,一種通過去中心化、去信任中介的方式,由“集體”維護一個可靠數據庫技術方案。簡單來說,筆者認為區(qū)塊鏈本質上是一種解決信任問題、降低信任成本的信息技術方案,它通過密碼學、集體協(xié)作等手段來實現(xiàn)了人們對自由公證渴望。因此區(qū)塊鏈為人們帶來的并不是某項嶄新的技術,而是一種全新的信任與協(xié)作模式。
區(qū)塊鏈中的“區(qū)塊”指的是信息塊,是數據的集合體,結合實際工作可簡單理解為我們企業(yè)檔案管理中統(tǒng)計臺賬中的“頁”,一“頁”可以記錄許多檔案數據。而“鏈”就是按照時間順序將區(qū)塊串聯(lián)在一起,通過可信的算法使參與者對全部記錄的時間順序和當前狀態(tài)建立共識。區(qū)塊鏈技術包含許多特性:
1)開放性與共識性:任何人都可以參與到區(qū)塊鏈網絡,每一臺設備都能作為一個節(jié)點,每個節(jié)點都允許獲得一份完整的數據庫拷貝。節(jié)點之間通過共識機制共同維護整個區(qū)塊鏈,任何一個節(jié)點失效不影響整個區(qū)塊鏈。
2)去中心、去信任中介:基于“端對端”網絡建立,不存在中心信任節(jié)點,各節(jié)點產生的數據通過數字簽名技術進行驗證,基于共識機制無需相互信任,節(jié)點之間不能也無法欺騙其他節(jié)點。
3)公開透明:共識機制公開透明,對所有節(jié)點均可見。
4)可追溯,不可篡改:單個節(jié)點甚至多個節(jié)點對數據的修改無法影響其他節(jié)點,如果區(qū)塊鏈中的各個節(jié)點始終保持運行,理論上可以保證數據被“永久”保存。區(qū)塊鏈中的每一個區(qū)塊都通過密碼學方法與相鄰兩個區(qū)塊串聯(lián),區(qū)塊中的數據彼此相連,使得數據可追溯、可審計。
2.2 區(qū)塊鏈的“可信”算法簡介
1)分布式計算:利用多個互聯(lián)節(jié)點處理能力來解決大型計算問題。區(qū)塊鏈中的“分布式”既體現(xiàn)了分布式存儲,也體現(xiàn)了分布式記賬(即所有節(jié)點參與新區(qū)塊的校驗),通過“分布式”來達到去中心化的效果。
2)非對稱加密:在加、解密的過程使用私鑰、公鑰的加密方法,其特點是經私鑰加密的數據僅僅能通過與之對應的公鑰進行解密(即私鑰加密卻無法解密)。應用非對稱加密技術的數字簽名,能夠確保信息確實是由發(fā)送方簽名、發(fā)送,并且驗證信息的完整性。
3)時間戳:數據存在的時間證明,在計算機中通常是一個字符序列,唯一標識某一刻的時間。
4)Hash算法:將任何一段數據經Hash算法得到一個值,其特點是相同的數據將得到相同結果,如果數據經過哪怕一個字節(jié)的變化,得到的結果將千差萬別,且結果無法實現(xiàn)預知。因此它廣泛應用于數據校驗。區(qū)塊鏈中應用的Hash算法為SHA256。
5)默克爾樹:一種用于快速校驗大規(guī)模數據完整性的方法。在區(qū)塊鏈中它被用來歸納一個區(qū)塊中所有信息的根(root)Hash值,區(qū)塊中任何一段信息被更改都會導致默克爾樹的根值改變。默克爾樹根值可以唯一標識一個區(qū)塊。
6)挖礦:區(qū)塊鏈的共識機制之一,所有節(jié)點通過運算解特定題目的方式來創(chuàng)建區(qū)塊的過程。解題的過程節(jié)點會消耗時間,即工作量證明。最先計算出結果的節(jié)點會將廣播計算結果由其他節(jié)點進行驗證,驗證通過后該節(jié)點即擁有生成新區(qū)塊的權利,比特幣中節(jié)點會對得到相應獎勵??梢哉f挖礦就是區(qū)塊鏈能夠讓各節(jié)點形成共識,達到去中心化的信任機制的核心。
3 XML技術
XML即可擴展標記語言,通過標記數據與定義數據類型,使計算機之間可以處理各種信息。它是Internet環(huán)境中跨平臺的、依賴于內容的技術,也是處理分布式結構信息的有效工具。經過多年的應用與發(fā)展,它良好的可擴展性、跨平臺性,使其在網絡服務、數據交換、電子商務、內容管理等領域廣泛使用。在檔案管理領域國內外更多地使用XML技術來實現(xiàn)對元數據的描述、結構化存儲及交換,例如國內的《基于XML的電子文件封裝規(guī)范》,國外的EAD、MODS等。
在XML常用技術中筆者認為命名空間(namespace)、語法定義(xml schema)十分重要。XML允許用戶自定義描述對象的各種詞匯,這樣在數據互操作時就不必考慮諸如平臺、操作系統(tǒng)、語言等方面的差異,但這種互操作性同樣給數據帶來不可避免語義上的歧義。此外XML還承擔著網絡數據交換的重任,語義歧義可能直接降低數據處理的效率,這就要求XML既要嚴格遵守格式規(guī)范,同時還應符合語義規(guī)范。為此XML中引入了命名空間與XML定義文件,兩者相結合,用戶便可以在互聯(lián)環(huán)境中保證XML文檔中所有的標記名稱的唯一且能夠被有效驗證?;谶@種特性使得XML技術對于解決異構環(huán)境中數據交換,降低不同系統(tǒng)間集成接口開發(fā)難度、建立語義化的網絡環(huán)境具有十分重要的意義。