基於區塊鏈的資料存證方法和裝置
本說明書係有關網路通信技術領域,尤其有關一種基於區塊鏈的資料存證方法和裝置。
在網際網路資訊時代,資訊流非常多且真假混合,很多錯誤虛假資訊導致用戶難以甄別有效真實可用的資訊,一個比較常見的情況是各類房產資訊網,一套房源可能有多個仲介發佈,且各個仲介發佈的資訊均不盡相同,這樣用戶難以區分哪些才是真實的資訊。
針對以上提出的問題,本說明書提供了一種基於區塊鏈的資料存證方法,包括:
接收目標節點提議的候選區塊,所述候選區塊的區塊頭包括目標資料的詮釋資料,所述候選區塊的區塊體包括所述目標資料的內容;
發起對所述候選區塊的共識處理;
回應於所述候選區塊共識處理通過的共識結果,將所述候選區塊作為最新區塊儲存至所述區塊鏈的分散式資料庫,以完成針對所述目標資料的資料存證。
較佳地,所述詮釋資料包括所述目標資料的唯一標識;或者,所述目標資料的唯一標識的資料摘要。
較佳地,所述候選區塊的區塊體包括產生實體的目標資料。
較佳地,所述方法還包括:
當所述區塊鏈上的任一目標區塊連接有多個子區塊,統計所述多個子區塊所在支鏈上的子區塊的數量;
將所述子區塊的數量先達到預設閾值的支鏈,確定為所述區塊鏈的主鏈。
較佳地,所述目標資料為房產資料,所述目標資料的詮釋資料包括房產地址,或者房產地址的資料摘要。
較佳地,所述區塊鏈為聯盟鏈,所述聯盟鏈的聯盟成員包括房產仲介公司。
較佳地,所述共識處理基於PBFT演算法來進行。
本說明書還提供了一種基於區塊鏈的目標資料存證裝置,包括:
接受單元,接收目標節點提議的候選區塊,所述候選區塊的區塊頭包括目標資料的詮釋資料,所述候選區塊的區塊體包括所述目標資料的內容;
發起共識單元,發起對所述候選區塊的共識處理;
儲存單元,回應於所述候選區塊共識處理通過的共識結果,將所述候選區塊作為最新區塊儲存至所述區塊鏈的分散式資料庫,以完成針對所述目標資料的資料存證。
較佳地,所述詮釋資料包括所述目標資料的唯一標識;或者,所述目標資料的唯一標識的資料摘要。
較佳地,所述候選區塊的區塊體包括產生實體的目標資料。
較佳地,所述裝置還包括:
主鏈確定單元,當所述區塊鏈上的任一目標區塊連接有多個子區塊,統計所述多個子區塊所在支鏈上的子區塊的數量;將所述子區塊的數量先達到預設閾值的支鏈,確定為所述區塊鏈的主鏈。
較佳地,所述目標資料為房產資料,所述目標資料的詮釋資料包括房產地址,或者房產地址的資料摘要。
較佳地,所述區塊鏈為聯盟鏈,所述聯盟鏈的聯盟成員包括房產仲介公司。
較佳地,所述共識處理基於PBFT演算法來進行。
相應地,本說明書還提供了一種電腦設備,包括:記憶體和處理器;所述記憶體上儲存有可由處理器運行的電腦程式;所述處理器運行所述電腦程式時,執行如上基於區塊鏈的資料存證方法所述的步驟。
相應地,本說明書還提供了一種電腦可讀儲存媒體,其上儲存有電腦程式,所述電腦程式被處理器運行時,執行如上述基於區塊鏈的資料存證方法所述的步驟。
應用本說明書所提供的基於區塊鏈的資料存證方法、裝置、電腦設備和電腦可讀儲存媒體,利用去中心化的區塊鏈分散式資料庫儲存、存證資料資訊,摒棄了中心化資料庫儲存可能出現的對資料資訊的任意改動;利用區塊鏈的共識處理對資料進行識別存證,避免了用戶在不同的網路平臺伺服器中對同一個對象(如房產)描述的情形不盡相同而不知哪一個為真實的缺陷;且在本說明書提供的多個實施例中,將資料資訊的詮釋資料保存在區塊頭中,更加方便了包括區塊鏈輕節點在內任意區塊鏈節點設備對目標資料資訊的檢索。
區塊鏈技術,也被稱之為分散式帳本技術,是一種由若干台計算設備共同參與“記帳”,共同維護一份完整的分散式資料庫的新興技術。由於區塊鏈技術具有去中心化、公開透明、每台計算設備可以參與資料庫記錄、並且各計算設備之間可以快速地進行資料同步的特性,使得區塊鏈技術已在眾多的領域中廣泛地進行應用。
為了克服現有的網際網路路中,同一筆資料資訊由多方發佈且真假難辨的問題,本說明書提供了一種基於區塊鏈的資料存證方法。如圖1所示,本說明書提供的實施例示意了一種基於區塊鏈的資料存證方法,包括:
步驟102,接收目標節點提議的候選區塊,所述候選區塊的區塊頭包括目標資料的詮釋資料,所述候選區塊的區塊體包括所述目標資料的內容。
本說明書提供的實施例所述的“區塊鏈”,具體可指一個各節點透過共識機制達成的、具有分散式資料儲存結構的P2P網路系統,且該系統內的資料透過加密演算法來進行儲存或傳輸,該區塊鏈內的資料分佈在時間上相連的一個個“區塊(block)”之內,後一個區塊包含前一個區塊的資料摘要,且根據具體的共識機制(如POW、POS、DPOS或PBFT等)的不同,達成全部或部分節點的資料全備份。本發明所屬技術領域中具有通常知識者熟知,由於區塊鏈系統在相應共識機制下運行,已收錄至區塊鏈資料庫內的資料很難被任意的節點篡改,例如採用Pow共識的區塊鏈,至少需要全網51%算力的攻擊才有可能篡改已有資料,因此區塊鏈系統有著其他中心化資料庫系統所無法比擬的保證資料安全、防攻擊篡改的特性。透過將待存證的資料(目標資料)保存在區塊鏈上,通過共識達成該區塊鏈的所有成員或大部分成員對資料的認可,可有效防止前述的網際網路上的資料真假難辨的問題。
本說明書提供的實施例可以運行在任何具有計算和儲存能力的設備上,如手機、平板電腦、PC(Personal Computer,個人電腦)、筆記型電腦、伺服器等設備;還可以由運行在兩個或兩個以上設備的邏輯節點來實現本說明書實施例中的各項功能。
上述實施例中的目標節點是指在上述區塊鏈中具有資料提議許可權的節點,目標資料是指待存證入區塊鏈的區塊體的資料。該節點提議的候選區塊包括區塊頭和區塊體。區塊頭通常封裝了該區塊鏈系統目前的版本號、前一個區塊的地址或資料摘要、本區塊的區塊體的資料摘要(如交易的Merkel Root)等資訊,在本說明書中不作限定。在本發明提供的實施例中,候選區塊的區塊頭還封裝有目標資料的詮釋資料,用以描述上述待存證的目標資料。
詮釋資料為描述資料的資料(data about data),主要是描述資料屬性(property)的資訊,用來支援如指示儲存位置、歷史資料、資源查找、文件記錄等功能。在區塊頭中封裝目標資料的詮釋資料,且區塊頭內的資料如區塊摘要、詮釋資料等均可作為檢索對象,可以使用戶方便地獲知該區塊所收錄或存證的目標資料內容、便於對目標資料內容的檢索、查找。而且,一些區塊鏈系統的用戶,受限於自身的許可權或硬體設定,選擇在本地安裝輕節點形式的用戶端,該輕節點用戶端通常僅保存區塊鏈在一段時間內的區塊的區塊頭資料,對於以往區塊頭僅封裝有本區塊的父區塊的區塊摘要及本區塊的區塊體內所包括交易的數學摘要的情況,輕節點用戶並不能獲知其在本地保存的區塊鏈所存證的目標資料的概況;本說明書實施例所提供的將目標資料的詮釋資料資訊封裝保存於區塊頭的實施例,可以更加方便上述輕節點用戶對區塊鏈所儲存資料的查閱與檢索。
在本說明書提供的上述實施例中,區塊鏈的節點提議的候選區塊的區塊體中應存證所述目標資料的內容,本發明所屬技術領域中具有通常知識者易知,上述目標資料的內容是以“交易”的形式儲存在區塊體中。在本說明書中所描述的交易(transfer),是指用戶透過區塊鏈的用戶端創建,並需要最終發佈至區塊鏈的分散式資料庫中的一筆資料。其中,區塊鏈中的交易,存在狹義的交易以及廣義的交易之分。狹義的交易是指用戶向區塊鏈發佈的一筆價值轉移;例如,在傳統的比特幣區塊鏈網路中,交易可以是用戶在區塊鏈中發起的一筆轉帳。而廣義的交易是指用戶向區塊鏈發佈的一筆具有業務意圖的業務資料;例如,運營方可以基於實際的業務需求來搭建一個聯盟鏈,依託於聯盟鏈部署一些與價值轉移無關的其它類型的線上業務(比如,租房業務、車輛調度業務、保險理賠業務、信用服務、醫療服務等),而在這類聯盟鏈中,交易可以是用戶在聯盟鏈中發佈的一筆具有業務意圖的業務訊息或者業務請求。在本說明書中並不限定該交易的具體內容,任何形式或內容的目標資料均可作為交易存證於本說明書所述的區塊鏈中。
步驟104,發起對所述候選區塊的共識處理。
在上述區塊鏈的各節點設備接收到候選區塊後,該區塊鏈系統應發起對候選區塊的共識處理。本說明書並不限定上述共識處理所遵循的共識機制準則,任何能實現本說明書提供的實施例所描述的技術方案的共識機制或共識演算法,均在本說明書保護的範圍內。
以下,本說明書以PBFT共識演算法為例,簡述上述對候選區塊的共識處理過程。聯盟鏈通常選用PBFT作為自身的共識機制,以增加網路的輸送量。
在實現時,在區塊鏈的每一輪共識開始之前,可以在區塊鏈中的各節點設備中選舉出一台主節點設備(比如,每一輪共識都重新選舉出一主節點設備,其它節點設備作為從節點設備),由主節點設備向發起交易共識,並負責基於共識通過的交易資料(或目標資料)為區塊鏈創建最新的區塊。
例如,基於PBFT演算法,在聯盟鏈每一輪共識開始之前,可以基於以下的公式,為本輪公式計算出一個主節點設備:
P=v mod R
其中,P表示計算出的本輪共識的主節點編號;v表示聯盟鏈目前的視圖編號;視圖編號通常是一個連續編號的整數,表示聯盟鏈已經成功完成共識的輪數;比如,在成功完成一輪共識,選舉出的主節點設備向聯盟鏈成功寫入一個新的區塊之後,可以將視圖編號自動加1。R表示聯盟鏈中的節點設備的總數量。
各個節點設備可以分別執行以上計算,並將計算出的主節點編號與本設備的編號進行匹配來確定本設備是否被選舉為主節點設備。
一方面,如果一節點設備確定本設備未被選舉為主節點設備,則可以將收到的由用戶端提交的交易向聯盟鏈中的各個節點設備進行廣播發送。
另一方面,如果一節點設備確定本設備被選舉為主節點設備,則可以收集各個用戶用戶端在本輪的共識時間段內廣播發送的交易,並基於收集到的交易來創建交易清單。此時,創建的交易清單即為主節點設備提議的需要進行共識處理的交易資料。
PBFT演算法一般可分為預準備(pre-prepare)、準備(prepare)、和確認(commit)等三個階段。
主節點設備將交易清單攜帶在Pre-Prepare訊息中,然後將該Pre-Prepare訊息在聯盟鏈中的各個節點設備中進行廣播發送,將完整的交易清單傳播至聯盟鏈中需要參與交易共識的從節點設備。
接收到上述Pre-Prepare訊息的從節點設備,首先可以遵循PBFT演算法的規定,對接收到的Pre-Prepare訊息進行驗證,以確定是否接受接收到的Pre-Prepare訊息。
其中,在本說明書中,對接收到的Pre-Prepare訊息進行驗證,即為對接收到的Pre-Prepare訊息中攜帶的內容進行驗證的過程;
例如,遵循PBFT演算法的規定,在Pre-Prepare訊息中,可以攜帶待共識的交易資料(本說明書中為目標資料)、視圖編號v、數位簽章等資訊。相應地,在本說明書中,在對Pre-Prepare訊息進行驗證時,具體可以執行以下的驗證過程:
1)驗證視圖編號V與本地記錄的視圖編號是否一致;
2)對Pre-Prepare訊息中的數位簽章進行驗證;
3)對Pre-Prepare訊息中攜帶的目標資料進行有效性驗證;
上述對目標資料的有效性驗證,可以理解為各個從節點設備對目標資料的準確性、有效性等方面進行驗證,在目標資料被正式收錄到上述區塊鏈之前,以期獲得一份受區塊鏈的多數成員的認可(在PBFT演算法中,至少為2F+1個成員的認可,F為該區塊鏈系統的拜占庭容錯數)的目標資料。
當接收到上述Pre-Prepare訊息的節點設備,在執行以上列舉出的驗證過程後,如果驗證通過,表示該節點設備接受上述Pre-Prepare訊息(對上述目標資料認可),此時該節點設備可以進入PBFT協定的Prepare階段,向聯盟鏈中的其它各個節點設備廣播發送一條用以對上述Pre-Prepare訊息進行確認的Prepare訊息;其中,上述Prepare訊息中攜帶的內容格式,可以與上述Pre-Prepare訊息保持一致。各節點設備也可以接收由其它各從節點設備廣播發送的Prepare訊息,對接收到的Prepare訊息進行驗證,以確定是否接受接收到的Prepare訊息。其中,對接收到的Prepare訊息進行驗證的具體過程,可以參考對Pre-Prepare訊息進行驗證的具體過程,在本說明書中不再進行贅述。
聯盟鏈中的節點設備在向聯盟鏈中的其它各個節點設備廣播發送commit訊息之後,也可以接收由其它各節點設備廣播發送的commit訊息訊息,對接收到的commit訊息進行驗證,以確定是否接受接收到的commit訊息。
其中,上述commit訊息中攜帶的內容格式,可以與Pre-Prepare訊息和Prepare訊息保持一致。其中,對收到commit訊息進行驗證的具體過程,可以參考對Pre-Prepare訊息進行驗證的具體過程,在本說明書中不再進行贅述。
如果驗證通過,表示該節點設備接受收到的commit訊息,該節點設備還可以進一步確定接收到的由其它各節點設備廣播發送的commit訊息的數量,是否達到2F+1個(包括自身廣播的commit訊息在內),F為該區塊鏈系統的拜占庭容錯數。
透過以上的共識過程,區塊鏈的所有節點設備獲得了一份經大多數節點設備認可的目標資料,避免了用戶在不同的網路平臺伺服器中對同一個對象的目標資料描述的情形不盡相同而不知哪一個為真實的缺陷。
步驟106,回應於所述候選區塊共識處理通過的共識結果,將所述候選區塊作為最新區塊儲存至所述區塊鏈的分散式資料庫,以完成針對所述目標資料的資料存證。
區塊鏈的共識處理機制、及分散式儲存備份的機制確保了任何用戶很難對該認可後的目標資料進行篡改,從而為用戶獲取真實有效的資料提供了存證。例如採用Pow共識的區塊鏈,至少需要全網51%算力的攻擊才有可能篡改已有資料,因此區塊鏈系統有著其他中心化資料庫系統所無法比擬的保證資料安全、防攻擊篡改的特性。上述採用PBFT共識的區塊鏈,透過主節點與從節點對交易資料的確認,達到了全鏈對交易資料的強一致,因此避免了用戶在不同的網路平臺伺服器中對同一個對象的目標資料描述的情形不盡相同而不知哪一個為真實的缺陷。透過將待存證的資料(目標資料)保存在區塊鏈上,通過共識達成該區塊鏈的所有成員或大部分成員對資料的認可,可有效防止前述的網際網路上的資料真假難辨的問題
在又一示出的實施例中,上述區塊頭所封裝收錄的目標資料的詮釋資料資訊包括目標資料的唯一標識,或者目標資料的唯一標識的資料摘要,更加方便了區塊鏈用戶端用戶對區塊鏈所收錄資訊的檢索。
以下以區塊鏈為房產資訊做存證的業務情況為例,論述本技術方案的實施例。對於同一個房產的同一個特徵,如面積、戶型、報價等,應在網路中保證唯一的描述,以防止任何用戶在查詢房產資訊時出現對同一個房產資訊的同一個特徵的不同描述,難辨真偽。為降低交易或目標資料的確認時間、提高交易輸送量、滿足對安全和性能的需求,通常選用聯盟鏈架構來建構該區塊鏈。在上述買賣房產的業務情況中,房產仲介公司、房屋交易監督機構等信用較高的機構,可作為該聯盟鏈的聯盟成員節點,參與區塊的記帳。例如,聯盟鏈的共識過程可參照上述的根據PBFT演算法的共識過程進行。聯盟鏈可以根據應用情況來決定對公眾的開放程度,對可開放的機構或個人給予存取該聯盟鏈的許可權,對於可存取的節點還可分為一般節點和輕節點,輕節點一般不具有參與聯盟鏈記帳的許可權,且一般保存有該聯盟鏈在一段時期內的區塊的區塊頭資料,以節省儲存空間。
PBFT演算法作為本說明書所提供的聯盟鏈的共識演算法的一種較佳的實施方式,是由於採用該種演算法共識的效率高,可滿足高頻交易量的需求,例如在本實施例中各房產仲介公司頻繁產生房產資訊(交易);且共識的時延很低,基本達到即時處理的要求,能快速即時地在區塊鏈的新生區塊中收錄上述房產資料資訊;而且,將聯盟鏈網路中可信節點如房產交易的監管機構作為預選的記帳節點,兼顧了安全性與穩定性;另外,採用PBFT演算法不會消耗過多的電腦算力資源,也不一定需要代幣流通,因此具有良好的可使用性。
透過區塊鏈的共識機制,可保證對於同一個房產資訊的同一個特徵(如房屋的報價資訊),在區塊鏈上僅存證一種經過成員節點共識後的描述。在上述業務情況下,聯盟鏈的每個區塊的區塊頭內收錄的上述詮釋資訊可以為房產的地址資訊,或房產地址的數字摘要如雜湊值,由於房產的地址資訊為一處房產的唯一性標識,透過該資訊可唯一確定一處房產。用戶透過用戶端在包含區塊頭的區塊鏈資料庫內檢索該房產的地址資訊或房產地址的雜湊值後,可獲取到與該房產對應的一個或多個區塊,再到查詢到的該區塊的區塊體內查詢該房產的具體資訊,如房屋住址、房產人資訊、戶型、面積、價格等。
值得注意的是,為便於本說明書提供的資料存證方法在不同業務情況中的應用,區塊體中包含的目標資料資訊或交易資訊可以採用依據業務情況而產生實體的格式,例如,在上述為房產資訊做存證的業務情況的區塊鏈的區塊體中,如圖2所示,可為房產的內容設定包括地址、戶型、面積、房產人、報價資訊在內的產生實體內容範本;進一步地,還可以為房屋的地址設定如“xx省xx市xx區xx街xx房”格式的產生實體描述,為房屋戶型設定如“xx房xx廳xx衛xx陽臺”等格式的產生實體描述,等等,從而便於房產仲介機構在提議關於一目標房產資訊的候選區塊時不會遺漏某些重要資訊,從而使得關於該目標房產資訊的所有資訊均保存在同一個區塊內,更加方便的用戶的查閱。
以上的實施例中提出,透過區塊鏈的共識機制,可保證對於同一個房產資訊的同一個特徵(如房屋的報價資訊),在區塊鏈上僅存證一種經過成員節點共識後的描述,但是也不排除極個別的情況下,由於該區塊鏈所採取的具體的共識機制所導致的,不同的房產仲介對同一個房產資訊的同一個特徵的不同描述均被收錄至上述區塊鏈,即上述區塊鏈出現分叉:即出現所述區塊鏈上的某一個目標區塊連接有超過一個的子區塊。在這種情況下,本說明書的一個實施例提供以下方案用以解決上述的分叉問題:當所述區塊鏈上的任一目標區塊連接有多個子區塊,統計所述多個子區塊所在支鏈上的子區塊的數量;將所述子區塊的數量先達到預設閾值的支鏈,確定為所述區塊鏈的主鏈。分叉後的支鏈上的區塊的數量越多,可以表示為對該支鏈上的區塊內所收錄的資訊共識認可越快,利用區塊鏈的節點成員對分叉後不同子區塊的認可程度和認可速度,快速解決區塊鏈的分叉問題。
本說明書提供的以上各個實施例,透過區塊鏈上收錄的資料為區塊鏈的多個成員節點設備共識而得的機制,為區塊鏈上收錄的目標資料提供了唯一地、不可被篡改的存證;而且,上述區塊鏈的區塊頭內封裝收錄有關於目標資料的詮釋資料資訊,更加方便了對上述目標資料的查詢獲取。
與上述流程實現對應,本說明書的實施例還提供了一種基於區塊鏈的資料存證裝置。該裝置可以透過軟體來實現,也可以透過硬體或者軟硬體結合的方式來實現。以軟體實現為例,作為邏輯意義上的裝置,是透過所在設備的CPU(Central Process Unit,中央處理器)將對應的電腦程式指令讀取到記憶體中運行形成的。從硬體層面而言,除了圖4所示的CPU、記憶體以及記憶體之外,該資料處理裝置所在的設備通常還包括用來進行無線信號收發的晶片等其他硬體,和/或用來實現網路通信功能的板卡等其他硬體。
圖3所示為本說明書所提供的一種基於區塊鏈的資料存證裝置30,包括:
接受單元302,接收目標節點提議的候選區塊,所述候選區塊的區塊頭包括目標資料的詮釋資料,所述候選區塊的區塊體包括所述目標資料的內容;
發起共識單元304,發起對所述候選區塊的共識處理;
儲存單元306,回應於所述候選區塊共識處理通過的共識結果,將所述候選區塊作為最新區塊儲存至所述區塊鏈的分散式資料庫,以完成針對所述目標資料的資料存證。
較佳地,所述詮釋資料包括所述目標資料的唯一標識;或者,所述目標資料的唯一標識的資料摘要。
較佳地,所述的裝置30,還包括:
主鏈確定單元308,當所述區塊鏈上的任一目標區塊連接有多個子區塊,統計所述多個子區塊所在支鏈上的子區塊的數量;將所述子區塊的數量先達到預設閾值的支鏈,確定為所述區塊鏈的主鏈。
較佳地,所述目標資料為房產資料,所述目標資料的詮釋資料包括房產地址,或者房產地址的資料摘要。
較佳地,所述區塊鏈為聯盟鏈,所述聯盟鏈的聯盟成員包括房產仲介公司。
上述裝置中各個單元的功能和作用的實現過程具體詳見上述方法中對應步驟的實現過程,相關之處參見方法實施例的部分說明即可,在此不再贅述。應用本說明書所提供的基於區塊鏈的資料存證裝置,利用去中心化的區塊鏈分散式資料庫儲存、存證資料資訊,摒棄了中心化資料庫儲存可能出現的對資料資訊的任意改動;利用區塊鏈的共識機制對資料進行識別存證,避免了用戶在不同的網路平臺伺服器中對同一個對象(如房產)描述的情形不盡相同而不知哪一個為真實的缺陷;且在本說明書提供的多個實施例中,將資料資訊的詮釋資料保存在區塊頭中,更加方便了包括區塊鏈輕節點在內任意區塊鏈節點設備對目標資料資訊的檢索。
以上所描述的裝置實施例僅僅是示意性的,其中,所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理模組,即可以位於一個地方,或者也可以分佈到多個網路模組上。可以根據實際的需要而選擇其中的部分或者全部單元或模組來實現本說明書方案的目的。本發明所屬技術領域中具有通常知識者在不付出創造性勞動的情況下,即可以理解並實施。
上述實施例闡明的裝置、單元、模組,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦,電腦的具體形式可以是個人電腦、膝上型電腦、蜂巢式電話、相機電話、智慧型電話、個人數位助理、媒體播放機、導航設備、電子郵件收發設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任意幾種設備的組合。
與上述方法實施例相對應,本說明書的實施例還提供了一種電腦設備,該電腦設備包括記憶體和處理器。其中,記憶體上儲存有能夠由處理器運行的電腦程式;處理器在運行儲存的電腦程式時,執行本說明書實施例中資料中心基於區塊鏈的資料存證方法的各個步驟。對資料中心基於區塊鏈的資料存證方法的各個步驟的詳細描述請參見之前的內容,不再重複。
與上述方法實施例相對應,本說明書的實施例還提供了一種電腦可讀儲存媒體,該儲存媒體上儲存有電腦程式,這些電腦程式在被處理器運行時,執行本說明書實施例中資料中心基於區塊鏈的資料存證方法的各個步驟。對基於資料中心基於區塊鏈的資料存證方法的各個步驟的詳細描述請參見之前的內容,不再重複。
以上所述僅為本說明書的較佳實施例而已,並不用以限制本說明書,凡在本說明書的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本說明書保護的範圍之內。
在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。
記憶體可能包括電腦可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。
電腦可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。
電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可程式設計唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性儲存裝置或任何其他非傳輸媒體,可用於儲存可以被計算設備訪問的資訊。按照本文中的界定,電腦可讀媒體不包括暫態性電腦可讀媒體(transitory media),如調變的資料信號和載波。
還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。
本發明所屬技術領域中具有通常知識者應明白,本說明書的實施例可提供為方法、系統或電腦程式產品。因此,本說明書的實施例可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體態樣的實施例的形式。而且,本說明書的實施例可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
30‧‧‧裝置
302‧‧‧接受單元
304‧‧‧發起共識單元
306‧‧‧儲存單元
圖1為本說明書一示例性實施例提供的一種基於區塊鏈的資料存證方法的流程圖;
圖2為本說明書一示例性實施例提供的用於房產資訊存證的區塊鏈包括的區塊內容示意圖;
圖3為本說明書一示例性實施例提供的一種基於區塊鏈的資料存證裝置的示意圖;
圖4為運行本說明書所提供的基於區塊鏈的資料存證裝置實施例的一種硬體結構圖。