97久久久超国产精品_久久国产精品湿香蕉网_一区二区三区久久无码_女人天堂性爱视频网站

我要咨詢

姚前:美聯(lián)儲數(shù)字貨幣原型系統(tǒng)簡析

文章來源:四九八網(wǎng)絡(luò)發(fā)布時間:2022-05-12 08:40:14熱度:554

近年來,全球主要經(jīng)濟體的貨幣當局不斷加大對中央銀行數(shù)字貨幣(Central Bank Digital Currency,CBDC)的研發(fā)力度并取得了諸多階段性成果。“漢密爾頓計劃”(Project Hamilton)是美國波士頓聯(lián)邦儲備銀行與麻省理工學(xué)院合作開展的CBDC創(chuàng)新研究項目(Digital Currency Initiative,DCI)。這項計劃已持續(xù)開展數(shù)年,2022年2月3日,美國波士頓聯(lián)邦儲備銀行發(fā)布題為“為央行數(shù)字貨幣設(shè)計的高性能支付處理系統(tǒng)”(A High Performance Payment Processing System Designed for Central Bank Digital Currencies)的技術(shù)報告,總結(jié)了漢密爾頓計劃第一階段進展。本文擬透過該報告的主要內(nèi)容,對美聯(lián)儲央行數(shù)字貨幣原型系統(tǒng)進行簡要分析。

漢密爾頓計劃第一階段的研究目標

漢密爾頓計劃第一階段的第一個目標是探討CBDC系統(tǒng)的性能,即從技術(shù)上研發(fā)一種高吞吐量、低延遲和富有彈性的CBDC交易處理系統(tǒng)。具體性能目標包括兩個方面:一是在5秒內(nèi)完成99%交易,包括完成交易驗證、交易執(zhí)行以及向用戶確認交易,處理速度與美國現(xiàn)有銀行卡支付以及銀行間即時支付系統(tǒng)的相應(yīng)指標不相上下;二是根據(jù)美國目前現(xiàn)金和銀行卡交易量以及預(yù)期增長率,該系統(tǒng)每秒至少處理10萬筆交易,且能隨著后期支付量的增長不斷擴展。

第二個目標是探討CBDC系統(tǒng)的韌性。為維持公眾對CBDC的信任,CBDC系統(tǒng)必須確保服務(wù)連續(xù)性且資金可用。系統(tǒng)韌性的研究重點在于,當多個數(shù)據(jù)中心發(fā)生故障時,如何保證系統(tǒng)訪問不中斷,數(shù)據(jù)不丟失。

第三個目標是探討CBDC的隱私保護。研發(fā)團隊認為,最安全的隱私保護方法就是從交易伊始就減少數(shù)據(jù)收集,因此在CBDC交易系統(tǒng)中設(shè)計了一種盡量減少交易數(shù)據(jù)留存的方案。

美聯(lián)儲數(shù)字貨幣原型系統(tǒng)設(shè)計

幣的形式:未花費的交易輸出(Unspent Transaction Output,UTXO)

漢密爾頓系統(tǒng)有三類參與者:交易處理器(transaction processor)、發(fā)行方(issuer)和用戶(user)。交易處理器記錄CBDC,并根據(jù)指令驗證和執(zhí)行相關(guān)交易。同比特幣一樣,漢密爾頓計劃采用UTXO的貨幣表達式。CBDC僅能通過發(fā)行方的行為而進出系統(tǒng),發(fā)行方鑄幣(mint)增加交易處理器中的資金,贖回(redeem)則減少交易處理器中的資金。用戶執(zhí)行資金轉(zhuǎn)移(transfer)操作,以原子方式變更資金所有權(quán),但存儲在交易處理器中的資金總額不變,變化的是資金的權(quán)屬。用戶使用其數(shù)字錢包的公鑰/私鑰來處理和簽署交易。資金轉(zhuǎn)移交易過程中,使用付款方的未花費資金就是交易輸入(input),生成新的未花費資金就是交易輸出(output)——包括收款方和找零給付款方的未花費資金。一項有效交易必須保持平衡:交易輸入值之和須與輸出值之和相等。

未花費資金定義為三元組utxo:=(v,P,sn)。其中,v為金額,P為安全鎖鎖頭(encumbrance predicate,可以理解為持有者公鑰),sn為序列號(serial number)。發(fā)行方的鑄幣操作會創(chuàng)建新的未花費資金,并將UTXO添加到交易處理器存儲的UTXO集合,而贖回操作則從UTXO集合中刪除已有的未花費資金,使其不可重復(fù)使用。發(fā)行方必須為新鑄UTXO選擇唯一序列號。將其設(shè)置為均勻隨機數(shù)或單調(diào)遞增計數(shù)器值(發(fā)行方鑄造第i個UTXO時,會將其序列號設(shè)置為i)均可。

分離驗證與UTXO壓縮

在漢密爾頓系統(tǒng)中,交易處理器驗證交易的正確性,并通過刪除輸入和創(chuàng)建輸出來執(zhí)行交易。驗證分為交易局部驗證(transaction-local validation,無需訪問共享狀態(tài))和存在性驗證(existence validation,需要訪問共享狀態(tài))。對于這種分離,漢密爾頓系統(tǒng)設(shè)計了專用組件——哨兵(sentinel),專門用于接收用戶交易并執(zhí)行交易局部驗證。局部驗證內(nèi)容包括:核實交易格式正確;確認每個輸入都有適用于其花費輸出的有效簽名;確認交易保持平衡(即輸出之和等于輸入之和)。如果交易符合標準,哨兵將向負責(zé)存在性驗證的執(zhí)行引擎轉(zhuǎn)發(fā)交易,否則就僅向用戶提示交易錯誤。

存在性驗證主要核驗未花費資金是否存在。為了實現(xiàn)隱私保護,漢密爾頓系統(tǒng)將資金作為不透明的32字節(jié)哈希值存儲在未花費資金哈希集合(Unspent funds Hash Set,UHS),h:=H(v,P,sn),而不是存儲完整的utxo:=(v,P,sn),其中H是一個哈希函數(shù),漢密爾頓系統(tǒng)使用了SHA-256算法。用UHS集合替換UTXO集合,不僅有助于隱私保護,而且減少了存儲要求并提高系統(tǒng)的性能。

為了進行存在性驗證,系統(tǒng)需要預(yù)先將通過局部驗證的交易轉(zhuǎn)換為應(yīng)用于UTXO哈希集合的交易,該過程被稱為壓縮(compaction)。具體而言,由哨兵計算輸入UTXO的哈希值,并將輸入UTXO與輸出安全鎖和價值一起,導(dǎo)出輸出UTXO的序列號,從而計算輸出UTXO的哈希值,然后將這兩個哈希列表發(fā)送給保存UHS的交易處理器,進行存在性檢查和執(zhí)行。

存在性驗證與UHS互換

假定某交易已通過交易局部驗證并進行了壓縮轉(zhuǎn)換,交易處理器將按如下方式更新UHS集合:檢查UHS集合是否存在所有交易的輸入UTXO,如果有輸入UTXO缺失,那么中止進一步處理,否則,處理繼續(xù)進行;交易處理器從UHS集合中刪除該交易的輸入UTXO對應(yīng)的UHS,并將新創(chuàng)建的與輸出UTXO對應(yīng)的UHS添加到UHS集合中。上述一刪一增的操作被稱為互換(swap)。

高性能架構(gòu)

為實現(xiàn)高吞吐量、低延遲以及高容錯性的交易處理,漢密爾頓計劃設(shè)計了兩種架構(gòu)。第一種是原子服務(wù)器(atomizer)架構(gòu),系統(tǒng)利用排序服務(wù)器為所有交易創(chuàng)建線性的歷史記錄。第二種是兩階段提交(two-phase commit,2PC)架構(gòu),系統(tǒng)并行執(zhí)行數(shù)筆無沖突交易(即那些不會支付或收到同筆資金的交易),而不創(chuàng)建統(tǒng)一排序的交易記錄。

在這兩種架構(gòu)中,UHS都可實現(xiàn)跨服務(wù)器分區(qū),提高吞吐量并不斷擴展。執(zhí)行單筆交易通常涉及多個服務(wù)器,每種架構(gòu)使用不同技術(shù)協(xié)調(diào)一筆交易在多個服務(wù)器中的一致應(yīng)用。中心化的原子服務(wù)器架構(gòu)使用Raft協(xié)議對所有來自于哨兵驗證過的更新排序,然后將這些更新應(yīng)用于全系統(tǒng)。2PC架構(gòu)則利用分布式共識節(jié)點來執(zhí)行原子交易和可串行化所需的鎖定,使用不同資金的交易不會沖突,可以并行執(zhí)行;一旦某有效交易的資金被確認為未花費,交易就能連續(xù)進行,可同時批量處理多筆交易。

漢密爾頓計劃第一階段的實驗結(jié)果

漢密爾頓計劃在第一階段開發(fā)了兩套完整的計算源代碼或代碼庫。一個是中心化原子服務(wù)器架構(gòu)的代碼庫,每秒能夠處理大約17萬筆交易,其中99%的交易尾部延遲不到2秒,50%的交易尾部延遲為0.7秒。由于原子服務(wù)器無法跨多個服務(wù)器進行分片,因此盡管可以將原子服務(wù)器狀態(tài)機中的功能簡化為只對一小部分交易進行輸入排序和去重,但該架構(gòu)的系統(tǒng)吞吐量仍有限。也就是說,對有效交易進行強排序的設(shè)計會限制吞吐量。另一個是2PC架構(gòu)的代碼庫,每秒能夠處理170萬筆交易,其中99%的交易可在1秒之內(nèi)完成,50%的交易尾部延遲不到0.5秒,遠高于設(shè)定目標需要達到的每秒10萬筆交易的基本要求。此外,2PC架構(gòu)若添加更多共識節(jié)點,還可進一步提高吞吐量,且不會對延遲產(chǎn)生負面影響。

以上代碼已經(jīng)開源,漢密爾頓計劃稱之為“開源央行數(shù)字貨幣項目(OpenCBDC)”,目的是促進CBDC研發(fā)合作。

比較分析

與電子現(xiàn)金(E-cash)的比較

1982年,美國計算機科學(xué)家和密碼學(xué)家大衛(wèi)·喬姆(David Chaum)發(fā)表了一篇題為《用于不可追蹤的支付系統(tǒng)的盲簽名》的論文。論文中提出了一種基于RSA算法(RSA algorithm)的新密碼協(xié)議——盲簽名(blind signature)。利用盲簽名構(gòu)建一個具備匿名性、不可追蹤性的電子現(xiàn)金系統(tǒng),這是最早的數(shù)字貨幣理論,也是最早能夠落地的試驗系統(tǒng),得到了學(xué)術(shù)界的高度認可。其中有兩項關(guān)鍵技術(shù):隨機配序和盲化簽名。隨機配序產(chǎn)生的唯一序列號可以保證數(shù)字現(xiàn)金的唯一性;盲化簽名能夠確保銀行對該匿名數(shù)字現(xiàn)金的信用背書。

漢密爾頓計劃采用了與E-cash相似的思路:一方面,通過全局唯一且每次交易都需要系統(tǒng)驗證的序列號,保證貨幣(UTXO)的唯一性;另一方面,采用中央處理模式,并利用加密算法實現(xiàn)系統(tǒng)的安全與抗攻擊性。但漢密爾頓計劃克服了E-cash的不足。在大衛(wèi)·喬姆建立的E-Cash模型中,每個使用過的E-Cash序列號都會被存儲在銀行數(shù)據(jù)庫中。隨著交易量的上升,該數(shù)據(jù)庫就會變得越來越龐大,驗證過程也會越來越困難。而漢密爾頓計劃通過分離驗證和壓縮處理,盡可能減少交易處理器的存儲計算壓力,并利用分片技術(shù)和高性能架構(gòu),從而大幅提升交易性能。

簡言之,已花費的交易輸出與未花費的交易輸出,是兩種相反相成的設(shè)計思路。后者優(yōu)化了前者面臨的數(shù)據(jù)無限膨脹的問題,這也是比特幣超越E-Cash的精髓所在。

與比特幣的比較

與比特幣相似,漢密爾頓計劃對幣的設(shè)計也采用了UTXO模式。但二者的區(qū)別在于:比特幣的區(qū)塊鏈存儲了所有UTXO信息;而漢密爾頓計劃沒有采用區(qū)塊鏈模式,幣不可簡單追溯,且其交易處理器并未存儲UTXO明細信息,僅存儲UTXO的哈希值。尤其是,漢密爾頓計劃的信任基礎(chǔ)與比特幣的分布式共識機制完全不同,其平臺將由可信任的中心機構(gòu)管理,共識算法僅用于協(xié)調(diào)系統(tǒng)中各分區(qū)服務(wù)器的一致性,更類似于第三方支付后臺的分布式系統(tǒng)設(shè)計。

在防止雙重花費、無重放攻擊等威脅方面,比特幣采用的是工作量證明機制(Proof of Work,PoW),而漢密爾頓計劃的設(shè)計則依靠哈希算法,且高度依賴發(fā)行方和交易系統(tǒng)的安全可信。具體來說,對于漢密爾頓交易處理器中的每次轉(zhuǎn)移,其UTXO輸出的序列號都是經(jīng)過哈希算法處理后所確定,只要從原始鑄幣交易開始的序列號是全局唯一的,后續(xù)遞推得到的每個UTXO序列號也將均具有全局唯一性,不會與過去或未來UTXO集合中的任何其他項重合。序列號的全局唯一性不僅是一個技術(shù)細節(jié),而且可達到兩個效果。一是無雙重花費?;Q操作會將UTXO永久標記為已花費。由于序列號是唯一的,因此任何UTXO只能被花費一次,且在花費后不能被重建。二是防止重放攻擊。因為每筆交易都對應(yīng)著具有全局唯一性的一個或多個UTXO輸入,其簽名將覆蓋整個交易,包括相關(guān)的所有輸入和輸出。因此,一個交易的簽名對除此交易外的其他任何UTXO(包括未來創(chuàng)建的UTXO)都無效,而且,交易無法被復(fù)制,同一筆交易也不能被多次執(zhí)行。漢密爾頓計劃設(shè)計的風(fēng)險點在于:中心機構(gòu)是否一定可信?發(fā)行方鑄幣的序列號是否全局唯一?交易處理器是否足夠安全從而可保證存儲的UHS集合不被篡改?

簡言之,雖然比特幣和漢密爾頓計劃都使用了UTXO的數(shù)據(jù)模型,但漢密爾頓計劃維護的是一套中心化的哈希登記系統(tǒng),而比特幣維護的是一套分布式的區(qū)塊鏈哈希登記系統(tǒng)。

其他比較

漢密爾頓計劃的技術(shù)報告引用了筆者在2018年國際電信聯(lián)盟(ITU)法定數(shù)字貨幣焦點組第二次會議上的工作論文。該論文主要是對數(shù)字人民幣原型系統(tǒng)的綜述,核心思想為“一幣、兩庫、三中心”的技術(shù)架構(gòu)(《中國法定數(shù)字貨幣原型構(gòu)想》,見《中國金融》2016年第17期),以及基于銀行賬戶與數(shù)字貨幣錢包分層并用的雙層業(yè)務(wù)架構(gòu)(《數(shù)字貨幣和銀行賬戶》,見《清華金融評論》2017年第7期)。

漢密爾頓計劃當前的整體架構(gòu)可以表達為“一幣,一錢包,一中心”。一幣指的是數(shù)字美元,即中央銀行簽名發(fā)行的以UTXO數(shù)據(jù)結(jié)構(gòu)表達的加密數(shù)字串;一錢包是指個人或單位用戶使用的數(shù)字貨幣錢包,也是存儲用戶公私鑰的載體;一中心是指交易登記中心,記錄存儲數(shù)字貨幣未花費交易資金的哈希值,完成數(shù)字貨幣產(chǎn)生、流通及消亡全過程的權(quán)屬登記。

在數(shù)字貨幣設(shè)計方面,兩個原型項目都強調(diào)加密數(shù)字串的貨幣屬性和央行負債的屬性。在流通環(huán)節(jié),兩個項目都以錢包為主要載體,強調(diào)用戶對數(shù)字貨幣的擁有和操作權(quán)限。在交易確權(quán)登記方面,兩個項目都設(shè)計了交易登記中心,也設(shè)計了“網(wǎng)上驗鈔機”。總體來說,兩個原型項目在設(shè)計理念層面有相通之處,均采用了中心化加密貨幣思路,交易處理“一次一密”,充分考慮了數(shù)字貨幣的安全性。技術(shù)路線又不囿于區(qū)塊鏈技術(shù),既吸納了其中的先進成分,又擯棄了可能的技術(shù)堵點。兩個項目不同之處在于,漢密爾頓計劃第一階段沒有探索中介的技術(shù)角色以及如何實現(xiàn)用戶隱私與合規(guī)性的平衡;筆者提出的數(shù)字貨幣原型系統(tǒng)則考慮和設(shè)計了中介機構(gòu)的角色,并提出認證中心和登記中心分離的設(shè)計思路,既可實現(xiàn)隱私保護又能滿足監(jiān)管合規(guī)要求。值得一提的是,漢密爾頓計劃通過層層哈希計算,在登記服務(wù)器存儲的是交易信息的哈希,而不是明文信息,降低了系統(tǒng)開銷,在隱私保護的考慮上更為精細。

結(jié)語

總體而言,漢密爾頓計劃第一階段的原型設(shè)計并不是一個完整的系統(tǒng),不具備一個有效CBDC所需的全部功能,尚不能達到實際應(yīng)用標準。后續(xù)漢密爾頓計劃將繼續(xù)探索CBDC的實現(xiàn)路徑,不斷提高系統(tǒng)的安全性、可審計性、可編程性、合規(guī)性、互操作性,完善離線支付功能,明確中介機構(gòu)的角色,增強抵御內(nèi)部攻擊、拒絕服務(wù)攻擊、對抗量子攻擊的能力。漢密爾頓計劃給各國央行數(shù)字貨幣研發(fā)提供了兩個重要的啟示。

一是技術(shù)的包容性。漢密爾頓計劃在設(shè)計CBDC過程中,并不囿于某一技術(shù)路線。它不僅充分吸收了E-cash、比特幣等加密貨幣的優(yōu)點并規(guī)避了可能的缺點,而且有效吸納了分布式系統(tǒng)的高性能、高容錯架構(gòu)設(shè)計。由此表明,CBDC設(shè)計的選擇不應(yīng)畫地為牢,無須將思路限定在某一技術(shù)框架或領(lǐng)域。

二是技術(shù)的開放性。目前各國CBDC的試驗基本上是比較秘密的“曼哈頓工程”,而漢密爾頓計劃則秉持開放、眾智、敏捷的現(xiàn)代研發(fā)理念,主動將第一階段代碼進行了開源,創(chuàng)建了OpenCBDC項目并在github上公開。目前,漢密爾頓計劃仍積極尋求外界對開源代碼庫的貢獻以及吸納新的工作組成員,旨在與各方一起共同推進CBDC研發(fā)。漢密爾頓計劃這種開放式創(chuàng)新模式,無疑值得各國在CBDC研發(fā)實踐中加以學(xué)習(xí)借鑒。

(本文僅代表作者個人學(xué)術(shù)觀點)

本文轉(zhuǎn)載目的在于知識分享,版權(quán)歸原作者和原刊所有。如有侵權(quán),請及時聯(lián)系我們刪除。


原創(chuàng)作者:四九八科技。禁止轉(zhuǎn)載,本文鏈接:

您關(guān)注的城市合伙人案例

查看更多成功案例

|聚合支付的使用場景

  • 餐飲
  • 超市
  • 酒店
  • KTV

|熱門關(guān)注