7月16日,人民銀行發(fā)布了《數(shù)字人民幣的研發(fā)進展白皮書》(以下簡稱“白皮書”),以闡明人民銀行在數(shù)字人民幣研發(fā)上的基本立場,地闡釋了數(shù)字人民幣體系的研發(fā)背景、目標愿景、設計框架及相關政策考慮。
不過對于業(yè)內(nèi)普遍比較關心的“雙離線”支付白皮書并沒有過多闡釋,僅僅表示正在與手機制造商合作,研究提供包括雙離線等功能在內(nèi)的移動支付新體驗?;谥悄芸梢暱y試脫離手機的硬錢包支付模式,為彌合“數(shù)字鴻溝”提供可能。
對此,移動支付網(wǎng)詳細介紹了關于數(shù)字人民幣“雙離線”支付可能存在的表現(xiàn)形式和影響(數(shù)字人民幣雙離線探討斷網(wǎng)斷電能保證支付嗎?),本次我們將從角度來具體看看“雙離線”支付的一些技術細節(jié)。
使用數(shù)字貨幣芯片卡進行離線支付的方法及系統(tǒng)
人民銀行印制科學技術研究所在2016年申請了一項名為《使用數(shù)字貨幣芯片卡進行離線支付的方法及系統(tǒng)》的,這也是央行體系中為數(shù)不多的直接與“雙離線”相關的布局。
人民銀行印制科學技術研究所,隸屬人民銀行總行,是鈔票印制科研單位,以應用開發(fā)研究為主,兼顧應用基礎研究。而從布局來看,它也是央行系中一家提供數(shù)字貨幣芯片卡相關布局的機構(gòu)。
書表示,使用數(shù)字貨幣芯片卡進行離線支付時,受理終端設備在未與商業(yè)銀行數(shù)字貨幣系統(tǒng)建立網(wǎng)絡連接的情況下,接收金額;用戶終端設備通過近距離無線連接方式從受理終端設備獲取金額,并將信息發(fā)送受理終端設備;受理終端設備與商業(yè)銀行數(shù)字貨幣系統(tǒng)建立網(wǎng)絡連接之后,受理終端設備將信息發(fā)送商業(yè)銀行數(shù)字貨幣系統(tǒng);商業(yè)銀行數(shù)字貨幣系統(tǒng)在接收到信息后,向銀行數(shù)字貨幣系統(tǒng)發(fā)送變更屬主的請求;銀行數(shù)字貨幣系統(tǒng)在接收到變更屬主的請求后,將數(shù)字貨幣的屬主變更為受理終端設備對應的商戶代碼。
而整個邏輯其實非常清晰,即用戶通過“卡式硬件錢包”在受理終端進行數(shù)字貨幣離線支付時,受理終端通過接收信息后確認信息(卡信息和金額)和賬戶是否正常使用。等到受理終端與數(shù)字貨幣系統(tǒng)建立網(wǎng)絡連接之后,再將信息發(fā)送商業(yè)銀行數(shù)字貨幣系統(tǒng),商業(yè)銀行數(shù)字貨幣系統(tǒng)在接收到信息后,再向央行數(shù)幣系統(tǒng)發(fā)送變更屬主的請求。
在離線支付過程中,收款用戶對收到的數(shù)字貨幣當時能驗證其真?zhèn)?,但仍需對?shù)字貨幣是否進行過重復支付開展后臺驗證。其設計思路是:需重復支付驗證的數(shù)字貨幣在客戶端電子錢包程序(如POS機)中標識為“待重復支付驗證”,POS機一旦聯(lián)到網(wǎng)絡,就自動向數(shù)字貨幣系統(tǒng)進行重復支付驗證申請。系統(tǒng)收到驗證申請執(zhí)行相應操作,在登記中心補錄流水,更新數(shù)字貨幣屬主。如收款人不是系統(tǒng)的注冊用戶,系統(tǒng)還會記錄收款人預留的取款密碼。
在這其中,還介紹了公私鑰加解密、數(shù)字證書、PKI和IBC安全認證體系等等。當時還詳細介紹了數(shù)字貨幣的幣值與找零問題,但是從后面的發(fā)展來看,數(shù)字人民幣的體系并沒有采用這種固定面額的形式。
實際上,從書來看,彼時的有一個關鍵問題在于,受理端完成離線支付后在不聯(lián)網(wǎng)的狀態(tài)下是無法正常收到這筆錢的。而對于這個問題的細節(jié),并沒有展開討論。
基于數(shù)字貨幣的離線支付方法、終端及代理投放設備
此后,工商銀行股份有限公司(以下簡稱“工商銀行”)在2018年也申請了一項名為《基于數(shù)字貨幣的離線支付方法、終端及代理投放設備》的,該項介紹了數(shù)字貨幣在雙離線情況下的支付方法。這也是銀行方面在數(shù)字貨幣“雙離線”支付上為數(shù)不多的布局。
書描述,該方法應用于收款終端,包括:驗證付款用戶的數(shù)字證書,若付款用戶的數(shù)字證書在有效期內(nèi),從付款終端獲取經(jīng)過付款用戶私鑰簽名的信息;利用所述付款用戶公鑰驗證所述信息的合法性,利用所述收款用戶私鑰對所述離線數(shù)字貨幣進行解密,比較離線數(shù)字貨幣的金額與金額;如果所述信息合法且所述離線數(shù)字貨幣的金額與金額相同,則通知所述付款終端扣款;當接收到所述付款終端發(fā)送的扣款成功通知,登記離線記錄,增加賬戶中的離線數(shù)字貨幣計數(shù)。
其中,數(shù)字貨幣投放管理設備101部署在人民銀行,用于管理各代理投放機構(gòu)的數(shù)字貨幣投放額度,該數(shù)字貨幣投放額度由數(shù)字貨幣投放管理設備101根據(jù)代理投放機構(gòu)的投放需求進行設置,并凍結(jié)代理投放機構(gòu)相應額度的存款準備金。數(shù)字貨幣投放管理設備101根據(jù)數(shù)字貨幣投放額度生成投放幣,并將投放幣信息以報文等形式發(fā)送給部署在各代理投放機構(gòu)的代理投放設備102。
代理投放設備102接收到數(shù)字貨幣投放管理設備101發(fā)送的投放幣信息,并根據(jù)用戶兌入數(shù)字貨幣的需求為用戶生產(chǎn)對應金額的數(shù)字貨幣,并對數(shù)字貨幣的賬簿進行管理,為用戶提供相關賬戶余額查詢、在線入賬和圈存離線金額等服務。
收款終端103和付款終端104可以為手機、平板電腦或智能穿戴設備等支持移動支付的網(wǎng)絡設備。
在離線支付場景下,收款終端103和付款終端104之間通過離線方式進行信息交互;而終端與代理投放設備102之間通過網(wǎng)絡進行通信。
書中表示,在雙離線支付的情況下,由于處于未聯(lián)網(wǎng)狀態(tài),雖然收款用戶終端賬戶中的離線數(shù)字貨幣的計數(shù)增加了,但是在代理投放機構(gòu)中收款用戶賬戶的并未發(fā)生變更,也即此時收款用戶在代理投放機構(gòu)中存儲的款項并未增加,那么當前收款終端接收到的離線數(shù)字貨幣不能用于對外支付。因此,可以凍結(jié)離線數(shù)字貨幣;當連接到網(wǎng)絡,向代理投放設備發(fā)送離線記錄,以供代理投放設備根據(jù)離線記錄進行賬戶中數(shù)字貨幣計數(shù)的變更;解凍離線數(shù)字貨幣,解凍后的離線數(shù)字貨幣可用于向其他用戶付款。
而中提到,本方案中的離線數(shù)字貨幣的額度是基于用戶在本代理投放機構(gòu)的存款金額,通過申請而生成的。盡管離線時,付款用戶公鑰驗證信息的合法性,利用收款用戶私鑰對離線數(shù)字貨幣進行解密,比較離線數(shù)字貨幣的金額與金額。但值得注意的是,除數(shù)字證書具有有效期外,代理投放機構(gòu)向用戶下發(fā)的離線數(shù)字貨幣也存在一定的有效期限,在該有效期限內(nèi),用戶可以使用該離線數(shù)字貨幣;如果超出該有效期限,則終端需重新向代理投放設備申請離線數(shù)字貨幣。而在本申請實施案例中,收款終端還可以驗證付款用戶用于支付的離線數(shù)字貨幣是否在有效期內(nèi),以確定付款用戶是否可以使用離線數(shù)字貨幣進行支付。
而通過以上描述,在移動支付網(wǎng)看來,這個所描述的“雙離線”支付可能并非目前數(shù)字人民幣所采用的“硬件錢包”方案,更像是一種基于數(shù)字人民幣錢包賬戶的“軟”方案,其幣串并沒有真正存儲在硬件錢包本地。也因此,該方案的關鍵問題在于,離線支付的數(shù)字貨幣只能被“凍結(jié)”,在下一次聯(lián)網(wǎng)同步之前而無法再次被。
數(shù)字貨幣雙離線支付方法及支付系統(tǒng)
天翼電子商務有限公司是電信的全資子公司,其布局互聯(lián)網(wǎng)金融和金融科技的重要板塊,也是央行核準的第三方支付機構(gòu)。其在2020年8月,申請了一項名為《數(shù)字貨幣雙離線支付方法及支付系統(tǒng)》的發(fā)明。
提供了數(shù)字貨幣雙離線支付方法及支付系統(tǒng),其中雙離線支付方法包括:建立商業(yè)銀行和/或第三方支付機構(gòu)之間的聯(lián)盟區(qū)塊鏈;數(shù)字貨幣離線用戶通過設備端向商業(yè)銀行的設備端申請數(shù)字貨幣圈存;當發(fā)生雙方都離線的雙離線時,收付款雙方的設備端的安全域通過握手協(xié)議進行離線,并對結(jié)果進行簽名認證;當雙方的一方觸網(wǎng)時,向商業(yè)銀行/第三方支付機構(gòu)的設備端發(fā)起線上結(jié)算。
從實現(xiàn)方式上來看,雙離線支付仍然是,在雙離線狀態(tài)下收付雙方通過數(shù)字證書以及公私鑰加解密完成驗證的過程,以及聯(lián)網(wǎng)之后收付設備一方與商業(yè)銀行的設備端系統(tǒng)同步結(jié)果并實現(xiàn)清結(jié)算的過程。
而這項與之前的不同在于,其建立了商業(yè)銀行、第三方支付機構(gòu)之間的聯(lián)盟區(qū)塊鏈,由央行的設備端進行監(jiān)管,央行的設備端作為聯(lián)盟區(qū)塊鏈中與商業(yè)銀行節(jié)點、第三方支付機構(gòu)節(jié)點功能相同的區(qū)塊鏈全節(jié)點,并持有所述聯(lián)盟區(qū)塊鏈上隱私的私鑰,所述私鑰用于解密隱私。
優(yōu)點在于,基于區(qū)塊鏈的數(shù)字證書機制以及基于可信硬件執(zhí)行環(huán)境TEE的安全域操作保證了安全可靠;同時區(qū)塊鏈的使用保證了即使銀行賬戶系統(tǒng)被攻擊,證書服務仍可可信運行,可保證惡意被識別,全程安全可信。
但是從描述來看,該同樣采用的是在原有賬戶中凍結(jié)圈存資金的操作,即離線支付前設備端從自己的資金賬戶里圈存一定金額的數(shù)字貨幣并存入自身設備安全域中,而同時商業(yè)銀行設備端在用戶的資金賬戶中對應凍結(jié)該筆數(shù)字貨幣。當離線支付完成后,收付雙方有一端設備在線時,即向商業(yè)銀行設備端發(fā)送許可證書與離線結(jié)果,商業(yè)銀行設備端根據(jù)所述結(jié)果中的狀態(tài)數(shù)據(jù)對所述用戶的資金賬戶進行清結(jié)算操作,清算完成后解凍所述用戶的資金賬戶在圈存時凍結(jié)的資金并完成結(jié)算。
那么在這個前提下,離線支付狀態(tài)下的數(shù)字貨幣在未清結(jié)算前是否能進行二次流轉(zhuǎn),我們不得而知。
結(jié)語
從目前的幾個主要來看,數(shù)字人民幣雙離線支付的基本實現(xiàn)已經(jīng)躍然眼前,但是很多技術細節(jié)仍然不夠清晰,尤其是“離線狀態(tài)下”數(shù)字貨幣的二次流轉(zhuǎn)問題。
很早之前,我們曾討論過央行數(shù)字貨幣的可能形態(tài),到底是基于賬戶還是代幣?是UTXO還是余額模型?(鏈接:賬戶還是代幣?UTXO還是余額模型?雙離線下的DCEP形態(tài)思考)如今,這個問題的答案已經(jīng)比較清晰,從數(shù)字人民幣的大方向來看,肯定是基于賬戶體系的,但是雙離線支付下賬戶體系存在的問題如何解決,還需要繼續(xù)觀察。