7月16日,人民银行发布了《数字人民币的研发进展白皮书》(以下简称“白皮书”),以阐明人民银行在数字人民币研发上的基本立场,地阐释了数字人民币体系的研发背景、目标愿景、设计框架及相关政策考虑。
不过对于业内普遍比较关心的“双离线”支付白皮书并没有过多阐释,仅仅表示正在与手机制造商合作,研究提供包括双离线等功能在内的移动支付新体验。基于智能可视卡测试脱离手机的硬钱包支付模式,为弥合“数字鸿沟”提供可能。
对此,移动支付网详细介绍了关于数字人民币“双离线”支付可能存在的表现形式和影响(数字人民币双离线探讨断网断电能保证支付吗?),本次我们将从角度来具体看看“双离线”支付的一些技术细节。
使用数字货币芯片卡进行离线支付的方法及系统
人民银行印制科学技术研究所在2016年申请了一项名为《使用数字货币芯片卡进行离线支付的方法及系统》的,这也是央行体系中为数不多的直接与“双离线”相关的布局。
人民银行印制科学技术研究所,隶属人民银行总行,是钞票印制科研单位,以应用开发研究为主,兼顾应用基础研究。而从布局来看,它也是央行系中一家提供数字货币芯片卡相关布局的机构。
书表示,使用数字货币芯片卡进行离线支付时,受理终端设备在未与商业银行数字货币系统建立网络连接的情况下,接收金额;用户终端设备通过近距离无线连接方式从受理终端设备获取金额,并将信息发送受理终端设备;受理终端设备与商业银行数字货币系统建立网络连接之后,受理终端设备将信息发送商业银行数字货币系统;商业银行数字货币系统在接收到信息后,向银行数字货币系统发送变更属主的请求;银行数字货币系统在接收到变更属主的请求后,将数字货币的属主变更为受理终端设备对应的商户代码。
而整个逻辑其实非常清晰,即用户通过“卡式硬件钱包”在受理终端进行数字货币离线支付时,受理终端通过接收信息后确认信息(卡信息和金额)和账户是否正常使用。等到受理终端与数字货币系统建立网络连接之后,再将信息发送商业银行数字货币系统,商业银行数字货币系统在接收到信息后,再向央行数币系统发送变更属主的请求。
在离线支付过程中,收款用户对收到的数字货币当时能验证其真伪,但仍需对数字货币是否进行过重复支付开展后台验证。其设计思路是:需重复支付验证的数字货币在客户端电子钱包程序(如POS机)中标识为“待重复支付验证”,POS机一旦联到网络,就自动向数字货币系统进行重复支付验证申请。系统收到验证申请执行相应操作,在登记中心补录流水,更新数字货币属主。如收款人不是系统的注册用户,系统还会记录收款人预留的取款密码。
在这其中,还介绍了公私钥加解密、数字证书、PKI和IBC安全认证体系等等。当时还详细介绍了数字货币的币值与找零问题,但是从后面的发展来看,数字人民币的体系并没有采用这种固定面额的形式。
实际上,从书来看,彼时的有一个关键问题在于,受理端完成离线支付后在不联网的状态下是无法正常收到这笔钱的。而对于这个问题的细节,并没有展开讨论。
基于数字货币的离线支付方法、终端及代理投放设备
此后,工商银行股份有限公司(以下简称“工商银行”)在2018年也申请了一项名为《基于数字货币的离线支付方法、终端及代理投放设备》的,该项介绍了数字货币在双离线情况下的支付方法。这也是银行方面在数字货币“双离线”支付上为数不多的布局。
书描述,该方法应用于收款终端,包括:验证付款用户的数字证书,若付款用户的数字证书在有效期内,从付款终端获取经过付款用户私钥签名的信息;利用所述付款用户公钥验证所述信息的合法性,利用所述收款用户私钥对所述离线数字货币进行解密,比较离线数字货币的金额与金额;如果所述信息合法且所述离线数字货币的金额与金额相同,则通知所述付款终端扣款;当接收到所述付款终端发送的扣款成功通知,登记离线记录,增加账户中的离线数字货币计数。
其中,数字货币投放管理设备101部署在人民银行,用于管理各代理投放机构的数字货币投放额度,该数字货币投放额度由数字货币投放管理设备101根据代理投放机构的投放需求进行设置,并冻结代理投放机构相应额度的存款准备金。数字货币投放管理设备101根据数字货币投放额度生成投放币,并将投放币信息以报文等形式发送给部署在各代理投放机构的代理投放设备102。
代理投放设备102接收到数字货币投放管理设备101发送的投放币信息,并根据用户兑入数字货币的需求为用户生产对应金额的数字货币,并对数字货币的账簿进行管理,为用户提供相关账户余额查询、在线入账和圈存离线金额等服务。
收款终端103和付款终端104可以为手机、平板电脑或智能穿戴设备等支持移动支付的网络设备。
在离线支付场景下,收款终端103和付款终端104之间通过离线方式进行信息交互;而终端与代理投放设备102之间通过网络进行通信。
书中表示,在双离线支付的情况下,由于处于未联网状态,虽然收款用户终端账户中的离线数字货币的计数增加了,但是在代理投放机构中收款用户账户的并未发生变更,也即此时收款用户在代理投放机构中存储的款项并未增加,那么当前收款终端接收到的离线数字货币不能用于对外支付。因此,可以冻结离线数字货币;当连接到网络,向代理投放设备发送离线记录,以供代理投放设备根据离线记录进行账户中数字货币计数的变更;解冻离线数字货币,解冻后的离线数字货币可用于向其他用户付款。
而中提到,本方案中的离线数字货币的额度是基于用户在本代理投放机构的存款金额,通过申请而生成的。尽管离线时,付款用户公钥验证信息的合法性,利用收款用户私钥对离线数字货币进行解密,比较离线数字货币的金额与金额。但值得注意的是,除数字证书具有有效期外,代理投放机构向用户下发的离线数字货币也存在一定的有效期限,在该有效期限内,用户可以使用该离线数字货币;如果超出该有效期限,则终端需重新向代理投放设备申请离线数字货币。而在本申请实施案例中,收款终端还可以验证付款用户用于支付的离线数字货币是否在有效期内,以确定付款用户是否可以使用离线数字货币进行支付。
而通过以上描述,在移动支付网看来,这个所描述的“双离线”支付可能并非目前数字人民币所采用的“硬件钱包”方案,更像是一种基于数字人民币钱包账户的“软”方案,其币串并没有真正存储在硬件钱包本地。也因此,该方案的关键问题在于,离线支付的数字货币只能被“冻结”,在下一次联网同步之前而无法再次被。
数字货币双离线支付方法及支付系统
天翼电子商务有限公司是电信的全资子公司,其布局互联网金融和金融科技的重要板块,也是央行核准的第三方支付机构。其在2020年8月,申请了一项名为《数字货币双离线支付方法及支付系统》的发明。
提供了数字货币双离线支付方法及支付系统,其中双离线支付方法包括:建立商业银行和/或第三方支付机构之间的联盟区块链;数字货币离线用户通过设备端向商业银行的设备端申请数字货币圈存;当发生双方都离线的双离线时,收付款双方的设备端的安全域通过握手协议进行离线,并对结果进行签名认证;当双方的一方触网时,向商业银行/第三方支付机构的设备端发起线上结算。
从实现方式上来看,双离线支付仍然是,在双离线状态下收付双方通过数字证书以及公私钥加解密完成验证的过程,以及联网之后收付设备一方与商业银行的设备端系统同步结果并实现清结算的过程。
而这项与之前的不同在于,其建立了商业银行、第三方支付机构之间的联盟区块链,由央行的设备端进行监管,央行的设备端作为联盟区块链中与商业银行节点、第三方支付机构节点功能相同的区块链全节点,并持有所述联盟区块链上隐私的私钥,所述私钥用于解密隐私。
优点在于,基于区块链的数字证书机制以及基于可信硬件执行环境TEE的安全域操作保证了安全可靠;同时区块链的使用保证了即使银行账户系统被攻击,证书服务仍可可信运行,可保证恶意被识别,全程安全可信。
但是从描述来看,该同样采用的是在原有账户中冻结圈存资金的操作,即离线支付前设备端从自己的资金账户里圈存一定金额的数字货币并存入自身设备安全域中,而同时商业银行设备端在用户的资金账户中对应冻结该笔数字货币。当离线支付完成后,收付双方有一端设备在线时,即向商业银行设备端发送许可证书与离线结果,商业银行设备端根据所述结果中的状态数据对所述用户的资金账户进行清结算操作,清算完成后解冻所述用户的资金账户在圈存时冻结的资金并完成结算。
那么在这个前提下,离线支付状态下的数字货币在未清结算前是否能进行二次流转,我们不得而知。
结语
从目前的几个主要来看,数字人民币双离线支付的基本实现已经跃然眼前,但是很多技术细节仍然不够清晰,尤其是“离线状态下”数字货币的二次流转问题。
很早之前,我们曾讨论过央行数字货币的可能形态,到底是基于账户还是代币?是UTXO还是余额模型?(链接:账户还是代币?UTXO还是余额模型?双离线下的DCEP形态思考)如今,这个问题的答案已经比较清晰,从数字人民币的大方向来看,肯定是基于账户体系的,但是双离线支付下账户体系存在的问题如何解决,还需要继续观察。
上一条 : 《支付产业数字化转型发展白皮书》发布 数据应用和保护受重视
下一条 : 模组厂商发布半年报:强者愈强 规模效应突显