《征信評(píng)估模型的區(qū)塊鏈框架設(shè)計(jì)》2100字_第1頁(yè)
《征信評(píng)估模型的區(qū)塊鏈框架設(shè)計(jì)》2100字_第2頁(yè)
《征信評(píng)估模型的區(qū)塊鏈框架設(shè)計(jì)》2100字_第3頁(yè)
《征信評(píng)估模型的區(qū)塊鏈框架設(shè)計(jì)》2100字_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

征信評(píng)估模型的區(qū)塊鏈框架設(shè)計(jì)綜述本征信評(píng)估模型采用的聯(lián)盟鏈架構(gòu),基于HyperledgerFabric開(kāi)源框架進(jìn)行相關(guān)技術(shù)設(shè)計(jì),采用的是區(qū)塊鏈模型的基本架構(gòu),包括P2P網(wǎng)絡(luò)、消息傳播機(jī)制、區(qū)塊數(shù)據(jù)結(jié)構(gòu)等。通過(guò)設(shè)置聯(lián)盟鏈上不同身份的參與者對(duì)數(shù)據(jù)的訪問(wèn)控制,來(lái)提高數(shù)據(jù)傳送過(guò)程中的安全性和有效性。不僅保證數(shù)據(jù)的可追溯性,而且還可以保護(hù)征信用戶的隱私和征信機(jī)構(gòu)的利益。1.1區(qū)塊鏈征信節(jié)點(diǎn)設(shè)計(jì)在本征信評(píng)估模型中,主要設(shè)置兩類角色,一類是數(shù)據(jù)提供者,一類是數(shù)據(jù)需求者。數(shù)據(jù)提供者包括征信機(jī)構(gòu)和需要進(jìn)行征信評(píng)級(jí)的電網(wǎng)物資供應(yīng)鏈類企業(yè),數(shù)據(jù)需求者是電網(wǎng)企業(yè)。在該區(qū)塊鏈架構(gòu)中,數(shù)據(jù)提供者與數(shù)據(jù)需求者兩類角色對(duì)應(yīng)著兩種不同的節(jié)點(diǎn)。數(shù)據(jù)提供者節(jié)點(diǎn)負(fù)責(zé)搜集電網(wǎng)物資供應(yīng)鏈類企業(yè)的信用評(píng)價(jià)指標(biāo)類數(shù)據(jù)與相應(yīng)的信用評(píng)級(jí),同時(shí),也會(huì)對(duì)此類數(shù)據(jù)按照一定的格式進(jìn)行數(shù)據(jù)預(yù)處理,并將這些處理后的信用數(shù)據(jù)上鏈。數(shù)據(jù)提供者只能完成數(shù)據(jù)的上傳,不能對(duì)數(shù)據(jù)進(jìn)行更改和下載處理。數(shù)據(jù)需求者節(jié)點(diǎn)從區(qū)塊鏈上獲取數(shù)據(jù),對(duì)模型進(jìn)行訓(xùn)練,最終獲得能根據(jù)信用指標(biāo)準(zhǔn)確劃分企業(yè)信用等級(jí)的模型。數(shù)據(jù)需求者只能進(jìn)行數(shù)據(jù)的查詢和下載,不能完成數(shù)據(jù)的上傳服務(wù)。在區(qū)塊鏈征信節(jié)點(diǎn)設(shè)計(jì)完成后,F(xiàn)abric會(huì)利用自帶的證書組件為征信節(jié)點(diǎn)生成CA證書和msp身份信息文件,為Fabric節(jié)點(diǎn)提供身份配置服務(wù)。1.2區(qū)塊鏈智能合約設(shè)計(jì)在超級(jí)賬本HyperledgerFabric中,區(qū)塊鏈智能合約也被叫做鏈上代碼,簡(jiǎn)稱鏈碼。鏈碼被部署在HyperledgerFabric的區(qū)塊鏈節(jié)點(diǎn)中,可以在虛擬化的Docker容器中運(yùn)行工作,通過(guò)gRPC協(xié)議進(jìn)行Peer節(jié)點(diǎn)的通信工作,并對(duì)分布式區(qū)塊鏈賬本中的數(shù)據(jù)進(jìn)行操作。同時(shí),超級(jí)賬本提供了多種高級(jí)程序設(shè)計(jì)語(yǔ)言的接口,不僅擴(kuò)大了平臺(tái)的兼容性,而且增加了區(qū)塊鏈的功能和應(yīng)用。本文設(shè)計(jì)的征信評(píng)估模型以基于HyperledgerFabric開(kāi)源框架進(jìn)行區(qū)塊鏈設(shè)計(jì),智能合約的開(kāi)發(fā)依照Fabric鏈碼的開(kāi)發(fā)原則。創(chuàng)建者使用高級(jí)語(yǔ)言編寫征信評(píng)估智能合約,并由所有聯(lián)盟鏈上成員對(duì)合約簽名。在該基于區(qū)塊鏈征信評(píng)估系統(tǒng)的設(shè)計(jì)過(guò)程中,基于fabric的區(qū)塊鏈框架的智能合約分為兩類,一類是系統(tǒng)智能合約,一類是用戶智能合約。系統(tǒng)智能合約在Fabric運(yùn)行的基礎(chǔ),在區(qū)塊鏈節(jié)點(diǎn)啟動(dòng)之時(shí)便需要部署到區(qū)塊鏈上,實(shí)現(xiàn)進(jìn)程交互任務(wù)。系統(tǒng)鏈碼共有如下五種類型:1.配置系統(tǒng)鏈碼:負(fù)責(zé)鏈碼,通道的配置管理。2.背書管理系統(tǒng)鏈碼:負(fù)責(zé)背書(簽名)過(guò)程,并可以支持對(duì)背書策略進(jìn)行管理。1.生命周期系統(tǒng)鏈碼:負(fù)責(zé)對(duì)用戶鏈碼的生命周期進(jìn)行管理。鏈碼生命周期包括安裝、部署、升級(jí)、權(quán)限管理、獲取信息等環(huán)節(jié)。4.查詢系統(tǒng)鏈碼:負(fù)責(zé)提供區(qū)塊鏈賬本信息查詢功能,如獲取區(qū)塊和交易等信息。5.驗(yàn)證系統(tǒng)鏈碼:交易提交前根據(jù)背書策略進(jìn)行檢查REF_Ref72064746\r\h[11]。用戶智能合約是使用JAVA,Golang等程序語(yǔ)言編寫代碼,處理業(yè)務(wù)邏輯,它的設(shè)計(jì)一方面要考慮區(qū)塊鏈分布式賬本的狀態(tài),另一方面要考慮實(shí)際的業(yè)務(wù)場(chǎng)景和開(kāi)發(fā)要求。在本文設(shè)計(jì)的基于區(qū)塊鏈的征信評(píng)估模型中,主要設(shè)計(jì)的用戶智能合約有數(shù)據(jù)發(fā)布智能合約和數(shù)據(jù)請(qǐng)求智能合約兩類。數(shù)據(jù)發(fā)布智能合約:該智能合約負(fù)責(zé)將數(shù)據(jù)提供者擁有的征信數(shù)據(jù)上傳到區(qū)塊鏈中。數(shù)據(jù)發(fā)布智能嚴(yán)格要求采集數(shù)據(jù)的數(shù)量以及格式,要求數(shù)據(jù)提供者對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理,僅將必要的信息上傳到區(qū)塊鏈,上鏈的數(shù)據(jù)格式id,x1,x2,…,x數(shù)據(jù)發(fā)布智能合約輸入:征信數(shù)據(jù)參數(shù)args輸出:鍵值對(duì)形式的征信數(shù)據(jù)//packagemain//導(dǎo)入shim依賴包,使鏈碼與peer節(jié)點(diǎn)通信//typeCreditDataCollectionChaincodestruct{}1:functionaddData(args[])2:ifargs.length=26then3:data.ID<-args[0]//征信信息編號(hào),征信數(shù)據(jù)唯一標(biāo)識(shí)4:data.Info1<-args[1]//Info1到Info24為24個(gè)征信評(píng)估指標(biāo)5:data.Info2<-args[2]6:data.Info3<-args[3]…………26:data.Info23<-args[23]27:data.Info24<-args[24]28:data.Info25<-args[25]//該條征信數(shù)據(jù)對(duì)應(yīng)的信用等級(jí)29:CreditData<-json.Marshal(person)//按照json格式存儲(chǔ)數(shù)據(jù)30:PutState(data.ID,CreditData)//以鍵值對(duì)形式寫入?yún)^(qū)塊鏈31:endfunction數(shù)據(jù)請(qǐng)求智能合約:該智能合約負(fù)責(zé)從區(qū)塊鏈中獲征信數(shù)據(jù)。當(dāng)數(shù)據(jù)需求者(電網(wǎng)企業(yè))需要對(duì)其物資供應(yīng)鏈類企業(yè)進(jìn)行征信評(píng)估時(shí),驗(yàn)證該節(jié)點(diǎn)權(quán)限信息,若權(quán)限滿足則調(diào)用該合約從區(qū)塊鏈中獲取數(shù)據(jù)。獲取數(shù)據(jù)的格式與上鏈數(shù)據(jù)的格式相同。數(shù)據(jù)請(qǐng)求智能合約輸入:征信數(shù)據(jù)標(biāo)識(shí)ID輸出:征信數(shù)據(jù)參數(shù)args//packagemain//導(dǎo)入shim依賴包,使鏈碼與peer節(jié)點(diǎn)通信//typeCreditGetChaincodestruct{}1:functiongetCredit(creditId)2:queryString=fmt.Sprintf("{\"selector\":{\"docType\":\"%s\",\"creditID\":\"%s\"}}",DOC_TYPE,CreditID)//拼接CouchDB所需要的查詢字符串(是標(biāo)準(zhǔn)的一個(gè)JSON串)3:result,err=getEduByQueryString(stub,queryString)4:iferr!=nilthen5: returnshim.Error("根據(jù)證書編號(hào)及姓名查詢信息時(shí)發(fā)生錯(cuò)誤")6:ifresult==nilthen7: returnshim.Error("根據(jù)指定的證書編號(hào)及姓名沒(méi)有查詢到相關(guān)的信息")8:returnshim.Success(result)9:endfunction數(shù)據(jù)上傳和數(shù)據(jù)獲取的過(guò)程均應(yīng)遵循區(qū)塊鏈共識(shí)機(jī)制,共識(shí)完成后,節(jié)點(diǎn)操作信息被存儲(chǔ)到區(qū)塊鏈賬本中。1.3區(qū)塊鏈數(shù)據(jù)存儲(chǔ)設(shè)計(jì)區(qū)塊鏈賬本保存著所有節(jié)點(diǎn)的交易記錄,具有有序和防篡改的特性。在HyperledgerFabric中,區(qū)塊鏈賬本由世界狀態(tài)和區(qū)塊鏈兩部分組成,區(qū)塊鏈中記錄的交易記錄決定世界狀態(tài)。圖3-1區(qū)塊鏈數(shù)據(jù)存儲(chǔ)L表示賬本,包括世界狀態(tài)和區(qū)塊鏈。W表示世界狀態(tài),以鍵值對(duì)的形式保存一組賬本數(shù)據(jù)的最新值,一般用數(shù)據(jù)庫(kù)的形式表示,如CouchDB。B表示區(qū)塊鏈,由哈希值鏈接的N個(gè)區(qū)塊構(gòu)造而成,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論