本文作者:kaifamei

基于智能合約的電子證照認證溯源方法、系統及相關設備

更新時間:2025-12-25 07:51:47 0條評論

基于智能合約的電子證照認證溯源方法、系統及相關設備



1.本發明涉及數據處理領域,尤其涉及一種基于智能合約的電子證照認證溯源方法、系統及相關設備。


背景技術:



2.當前,電子政務各類應用場景很多涉及到對個人、企業身份信息的認證及溯源的問題,其認證大多采用中心化的服務器,雖便于擴展與管理;卻面臨著因管理員權限過大或被惡意攻擊而造成數據篡改卻無法追溯、數據被泄露以及因單點故障而造成的功能不可用等風險。
3.在一些現有方式中,借助區塊鏈去中心化、防篡改等特點優勢,通過智能合約來設計與實現電子政務中各類電子證照認證及溯源過程,提出基于智能合約的電子證照認證溯源方法與系統,有效地解決中心化服務器存在數據泄露與單點故障問題,同時,進一步減少個人與企業身份等現象、增強數字證書可信度。
4.發明人在實現本發明的過程中發現,現有技術至少存在如下問題:由于電子證照相關信息中存在的非結構化信息將會導致電子證照信息在直接上鏈的過程中更容易暴露在攻擊者面前。


技術實現要素:



5.本發明實施例提供一種基于智能合約的電子證照認證溯源方法、裝置、計算機設備和存儲介質,以提高電子證照認證溯源的效率和安全性。
6.為了解決上述技術問題,本技術實施例提供一種基于智能合約的電子證照認證溯源方法,所述基于智能合約的電子證照認證溯源方法包括:在接收到用戶端的數據存儲請求時,從所述數據存儲請求中提取用戶信息和電子證照數據;基于所述用戶信息生成用戶公私鑰并反饋給所述用戶端,基于所述電子證照數據生成數據指紋;將所述電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址;將所述數據指紋和所述ipfs數據存儲地址進行上鏈處理;在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源。
7.可選地,所述電子證照數據為非結構化數據,所述數據指紋和所述ipfs數據存儲地址以結構化方式存儲至區塊鏈。
8.可選地,在所述將所述數據指紋和所述ipfs數據存儲地址進行上鏈處理之后,并且,在所述在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源之前,所述方法還包括:
在上鏈成功后,獲取存儲交易的哈希值,并反饋給所述用戶端。
9.可選地,所述在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源包括:在接收到用戶端發送的數據查詢請求時,獲取所述數據查詢請求中的身份信息進行權限驗證;若權限驗證通過,則從區塊鏈中查詢獲取所述身份信息對應的數據指紋,作為目標指紋,獲取所述身份信息對應的ipfs數據存儲地址,作為目標地址;從所述鏈外ipfs節點的ipfs網絡獲取所述目標地址對應的電子證照數據,作為目標數據;基于所述目標指紋,判斷所述目標數據的真實性。
10.可選地,所述區塊鏈往聯盟鏈,所述聯盟鏈包括審核節點、合約層和普通節點;所述審核節點包含若干可信任的固定節點,用于給所述普通節點進行申請和認證,并對普通節點上傳的電子證照數據進行審核和上鏈;所述普通節點用于向相關的審核節點進行發布的證照類型的證照申請,認證通過后,在區塊鏈上持有一個電子證照資產,所述證照資產的所屬權以及訪問權均由所述普通節點所持有,所述普通節點還用于向相關審核節點組織申請對于已有的證照資產的資產認證,認證通過后存儲在本系統中進行查看和溯源,所述普通節點之間,一個普通節點經證照擁有方同意后,查看另一個普通節點相關證照信息和溯源信息。
11.為了解決上述技術問題,本技術實施例還提供一種基于智能合約的電子證照認證溯源裝置,包括:數據提取模塊,用于在接收到用戶端的數據存儲請求時,從所述數據存儲請求中提取用戶信息和電子證照數據;指紋生成模塊,用于基于所述用戶信息生成用戶公私鑰并反饋給所述用戶端,基于所述電子證照數據生成數據指紋;地址獲取模塊,用于將所述電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址;上鏈處理模塊,用于將所述數據指紋和所述ipfs數據存儲地址進行上鏈處理;認證溯源模塊,用于在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源。
12.可選地,所述基于智能合約的電子證照認證溯源裝置還包括:信息反饋模塊,用于在上鏈成功后,獲取存儲交易的哈希值,并反饋給所述用戶端。
13.可選地,所述認證溯源模塊包括:驗證信息獲取模塊,用于在接收到用戶端發送的數據查詢請求時,獲取所述數據查詢請求中的身份信息進行權限驗證;目標地址獲取單元,用于若權限驗證通過,則從區塊鏈中查詢獲取所述身份信息對應的數據指紋,作為目標指紋,獲取所述身份信息對應的ipfs數據存儲地址,作為目標地址;目標數據獲取單元,用于從所述鏈外ipfs節點的ipfs網絡獲取所述目標地址對應
的電子證照數據,作為目標數據;數據真偽判斷模塊,用于基于所述目標指紋,判斷所述目標數據的真實性。
14.為了解決上述技術問題,本技術實施例還提供一種計算機設備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現上述基于智能合約的電子證照認證溯源方法的步驟。
15.為了解決上述技術問題,本技術實施例還提供一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,所述計算機程序被處理器執行時實現上述基于智能合約的電子證照認證溯源方法的步驟。
16.本發明實施例提供的基于智能合約的電子證照認證溯源方法、裝置、計算機設備及存儲介質,通過在接收到用戶端的數據存儲請求時,從數據存儲請求中提取用戶信息和電子證照數據;基于用戶信息生成用戶公私鑰并反饋給用戶端,基于電子證照數據生成數據指紋;將電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址;將數據指紋和ipfs數據存儲地址進行上鏈處理,在接收到用戶端發送的數據查詢請求,基于數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源,通過將結合對等文件系統ipfs,編寫相關合約來實現證照信息數據的可信存儲,提高電子證照存儲、認證溯源的效率和安全性。
附圖說明
17.為了更清楚地說明本發明實施例的技術方案,下面將對本發明實施例的描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
18.圖1是本技術可以應用于其中的示例性系統架構圖;圖2是本技術的基于智能合約的電子證照認證溯源方法的一個實施例的流程圖;圖3是根據本技術的基于智能合約的電子證照認證溯源裝置的一個實施例的結構示意圖;圖4是根據本技術的基于智能合約的電子證照認證溯源系統的一個結構示意圖;圖5是根據本技術的計算機設備的一個實施例的結構示意圖。
具體實施方式
19.除非另有定義,本文所使用的所有的技術和科學術語與屬于本技術的技術領域的技術人員通常理解的含義相同;本文中在申請的說明書中所使用的術語只是為了描述具體的實施例的目的,不是旨在于限制本技術;本技術的說明書和權利要求書及上述附圖說明中的術語“包括”和“具有”以及它們的任何變形,意圖在于覆蓋不排他的包含。本技術的說明書和權利要求書或上述附圖中的術語“第一”、“第二”等是用于區別不同對象,而不是用于描述特定順序。
20.在本文中提及“實施例”意味著,結合實施例描述的特定特征、結構或特性可以包含在本技術的至少一個實施例中。在說明書中的各個位置出現該短語并不一定均是指相同的實施例,也不是與其它實施例互斥的獨立的或備選的實施例。本領域技術人員顯式地和
隱式地理解的是,本文所描述的實施例可以與其它實施例相結合。
21.下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
22.請參閱圖1,如圖1所示,系統架構100可以包括終端設備101、102、103,網絡104和服務器105。網絡104用以在終端設備101、102、103和服務器105之間提供通信鏈路的介質。網絡104可以包括各種連接類型,例如有線、無線通信鏈路或者光纖電纜等等。
23.用戶可以使用終端設備101、102、103通過網絡104與服務器105交互,以接收或發送消息等。
24.終端設備101、102、103可以是具有顯示屏并且支持網頁瀏覽的各種電子設備,包括但不限于智能手機、平板電腦、電子書閱讀器、mp3播放器( moving picture experts group audio layer iii,動態影像專家壓縮標準音頻層面3 )、mp4( moving picture experts group audio layer iv,動態影像專家壓縮標準音頻層面4 )播放器、膝上型便攜計算機和臺式計算機等等。
25.服務器105可以是提供各種服務的服務器,例如對終端設備101、102、103上顯示的頁面提供支持的后臺服務器。
26.需要說明的是,本技術實施例所提供的基于智能合約的電子證照認證溯源方法由服務器執行,相應地,基于智能合約的電子證照認證溯源裝置設置于服務器中。
27.應該理解,圖1中的終端設備、網絡和服務器的數目僅僅是示意性的。根據實現需要,可以具有任意數目的終端設備、網絡和服務器,本技術實施例中的終端設備101、102、103具體可以對應的是實際生產中的應用系統。
28.請參閱圖2,圖2示出本發明實施例提供的一種基于智能合約的電子證照認證溯源方法,以該方法應用在圖1中的服務端為例進行說明,詳述如下:s201:在接收到用戶端的數據存儲請求時,從數據存儲請求中提取用戶信息和電子證照數據。
29.具體地,用戶通過應用層發起數據存儲請求,業務邏輯層收到數據存儲請求后,響應生成個人公私鑰對并返回給應用層;應用層通過http-post的方式發起非結構化數據存儲請求,并可選擇是否加密存儲。
30.s202:基于用戶信息生成用戶公私鑰并反饋給用戶端,基于電子證照數據生成數據指紋。
31.業務邏輯層收到請求后判斷數據格式是否正確,并將用戶私鑰作為索引鍵值,將請求中的非結構化數據進行打包上傳至ipfs,同時提取此數據中電子證照相關信息數據部分在業務邏輯層中生成對應的數據指紋,并獲取該數據在鏈外,即ipfs系統中的存儲地址索引,最后將其與生成的數據指紋一同,通過調用合約層提供的接口存入聯盟鏈上保存。
32.s203:將電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址。
33.具體地,由于電子證照相關信息中存在的非結構化信息將會導致電子證照信息在直接上鏈的過程中更容易暴露在攻擊者面前,因此本實施例中,設計了基于區塊鏈結合星
際文件系統(interplanetary file system,ipfs)和非對稱加密技術的較大規模的、與電子證照相關的非結構化數據的安全存儲與選擇性公開策略。考慮到區塊鏈存儲容量及效率有限,且證書獲得佐證的追溯所涉及的數據大多是非結構化的,因此設計將其存入對等文件系統ipfs;同時考慮到數據的隱私性,因此設計利用非對稱加密技術,支持用戶自行選擇是否公開數據,或者公開某些數據,其中,星際文件系統是一個旨在創建持久且分布式存儲和共享文件的網絡傳輸協議,它是一種內容可尋址的對等超媒體分發協議,在ipfs網絡中的節點將構成一個分布式文件系統。
34.本實施例中,采用新的文件存儲方式,通過將區塊鏈與ipfs文件系統相結合的方式來存儲電子證照信息數據中所有的非結構化數據(包括圖片,證件掃描件等)。
35.其中,把文件放入ipfs節點將獲得一個加密hash值,該hash值是針對文件內容計算得出的,具有唯一性,當向ipfs網絡請求數據的時候,會根據該數據自身的id哈希值,通過數學計算來查資源具體存儲的計算機位置,然后與其建立連接,即可下載該數據。ipfs使用這種不同于以往基于域名,而是基于內容的尋址方法,使得用戶不用關心文件的存儲路徑和服務器的位置。
36.ipfs有多個模塊,各個模塊已成為獨立項目,典型應用場景有:可以支持數百萬tps并發量的區塊鏈平臺eos采用ipfs來作為其底層存儲以此保證大數量數據的傳輸效率;firefox、opera、google等瀏覽器或是與ipfs有合作或是支持ipfs在內的分布式協議。ipfs有多層子協議棧。
37.選擇聯盟鏈網絡來存儲鏈上相關信息,保存身份證書等,聯盟鏈作為一個分布式賬本,主要使用“世界狀態”來以鍵值對的方式存儲賬本信息,“世界狀態”,也稱“賬本狀態”,起到類似于區塊鏈鏈上索引的作用,將聯盟鏈上各節點的數據索引以全公開或半公開的模式存儲在鏈上,此外該索引還使用了支持富查詢的couchdb模式,使得用戶在訪問鏈上數據時更加的靈活高效。同時在存儲鏈上數據時,本實施例中的聯盟鏈特有的通道結構來保證不同組織節點之間的數據隔離;然后通過在組織間的數據交換通道上部署相關的智能合約,在合約層中完成電子證照信息的鏈上管理,并作用于所有加入數據交換通道的所有組織節點。
38.進一步地,區塊鏈往聯盟鏈,聯盟鏈包括審核節點、合約層和普通節點;審核節點包含若干可信任的固定節點,用于給普通節點進行申請和認證,并對普通節點上傳的電子證照數據進行審核和上鏈;普通節點用于向相關的審核節點進行發布的證照類型的證照申請,認證通過后,在區塊鏈上持有一個電子證照資產,證照資產的所屬權以及訪問權均由普通節點所持有,普通節點還用于向相關審核節點組織申請對于已有的證照資產的資產認證,認證通過后存儲在本系統中進行查看和溯源,普通節點之間,一個普通節點經證照擁有方同意后,查看另一個普通節點相關證照信息和溯源信息。
39.以政務領域的企業電子證照防偽溯源申請與認證過程為例展開說明,其審核節點主要為工商機構等組織承擔,負責企業電子證照的申請、認證、審核、管理等事宜。企業可以申請成為普通節點,并向工商機構申請營業執照認證,認證通過后,該公司的營業執照信息將可在鏈上進行查看和溯源。同時證照進行權限公開后,其他用戶也可以在鏈上查看該公司(節點)所擁有的證照信息。
40.此外,審核節點下的系統管理員主要是對系統及用戶權限進行管理,同時承擔用戶證照上鏈時對證照數據進行審核、查驗的作用;普通用戶主要是對個人的證照信息進行申請,查看與確認,還可傳輸與證照認證相關的證明材料等以便審核節點及別的用戶來進行查驗,同時普通用戶也可以向管理員申請查看鏈上所存儲的證照信息,或者向其他用戶申請查看其所持證照信息。
41.在本實例下,工商機構作為審核節點,而其余的企業用戶以及學生用戶均作為普通用戶節點。詳細操作流程入下所述:用戶通過瀏覽器介入系統應用層進行注冊,業務邏輯層對其進行身份認證,若通過則將用戶身份信息寫入數據存儲層的鏈上數據存儲模塊,接著聯盟鏈將會利用哈希算法對用戶姓名、電話、身份證號等身份信息進行計算,產生全網獨一無二的身份標識,并將其注冊到相對應的節點成員中,并返回注冊成功信息,否則重新注冊。
42.在證照信息錄入過程中,首先,企業用戶整合申請營業執照所需要的所有相關材料,包括一些結構化信息的填寫以及非結構化信息的整合,接著企業用戶向證照頒發節點,即對應的審核節點(此處為工商機構所在節點)提交證照申請,并附上相關申請資料,工商機構人工審核收到的認證請求,若滿足則將對應證書信息錄入到業務邏輯層,接著企業用戶需對信息進行確認,待用戶確認后,合約層將向全網廣播該證書的確認信息,并將此證照信息以私有數據形式存儲到數據存儲層(同時存儲在鏈上及鏈外),僅供審核節點管理員用戶與企業用戶共享。若其他節點用戶想查看此證照信息,需要證照所屬用戶提交查看申請。
43.在證照查驗階段中,首先用戶a在應用層申請查驗某用戶b所持證照,證照所屬用戶b通過該請求后調用合約層發起證照信息查看請求,合約層再從數據存儲層中取出存儲在鏈上的證書原件索引及證照數據指紋返回給業務邏輯層,然后用戶a可通過用戶b提供的證照信息原件索引在聯盟鏈系統中進行搜索查驗,若可從聯盟鏈平臺查詢到該用戶b的證照信息,并與證照數據指紋相對比,則可證明該用戶所持證照的真實性。
44.在營業執照信息錄入階段,首先企業用戶將與申請營業執照相關的所有信息,或者是想要當作補充的附加信息等全部打包上傳到工商機構所在審核節點處,工商機構審核所接受到的信息數據均正確且真實,便可調用業務邏輯層將以上非結構化數據存儲至數據存儲層中鏈外存儲平臺ipfs系統中,ipfs存儲完成后,返回證書原件存儲地址索引以及證照數據指紋到合約層,將其與企業用戶信息一同存儲到鏈上。
45.在追溯證照佐證材料階段,若用戶a想要追溯某用戶b所持證照的佐證材料,用戶a需要向用戶b提出查看申請,用戶b通過查看請求后,調用合約層搜索證照獲得的佐證材料的鏈外存儲地址索引及數據指紋,再將查詢權限以及相關數據返回到用戶a處,用戶a得到用戶b返回的證照相關信息后,通過索引便可取出鏈外所存儲的證照原件信息數據,最后將原件信息與數據指紋進行對比,證明該信息的正確性以及真實性,便可完成證照佐證材料的追溯過程。
46.電子證照防偽溯源可分成兩個部分,一是核心區塊鏈部分,包括聯盟鏈架構設計,以及與ipfs對等文件系統相結合來處理證照信息中大量非結構化數據;二是業務邏輯系統部分,主要負責信息展示、完成與用戶之間可視化交互。系統采用聯盟鏈來存儲電子證照相關的結構化數據,并在鏈外采用ipfs來存儲各類電子證照認證過程相關內容及電子證照原件相關信息等非結構化數據。
47.針對核心區塊鏈部分架構設計,功能上可縱向分為四層,從下到上依次是:數據存儲層、合約層、業務邏輯層以及應用層。
48.其中,數據存儲層主要包括存儲鏈下外非結構化數據的ipfs對等文件系統,一個點對點分布式超媒體分發協議,最初由來自斯坦福大學的計算機博士juan benet(胡安
·
貝內特)設計。它是一個結合了現有成功系統與區塊鏈相結合的底層互聯網協議,其中包括git、分布式哈希表、bittorrent、自認證文件系統等。
49.傳統區塊鏈系統犧牲效率以達到安全的目的,因此數據儲存容量及速度都十分低下,對于稍大規模的數據儲存實在無能為力。為解決較大規模數據上鏈以及非結構化數據存儲的問題,同時能支持用戶可選擇地公開個人數據,本系統設計基于區塊鏈結合對等文件系統和非對稱算法的數據安全存儲與選擇性公開策略。在本策略的具體實現中,區塊鏈部分選擇聯盟鏈、對等文件系統選擇ipfs、非對稱加密算法選擇rsa。
50.ipfs作為一個對等的文件系統,在儲存的數據形式及容量上基本沒有限制。基于聯盟鏈和ipfs并搭配非對稱加密技術的數據存儲與選擇性公開策略,不用將所有的數據上鏈就能產生信任。用戶可將非結構化數據儲存于ipfs中,并將該數據的數字指紋(提出的證照信息以及真證照原件的二進制信息數據hash計算之后的結果)與ipfs存儲地址索引一同存入區塊鏈,上鏈后兩值將具備不可篡改的特性,用戶可根據區塊鏈上存儲的ipfs索引地址去獲得原始證照數據,再將該證照數據與數字指紋進行對比,若驗證兩者一致則說明該數據是未經篡改的,是可信的。同時,用戶可選擇使用自己的私鑰結合數據接收方的公鑰對數據進行加密傳輸,待收到信息后接收方通過個人私鑰對其進行解密,以此保證數據傳輸的隱私與安全。
51.哈希函數,又叫作散列函數,它是一種為數據創造出體量更小的數字“指紋”途徑。它不用考慮原始數據的類型,對消息或者數據進行打亂和混合,然后將其壓縮為摘要,從而使數據量變小,重新創建一個通常由數字和字母組成的定長的散列值。該散列值具有隨機性、不可逆性,在區塊鏈中通常用于merkle樹根和葉子節點的計算、區塊鏈地址的計算等。主要的散列算法有信息摘要算法md5和安全哈希算法sha等。
52.區塊鏈中,數字簽名就是通過哈希函數和非對稱加密算法實現的。其過程為:一份待傳輸的原文件m通過hash計算生成一份數字摘要h,然后用發送方的私鑰對h進行加密得到數字簽名c,然后將其與原文件m一起傳輸給接收方。接收方首先使用相同的散列函數計算接收到的文件m1,得出數字摘要h1,再通過發送方的公鑰對數字簽名c1進行解密得到數字摘要h2,將h1和h2兩者進行比較即可驗證原消息是否在發送過程中被更改以及該消息是否由發送方發送。
53.其中,本實施例中,需要部署的智能合約主要分為兩類:(1)電子證照資產合約,負責鏈上的證照信息索引目錄,以及證照數據指紋的管理。在數據上鏈過程中,將原始的電子證照數據存儲在鏈外的ipfs系統中,并將其中提取出來的電子證照結構化信息以數據指紋的形式存儲在鏈上,來保證證照數據在上鏈過程中,以及在鏈上均不再暴露出原始的數據信息,僅僅通過數據指紋的形式完成全過程的數據交互,并使用電子證照資產合約進行管理。此方式使不同節點間的證照數據在交換共享的過程中,達到真正的數據隔離狀態。
54.(2)訪問控制合約,提供了節點用戶對于證照信息的細粒度化的訪問控制方式,將
電子證照信息的管理權限細化到每一類獨立的數據上,可以有效的防止未經授權的用戶的數據訪問請求,并允許證照信息所有者對其所擁有的所有證照信息進行細粒度的數據及訪問權限管理,使得本實施例的區塊鏈架構適配絕大多數的應用場景。
55.合約層為整個系統架構中最為核心的部分,提供對于電子證照的認證和溯源等功能支持。本層基于聯盟鏈系統,在其上分別構建電子證照資產合約以及訪問控制合約來提供證照的頒發、審核、查驗以及追溯證照獲得的佐證材料的功能,同時也提供對于用戶請求的權限審核、訪問控制。
56.證照資產的相關信息都是本合約的關鍵數據,需保證其不可被篡改,且其數據量不大,可以將其方便的存儲于區塊鏈上。由于證照內容大多為非結構化數據,所以在數據上鏈時,考慮將原始的非結構化的證照數據存儲在數據存儲層中的鏈外數據庫中,再通過業務邏輯層來提取非結構化證照數據的結構化數據信息,如證照數據指紋,證照目錄索引,證照所屬機構,證照所屬用戶等相關證照信息,最后再將這些結構化信息通過合約層,生成電子證照對應的證照信息資產,存儲在聯盟鏈上進行管理和溯源。
57.(1) 證照資產合約,主要用于管理鏈上所存儲的證照信息索引目錄數據,以及鏈上的結構化證照信息數據。證照資產數據結構如表1所示:表1 證照資產數據結構(2)訪問控制智能合約,提供了證照信息的細粒度的訪問控制,將證照信息的管理權限細化到每一類獨立的數據上,可以有效的防止未經授權的用戶的數據訪問請求,并允許證照信息所有者對其所擁有的所有證照信息進行細粒度的數據及訪問權限管理,使得本模型可以適配絕大多數的應用場景。
58.本模塊通過于其上的業務邏輯層和應用層相結合,搭建電子證照信息管理平臺。各類用戶可以通過使用應用層所提供的管理平臺來可視化的調用到合約層所提供的接口,完成本證照信息管理系統中證照信息的的創建、管理,以及用戶所持有證照信息資產的權限的分配。
59.(3) 區塊及交易信息,鏈上區塊和交易也定義為結構化模型,有助于直觀地查看區塊鏈的使用過程。具體信息如表2及表3所示。
60.表2 區塊模型設計表3 交易模型設計其中,業務邏輯層主要起到連接過渡、權限管理等作用。它獲取應用層發送的用戶請求,對用戶身份、權限等信息進行初級審核,然后再調用合約層中訪問控制智能合約所提供的身份認證接口對用戶信息進行最終的核實,并臨時加密存儲在邏輯層中,方便后續操作的權限認證處理。當用戶身份核實正確后,邏輯層將處理用戶的操作請求信息,使其能夠滿足合約層所需的數據要求,最后再調用合約層提供的接口,將臨時存儲的加密身份信息以及操作請求數據信息一同傳輸到系統合約層來完成用戶的操作請求,并將合約層的請求反饋結果返回到應用層來可視化的展示給請求用戶。
61.同時,本實施例將會在業務邏輯層中完成對非結構化數據的加密過程,將從應用層獲取的原始的非結構化數據存儲在數據存儲層的鏈外數據庫ipfs,將對非結構化數據加密后的hash數據信息以及鏈外數據庫上的數據索引以結構化的形式發送給合約層進行鏈上數據處理。業務邏輯層同時連接到數據存儲層的ipfs系統和下層區塊鏈系統,以解決較大規模數據上鏈及非結構化數據存儲問題。
62.其中,應用層主要用于給用戶端提供具體功能使用接口,搭建的網站來與不同角
的用戶進行可視化交互。通過調用業務邏輯層的api接口,并結合網頁應用程序來實現各類用戶與電子證照信息系統間的可視化交互。主要使用vue框架、bootstrap組件和ejs模板庫等。系統整體基于b/s架構,基于mvc模式進行開發。
63.s204:將數據指紋和ipfs數據存儲地址進行上鏈處理;優選地,本實施例在交易吞吐量沒有明顯差異的前提下選擇更為簡單且適用于生產環境的raft共識機制,該共識在解決潛在的n節點非拜占庭故障時所需節點數由3n+1減少至2n+1;區塊鏈狀態數據庫選擇couchdb,支持富查詢功能。
64.s205:在接收到用戶端發送的數據查詢請求,基于數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源。
65.進一步地,電子證照數據為非結構化數據,數據指紋和ipfs數據存儲地址以結構化方式存儲至區塊鏈。
66.可選地,在將數據指紋和ipfs數據存儲地址進行上鏈處理之后,方法還包括:在上鏈成功后,獲取存儲交易的哈希值,并反饋給用戶端。
67.可選地,步驟s205中,在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源包括:在接收到用戶端發送的數據查詢請求時,獲取數據查詢請求中的身份信息進行權限驗證;若權限驗證通過,則從區塊鏈中查詢獲取身份信息對應的數據指紋,作為目標指紋,獲取身份信息對應的ipfs數據存儲地址,作為目標地址;從鏈外ipfs節點的ipfs網絡獲取目標地址對應的電子證照數據,作為目標數據;基于目標指紋,判斷目標數據的真實性。
68.本實施例中,在接收到用戶端的數據存儲請求時,從數據存儲請求中提取用戶信息和電子證照數據;基于用戶信息生成用戶公私鑰并反饋給用戶端,基于電子證照數據生成數據指紋;將電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址;將數據指紋和ipfs數據存儲地址進行上鏈處理,在接收到用戶端發送的數據查詢請求,基于數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源,通過將結合對等文件系統ipfs,編寫相關合約來實現證照信息數據的可信存儲,提高電子證照存儲的效率和安全性。
69.應理解,上述實施例中各步驟的序號的大小并不意味著執行順序的先后,各過程的執行順序應以其功能和內在邏輯確定,而不應對本發明實施例的實施過程構成任何限定。
70.圖3示出與上述實施例基于智能合約的電子證照認證溯源方法一一對應的基于智能合約的電子證照認證溯源裝置的原理框圖。如圖3所示,該基于智能合約的電子證照認證溯源裝置包括數據提取模塊31、指紋生成模塊32、地址獲取模塊33、上鏈處理模塊34和認證溯源模塊35。各功能模塊詳細說明如下:數據提取模塊31,用于在接收到用戶端的數據存儲請求時,從數據存儲請求中提取用戶信息和電子證照數據;指紋生成模塊32,用于基于用戶信息生成用戶公私鑰并反饋給用戶端,基于電子證照數據生成數據指紋;
地址獲取模塊33,用于將電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址;上鏈處理模塊34,用于將數據指紋和ipfs數據存儲地址進行上鏈處理;認證溯源模塊35,用于在接收到用戶端發送的數據查詢請求,基于數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源。
71.可選地,基于智能合約的電子證照認證溯源裝置還包括:信息反饋模塊,用于在上鏈成功后,獲取存儲交易的哈希值,并反饋給用戶端。
72.可選地,認證溯源模塊還包括:驗證信息獲取模塊,用于在接收到用戶端發送的數據查詢請求時,獲取數據查詢請求中的身份信息進行權限驗證;目標地址獲取單元,用于若權限驗證通過,則從區塊鏈中查詢獲取身份信息對應的數據指紋,作為目標指紋,獲取身份信息對應的ipfs數據存儲地址,作為目標地址;目標數據獲取單元,用于從鏈外ipfs節點的ipfs網絡獲取目標地址對應的電子證照數據,作為目標數據;數據真偽判斷模塊,用于基于目標指紋,判斷目標數據的真實性。
73.關于基于智能合約的電子證照認證溯源裝置的具體限定可以參見上文中對于基于智能合約的電子證照認證溯源方法的限定,在此不再贅述。上述基于智能合約的電子證照認證溯源裝置中的各個模塊可全部或部分通過軟件、硬件及其組合來實現。上述各模塊可以硬件形式內嵌于或獨立于計算機設備中的處理器中,也可以以軟件形式存儲于計算機設備中的存儲器中,以便于處理器調用執行以上各個模塊對應的操作。
74.為解決上述技術問題,本技術實施例還提供一種基于智能合約的電子證照認證溯源系統,具體結構示意圖如圖4所示,包括數據層、合約層、業務邏輯層和應用層,其中,數據存儲層包括ipfs網絡和區塊鏈架構,合約層包括的各個類型智能合約,用于進行證書創建、證書信息錄入、證書審核、數據存儲、信息查詢和用戶管理,證書是指智能合約中涉及的用于驗證的證書,例如公鑰證書、私鑰證書和合約證書等,業務邏輯層用于公私鑰生成、證書條件判斷、數據存儲交換、證書查驗和用戶管理,應用層包括api接口、前端頁面,所述api接口用于進行接口程序的接入,在該示意圖中,區塊鏈架構采用fabric架構,fabric架構實現一個通用的權限區塊鏈(permissioned chain)的底層基礎框架,為了適用于不同的場合,采用模塊化架構提供可切換和可擴展的組件,包括共識算法、加密安全、數字資產、智能合約和身份鑒權等服務,fabric 克服了現有公有鏈項目的缺陷,如吞吐量低、交易公開無隱私性、無最終確定性以及共識算法低效等問題。
75.為解決上述技術問題,本技術實施例還提供計算機設備。具體請參閱圖5,圖5為本實施例計算機設備基本結構框圖。
76.所述計算機設備4包括通過系統總線相互通信連接存儲器41、處理器42、網絡接口43。需要指出的是,圖中僅示出了具有組件連接存儲器41、處理器42、網絡接口43的計算機設備4,但是應理解的是,并不要求實施所有示出的組件,可以替代的實施更多或者更少的組件。其中,本技術領域技術人員可以理解,這里的計算機設備是一種能夠按照事先設定或存儲的指令,自動進行數值計算和/或信息處理的設備,其硬件包括但不限于微處理器、專用集成電路(application specific integrated circuit,asic)、可編程門陣列(field-
programmable gate array,fpga)、數字處理器 (digital signal processor,dsp)、嵌入式設備等。
77.所述計算機設備可以是桌上型計算機、筆記本、掌上電腦及云端服務器等計算設備。所述計算機設備可以與用戶通過鍵盤、鼠標、遙控器、觸摸板或聲控設備等方式進行人機交互。
78.所述存儲器41至少包括一種類型的可讀存儲介質,所述可讀存儲介質包括閃存、硬盤、多媒體卡、卡型存儲器(例如,sd或d界面顯示存儲器等)、隨機訪問存儲器(ram)、靜態隨機訪問存儲器(sram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、可編程只讀存儲器(prom)、磁性存儲器、磁盤、光盤等。在一些實施例中,所述存儲器41可以是所述計算機設備4的內部存儲單元,例如該計算機設備4的硬盤或內存。在另一些實施例中,所述存儲器41也可以是所述計算機設備4的外部存儲設備,例如該計算機設備4上配備的插接式硬盤,智能存儲卡(smart media card, smc),安全數字(secure digital, sd)卡,閃存卡(flash card)等。當然,所述存儲器41還可以既包括所述計算機設備4的內部存儲單元也包括其外部存儲設備。本實施例中,所述存儲器41通常用于存儲安裝于所述計算機設備4的操作系統和各類應用軟件,例如基于智能合約的電子證照認證溯源的程序代碼等。此外,所述存儲器41還可以用于暫時地存儲已經輸出或者將要輸出的各類數據。
79.所述處理器42在一些實施例中可以是中央處理器(central processing unit,cpu)、控制器、微控制器、微處理器、或其他數據處理芯片。該處理器42通常用于控制所述計算機設備4的總體操作。本實施例中,所述處理器42用于運行所述存儲器41中存儲的程序代碼或者處理數據,例如運行基于智能合約的電子證照認證溯源的程序代碼。
80.所述網絡接口43可包括無線網絡接口或有線網絡接口,該網絡接口43通常用于在所述計算機設備4與其他電子設備之間建立通信連接。
81.本技術還提供了另一種實施方式,即提供一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有界面顯示程序,所述界面顯示程序可被至少一個處理器執行,以使所述至少一個處理器執行如上述的基于智能合約的電子證照認證溯源方法的步驟。
82.通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本技術的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,服務器,空調器,或者網絡設備等)執行本技術各個實施例所述的方法。
83.顯然,以上所描述的實施例僅僅是本技術一部分實施例,而不是全部的實施例,附圖中給出了本技術的較佳實施例,但并不限制本技術的專利范圍。本技術可以以許多不同的形式來實現,相反地,提供這些實施例的目的是使對本技術的公開內容的理解更加透徹全面。盡管參照前述實施例對本技術進行了詳細的說明,對于本領域的技術人員來而言,其依然可以對前述各具體實施方式所記載的技術方案進行修改,或者對其中部分技術特征進行等效替換。凡是利用本技術說明書及附圖內容所做的等效結構,直接或間接運用在其他相關的技術領域,均同理在本技術專利保護范圍之內。

技術特征:


1.一種基于智能合約的電子證照認證溯源方法,其特征在于,包括:在接收到用戶端的數據存儲請求時,從所述數據存儲請求中提取用戶信息和電子證照數據;基于所述用戶信息生成用戶公私鑰并反饋給所述用戶端,基于所述電子證照數據生成數據指紋;將所述電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址;將所述數據指紋和所述ipfs數據存儲地址進行上鏈處理;在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源。2.如權利要求1所述的基于智能合約的電子證照認證溯源方法,其特征在于,所述電子證照數據為非結構化數據,所述數據指紋和所述ipfs數據存儲地址以結構化方式存儲至區塊鏈。3.如權利要求1所述的基于智能合約的電子證照認證溯源方法,其特征在于,在所述將所述數據指紋和所述ipfs數據存儲地址進行上鏈處理之后,并且,在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源之前,所述方法還包括:在上鏈成功后,獲取存儲交易的哈希值,并反饋給所述用戶端。4.如權利要求1至3任一項所述的基于智能合約的電子證照認證溯源方法,其特征在于,所述在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,進行電子證照認證溯源,包括:在接收到用戶端發送的數據查詢請求時,獲取所述數據查詢請求中的身份信息進行權限驗證;若權限驗證通過,則從區塊鏈中查詢獲取所述身份信息對應的數據指紋,作為目標指紋,獲取所述身份信息對應的ipfs數據存儲地址,作為目標地址;從所述鏈外ipfs節點的ipfs網絡獲取所述目標地址對應的電子證照數據,作為目標數據;基于所述目標指紋,判斷所述目標數據的真實性。5.如權利要求1至3任一項所述的基于智能合約的電子證照認證溯源方法,其特征在于,上鏈處理采用的區塊鏈為聯盟鏈,所述聯盟鏈包括審核節點、合約層和普通節點;所述審核節點包含若干可信任的固定節點,用于給所述普通節點進行申請和認證,并對普通節點上傳的電子證照數據進行審核和上鏈;所述普通節點用于向相關的審核節點進行發布的證照類型的證照申請,認證通過后,在區塊鏈上持有一個電子證照資產,所述證照資產的所屬權以及訪問權均由所述普通節點所持有,所述普通節點還用于向相關審核節點組織申請對于已有的證照資產的資產認證,認證通過后存儲在本系統中進行查看和溯源,所述普通節點之間,一個普通節點經證照擁有方同意后,查看另一個普通節點相關證照信息和溯源信息。6.一種基于智能合約的電子證照認證溯源裝置,其特征在于,包括:數據提取模塊,用于在接收到用戶端的數據存儲請求時,從所述數據存儲請求中提取
用戶信息和電子證照數據;指紋生成模塊,用于基于所述用戶信息生成用戶公私鑰并反饋給所述用戶端,基于所述電子證照數據生成數據指紋;地址獲取模塊,用于將所述電子證照數據存儲至鏈外ipfs節點的ipfs網絡,并接收ipfs節點反饋的ipfs數據存儲地址;上鏈處理模塊,用于將所述數據指紋和所述ipfs數據存儲地址進行上鏈處理;認證溯源模塊,用于在接收到用戶端發送的數據查詢請求,基于所述數據查詢請求包含的身份認證信息,采用鏈上數據和ipfs網絡進行電子證照認證溯源。7.如權利要求6所述的基于智能合約的電子證照認證溯源裝置,其特征在于,所述認證溯源模塊包括:驗證信息獲取模塊,用于在接收到用戶端發送的數據查詢請求時,獲取所述數據查詢請求中的身份信息進行權限驗證;目標地址獲取單元,用于若權限驗證通過,則從區塊鏈中查詢獲取所述身份信息對應的數據指紋,作為目標指紋,獲取所述身份信息對應的ipfs數據存儲地址,作為目標地址;目標數據獲取單元,用于從所述鏈外ipfs節點的ipfs網絡獲取所述目標地址對應的電子證照數據,作為目標數據;數據真偽判斷模塊,用于基于所述目標指紋,判斷所述目標數據的真實性。8.一種基于智能合約的電子證照認證溯源系統,其特征在于,所述系統應用于權利要求1至5任一項所述的基于智能合約的電子證照認證溯源方法,包括數據層、合約層、業務邏輯層和應用層,其中,數據存儲層包括ipfs網絡和區塊鏈架構,所述合約層包括的各個類型智能合約,用于進行證書創建、證書信息錄入、證書審核、數據存儲、信息查詢和用戶管理,所述業務邏輯層用于公私鑰生成、證書條件判斷、數據存儲交換、證書查驗和用戶管理,所述應用層包括api接口、前端頁面,所述api接口用于進行接口程序的接入。9.一種計算機設備,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現如權利要求1至5任一項所述的基于智能合約的電子證照認證溯源方法。10.一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1至5任一項所述的基于智能合約的電子證照認證溯源方法。

技術總結


本發明公開了一種基于智能合約的電子證照認證溯源方法、系統及相關設備,包括:在接收到用戶端的數據存儲請求時,從數據存儲請求中提取用戶信息和電子證照數據;基于用戶信息生成用戶公私鑰并反饋給用戶端,基于電子證照數據生成數據指紋;將電子證照數據存儲至鏈外IPFS節點的IPFS網絡,并接收IPFS節點反饋的IPFS數據存儲地址;將數據指紋和IPFS數據存儲地址進行上鏈處理,在接收到用戶端發送的數據查詢請求,基于數據查詢請求包含的身份認證信息,采用鏈上數據和IPFS網絡進行電子證照認證溯源,采用本發明提高電子證照認證溯源的安全性。性。性。


技術研發人員:

榮輝桂 魏潔楊 李潤龍

受保護的技術使用者:

湖南大學

技術研發日:

2022.11.28

技術公布日:

2023/1/19


文章投稿或轉載聲明

本文鏈接:http://m.newhan.cn/zhuanli/patent-1-87979-0.html

來源:專利查詢檢索下載-實用文體寫作網版權所有,轉載請保留出處。本站文章發布于 2023-01-29 22:23:30

發表評論

驗證碼:
用戶名: 密碼: 匿名發表
評論列表 (有 條評論
2人圍觀
參與討論