文 / 中國人民銀行淄博市中心支行 孫超
本文主要探究聯盟區塊鏈技術在社會信用查詢領域的應用,希望解決當前徵信體系存在的資訊孤島問題和資訊歸屬錯位問題,促進資料共享,降低交易成本,使守信者在市場交易過程當中能夠獲得更多的機會、更高的效率和更大的收益,從而更好提高經濟執行效率。
區塊鏈+徵信解決方案我國徵信體系框架內的各徵信機構,其資訊系統主要採用中心化架構模式,其直接獲取資料(資料從提供方資料倉庫轉移到了徵信機構)的方式是徵信業起步最快,成效最立竿見影的模式。但這種中心化的架構模式,也在某些方面存在一定的缺陷,例如資料的整理、儲存、加工依賴於基礎平臺的效能,可能存在資料更新不夠及時的情況,以及資料確權與權益保護相對困難等。
一個完善的社會信用查詢系統應能覆蓋公共信用、行業信用及第三方信用資訊,呼叫資料量大、涉及範圍廣是其典型特徵。透過區塊鏈+徵信的模式,把區塊鏈系統嵌入到傳統系統裡可解決資訊孤島、防篡改等問題,鏈下資訊系統可大大擴充套件區塊鏈系統的計算和儲存能力,這種模式在跨主體、範圍廣、提效率、降成本4個方面能更好地促進資料共享和確權。
基於聯盟鏈的社會信用查詢系統建設研究設計目標是透過聯盟區塊鏈技術,以非共享原始資料模式,建設基於市、省、國家多節點分散式記賬的可接入海量資料來源平臺的社會信用查詢系統,以低成本、高效率地刻畫資訊主體的多維度資料畫像。
1.區塊鏈的選型
根據網路範圍及節點特性,區塊鏈可劃分為公有鏈、聯盟鏈、私有鏈三類。相較於公有鏈、私有鏈,聯盟鏈通常是在多個互相已知身份的組織之間構建,一般都有嚴格的身份認證和許可權管理,節點的數量在一定時間內比較穩定,適合處理組織間需要達成共識的業務,與公有鏈相比,在相對固定的多中心化節點上共識演算法執行效率更高,而私有鏈更適合在一個集團內部進行架設。因此,本文選用聯盟鏈技術來構建社會信用查詢系統。
2.聯盟鏈資料結構
聯盟區塊鏈本身可以視作一個賬本,每個區塊可以視作一頁賬,其透過記錄時間的先後順序連結起來就形成了“賬本”。區塊分為塊頭和塊身兩部分。塊頭一般包括頭雜湊、父雜湊、時間戳及其他資訊。父雜湊指向上一個區塊的地址。塊身包含經過驗證的、塊在建立過程中發生的所有價值交換的資料記錄。鏈上系統賬本資料採用“默克爾樹”進行儲存。所有資料服務日誌記錄在這棵樹的“葉子”節點裡,一級一級往上追溯,最後歸結到一個樹根,反之透過樹根就追溯到每一筆交易詳情。樹根是整個交易集合的雜湊值,只要樹中的任何一個節點被篡改,根節點雜湊就不會匹配,從而可以達到校驗目的。
3.聯盟鏈數字身份認證流程
基於該信用查詢系統數字簽名技術實現數字身份認證,具體過程如下:(1)發方A將原文資訊進行雜湊運算,得一雜湊值即數字摘要MD;(2)發方A用自己的私鑰PVA,採用非對稱RSA演算法,對數字摘要MD進行加密,即得數字簽名DS;(3)發方A用對稱演算法DES的對稱金鑰SK對原文資訊、數字簽名SD及發方A證書的公鑰PBA採用對稱演算法加密,得加密資訊E;(4)發方用收方B的公鑰PBB,採用RSA演算法對對稱金鑰SK加密,形成數字信封DE,就好像將對稱金鑰SK裝到了一個用收方公鑰加密的信封裡;(5)發方A將加密資訊E和數字信封DE一起傳送給收方B;(6)收方B接受到數字信封DE後,首先用自己的私鑰PVB解密數字信封,取出對稱金鑰SK;(7)收方B用對稱金鑰SK透過DES演算法解密加密資訊E,還原出原文資訊、數字簽名SD及發方A證書的公鑰PBA;(8)收方B驗證數字簽名,先用發方A的公鑰解密數字簽名得數字摘要MD;(9)收方B同時將原文資訊用同樣的雜湊運算,求得一個新的數字摘要MD’;(10)將兩個數字摘要MD和MD’進行比較,驗證原文是否被修改。如果二者相等,說明資料沒有被篡改,是保密傳輸的,簽名是真實的,則同意該資料傳輸過去;否則拒絕該簽名,資料傳輸失敗。
4.聯盟鏈共識機制的選擇
當前主流的共識機制包括:工作量證明、權益證明、股份授權證明、實用拜占庭容錯、瑞波共識協議等。每一種共識機制各有優缺點,共識機制的選擇對區塊鏈效能有著較大影響,同時也會決定區塊鏈“去中心化”的程度。工作量證明和股份授權證明均有值得借鑑的地方,具體如下:主要採用股份授權機制,工作量大的接入機構擁有更多的投票權。國內各省市可綜合考慮當地接入機構數量、資料規模、可投入的資源(人力、物力、財力)建設不同級別的分散式記賬中心。借鑑工作量證明機制中“挖礦”概念,本文中定義為:資料來源節點消耗自身算力,根據分散式記賬中心轉發的資料請求指令,搜尋自己的資料倉庫,整理、加工形成既能滿足資訊需求者的使用需求,又不洩露自己原始資料的信用標籤,並向資訊需求方直接提供的一系列動作過程。“挖”體現為搜尋、整理、加工、提供的過程,“礦”體現為信用標籤。從統計資料來看,挖礦次數越多的接入機構,說明其提供的資訊越有價值,其服務的範圍更廣,理應有更多的投票權。資料提供方執行投票演算法以固定的週期、頻率,根據自己持有的資料服務數量對全部的分散式記賬節點進行自動、智慧化投票,從服務質量、服務效率等方面優選出適合自己的最佳記賬節點。全網投票的結果實時面向所有的資訊查詢需求者開放,社會信用查詢需求者可根據投票的排序結果,選定服務自己的記賬節點,並向資訊提供者分配自己的查詢費用。
5.鏈上鍊下資料協同機制
通常來講,沙盒技術指的是為執行在其中的程式提供單獨的環境,無論執行結果如何,都不對沙盒以外的系統環境產生任何影響。該信用查詢系統採用沙盒技術並對其豐富擴充套件,引入隱私保護、使用者錢包、授權管理等機制,一方面為資料提供方所擁有的資料倉庫提供保護,另一方面用以實現鏈上區塊鏈系統和鏈下傳統資訊系統的互動(見下圖)。
圖 資料提供方使用者沙盒
資料提供方沙盒的工作流程是針對每個資料服務請求,沙盒會判斷此類資料是否屬於使用者的隱私資料,如果是隱私資料,則觸發隱私保護機制向用戶申請授權。只有經過授權的查詢或購買請求,才會繼續執行交易。查詢使用者在發起查詢請求的同時,需要附加信用主體授權資訊。信用主體對某些資料可進行一次性授信,也可以面向特定的資料需求者設定具體的授信期限,基於授信的資料交易,不用再每次單獨申請使用者授權。資料接入機構在服務完成後,經社會信用查詢方確認會自動獲得查詢費用獎勵。對於司法調查等法律規定的資料查詢請求,使用者沙盒預設已經取得了使用者授權並可調取關於資訊主體的原始資料。以硬體形式存在的沙盒需進行物理冗餘備份,以程式執行形式存在的沙盒需要進行程式和引數的備份以及配套設施備份,整個系統無須停下來加節點或者停節點。使用者沙盒與聯盟區塊鏈網路之間應採用防火牆、網閘等安全裝置完成網路切換與加固。
6.非共享原始資料的信用查詢方案
資料的共享與使用,需透過以下幾個步驟:(1)資訊需求者首先需要取得資訊主體的查詢授權。(2)資訊需求者根據聯盟區塊鏈公示出的記賬服務優選排序名單,選定為自己服務的記賬節點,向其傳送查詢請求,附帶查詢內容、費用、授權檔案等。(3)有權記賬節點向特定的資訊提供節點轉發查詢請求。(4)資訊提供節點消耗自身算力,根據有權記賬節點轉發的資料請求指令,搜尋自己的資料倉庫,整理、加工形成既能滿足資訊需求者的使用需求,又不洩露自己原始資料的信用標籤。(5)資訊提供節點向資訊需求者反饋信用標籤,並告知有權記賬節點進行記賬。(6)資訊需求者對有權記賬節點本筆查詢賬務進行確認,並進行資料質量滿意度評價。(7)有權記賬節點將賬務資訊打包生成區塊資訊,向其餘分散式記賬節點、監管節點廣播新產生的區塊,其他分散式記賬節點驗證通過後,連線至區塊鏈中,主鏈高度加一併轉入下一輪資料服務。
應用場景小微企業因管理不善、報表不規範,其信用水平往往難以很好地進行評估。為對小微企業實現高效的信用評估,金融機構透過基於聯盟鏈的社會信用查詢系統,可以方便地查詢小微企業的董事、監事、經理等個體散落在各資料來源機構的信用狀況。系統的架構模式,解決了資料確權、利益分配問題,確保了資料的新鮮度和資料質量。共享信用標籤非共享原始資料的模式,保護了資料來源機構的資料不被洩露。對於現行徵信資訊覆蓋不到的小微企業,能夠在很大程度上降低金融機構對小微企業的考察成本,進而實現企業需求與金融資源供給的有效對接,有助於緩解小微企業融資難、融資貴、融資慢等難題。