李 世 梁
(中國(guó)人民銀行上海總部 上海 200120)
近年來(lái),隨著虛擬代幣(如比特幣、以太幣、瑞波幣等)及其底層的分布式賬本技術(shù)(Distributed Ledger Technology,DLT)的發(fā)展,各國(guó)中央銀行正在積極研發(fā)數(shù)字貨幣。然而,對(duì)于數(shù)字貨幣采用何種技術(shù)這一問(wèn)題沒(méi)有準(zhǔn)確的答案。
國(guó)際清算銀行對(duì)中央銀行數(shù)字貨幣定義為:中央銀行數(shù)字貨幣(Central Bank Digital Currencies,CBDC)是一種數(shù)字形式的中央銀行貨幣,但不同于傳統(tǒng)銀行儲(chǔ)備金或清算賬戶余額(商業(yè)銀行在中央銀行存儲(chǔ)的存款準(zhǔn)備金、清算資金等均以數(shù)字形式存在)。CBDC包括通用CBDC和批發(fā)CBDC,其中:通用CBDC面向社會(huì)公眾發(fā)行,包括基于數(shù)字憑證(token-based)的零售中央銀行加密貨幣和基于中央銀行賬戶(account-based)的數(shù)字(電子)貨幣;而批發(fā)CBDC僅面向金融機(jī)構(gòu)發(fā)行,主要研究分布式賬本技術(shù)(Distributed Ledger Technology,DLT)應(yīng)用于關(guān)鍵金融市場(chǎng)基礎(chǔ)設(shè)施(如大額支付系統(tǒng))的可行性,包括支付指令處理性能、金融市場(chǎng)基礎(chǔ)設(shè)施原則的適用性、提供證券結(jié)算券款對(duì)付(Delivery vs Payment,DvP)結(jié)算和跨境支付匯款同步交收(Payment vs Payment,PvP)結(jié)算等[1]。
從各國(guó)研究現(xiàn)狀來(lái)看,中國(guó)人民銀行數(shù)字貨幣/電子支付(Digital currency,DC/Electronic payment,EP)項(xiàng)目屬于通用CBDC,而加拿大銀行Jasper、新加坡金管局Ubin、日本央行與歐洲央行Stella等項(xiàng)目屬于批發(fā)CBDC范疇[2-6]。盡管我國(guó)在通用CBDC領(lǐng)域的研究已較為充分,但在批發(fā)CBDC及其底層DLT方面探索較少(僅在數(shù)字票據(jù)等低頻交易領(lǐng)域開(kāi)展實(shí)驗(yàn)應(yīng)用)。因此,深入研究批發(fā)CBDC的處理性能具有重要的理論和現(xiàn)實(shí)意義。這不僅有助于增進(jìn)對(duì)批發(fā)CBDC底層DLT和傳統(tǒng)支付系統(tǒng)(如實(shí)時(shí)全額支付系統(tǒng)(Real Time Gross Settlement,RTGS)[7])處理性能差異的認(rèn)識(shí),還可以為我國(guó)參與大國(guó)貨幣競(jìng)爭(zhēng)提供參考。此外,DLT可在沒(méi)有中介參與的分布式網(wǎng)絡(luò)中實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)價(jià)值傳遞,不僅可應(yīng)用于數(shù)字貨幣領(lǐng)域,還廣泛應(yīng)用于支付清算和結(jié)算、供應(yīng)鏈金融及征信等眾多領(lǐng)域。因此,研究DLT處理性能、區(qū)塊參數(shù)設(shè)置等對(duì)學(xué)術(shù)界和工業(yè)界均具有積極意義。
關(guān)于批發(fā)CBDC及其底層DLT的處理性能,國(guó)內(nèi)外學(xué)者側(cè)重于構(gòu)建原型系統(tǒng)進(jìn)行應(yīng)用分析。目前,尚沒(méi)有從理論角度分析DLT的性能和給出區(qū)塊尺寸的優(yōu)化設(shè)置,并且沒(méi)有與RTGS等傳統(tǒng)支付系統(tǒng)開(kāi)展支付清算性能比較?,F(xiàn)行做法主要是基于經(jīng)驗(yàn)判斷,如當(dāng)區(qū)塊尺寸設(shè)置越大時(shí),DLT系統(tǒng)處理性能越強(qiáng),但系統(tǒng)延遲同樣會(huì)提高;當(dāng)區(qū)塊尺寸設(shè)置越小時(shí),DLT系統(tǒng)延遲越低,但會(huì)降低系統(tǒng)的處理性能。例如,Stella一階段項(xiàng)目的區(qū)塊尺寸采用的是固定值設(shè)置(如500筆),或者超時(shí)觸發(fā)(如1秒)[5]。然而,不同于傳統(tǒng)集中式支付系統(tǒng),DLT系統(tǒng)性能受區(qū)塊尺寸、共識(shí)算法等因素的影響很大。如何量化以上參數(shù)的影響,并分析比較DLT和RTGS的性能差異是DLT應(yīng)用研究領(lǐng)域亟待解決的問(wèn)題。
本文主要?jiǎng)?chuàng)新和貢獻(xiàn)如下:應(yīng)用排隊(duì)理論,從服務(wù)速率和清算延遲兩方面分析比較RTGS和DLT的支付清算性能,并得出DLT區(qū)塊尺寸(batch size)的最優(yōu)值,填補(bǔ)當(dāng)前批發(fā)CBDC性能分析的理論研究空白。
假設(shè)實(shí)時(shí)全額支付系統(tǒng)(RTGS)的單筆交易處理時(shí)間xi服從指數(shù)分布。在性能模擬中,采用指數(shù)分布模擬服務(wù)時(shí)間是常見(jiàn)做法。
如圖1所示,RTGS系統(tǒng)屬于集中式系統(tǒng)架構(gòu),m個(gè)多服務(wù)器并行處理和提高服務(wù)器服務(wù)速率μ均有利于加快交易服務(wù)速率。理論上,RTGS系統(tǒng)的交易服務(wù)速率為[8]:
圖1 RTGS系統(tǒng)多處理機(jī)并行服務(wù)模式
μRTGS=mμ
(1)
在DLT系統(tǒng)中,為解決分布式記賬面臨的記賬權(quán)歸屬和雙重支付問(wèn)題,以生成全網(wǎng)唯一的公共賬本,需要共識(shí)機(jī)制參與解決。如圖2所示,假設(shè)DLT系統(tǒng)中每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的交易到達(dá)速率為λ。先考慮節(jié)點(diǎn)數(shù)量相對(duì)固定的聯(lián)盟鏈,如拜占庭容錯(cuò)算法(PBFT)中,主節(jié)點(diǎn)負(fù)責(zé)接收并廣播交易,這樣所有交易可以正序(in-order)到達(dá)所有DLT節(jié)點(diǎn)。
圖2 分布式賬本系統(tǒng)架構(gòu)示意圖
如圖3所示,當(dāng)?shù)谝粋€(gè)節(jié)點(diǎn)取得記賬權(quán),并生成區(qū)塊1后,第二個(gè)節(jié)點(diǎn)需要?jiǎng)h除區(qū)塊1中相同的交易,以此類推。而對(duì)于交易亂序(out-of-order)到達(dá)DLT節(jié)點(diǎn)的情況,如果交易先到達(dá)取得記賬權(quán)的節(jié)點(diǎn)并寫(xiě)入到區(qū)塊鏈中,則其他節(jié)點(diǎn)收到該交易后,同樣會(huì)執(zhí)行刪除操作。以DLT系統(tǒng)的全局視角來(lái)看,每當(dāng)一個(gè)節(jié)點(diǎn)取得記賬權(quán)并生成區(qū)塊后,為避免重復(fù)提交,所有節(jié)點(diǎn)均需要對(duì)排隊(duì)(等待處理)交易中與新區(qū)塊所含相同交易執(zhí)行刪除操作。因此,DLT系統(tǒng)的交易到達(dá)速率為λ,且不會(huì)超過(guò)單臺(tái)服務(wù)器的交易服務(wù)速率μ。
圖3 交易正序到達(dá)和處理視圖
因此,DLT系統(tǒng)服務(wù)速率的主要影響因素是共識(shí)機(jī)制的執(zhí)行時(shí)間τ和區(qū)塊處理時(shí)間φ。其中,共識(shí)機(jī)制的執(zhí)行時(shí)間主要受節(jié)點(diǎn)間網(wǎng)絡(luò)延遲、共識(shí)機(jī)制的構(gòu)造及執(zhí)行流程等的影響。然而,不同的共識(shí)機(jī)制對(duì)區(qū)塊尺寸B的敏感度不一,很難給出τ=f(B)的通用表達(dá)式。為便于討論,忽略區(qū)塊尺寸對(duì)τ的影響,理由如下:
(1) 共識(shí)機(jī)制執(zhí)行時(shí)間通常遠(yuǎn)大于B的處理時(shí)間。一方面,對(duì)于PBFT等確定性終態(tài)機(jī)制,共識(shí)機(jī)制執(zhí)行時(shí)間τ主要包括三階段協(xié)議執(zhí)行時(shí)間:預(yù)準(zhǔn)備(pre-prepare)、準(zhǔn)備(prepare)、確認(rèn)(commit),并且需要向主節(jié)點(diǎn)回復(fù)收到commit消息情況和操作結(jié)果,這相當(dāng)于DLT系統(tǒng)(P2P網(wǎng)絡(luò))中平均網(wǎng)絡(luò)傳輸延遲的4倍。然而,網(wǎng)絡(luò)傳輸延遲d包括節(jié)點(diǎn)處理延遲、排隊(duì)延時(shí)、傳輸延遲及傳播延遲等,其中多個(gè)環(huán)節(jié)涉及對(duì)B的處理。另一方面,對(duì)于概率性共識(shí)機(jī)制,為提高共識(shí)機(jī)制的可信度,新交易寫(xiě)入?yún)^(qū)塊后還需要等待若干后續(xù)區(qū)塊生成。此外,歐洲央行與日本銀行聯(lián)合項(xiàng)目(Stella)的研究結(jié)論表明:DLT的性能受網(wǎng)絡(luò)規(guī)模和節(jié)點(diǎn)距離的影響,增加網(wǎng)絡(luò)節(jié)點(diǎn)將導(dǎo)致支付交易處理時(shí)間的延長(zhǎng);而節(jié)點(diǎn)間距離對(duì)性能的影響取決于網(wǎng)絡(luò)配置,例如達(dá)成共識(shí)的最小節(jié)點(diǎn)集合的分散程度等[5]。
(2) 部分共識(shí)機(jī)制可以采用SHA-256哈希函數(shù),其中應(yīng)用了Merkle-Damgard轉(zhuǎn)換算法,其輸入消息可以是任意尺寸,而輸出為固定長(zhǎng)度的哈希值。在多交易批量處理時(shí),部分對(duì)交易的操作可以轉(zhuǎn)換為對(duì)哈希值做操作(如工作量證明就是對(duì)哈希值進(jìn)行操作),其整體時(shí)間復(fù)雜度可以與單筆交易保持一致[9]。
事實(shí)上,比特幣采用的工作量證明機(jī)制,其區(qū)塊間隔時(shí)間控制在10分鐘。因此,為簡(jiǎn)化計(jì)算,本文忽略B的影響。
(2)
如圖4所示,RTGS和DLT系統(tǒng)服務(wù)速率均隨著單臺(tái)服務(wù)器的處理性能增加而增加。理論上,RTGS交易服務(wù)速率隨著μ和m的增加而增加,并出現(xiàn)疊加優(yōu)勢(shì):隨著μ增加而線性增加,并隨著m增加而成倍增加。但在實(shí)際應(yīng)用中,由于高頻交易瓶頸、并行算法執(zhí)行及工程實(shí)現(xiàn)等原因,大規(guī)模增加服務(wù)器臺(tái)數(shù)可能無(wú)法獲得預(yù)期的處理性能。與RTGS相比,DLT系統(tǒng)服務(wù)速率與μ之間的關(guān)聯(lián)并不顯著,且服務(wù)速率不會(huì)超過(guò)單臺(tái)服務(wù)器服務(wù)速率μ。
圖4 RTGS和DLT系統(tǒng)服務(wù)速率對(duì)比
為了公正比較RTGS與DLT,假設(shè)RTGS和DLT的處理節(jié)點(diǎn)數(shù)均為m。則RTGS可以用多臺(tái)并行處理服務(wù)器模型進(jìn)行模擬(如圖1所示),可以直接引用M/M/m的系統(tǒng)服務(wù)時(shí)間為[8]:
(3)
對(duì)于DLT,驗(yàn)證節(jié)點(diǎn)收到報(bào)文后,需要等待共識(shí)算法執(zhí)行。通常,共識(shí)算法的策略有所差異,例如:工作量證明(Proof-Of-Work,POW)主要比拼算力;權(quán)益證明(Proof-Of-Stake,POS)主要比拼余額;股份授權(quán)股權(quán)證明(Delegated Proof-Of-Stake,DPOS)模仿公司的董事會(huì)制度,或者議會(huì)制度。
然而,無(wú)論采用以上何種共識(shí)算法,節(jié)點(diǎn)排隊(duì)報(bào)文的處理原則通常有如下兩種:(1) 定時(shí)原則:等待一定時(shí)間(如10分鐘);(2) 定量原則:等待排隊(duì)隊(duì)列長(zhǎng)度(交易數(shù)量)達(dá)到一定限度(如500個(gè)報(bào)文)。為便于討論,以定量原則為例,計(jì)算DLT系統(tǒng)的清算延遲(計(jì)算過(guò)程可以容易地拓展到定時(shí)原則)。當(dāng)節(jié)點(diǎn)A取得記賬權(quán)時(shí),節(jié)點(diǎn)A批量處理排隊(duì)報(bào)文,然后等待其他取得記賬權(quán)的節(jié)點(diǎn)處理報(bào)文,直到節(jié)點(diǎn)A再次取得記賬權(quán)。記剩余輪詢時(shí)間(即交易到達(dá)系統(tǒng)后距離下一個(gè)區(qū)塊的平均剩余時(shí)間)為Vc,則DLT系統(tǒng)清算延遲 (TDLT)為:
(4)
式中:N為M/M/1模型的隊(duì)列長(zhǎng)度(正在處理的交易與等待處理的交易數(shù)量之和)。假設(shè)區(qū)塊生成過(guò)程服從泊松分布(即區(qū)塊間隔生成時(shí)間服從指數(shù)分布),式(4)可以簡(jiǎn)化為:
(5)
為最小化TDLT,最優(yōu)區(qū)塊尺寸B*的計(jì)算公式為:
(6)
計(jì)算過(guò)程如下:
定理1:
ρ∈[0,1),n∈N+
證明:
根據(jù)Hermite’s identity(「mx?=「x?+「x-1/m?+…+「x-(m-1)/m?x∈R,m∈N+)[10],
同理,可以對(duì)n(「ρ/n(1-ρ)?)進(jìn)行展開(kāi)(過(guò)程略)。
因此,
(7)
如圖5-圖7所示,當(dāng)RTGS和DLT系統(tǒng)服務(wù)強(qiáng)度增強(qiáng)時(shí),二者的期望(交易)服務(wù)時(shí)間均明顯增大。當(dāng)ρ→1時(shí),T1和T2均趨于∞。因此,本文約定0≤ρ<1以使系統(tǒng)處于平穩(wěn)狀態(tài)。
圖5 RTGS服務(wù)強(qiáng)度和服務(wù)器數(shù)量對(duì)期望服務(wù)時(shí)間的影響
如圖5所示,對(duì)于RTGS系統(tǒng),增加服務(wù)器數(shù)量,顯然有利于降低交易期望服務(wù)時(shí)間。如圖6所示,DLT系統(tǒng)在不同服務(wù)強(qiáng)度下,選擇最優(yōu)的區(qū)塊尺寸,可以降低交易的期望服務(wù)時(shí)間。這意味著,可以根據(jù)DLT系統(tǒng)的服務(wù)強(qiáng)度,對(duì)區(qū)塊尺寸進(jìn)行調(diào)節(jié)以獲得最佳的DLT系統(tǒng)清算延遲。例如,當(dāng)ρ=0.8時(shí),B=5為最佳選擇。并且,當(dāng)服務(wù)強(qiáng)度較低時(shí),減小區(qū)塊尺寸可以降低清算延遲;而當(dāng)服務(wù)強(qiáng)度較高時(shí),增加區(qū)塊尺寸有利于降低清算延遲。如圖7所示,共識(shí)機(jī)制的執(zhí)行時(shí)間對(duì)DLT系統(tǒng)的期望服務(wù)時(shí)間影響很大。因此,優(yōu)化選擇DLT系統(tǒng)的共識(shí)機(jī)制對(duì)批發(fā)CBDC的交易延遲具有重要影響。
圖6 DLT系統(tǒng)服務(wù)強(qiáng)度和批處理參數(shù)設(shè)置對(duì)期望服務(wù)時(shí)間的影響
圖7 DLT系統(tǒng)服務(wù)強(qiáng)度和共識(shí)算法延遲對(duì)期望服務(wù)時(shí)間的影響
理論上,在提升系統(tǒng)處理能力(ρ→0)的基礎(chǔ)上,DLT系統(tǒng)可以通過(guò)縮短區(qū)塊間隔生成時(shí)間(C→0)以獲得接近RTGS單臺(tái)服務(wù)器模式的處理性能。然而,除非采用私有鏈,縮短系統(tǒng)間隔處理時(shí)間會(huì)導(dǎo)致DLT系統(tǒng)的網(wǎng)絡(luò)節(jié)點(diǎn)很難達(dá)成分布式共識(shí),進(jìn)而嚴(yán)重限制網(wǎng)絡(luò)規(guī)模和節(jié)點(diǎn)距離的擴(kuò)大,這已被日本央行和歐洲央行Stella項(xiàng)目的試驗(yàn)成果所驗(yàn)證[5]。
本文從服務(wù)速率和清算延遲兩方面,應(yīng)用排隊(duì)理論分析比較RTGS和DLT的性能,并得出DLT區(qū)塊尺寸(batch size)的最優(yōu)值,填補(bǔ)了當(dāng)前批發(fā)CBDC性能分析的理論研究空白。然而,在理論分析過(guò)程中,本文假設(shè)區(qū)塊生成過(guò)程服務(wù)泊松分布,盡管這是自然科學(xué)的常用做法,但依然需要針對(duì)其他概率分布情況做出針對(duì)性分析。此外,為提高批發(fā)CBDC性能,未來(lái)可以進(jìn)一步研究DLT分片、閃電網(wǎng)絡(luò)等技術(shù)在批發(fā)CBDC的應(yīng)用。