姚前:美联储数字货币原型系统简析

  未花费资金是否存在存在性验证主要核验。隐私保护为了实现,资金哈希集合(Unspent funds Hash Set汉密尔顿系统将资金作为不透明的32字节哈希值存储在未花费,S)UH, H(vh!=,P,n)s,utxo!= (v而不是存储完整的,P,n)s,个哈希函数其中H是一,SHA-256算法汉密尔顿系统使用了。换UTXO集合用UHS集合替,于隐私保护不仅有助,求并提高系统的性能而且减少了存储要。

  顿系统中在汉密尔,证交易的正确性交易处理器验,创建输出来执行交易并通过删除输入和。ion-local validation验证分为交易局部验证(transact,istence validation无需访问共享状态)和存在性验证(ex,共享状态)需要访问。种分离对于这,——哨兵(sentinel)汉密尔顿系统设计了专用组件,易并执行交易局部验证专门用于接收用户交。:核实交易格式正确局部验证内容包括;于其花费输出的有效签名确认每个输入都有适用;输出之和等于输入之和)确认交易保持平衡(即。符合标准如果交易,证的执行引擎转发交易哨兵将向负责存在性验,户提示交易错误否则就仅向用。

  言之简,与未花费的交易输出已花费的交易输出,成的设计思路是两种相反相。的数据无限膨胀的问题后者优化了前者面临,-Cash的精髓所在这也是比特币超越E。

  言之简,都使用了UTXO的数据模型虽然比特币和汉密尔顿计划,一套中心化的哈希登记系统但汉密尔顿计划维护的是,布式的区块链哈希登记系统而比特币维护的是一套分。

  以及高容错性的交易处理为实现高吞吐量、低延迟,设计了两种架构汉密尔顿计划。atomizer)架构第一种是原子服务器(,有交易创建线性的历史记录系统利用排序服务器为所。-phase commit第二种是两阶段提交(two,)架构2PC,些不会支付或收到同笔资金的交易)系统并行执行数笔无冲突交易(即那,排序的交易记录而不创建统一。

  而言总体,型设计并不是一个完整的系统汉密尔顿计划第一阶段的原,DC所需的全部功能不具备一个有效CB,实际应用标准尚不能达到。探索CBDC的实现路径后续汉密尔顿计划将继续,性、可编程性、合规性、互操作性不断提高系统的安全性、可审计,支付功能完善离线,机构的角色明确中介,务攻击、对抗量子攻击的能力增强抵御内部攻击、拒绝服。货币研发提供了两个重要的启示汉密尔顿计划给各国央行数字。

  的开放性二是技术。上是比较秘密的“曼哈顿工程”目前各国CBDC的试验基本,、众智、敏捷的现代研发理念而汉密尔顿计划则秉持开放,代码进行了开源主动将第一阶段,目并在github上公开创建了OpenCBDC项。前目,代码库的贡献以及吸纳新的工作组成员汉密尔顿计划仍积极寻求外界对开源,同推进CBDC研发旨在与各方一起共。种开放式创新模式汉密尔顿计划这,研发实践中加以学习借鉴无疑值得各国在CBDC。

  存在性验证为了进行,转换为应用于UTXO哈希集合的交易系统需要预先将通过局部验证的交易,ompaction)该过程被称为压缩(c。而言具体,UTXO的哈希值由哨兵计算输入,输出安全锁和价值一起并将输入UTXO与,XO的序列号导出输出UT,TXO的哈希值从而计算输出U,给保存UHS的交易处理器然后将这两个哈希列表发送,检查和执行进行存在性。

  元组utxo!=(v未花费资金定义为三,P,n)s。中其,金额v为,rance predicateP为安全锁锁头(encumb,持有者公钥)可以理解为,ial number)sn为序列号(ser。创建新的未花费资金发行方的铸币操作会,处理器存储的UTXO集合并将UTXO添加到交易,合中删除已有的未花费资金而赎回操作则从UTXO集,重复使用使其不可。TXO选择唯一序列号发行方必须为新铸U。数器值(发行方铸造第i个UTXO时将其设置为均匀随机数或单调递增计,设置为i)均可会将其序列号。

  重放攻击等威胁方面在防止双重花费、无,(Proof of Work比特币采用的是工作量证明机制,W)Po,设计则依靠哈希算法而汉密尔顿计划的,交易系统的安全可信且高度依赖发行方和。来说具体,处理器中的每次转移对于汉密尔顿交易,是经过哈希算法处理后所确定其UTXO输出的序列号都,始的序列号是全局唯一的只要从原始铸币交易开,序列号也将均具有全局唯一性后续递推得到的每个UTXO,O集合中的任何其他项重合不会与过去或未来UTX。不仅是一个技术细节序列号的全局唯一性,到两个效果而且可达。双重花费一是无。O永久标记为已花费互换操作会将UTX。号是唯一的由于序列,O只能被花费一次因此任何UTX,不能被重建且在花费后。重放攻击二是防止。唯一性的一个或多个UTXO输入因为每笔交易都对应着具有全局,盖整个交易其签名将覆,有输入和输出包括相关的所。此因,TXO(包括未来创建的UTXO)都无效一个交易的签名对除此交易外的其他任何U,且而,法被复制交易无,不能被多次执行同一笔交易也。是否全局唯一?交易处理器是否足够安全从而可保证存储的UHS集合不被篡改汉密尔顿计划设计的风险点在于:中心机构是否一定可信?发行方铸币的序列号?

  部验证并进行了压缩转换假定某交易已通过交易局,查UHS集合是否存在所有交易的输入UTXO交易处理器将按如下方式更新UHS集合:检,UTXO缺失如果有输入,进一步处理那么中止,则否,续进行处理继;交易的输入UTXO对应的UHS交易处理器从UHS集合中删除该,应的UHS添加到UHS集合中并将新创建的与输出UTXO对。称为互换(swap)上述一删一增的操作被。

  两套完整的计算源代码或代码库汉密尔顿计划在第一阶段开发了。服务器架构的代码库一个是中心化原子,约17万笔交易每秒能够处理大,尾部延迟不到2秒其中99%的交易,部延迟为0。7秒50%的交易尾。跨多个服务器进行分片由于原子服务器无法,简化为只对一小部分交易进行输入排序和去重因此尽管可以将原子服务器状态机中的功能,统吞吐量仍有限但该架构的系。是说也就,序的设计会限制吞吐量对有效交易进行强排。C架构的代码库另一个是2P,170万笔交易每秒能够处理,可在1秒之内完成其中99%的交易,延迟不到0。5秒50%的交易尾部,每秒10万笔交易的基本要求远高于设定目标需要达到的。外此,加更多共识节点2PC架构若添,提高吞吐量还可进一步,产生负面影响且不会对延迟。

  cash相似的思路:一方面汉密尔顿计划采用了与E-,都需要系统验证的序列号通过全局唯一且每次交易,XO)的唯一性保证货币(UT;方面另一,处理模式采用中央,系统的安全与抗攻击性并利用加密算法实现。了E-cash的不足但汉密尔顿计划克服。E-Cash模型中在大卫·乔姆建立的,列号都会被存储在银行数据库中每个使用过的E-Cash序。量的上升随着交易,变得越来越庞大该数据库就会,会越来越困难验证过程也。分离验证和压缩处理而汉密尔顿计划通过,理器的存储计算压力尽可能减少交易处,术和高性能架构并利用分片技,升交易性能从而大幅提。

  82年19,m)发表了一篇题为《用于不可追踪的支付系统的盲签名》的论文美国计算机科学家和密码学家大卫·乔姆(David Chau。)的新密码协议——盲签名(blind signature)论文中提出了一种基于RSA算法(RSA algorithm。性、不可追踪性的电子现金系统利用盲签名构建一个具备匿名,数字货币理论这是最早的,落地的试验系统也是最早能够,界的高度认可得到了学术。:随机配序和盲化签名其中有两项关键技术。可以保证数字现金的唯一性随机配序产生的唯一序列号;该匿名数字现金的信用背书盲化签名能够确保银行对。

  processor)、发行方(issuer)和用户(user)汉密尔顿系统有三类参与者:交易处理器(transaction 。记录CBDC交易处理器,和执行相关交易并根据指令验证。币一样同比特,TXO的货币表达式汉密尔顿计划采用U。行方的行为而进出系统CBDC仅能通过发,增加交易处理器中的资金发行方铸币(mint),减少交易处理器中的资金赎回(redeem)则。ransfer)操作用户执行资金转移(t,更资金所有权以原子方式变,器中的资金总额不变但存储在交易处理,资金的权属变化的是。钥/私钥来处理和签署交易用户使用其数字钱包的公。交易过程中资金转移,是交易输入(input)使用付款方的未花费资金就,t)——包括收款方和找零给付款方的未花费资金生成新的未花费资金就是交易输出(outpu。易输入值之和须与输出值之和相等一项有效交易必须保持平衡:交。

  的包容性一是技术。计CBDC过程中汉密尔顿计划在设,一技术路线并不囿于某。币等加密货币的优点并规避了可能的缺点它不仅充分吸收了E-cash、比特,的高性能、高容错架构设计而且有效吸纳了分布式系统。表明由此,选择不应画地为牢CBDC设计的,某一技术框架或领域无须将思路限定在。

  币相似与比特,计也采用了UTXO模式汉密尔顿计划对币的设。区块链存储了所有UTXO信息但二者的区别在于:比特币的;有采用区块链模式而汉密尔顿计划没,简单追溯币不可,存储UTXO明细信息且其交易处理器并未,XO的哈希值仅存储UT。其是尤,特币的分布式共识机制完全不同汉密尔顿计划的信任基础与比,任的中心机构管理其平台将由可信,中各分区服务器的一致性共识算法仅用于协调系统,后台的分布式系统设计更类似于第三方支付。

  已经开源以上代码,字货币项目(OpenCBDC)”汉密尔顿计划称之为“开源央行数,BDC研发合作目的是促进C。

  种架构中在这两,现跨服务器分区UHS都可实,并不断扩展提高吞吐量。常涉及多个服务器执行单笔交易通,交易在多个服务器中的一致应用每种架构使用不同技术协调一笔。协议对所有来自于哨兵验证过的更新排序中心化的原子服务器架构使用Raft,新应用于全系统然后将这些更。执行原子交易和可串行化所需的锁定2PC架构则利用分布式共识节点来,的交易不会冲突使用不同资金,行执行可以并;资金被确认为未花费一旦某有效交易的,连续进行交易就能,处理多笔交易可同时批量。

  CBDC的隐私保护第三个目标是探讨。队认为研发团,从交易伊始就减少数据收集最安全的隐私保护方法就是,一种尽量减少交易数据留存的方案因此在CBDC交易系统中设计了。

  币设计方面在数字货,串的货币属性和央行负债的属性两个原型项目都强调加密数字。通环节在流,钱包为主要载体两个项目都以,币的拥有和操作权限强调用户对数字货。权登记方面在交易确,了交易登记中心两个项目都设计,网上验钞机”也设计了“。来说总体,理念层面有相通之处两个原型项目在设计,化加密货币思路均采用了中心,一次一密”交易处理“,字货币的安全性充分考虑了数。囿于区块链技术技术路线又不,中的先进成分既吸纳了其,能的技术堵点又摈弃了可。同之处在于两个项目不,角色以及如何实现用户隐私与合规性的平衡汉密尔顿计划第一阶段没有探索中介的技术;则考虑和设计了中介机构的角色笔者提出的数字货币原型系统,记中心分离的设计思路并提出认证中心和登,能满足监管合规要求既可实现隐私保护又。提的是值得一,过层层哈希计算汉密尔顿计划通,的是交易信息的哈希在登记服务器存储,明文信息而不是,系统开销降低了,考虑上更为精细在隐私保护的。

  年来近,entral Bank Digital Currency全球主要经济体的货币当局不断加大对中央银行数字货币(C,并取得了诸多阶段性成果CBDC)的研发力度。院合作开展的CBDC创新研究项目(Digital Currency Initiative“汉密尔顿计划”(Project Hamilton)是美国波士顿联邦储备银行与麻省理工学,I)DC。持续开展数年这项计划已,年2月3日2022,ocessing System Designed for Central Bank Digital Currencies)的技术报告美国波士顿联邦储备银行发布题为“为央行数字货币设计的高性能支付处理系统”(A High Performance Payment Pr,计划第一阶段进展总结了汉密尔顿。报告的主要内容本文拟透过该,原型系统进行简要分析对美联储央行数字货币。

  体架构可以表达为“一币汉密尔顿计划当前的整,钱包一,心”一中。是数字美元一币指的,XO数据结构表达的加密数字串即中央银行签名发行的以UT;用户使用的数字货币钱包一钱包是指个人或单位,公私钥的载体也是存储用户;交易登记中心一中心是指,花费交易资金的哈希值记录存储数字货币未,及消亡全过程的权属登记完成数字货币产生、流通。

  目标是探讨CBDC系统的性能汉密尔顿计划第一阶段的第一个,迟和富有弹性的CBDC交易处理系统即从技术上研发一种高吞吐量、低延。一是在5秒内完成99%交易具体性能目标包括两个方面:,执行以及向用户确认交易包括完成交易验证、交易,行间即时支付系统的相应指标不相上下处理速度与美国现有银行卡支付以及银;行卡交易量以及预期增长率二是根据美国目前现金和银,处理10万笔交易该系统每秒至少,量的增长不断扩展且能随着后期支付。

  联盟(ITU)法定数字货币焦点组第二次会议上的工作论文汉密尔顿计划的技术报告引用了笔者在2018年国际电信。人民币原型系统的综述该论文主要是对数字,术架构(《中国法定数字货币原型构想》核心思想为“一币、两库、三中心”的技,016年第17期)见《中国金融》2,的双层业务架构(《数字货币和银行账户》以及基于银行账户与数字货币钱包分层并用,2017年第7期)见《清华金融评论》。

  敏捷的现代研发理念秉持开放、众智、,的技术路线采用包容,富有弹性的CBDC交易处理系探索创建高吞吐量、低延迟和统

  CBDC系统的韧性第二个目标是探讨。CBDC的信任为维持公众对,服务连续性且资金可用CBDC系统必须确保。研究重点在于系统韧性的,心发生故障时当多个数据中,统访问不中断如何保证系,不丢失数据。

分享: