朱福建,張春海,郭 昊
(中國海洋大學(xué)信息科學(xué)與工程學(xué)部,山東青島 266100)
市場上的理財(cái)借貸平臺能使一些個(gè)人投資者、小微企業(yè)等的資金流動更加靈活,在一定程度上滿足其快速借款的需求,從而推動市場經(jīng)濟(jì)發(fā)展。然而,由于缺乏監(jiān)管,相關(guān)平臺涌現(xiàn)大量問題,如借款人惡意逃債、平臺資金去向不明等[1]。據(jù)網(wǎng)貸天眼數(shù)據(jù)顯示,僅2019 年出現(xiàn)問題的借貸平臺就新增了763 家。現(xiàn)有的銀行貸款多由銀行獨(dú)自放貸并承擔(dān)風(fēng)險(xiǎn),借款用戶和儲蓄投資用戶沒有直接的資金交易,用戶將錢存進(jìn)銀行后,由銀行決定存款的使用方式,銀行放貸的資金來自于儲蓄用戶的存款,儲戶的收益普遍較低。銀行貸款在每個(gè)時(shí)期有一定的傾向性,目前更傾向于向政府扶持發(fā)展的行業(yè)發(fā)放貸款,致使部分個(gè)人、小微企業(yè)借款困難[2],同樣導(dǎo)致了市場資金流動緩慢。
區(qū)塊鏈技術(shù)憑借其去中心化、可追溯、不可篡改等特點(diǎn)[3],不僅在房屋租賃[4]、產(chǎn)品溯源[5]、電子計(jì)票[6]、物流隱私保護(hù)[7]方面有所應(yīng)用,還被廣泛應(yīng)用于醫(yī)療數(shù)據(jù)共享[8]、數(shù)字資產(chǎn)交易[9]以及眾籌業(yè)務(wù)[10]等領(lǐng)域。在數(shù)字資產(chǎn)交易領(lǐng)域,許夢竹等[11]對多種理財(cái)借貸運(yùn)行方式進(jìn)行了比較,發(fā)現(xiàn)基于區(qū)塊鏈的P2P 網(wǎng)貸商業(yè)模式具有更好的市場應(yīng)用前景;琚春華等[12]認(rèn)為區(qū)塊鏈技術(shù)在借貸方面具有很好的應(yīng)用前景,但未實(shí)現(xiàn)完整的借貸流程;Li 等[13]提出一種簡單的個(gè)人借貸方案,通過擔(dān)保人減少賴賬、違約情況的發(fā)生,但在匿名性系統(tǒng)中并未指明擔(dān)保人應(yīng)如何償還相關(guān)貸款,未對借款人員的還款能力進(jìn)行評估,亦未指出借款方未按時(shí)還款的處理方法[14];柳晶婷[15]以定量的方式對基于區(qū)塊鏈的借貸平臺進(jìn)行了風(fēng)險(xiǎn)評估。以上研究旨在通過完全去中心化的方式完成借貸關(guān)系,但均無法有效預(yù)防廢債情況的發(fā)生,而且會受困于匿名性的影響,在有違約行為時(shí)無法追責(zé)到個(gè)人。
基于此,本文提出一種基于智能合約的理財(cái)借貸方案,首先設(shè)計(jì)EBBI(Ethereum-Borrower-Bank-Investor)借貸投資模型,使一個(gè)標(biāo)的的發(fā)起、投資和還款等操作由銀行、投資方和借款方三方參與,通過智能合約算法維護(hù)標(biāo)的狀態(tài),實(shí)現(xiàn)逾期判定和代償?shù)裙δ埽鉀Q現(xiàn)有方案中的壞賬追責(zé)[12-13]問題,同時(shí)借款方和投資方采用一對多關(guān)系,可以滿足借款方快速籌款的需求;然后采用基于深度學(xué)習(xí)的智能評估預(yù)測算法對借款方進(jìn)行評估,與人工審核相比,提高了貸款資質(zhì)判斷的客觀性;最后,該方案中有多方參與主體的信任背書,與當(dāng)前由銀行直接向用戶貸款相比,具有分散銀行資金風(fēng)險(xiǎn)、提高閑散零戶資金利用率的優(yōu)點(diǎn)[16]。
近年來,區(qū)塊鏈由于比特幣[17]的出現(xiàn)再次走進(jìn)大眾視野。從狹義理解,區(qū)塊鏈就是包含有數(shù)據(jù)交易信息的區(qū)塊按順序組成的鏈,每個(gè)區(qū)塊都含有父區(qū)塊的Hash 值、時(shí)間戳,采用密碼學(xué)技術(shù)保證數(shù)據(jù)的不可篡改和不可偽造性,是去中心化的分布式賬本數(shù)據(jù)庫[18]。如果想篡改區(qū)塊鏈數(shù)據(jù),需要擁有全網(wǎng)51%的算力,對于當(dāng)前節(jié)點(diǎn)的算力來說很難達(dá)到,因此其數(shù)據(jù)不可非法篡改的特點(diǎn)受到人們青睞。以太坊區(qū)塊鏈[19]被稱為區(qū)塊鏈2.0 時(shí)代,支持圖靈完備的智能合約,增強(qiáng)了腳本功能。
2004 年,Nick Sazbo 在IEEE 國際電子合同研討會上發(fā)表智能合約的主題演講并指出許多合同條款都可以嵌入到硬件和軟件中,從而使違反合約的行為變得成本高昂[20]。在區(qū)塊鏈技術(shù)背景下,智能合約能夠在協(xié)議既定的條件下,保證借貸、抵押等協(xié)議的正常執(zhí)行,降低合約欺詐、合約逃債風(fēng)險(xiǎn),將參與者、法律協(xié)議、相關(guān)商業(yè)邏輯程序化,等同于代碼中的法律,為基于區(qū)塊鏈的應(yīng)用提供了良好的安全保證,同時(shí)也促進(jìn)了區(qū)塊鏈技術(shù)在現(xiàn)實(shí)生活中的應(yīng)用[21]。
去中心化與中心化是一組對立的概念[22]。人們目前使用的很多APP、Web 應(yīng)用都是中心化的,由某一公司或組織管理其服務(wù),并掌握相關(guān)數(shù)據(jù)、信息。如果服務(wù)器出現(xiàn)問題,會面臨不可用的問題,同時(shí)可能會有數(shù)據(jù)泄漏、信息違規(guī)操作的風(fēng)險(xiǎn)。
基于區(qū)塊鏈技術(shù),以太坊社區(qū)將基于智能合約的應(yīng)用稱為去中心化的應(yīng)用程序(Decentralized App,DApp)。其數(shù)據(jù)不再由某一個(gè)中心化的公司或組織擁有,各節(jié)點(diǎn)均可以獲取完整的數(shù)據(jù),不會出現(xiàn)由于某一節(jié)點(diǎn)服務(wù)失效而造成整個(gè)應(yīng)用宕機(jī)的現(xiàn)象。然而,去中心化的應(yīng)用會面臨各節(jié)點(diǎn)需要存儲大量數(shù)據(jù)的問題,各節(jié)點(diǎn)存儲重復(fù)的數(shù)據(jù)在某種意義上是對存儲空間的浪費(fèi)。
本文基于智能合約的新型理財(cái)借貸系統(tǒng)設(shè)計(jì)出EBBI借貸投資模型。該模型以銀行作為中間機(jī)構(gòu),采用基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)風(fēng)控評估算法預(yù)測借款方的還款能力,銀行在系統(tǒng)中心化與去中心化部分扮演雙重角色。銀行中存儲借款方的個(gè)人信息、借貸記錄和違約情況等,借款方向銀行提交借款申請以及銀行完成智能評估視為系統(tǒng)中心化部分;銀行發(fā)布標(biāo)的、借款方和投資方進(jìn)行資金交易、代償交易等視為系統(tǒng)去中心化部分。
圖1 展示了包含借款方借款、銀行完成智能評估并發(fā)布標(biāo)的、投資方投資、借款方還款、指定代償人代償?shù)腅BBI 系統(tǒng)業(yè)務(wù)模型。以下基于該模型進(jìn)行具體分析:①借款方(Borrower)指有借款需求的個(gè)人或組織;②投資方(Investor)指擁有資金并且有投資理財(cái)意向的用戶,其選擇一些標(biāo)的產(chǎn)品進(jìn)行投資,賺取一定的收益;③銀行(Bank)既是用戶信息的存儲中心,完成風(fēng)險(xiǎn)智能評估,扮演著借款方資質(zhì)復(fù)審、追查壞賬的重要角色,又是區(qū)塊鏈網(wǎng)絡(luò)中標(biāo)的的唯一合法發(fā)起方,完成標(biāo)的的新增;④指定熟人指某一標(biāo)的借款方指定的代償人,在借款方未能按時(shí)還款時(shí),投資方可以啟動代償程序,由該指定熟人完成代償;⑤監(jiān)管部門對整體運(yùn)作模式進(jìn)行監(jiān)管,同時(shí)也是區(qū)塊鏈網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn),可以獲取交易數(shù)據(jù)的備份,對資金轉(zhuǎn)移和交易進(jìn)行跟蹤管理。
在使用過程中,一方面為了查驗(yàn)借款用戶的還賬能力,減小賴帳風(fēng)險(xiǎn),保護(hù)投資用戶的合法權(quán)益;另一方面,由于區(qū)塊鏈數(shù)據(jù)公開可讀,為了保護(hù)用戶隱私,避免借款方個(gè)人隱私信息泄漏,借款方不直接發(fā)布標(biāo)的,而是先向銀行提交借款申請,經(jīng)由銀行智能評估后發(fā)布標(biāo)的。投資方可以在平臺中瀏覽查看,選擇愿意投資的產(chǎn)品項(xiàng)目,投資資金經(jīng)由合約賬戶,再由借款方提取至個(gè)人賬戶,不再是由銀行單獨(dú)放貸,分散了其資金風(fēng)險(xiǎn)。在還款日期截止之前,借款方將資金轉(zhuǎn)至合約賬戶,然后投資方將相應(yīng)的本息提取至個(gè)人賬戶,借款方和投資方直接完成一次借貸投資關(guān)系。
Fig.1 EBBI system business model圖1 EBBI系統(tǒng)業(yè)務(wù)模型
圖1 中數(shù)字標(biāo)注的流程展示了一個(gè)最簡單的線性借貸投資場景。基于智能合約的理財(cái)借貸系統(tǒng)具有以下特點(diǎn):①去中心化與中心化相結(jié)合。在該平臺系統(tǒng)中,銀行保存用戶信息,降低了區(qū)塊鏈由于數(shù)據(jù)的公開可讀性而對借款方隱私信息造成泄露的風(fēng)險(xiǎn),也有助于壞賬發(fā)生時(shí)銀行和監(jiān)管部門介入追查;而基于智能合約的資金交易過程具有去中心化的特點(diǎn);②標(biāo)的信息、交易數(shù)據(jù)等重要信息上鏈保存。標(biāo)的信息、抵押資產(chǎn)記錄都是借款方的借款證明,因此要確保這些數(shù)據(jù)不被惡意篡改并且可追溯。將標(biāo)的信息、用戶投資、還款等信息保存在區(qū)塊鏈后,監(jiān)管部門也可以獲取相關(guān)數(shù)據(jù)并掌握資金流向。若用戶有造假違約行為發(fā)生,將會被永久記錄且無法消除,對其造成惡劣影響,因此能從主觀層面降低參與雙方作假的意圖;③基于深度學(xué)習(xí)的風(fēng)控評估算法完成智能評估。結(jié)合深度學(xué)習(xí)思想完成貸款前的智能評估提高了資質(zhì)審核的客觀性,有利于幫助小微企業(yè)、個(gè)人實(shí)現(xiàn)貸款需求。
該系統(tǒng)包含中心化與去中心化兩部分,基于智能合約的理財(cái)借貸系統(tǒng)架構(gòu)如圖2所示。
2.2.1 應(yīng)用視圖模塊
Fig.2 System structure圖2 系統(tǒng)架構(gòu)
該模塊旨在為用戶提供簡潔的互動和可視化操作界面,滿足基本使用需求。在系統(tǒng)的中心化部分,借款用戶可以向銀行申請注冊,發(fā)送個(gè)人借款申請。該部分采用Vue 前端框架實(shí)現(xiàn),可以通過易用的API(Application Pro?gram Interface)實(shí)現(xiàn)數(shù)據(jù)響應(yīng)和視圖組合。
系統(tǒng)的去中心化部分給使用者提供了新增標(biāo)的、瀏覽標(biāo)的、投資和還款等操作的入口。該模塊基于以太坊中最受歡迎的Truffle 框架開發(fā),頁面采用React+Bootstrap 編寫完成,借助通用的Web3.js 庫[23]與以太坊的RPC(Remote Protocol Call)接口連接,以完成智能合約的調(diào)用、編譯和部署操作。
2.2.2 后端邏輯模塊
該模塊負(fù)責(zé)接收應(yīng)用視圖模塊的請求,進(jìn)行相應(yīng)的邏輯處理,并給予視圖層相應(yīng)反饋。系統(tǒng)的中心化部分主要完成用戶信息新增和查詢、借貸申請新增和查詢以及借貸歷史查詢等邏輯;同時(shí),引入智能風(fēng)控評估模型,完成對用戶借貸申請的智能評估。該模塊采用DJango 框架完成,在Python 中,借助通用的Web3 庫也可以與智能合約進(jìn)行交互。系統(tǒng)的去中心化部分主要完成智能合約邏輯的編寫,其核心業(yè)務(wù)功能為標(biāo)的創(chuàng)建、投資方投資、借款方還款和代償?shù)?,采用Solidity 語言[24]編寫智能合約。
2.2.3 數(shù)據(jù)存儲模塊
該模塊用于持久化數(shù)據(jù),保存與用戶和交易相關(guān)的數(shù)據(jù)。系統(tǒng)的中心化部分主要存儲借款用戶提交的相關(guān)數(shù)據(jù)和借貸記錄,不上鏈公開存儲的信息。
該模塊數(shù)據(jù)采用MySQL 數(shù)據(jù)庫存儲,其可提供安全、保密的數(shù)據(jù)操作。系統(tǒng)的去中心化部分主要負(fù)責(zé)存儲標(biāo)的信息和交易記錄,基于開源的區(qū)塊鏈系統(tǒng)以太坊進(jìn)行搭建。
用戶在向銀行申請注冊時(shí)需要提交自己的基本信息,系統(tǒng)需要對此信息進(jìn)行保存,并明確用戶公鑰與身份證號的映射關(guān)系,達(dá)到降低系統(tǒng)匿名性的目的,保證人員可追溯。因此可建立一張個(gè)人信息表,如表1 所示。由于篇幅限制,其他數(shù)據(jù)庫表不再贅述。
Table 1 Personal information table表1 個(gè)人信息表
基于智能合約的銀行理財(cái)借貸系統(tǒng)主要包含借款方、投資方、銀行三部分參與者。首先,借款方與銀行組成中心化部分,借款方向銀行提起借款請求,銀行完成智能評估;然后,借款方、投資方和銀行三者組成去中心化部分,銀行統(tǒng)一發(fā)布標(biāo)的,投資方進(jìn)行投資,借款方獲取借款資金并按時(shí)還款。
基于智能合約的銀行理財(cái)借貸系統(tǒng)包含的主要需求為:①申請借款。借款方向銀行發(fā)出借款申請,提交相關(guān)證明資料,由銀行負(fù)責(zé)審核借貸資質(zhì)和還款能力;②發(fā)布標(biāo)的。標(biāo)的只能由銀行發(fā)布,個(gè)人用戶私自發(fā)布標(biāo)的不會被智能合約接受;③查看標(biāo)的。用戶可以瀏覽已發(fā)布的標(biāo)的,選擇合適的產(chǎn)品進(jìn)行投資;④用戶投資。當(dāng)用戶有喜歡的標(biāo)的并且滿足投資條件時(shí)可以進(jìn)行投資,投資后,該標(biāo)的產(chǎn)品會出現(xiàn)在用戶的投資列表中;⑤用戶提取資金。在合理的標(biāo)的狀態(tài)下,借款方僅可提取一次資金,提取后標(biāo)的狀態(tài)會被更改為已提取,不再支持投資;⑥用戶還款。在標(biāo)的規(guī)定的還款時(shí)間之前,借款方將本息轉(zhuǎn)至智能合約賬戶,完成還款操作;⑦用戶收回本息。在借款方完成還款操作后,投資方主動收回本息。
基于系統(tǒng)需求分析,設(shè)計(jì)基于智能合約的銀行理財(cái)借貸系統(tǒng)流程,包含申請借貸、發(fā)布標(biāo)的、投資、還款和代償?shù)群诵墓δ?,具體如圖3所示。
Fig.3 System flow chart圖3 系統(tǒng)流程圖
3.3.1 新增標(biāo)的
新增標(biāo)的是系統(tǒng)的主要功能之一,銀行根據(jù)借款方提交的借款申請創(chuàng)建標(biāo)的,標(biāo)的結(jié)構(gòu)體見表2,枚舉類型Sub?jectState 表示標(biāo)的狀態(tài),包括Borrowing、PendingExtract、Ex?tracted、Overdue 和Completed 5 種狀態(tài)。如果標(biāo)的不是由銀行發(fā)布,則該標(biāo)的不成立,不會被智能合約通過,如此可以避免由個(gè)人虛假借貸而造成的逾期和惡意賴賬等不良后果。
Table 2 Subject structure表2 標(biāo)的結(jié)構(gòu)體
銀行通過調(diào)用發(fā)布標(biāo)的接口將新的標(biāo)的信息存儲在區(qū)塊鏈上,為了確保標(biāo)的的合法性,程序會對創(chuàng)建者地址進(jìn)行二次確認(rèn),確保是由銀行發(fā)起的標(biāo)的。如果借款方有指定熟人,則可在發(fā)起標(biāo)的后添加熟人記錄,存儲在credit?People(mapping(uint=>address)類型)變量中。該信息不隨標(biāo)的信息公開,能夠保護(hù)熟人的隱私。借款方可以設(shè)定可接受的借貸利息loanInterest,如果想盡快借款成功,可在法律允許范圍內(nèi)適當(dāng)提高借貸利息,這樣投資方收益會升高,投資意愿也會增強(qiáng)。在區(qū)塊鏈中增加標(biāo)的的算法ad?dLoan步驟為:
3.3.2 投資標(biāo)的
投資方可以瀏覽所有標(biāo)的產(chǎn)品信息頁面,查看借款說明和利息等信息,當(dāng)有中意的產(chǎn)品時(shí),可以自由投資。投資會調(diào)用產(chǎn)品投資合約算法,完成相關(guān)條件的判斷,記錄此次交易詳情。借款方和投資方可以是一對多的關(guān)系,在程序中,通過subjectAndInvestor(mapping(uint=>Investors)類型)變量存儲,保證一個(gè)標(biāo)的對應(yīng)一個(gè)投資人集。通過標(biāo)的ID 可以快速定位到投資人集合,進(jìn)而查詢投資人及對應(yīng)投資金額,在查詢時(shí),時(shí)間復(fù)雜度為O(1),標(biāo)的和投資人集合結(jié)構(gòu)如圖4所示。
Fig.4 Subject and investor structure圖4 標(biāo)的投資人結(jié)構(gòu)
標(biāo)的投資方的資金會存放在智能合約賬戶中,在超過貸款截止時(shí)間后,借款方可以提取已借到的總金額。完成標(biāo)的投資的前置條件為:標(biāo)的狀態(tài)為借款中、當(dāng)前時(shí)間早于貸款截止時(shí)間和此次所投金額不超過標(biāo)的目前所需金額。若某用戶完成投資后,標(biāo)的中的amount 和loanAmount相等,則會將標(biāo)的狀態(tài)置為PendingExtracted。產(chǎn)品投資的算法subjectInvest 步驟為:
3.3.3 還款
在預(yù)計(jì)還款日期前,借款方需要將資金提前轉(zhuǎn)移至智能合約賬戶中。若借款方未能按時(shí)將資金轉(zhuǎn)至智能合約賬戶,則視為未能及時(shí)還款,投資方可以將標(biāo)的設(shè)置為逾期,逾期的標(biāo)的將執(zhí)行資產(chǎn)抵押或代償程序。還款的前置條件為:標(biāo)的狀態(tài)為Extracted 或者Overdue、發(fā)送金額等于本息之和、還款賬戶與借款賬戶為同一賬戶。還款的算法repay步驟為:
3.3.4 代償
在標(biāo)的還款日期后,借款方未能按時(shí)還款,投資方任一用戶可以將標(biāo)的設(shè)為逾期。隨后,智能合約程序會判斷該標(biāo)的有無抵押資產(chǎn),若有,則由銀行執(zhí)行抵押資產(chǎn)清算;若沒有,則判斷有無指定的代償人,如有代償人,該標(biāo)的將會出現(xiàn)在熟人代償清單中,由其償還本息,完成代償請求。完成代償?shù)那爸脳l件為:標(biāo)的狀態(tài)為Overdue、標(biāo)的已啟用代償、代償人賬戶與當(dāng)前調(diào)用賬戶一致、還款金額與實(shí)際應(yīng)還金額一致。熟人代償?shù)倪€款算法substituteCompensa?tion 步驟為:
本文使用自拍拍貸公開的風(fēng)控?cái)?shù)據(jù)集,共有30 000 條記錄,其中每條記錄包括用戶信息、網(wǎng)頁信息、教育背景、社交平臺信息和第三方平臺信息5 個(gè)類別共225 個(gè)屬性;數(shù)據(jù)集的標(biāo)簽為0 和1,分別表示違約和未違約。從數(shù)據(jù)集中隨機(jī)取出24 000 條作為訓(xùn)練集,剩余6 000 條作為測試集用于評價(jià)模型性能。
本文搭建的深度學(xué)習(xí)模型結(jié)構(gòu)如圖5 所示,整體思路為先對各個(gè)類別的特征單獨(dú)進(jìn)行學(xué)習(xí)和降維,由模型綜合考量所有完成降維的特征后作出預(yù)測。模型具體實(shí)現(xiàn)步驟為:①對各個(gè)類別的數(shù)據(jù)進(jìn)行初步處理,處理方式包括缺失值補(bǔ)全、歸一化和標(biāo)準(zhǔn)化等;②將處理后的數(shù)據(jù)按類別輸入到對應(yīng)的網(wǎng)絡(luò)分支中進(jìn)行特征學(xué)習(xí)和降維。每個(gè)網(wǎng)絡(luò)分支中包含兩個(gè)隱藏層,其中第一層為在非線性關(guān)系建模的工作中表現(xiàn)良好的長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM),該網(wǎng)絡(luò)用于對輸入的非線性特征進(jìn)行學(xué)習(xí);第二層為全連接層(Fully Connected Layers,F(xiàn)C),該層的主要作用為對特征進(jìn)行壓縮和降維,以減少神經(jīng)網(wǎng)絡(luò)的計(jì)算量;③將所有降維后的特征連接到一起,經(jīng)過兩層全連接層的學(xué)習(xí)后得到預(yù)測結(jié)果。
Fig.5 Deep learning model structure圖5 深度學(xué)習(xí)模型結(jié)構(gòu)
在貸款風(fēng)控的智能評估預(yù)測領(lǐng)域,邏輯回歸(Logistics Regression,LR)和梯度提升樹(Gradient Boosting Decision Tree,GBDT)等機(jī)器學(xué)習(xí)方法[25-26]已經(jīng)得到廣泛應(yīng)用,但很少有研究者利用基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)思想解決這一預(yù)測問題。將本文模型與以上兩種機(jī)器學(xué)習(xí)算法進(jìn)行比較,其中本文模型使用Adam 作為優(yōu)化器,學(xué)習(xí)率設(shè)置為0.01,選擇交叉熵作為損失函數(shù),batch size 設(shè)置為100,訓(xùn)練150輪后得到最終模型。
表3 為本文模型與LR 和GBDT 的預(yù)測結(jié)果比較情況,評價(jià)指標(biāo)為準(zhǔn)確率(ACC),可以看出本文模型的預(yù)測效果能夠達(dá)到當(dāng)前主流水平。
Table 3 Comparison of prediction results表3 預(yù)測結(jié)果比較
在Mac OS Big Sur 11.1 操作系統(tǒng),2.6 GHz 六核CPU,16GB 內(nèi)存環(huán)境下設(shè)計(jì)驗(yàn)證實(shí)驗(yàn)。基于Node.js 配置Truffle框架及相關(guān)依賴,采用Ganache 個(gè)人以太坊區(qū)塊鏈。同時(shí),采用MetaMask 輕錢包,其無需安裝,是谷歌瀏覽器的一個(gè)插件,使用方便易操作。
針對基于智能合約的銀行理財(cái)借貸系統(tǒng)的借款申請、借貸申請歷史查詢、標(biāo)的發(fā)布、標(biāo)的瀏覽、投資、還款和代償?shù)戎匾δ苓M(jìn)行了測試。部分功能的實(shí)驗(yàn)運(yùn)行效果如圖6、圖7 所示。圖6 展示了一位投資用戶完成投資的過程。圖7 以序號151 號標(biāo)的為例,展示了在借款截止時(shí)間后用戶的提取資金、還款操作。系統(tǒng)中的其他功能經(jīng)測試均可正常運(yùn)行,達(dá)到了預(yù)期效果。
本文提出的理財(cái)借貸模型和使用的底層技術(shù)共同保證了系統(tǒng)及相關(guān)數(shù)據(jù)的安全性,與現(xiàn)有金融借貸投資場景相比,能更好地保護(hù)用戶資金安全。
在系統(tǒng)業(yè)務(wù)模型設(shè)計(jì)和實(shí)現(xiàn)過程中,對參與的用戶角色和權(quán)限作出了明確規(guī)定,在執(zhí)行相關(guān)請求前會進(jìn)行權(quán)限判定和條件判斷。在智能合約中,調(diào)用新增標(biāo)的的業(yè)務(wù)邏輯時(shí)會對發(fā)起方身份進(jìn)行判定,需要標(biāo)的發(fā)起者地址滿足要求才可以新增一項(xiàng)標(biāo)的。以上權(quán)限限制和身份驗(yàn)證操作保證了標(biāo)的信息的可靠性,同時(shí)也保障了系統(tǒng)業(yè)務(wù)流程的嚴(yán)謹(jǐn)性和安全性。在智能合約的實(shí)現(xiàn)中,通過ABDK?Math64x64 庫完成小數(shù)部分的精確計(jì)算,保證代碼執(zhí)行階段數(shù)據(jù)的真實(shí)性,達(dá)到保護(hù)系統(tǒng)安全的目的。
Fig.6 Subject invest圖6 標(biāo)的投資
以太坊系統(tǒng)擁有活躍的開發(fā)者社區(qū),可以保證以太坊平臺的平穩(wěn)運(yùn)行與升級迭代?;谝蕴粎^(qū)塊鏈的分布式應(yīng)用將相關(guān)數(shù)據(jù)信息上鏈存儲,確保其不會被惡意篡改,提高了數(shù)據(jù)安全性。由銀行負(fù)責(zé)處理借貸申請可以保護(hù)用戶隱私,若借貸者有違約行為,還可以追責(zé)到個(gè)人,降低了去中心化匿名性帶來的風(fēng)險(xiǎn);同時(shí)避免了由單點(diǎn)故障造成的交易數(shù)據(jù)損失,可以對惡意賴賬和逃債情況進(jìn)行追溯,保障參與者利益,增強(qiáng)系統(tǒng)可用性。
Fig.7 Borrower transaction diagram圖7 借款方交易圖
與現(xiàn)有的中心化金融借貸投資場景相比,本文模型實(shí)現(xiàn)了點(diǎn)對點(diǎn)交易,不影響現(xiàn)有的銀行資金流,銀行可通過手續(xù)費(fèi)等獲取一定收益。在一次完整的借貸還款業(yè)務(wù)中,借款方和投資方直接完成轉(zhuǎn)賬交易;在借款方無法按時(shí)還款時(shí),通過抵押資產(chǎn)和熟人代償程序保證了參與用戶資金的安全性。用戶在借款時(shí)可以有多個(gè)投資方,增加了一次借貸順利完成的可能性,保證了系統(tǒng)的可用性。
為考察基于智能合約的銀行理財(cái)借貸系統(tǒng)的性能,本文對新增標(biāo)的、標(biāo)的投資人及金額查詢等算法的執(zhí)行效率和吞吐量進(jìn)行了測試分析。
為了測試新增標(biāo)的的時(shí)間延遲與Gas 費(fèi)用,實(shí)驗(yàn)以每5 個(gè)標(biāo)的數(shù)據(jù)為一組,求出每組的平均時(shí)延,隨機(jī)選取10組數(shù)據(jù),測試效果如圖8所示。
Fig.8 Analysis diagram of add subject圖8 新增標(biāo)的分析圖
新增標(biāo)的算法復(fù)雜度為O(1),由于所有數(shù)據(jù)需要上鏈存儲,每一個(gè)標(biāo)的中的數(shù)據(jù)量大小會影響Gas 費(fèi)用,時(shí)延主要受操作時(shí)網(wǎng)絡(luò)性能的影響,當(dāng)Gas 費(fèi)用為20GWei時(shí),測試結(jié)果中的最低時(shí)延為3s,最高為4s,最高平均Gas費(fèi)用為0.005 553ETH,最低平均Gas 費(fèi)用為0.004 197ETH,達(dá)到了預(yù)期效果。
當(dāng)投資方執(zhí)行取回本息等操作時(shí),需要查詢標(biāo)的投資人及對應(yīng)的投資金額。如圖9 所示,當(dāng)有多個(gè)投資人時(shí),查詢時(shí)間延遲最高為0.39s,在用戶可接受的范圍內(nèi)。
Fig.9 Query efficiency of different investors圖9 不同投資人數(shù)查詢效率
圖10 展示了不同交易數(shù)量時(shí)系統(tǒng)查詢標(biāo)的的執(zhí)行效率,其中橫坐標(biāo)代表當(dāng)下交易數(shù)量,縱坐標(biāo)表示查詢所用平均時(shí)間??梢钥闯?,在有500 筆交易時(shí),系統(tǒng)的平均查詢時(shí)間為0.23s;在有1 000 筆交易時(shí),系統(tǒng)平均查詢時(shí)間為0.5s左右,表明查詢速度較快。
Fig.10 Query efficiency of different transaction quantities圖10 不同交易數(shù)量查詢效率
針對函數(shù)寫入數(shù)據(jù)的吞吐量變化如圖11 所示。寫入數(shù)據(jù)會重復(fù)驗(yàn)證條件、節(jié)點(diǎn)打包交易和將新的區(qū)塊加入?yún)^(qū)塊鏈的過程。本文還款算法流程較為簡潔,因此寫入數(shù)據(jù)吞吐量最高,在開始有一個(gè)峰值,隨著訪問次數(shù)的增加,吞吐量有少許下降,但整體趨于平穩(wěn),可滿足用戶需求。
Fig.11 Throughput of write data圖11 寫入數(shù)據(jù)吞吐量
結(jié)合“3 000 t茶葉被泡,老板痛哭”事件進(jìn)行案例分析,對基于智能合約的銀行借貸理財(cái)系統(tǒng)的有效性進(jìn)行驗(yàn)證。
2020 年7 月,一場洪水淹了安徽省鄭老板茶企廠房3 000 t 茶葉,導(dǎo)致其資金周轉(zhuǎn)困難。作為小微企業(yè),該茶企在抵御資金風(fēng)險(xiǎn)的能力上相對薄弱,在傳統(tǒng)銀行眼中并不屬于還款能力強(qiáng)的優(yōu)質(zhì)客戶,但在民間仍是一個(gè)成功的企業(yè)組織,如何快速籌集流動資金成為當(dāng)務(wù)之急。
在茶企申請借貸時(shí),小微企業(yè)雖不屬于銀行優(yōu)質(zhì)客戶,但本文設(shè)計(jì)的智能評估模型結(jié)合多維度參數(shù)計(jì)算,認(rèn)定其屬于信用較高客戶,給予其借款機(jī)會。
在銀行發(fā)出標(biāo)的后,當(dāng)下有閑散資金的用戶愿意投資,當(dāng)參與人員增多時(shí),可以達(dá)到快速籌款的目的。標(biāo)的信息在區(qū)塊鏈中永久存儲,茶企為了更好地維護(hù)企業(yè)信用,會更加認(rèn)真地挽救損失。如此以來,茶企和投資用戶完成了點(diǎn)對點(diǎn)的資金交易。于茶企而言,解決了急需資金的問題;于銀行而言,分散了資金風(fēng)險(xiǎn),不影響原本的信貸業(yè)務(wù);于其他投資用戶而言,將手中閑置資金投入社會,并獲取了一定收益。
綜上所述,在銀行借貸投資方面,應(yīng)用區(qū)塊鏈技術(shù)和智能合約能有效改善小微企業(yè)貸款難的問題,激勵(lì)參與者信守承諾,提高了銀行的社會影響力,促進(jìn)了市場健康發(fā)展。
本文根據(jù)區(qū)塊鏈中心化與去中心化的特點(diǎn),設(shè)計(jì)了一個(gè)基于智能合約的銀行理財(cái)借貸系統(tǒng)。系統(tǒng)中基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)智能風(fēng)控評估模型算法準(zhǔn)確率達(dá)到94.33%,為后續(xù)區(qū)塊鏈與深度學(xué)習(xí)技術(shù)的結(jié)合提供了一個(gè)可行方向;設(shè)計(jì)的相關(guān)智能合約算法能夠保證交易高效執(zhí)行,為小微企業(yè)和個(gè)人快速籌款提供幫助。隨著區(qū)塊鏈技術(shù)的進(jìn)一步發(fā)展,其與借貸金融場景的結(jié)合將會更加緊密。后續(xù)將繼續(xù)完善智能合約的邏輯處理流程,在違約和抵押資產(chǎn)方面避免一刀切的情況,以適應(yīng)更加復(fù)雜的理財(cái)借貸場景,造福更多個(gè)人和小微企業(yè)用戶。