中央銀行加密貨幣——RSCoin系統之分析

財經雜誌 2017-06-09

RSCoin作為一個學術研究模型具有較好的借鑒價值,但作為法定數字貨幣的生產系統還有很多細節需要進一步完善。

姚前/文

在英格蘭銀行的建議下,英國倫敦大學學院的研究人員提出並開發了一個法定數字貨幣原型系統,即中央銀行加密貨幣(Centrally Banked Cryptocurrencies)——RSCoin系統。

對於這一有一定典範性的中央銀行數字貨幣原型構想,實有研究的必要。本文詳細分析了RSCoin系統的核心功能、體系架構、關鍵實現技術和交易模型,對其功能擴展進行了展望,並且在此基礎上對RSCoin的優缺點進行了剖析。

RSCoin作為一個學術研究模型具有較好的借鑒價值,但作為法定數字貨幣的生產系統還有很多細節需要進一步完善。

RSCoin系統概述

RSCoin項目的研發者認為,比特幣不適用於中央銀行發行數字貨幣的應用場景,這源於比特幣內在機制存在的一些問題,主要包括如下方面:一是比特幣網路的可擴展性差,無法承載大容量、高速率的貨幣交易,目前比特幣網路中每秒最多進行7筆交易;二是去中心化的貨幣發行體系,導致中央銀行無法對貨幣供應進行宏觀調控,比特幣本身的價格極度不穩定,不利於在更大範圍、更大規模上的應用,尤其是不利於在主權貨幣上使用。

針對以上問題,RSCoin的設計目標是站在中央銀行的視角,實現一種受中央銀行控制的、可擴展的數字貨幣,為中央銀行發行數字貨幣提供一套發行流通的參考框架和系列準則。

RSCoin解決方案的核心內容主要有:

一是將貨幣的發行和交易總賬的維護分開,採用中心化的貨幣政策,貨幣由中央銀行統一發行,而交易賬本分散式存儲,由多個可信的mintettes(可理解為商業銀行)來記錄維護,最後由中央銀行進行統一對賬和管理。簡言之,系統總體設計採用了中央銀行—商業銀行的二元分層體系結構,基於區塊鏈技術實現了分層管理的分散式賬本;

二是mintettes由中央銀行授權接入系統,中央銀行對mintettes的行為進行審查,故不需要採用比特幣的工作量證明來達成共識;

三是RSCoin採用了一種稱為兩階段提交(Two-Phase Commit:2PC)的共識機制來進行分散式記賬,使得每秒可處理的交易能達到2000筆,通過提高mintettes的數量,每秒可處理的交易上限還能不斷提高,從而實現了系統的可擴展性。

RSCoin系統實現技術

RSCoin系統中包含中央銀行、mintettes和最終用戶三類角色,其總體結構如圖1所示。中央銀行完全控制貨幣的產生,並通過生成全局賬本(higher-level block)向整個系統發布最終交易數據,全局賬本是最終交易賬本。中央銀行對mintettes進行授權認證,並定期向整個系統發布授權的mintettes列表。

mintettes得到授權後,在某個時間周期內負責維護交易賬本。mintettes收集、校驗用戶提交的交易信息,經驗證的交易由mintettes打包生成低層賬本(lower-level block)。mintettes定期將低層賬本交易數據提交到中央銀行,由中央銀行匯總生成全局賬本,並對外發布確認的交易數據。

最終用戶和央行之間不直接發生信息交互,而是通過mintettes這一中間層代為傳遞,匯總交易記錄;央行更多是衝突調解者、最後確認人,以及全局賬本這樣一個角色。

RSCoin和比特幣類似,採用的不是基於用戶賬號餘額這樣的系統設計,而是基於交易流水(UTXO),即系統只記錄有效的轉賬憑證(可以拿支票做類比),只要用戶能夠證明其合法持有該轉賬憑證,就可以把該憑證轉讓給其他人。

RSCoin採用了分片的設計思想來提高系統的處理能力,具體做法是把mintettes分為若干小組,每組mintettes只維護系統全局賬本中的部分;然後把需要處理的交易按照一定的規則分發給不同的mintettes小組進行處理,從而提高整個系統的處理能力。這也是淘寶、微信這類高負載、海量數據的系統通常所使用的方法,而這類系統的難點是要解決數據一致性的問題,在RSCoin中,就是要解決「雙花」的問題。

RSCoin系統的另一部分擴展性來源於,系統讓最終用戶承擔了較多的任務,很多的信息同步和協調工作是由用戶來完成。舉個例子,可以通過讓用戶自行辦理的辦法實現跨行轉賬系統:銀行之間不直接傳遞交易信息,而是由轉出行給用戶出具證明(由加密演算法保證其不可纂改),用戶再跑去轉入行執行存款,最終實現跨行轉賬,減輕銀行跨行信息系統的壓力。

下面以用戶發起一筆轉賬請求為例,描述RSCoin系統的交易模型(見圖2):

(一)用戶首先找到自己的轉賬憑證,然後根據該轉賬憑證上的編號,根據一個確定性的規則得到該轉賬憑證的所屬mintettes組,類似於根據身份證號我們能推算出出生地。因為一個mintettes組只持有部分賬本數據,所以正確找到保存該轉賬憑證的mintettes組是必須的。

(二)然後用戶發送自己合法持有該憑證的證明(即用戶簽名)給一個mintettes組中的所有成員,該組成員各自核准並給用戶出具證明(mintettes的簽名)。

(三)用戶收集到足夠多的mintettes簽名後,就可以把所有mintettes簽名連同憑證和自己的簽名一起發送給本次交易接受方的mintettes組中的一個,獲得一個確認簽名。

(四)對於用戶而言,轉賬過程到此就完成了,最後得到的這個簽名可以作為轉賬完成的證據。

對於接受交易的mintettes而言,還要負責把該筆交易數據寫入到其所在mintettes組的低層賬本中去,最後再統一匯總到央行的全局賬本中。

RSCoin的論文中沒有涉及在一個mintettes組中,各個mintettes如何互相同步保證數據一致性,也沒有談及mintettes的賬本如何匯總到央行的賬本,二者恰恰是最需要關注的部分。

如果忽略上述兩個未被描述的細節,RSCoin還是能實現如下的安全標準:一是沒有發生貨幣「雙花」;二是不可否認記賬:用戶收到的來自交易輸出所有者mintettes發送的確認信息後,交易一定會被加入到賬本。若交易未加入到賬本,該確認信息可用於投訴mintettes;三是定時的個人審計:用戶有查看mintettes的低層賬本的權利,以確保mintettes沒有做出違法操作;四是普遍的審計:任何有查看權利的用戶都能查看mintettes的低層賬本,而mintettes不能進行篡改、遺漏、添加交易等行為;五是任何有查看權利的用戶可以監察mintettes是否正確遵循協議,而這可以作為mintettes獲得交易費多少的證明。

RSCoin系統功能擴展

根據中央銀行需要,通過在基本RSCoin系統基礎上設計運行機制、修改系統運行參數,可以實現一些擴展功能。

(一)激勵機制。通過設計適當的激勵機制,mintettes會完成更多的工作,例如生成更多的低層賬本,減輕中央銀行的負擔;可以要求mintettes在中央銀行繳存交易準備金,並規定mintettes只能校驗小於準備金大小的交易金額,mintettes如果有不誠實的行為就會受到懲罰等。

(二)快速交易確認。中央銀行定期發布包含該周期內所有交易的全局賬本,在這個時間點交易會被正式記錄到賬本中。但mintettes可以在更短的時間周期內就提供證明,證明用戶的交易是有效的,並且對用戶承諾交易會被記錄到中央銀行的賬本中,用戶可以在一個記賬周期內進行多筆交易,而不像其他加密數字貨幣需要等待區塊鏈生成幾個數據塊後才能確認交易,這樣處理使得用戶體驗更好。

(三)多重銀行與外匯。如果多個中央銀行採用此框架部署自身的數字貨幣系統,全球用戶就可以使用不同的數字貨幣進行交易。這些貨幣之間保持獨立性,中央銀行不能跟蹤其他中央銀行範圍內的交易。在第三方機構介入的情況下,可以進行外匯兌換交易。

RSCoin系統優缺點分析

RSCoin採用多項獨特設計以區別於以往的加密數字貨幣:

(一)中心化貨幣發行。RSCoin模型框架與以比特幣為代表的加密數字貨幣最重要的區別就是貨幣可控發行。在RSCoin模型設計中,中央銀行使用密碼技術控制數字貨幣的生成,貨幣生成後存放在中央銀行,由中央銀行實施集中管控,並根據策略向mintettes或最終用戶投放。這種可控發行機制的設計能滿足中央銀行貨幣政策調控的需要。

(二)分散式賬本維護。RSCoin模型框架採用貨幣發行控制與賬本維護相分離的設計,mintettes由中央銀行授權進行交易賬本的維護,採用分片策略為每個授權機構分配用戶,以增加可靠性和安全性。

(三)交易容量可擴展。通過分析消息交互情況,在理論上可以得出交易處理容量會隨著mintettes數量的增加而線性增長的結論。這意味著mintettes數量越多,系統交易容量就會越大。其原型系統在亞馬遜雲上的測試結果表明,在3個mintettes的情況下,系統交易的容量為每秒400筆左右。每增加一個mintettes,交易容量每秒增加66筆左右,部署30個mintettes,可提供2000筆/秒的交易容量及少於1秒的交易速度。

(四)交易賬本可審計。RSCoin使用交叉日誌機制保證賬本具有較高的透明度和可審計性。日誌內容包括授權機構與用戶交互、用戶提交交易憑證等關鍵行為的簽名記錄,任何試圖修改交易記錄或攻擊行為都會造成日誌信息不一致,中央銀行或審計機構就能及時發現問題。

但RSCoin也存在如下一些不足:

(一)RSCoin使用二層分散式賬本,通過增加mintettes數量提高系統的處理能力,但並沒有減少總賬本的數據量。而對於更為龐大和複雜的系統,總賬本的數據量和系統的可靠性及效率之間需要找到一個平衡點,RSCoin對此僅做了簡單的處理,並未深入探究;

(二)在二層分散式記賬方法中,RSCoin將大量的對賬工作交由中央銀行來處理,中央銀行可能成為系統的瓶頸,因此這一方案是否最優也有待商榷;

(三)RSCoin沒有進一步對中央銀行應該如何對賬、中央銀行對賬結果如何反饋給底層mintettes進行描述,從協議角度看是不完備的;

(四)RSCoin照搬了比特幣記錄交易流水的記賬模式,沒有使用銀行業應用的複式記賬法,因此有觀點認為銀行業務人員是否習慣這種體系,有待觀察;

(五)RSCoin只是一個概念原型系統,並未能實現現實世界中的眾多支付、交易功能。

從業務角度出發,RScoin隱含了一個全局賬本,即央行負責每筆交易最終的確認,這就存在著全社會統一賬戶體系的概念,對於中央銀行—商業銀行的二元體系有可能構成衝擊。

另外由於採用的是DLT技術,而且是記錄交易的UTXO方式,所以身份認證是系統不可分割的一部分,這也會帶來狹義銀行的風險及另起爐灶的質疑。為解決這些潛在的問題,筆者給出了數字貨幣錢包基於銀行賬戶分層並用的思路,希望藉此可將數字貨幣這一業界寵兒有機融入現存體系。

法定數字貨幣當然不會依賴於某一特定技術,包括區塊鏈。但不管怎麼說,RSCoin作為一個學術研究模型具有較好的借鑒價值,比如金融區塊鏈聯盟R3提出的Corda模型在架構上隱含了對其思想的參考。

RSCoin模型還有很多細節需要進一步推敲和完善,最近國際上央行對於法定數字貨幣模型的測試工程(如加拿大銀行的Jasper)也有在不同架構和應用場景上的探索,法定數字貨幣發行及流通體系的研究大幕已徐徐拉開。

(姚前,工學博士、教授級高工,現任職於中國人民銀行。本文為作者學術觀點,與所在單位無關。編輯:王東)

(本文首刊於2017年6月5日出版的《財經》雜誌)


推薦閱讀:

銀行賬戶管理基本原則
傳統銀行驚現「關門」潮,你的錢是否會「無處安放」?
儲戶列印96頁對賬單遭銀行收費4200元
銀行理財也有坑,這些你必須知道!
巨震!國家突然下了鐵命令!銀行或徹夜難眠!

TAG:銀行 | 貨幣 | 中央銀行 | 加密 | 系統 | 中央 | Coin | 分析 |