一文详解数字人民币的硬件钱包和双离线支付

随着消息不断曝光,拥有软件钱包和硬件钱包两种形态的数字人民币逐渐浮出水面。基于手机 App 而存在的软件钱包此前已经清晰呈现,那么基于「芯片」而存在的硬件钱包又该如何理解呢?

原文来源:移动支付网

原文标题:《详解数字人民币的“硬件钱包”和“双离线支付”》
撰文:佘云峰

10 月 30 日,在华为 Mate 40 系列手机的国内发布会上,华为消费者业务 CEO 余承东宣布 Mate 40 系列手机按照中国人民银行数字货币研究所的统一标准,支持「数字人民币硬件钱包」功能。这是国内首款支持数字人民币硬件钱包的智能手机。

从目前已知试点的信息来看,数字人民币拥有软件钱包和硬件钱包两种形态,软件钱包即此前活动体验的「数字人民币」钱包,以手机 App 的形式存在;硬件钱包则是指基于「芯片」形式存在的钱包,比如智能卡、手机 eSE 等。 

因此,可以肯定的是对于消费者而言,未来除了能够通过手机 App 来兑换和使用数字人民币,也可以通过以上硬件钱包的形式来使用数字人民币。不过,由于数字人民币的研发和应用是不断更新、发展的,因此下文所述仅是依据现有市场情况以及专利说明推断而来,不代表数字人民币最终的具体表现形态,仅供大家参考。


关于「数字货币芯片卡」


移动支付网根据近来对于行业参与机构的了解,以及此前央行公布的专利详情,将硬件钱包概括为「数字货币芯片卡」(下文「数字货币」均指央行数字货币,即数字人民币),而数字货币芯片卡则具体可以包括可视蓝牙 IC 卡、IC 卡、手机 eSE 卡、手机 SD 卡、手机 SIM 卡等 5 种形态。

以上形态划分在央行《使用数字货币芯片卡进行离线支付的方法和系统》等一系列的专利中都有概述。因此在移动支付网看来,硬件钱包的形态即是表示承载数字货币的载体是区别于软件的实体设备,无论是智能卡芯片还是手机芯片都属于此类。 

从上述划分的 5 种形态来看,可视蓝牙 IC 卡、IC 卡主要属于智能卡形态,而手机 eSE 卡、手机 SD 卡、手机 SIM 卡则属于手机形态。 

可视蓝牙卡一般是指智能卡上有屏幕显示交易额、余额等信息,通过蓝牙等方式与智能手机进行交互,可以配合手机 App 进行查询和账户信息同步。IC 卡则包括普通智能卡、超薄卡等多种形态,没有主动交互能力,需要通过与受理终端进行交互才能使用。

某机构正在内测的数字人民币可视卡

手机 eSE 卡、手机 SD 卡、手机 SIM 卡通常即是指基于手机全终端、NFC-SD、NFC-SIM 卡等 NFC 三种不同模式的方案,将安全信息存储于不同的 SE 芯片内,再通过手机 NFC 的方式与受理终端进行交互,当然也可能是通过蓝牙或者其它方式进行交互。

华为 Mate 40 系列手机支持的硬件钱包便是上述的手机 eSE 形态。


关于资金的转移和清算


央行数字货币系统包括一币两库三中心,其中数字货币登记中心需验证交易数字货币的合法性,记录交易流水并更正对应数字货币新的属主,以及登记其它所需信息。

两库分别指央行数字货币发行库和数字货币商业银行库,商业银行通过向央行缴纳等额备付金的形式换取数字货币储存在商业银行库,并在央行的登记中心进行记录。 

当用户通过开立数字货币钱包,并从商业银行存款账户兑换出一定额度的数字货币时,首先商业银行需要查看数字货币银行库内有没有足够的数字货币,在足够的情况下为用户提供存款兑换数字货币的操作。商业银行将操作信息反馈给央行后,央行登记中心对该笔动账进行记录,并将相应的数字货币属主由商业银行更改为用户。

当使用钱包内的数字货币进行交易时,以载体为「数字芯片卡」为例,首先在受理终端上输入交易金额,用户拿出卡片进行通过非接触形式与受理终端进行交互,在获取了交易金额的基础上将交易信息发送至受理终端(交易信息包括数字芯片卡信息以及与交易金额等值的数字货币)。

随后受理终端与商业银行数字货币系统建立网络连接,终端将交易信息发送至商业银行数字货币系统。商业银行数字货币系统在接收到交易信息后,向央行数字货币系统发送变更属主的请求。央行数字货币系统在接收到变更属主请求后,将数字货币的属主变更为受理终端设备对应的商户代码。

以上是通过专利了解到的央行数字货币在交易过程中的基本流转,实际上这种「更改数字货币属主」的方式类似于现金的交易形式,也就是我们此前讨论的基于 Token 的 UTXO 模式,但同时也面临着「币值」和「找零」的问题。不过在此前试点的数字人民币红包体验中,我们并没有发现这个问题,因此我们可以得出的结论是央行之前的测试并没有完全采用 UTXO 模式,或者央行在原有的「币值」和「找零」问题上进行了优化,让用户没有感知。关于这个问题,我们下文再作详细讨论。

抛开数字货币的基本流转路径不说,这里面涉及到一个问题是,商户所开立的数字货币钱包账户与用户的数字货币钱包账户如果不是一个运营机构,那么背后的资金流转又应该如何?比如,用户 A 使用在中行开立数字货币钱包并从工行个人银行账户兑换了 100 元存入其中,然后通过数字钱包支付给了商户 B,而商户 B 收款的数字钱包是在工行开立的,并被兑换回了 B 的工行个人银行账户。

那么具体的资金流转可能是,中行先确认其数字货币银行库中的资金库存,向央行登记中心反馈信息之后,央行将 100 元数字货币的属主由中行资金库改为用户 A;用户 A 将 100 元支付给 B 时,B 的钱包运营方工行先确认其数字货币银行资金库库存,并向央行登记中心反馈信息,登记中心将 100 元数字货币的属主由用户 A 改为用户 B,用户 B 将 100 元存入工行银行账户时,工行向央行登记中心反馈信息,然后央行将 100 元数字货币从工行的数字货币银行库中注销并记录,恢复工行 100 元的数字货币兑换额度。 

由于存在着数字货币的跨行流转,这里面自然也会涉及到「清算」问题。从目前的信息来看,移动支付网推测这个「清算」的角色是由央行自身来扮演的。当然,从近期央行数字货币研究所先后与城银清算、农信银等清算机构签署战略合作协议来看,未来中小银行由于不承担兑换运营职能,但是要参与到数字人民币的流通以及后期资金的流转可能需要这些清算机构来实现互联互通的能力。


关于双离线支付?


以上我们举例了数字芯片卡的支付过程,但实际上仅仅是基于受理终端联网状态下的单离线支付,需要受理终端与商业银行的数字货币系统进行交互之后才能,反馈到央行并更改数字货币的属主。

那么当受理终端和支付设备都处于离线的双离线情况下,又该如何解决呢?

实际上,整个交易流程并没有发生本质的变化,只不过将联网的过程适当地作了延后处理。而据专利显示,在数字人民币系统中定义的离线支付指的是近场支付,在此过程中接收方需事后联机确认收款。

与上文交易流程一样,双离线下接收方受理终端对收到数字货币能够通过「插件」的形式验证其真伪,并验证用户身份,但并不能验证其是否进行过重复支付,即「双花」问题,因此必须等待联网后对其进行验证。 

据专利描述的设计思路是,需重复支付验证的数字货币在客户端电子钱包程序 (如 POS 机) 中标识为「待重复支付验证」,POS 机一旦联到网络,则自动向数字货币系统进行重复支付验证申请。数字货币系统收到验证申请执行相应操作,在登记中心补录交易流水,更新数字货币的属主。

换句话说,双离线支付之后「待重复支付验证」的那笔交易资金在联网验证之前是不能再流通到市场的。举个例子,A 通过数字人民币双离线支付转给 B 100 元,B 尽管收到了 100 元的交易信息,但这 100 元会被标记为「待重复支付验证」的状态,无法被 B 再次花费出去,只能等到联网完成验证之后,才能恢复使用。

不过据某行业人士表示,离线状态下的二次流转也是可以实现的,不联网验证的前提下至少需要通过本地验证,这样也能够实现二次流转。但具体应用到数字人民币要如何实现目前还不清楚。

通过以上信息移动支付网推断,数字人民币的「双离线」支付会有很多限制条件。

首先是,双离线支付的交易双方必须是硬件钱包,且必须内置 SE 安全芯片,达到一定的安全加密等级。硬件钱包包括智能卡和手机等形态,不一定全部用于双离线支付,但只要是双离线支付必须是硬件钱包。

其次,双离线支付由于需要内置 SE,所以受理终端也必须要进行相应改造。据移动支付网了解,此前的数字人民币在线支付试点中,受理终端仅需要进行软件升级即可支持。

最后,从目前来看双离线支付仅支持 NFC 形式进行交互,但并不排除会有其它方案。

除此之外,据移动支付网通过某参与内测人士了解到,「双离线」支付会有相应的「离线交易时间」和「离线交易次数」限制。据其透露内测的 NFC-SIM 卡模式的双离线支付来看,离线交易的时限是 24 小时,交易次数是 10 次。另外据专利显示,可以设定双离线支付为小额支付,比如小于 1000 元,将其设置在个人用户可以接受的范围。 

同时还要采取事后追责机制,对不良记录录入征信系统以作惩戒。如果联网后在验币处理时系统判断硬件钱包出现伪币或者双花,可以把该钱包列入黑名单,置该钱包状态为停用状态,并通过应急处理对硬钱包介质进行停用。


关于币值和找零问题


以上我们谈到了数字人民币的资金流转和属主的更改,这样即会面临「币值」和「找零」的问题,实际上央行在专利中也有相关描述。

数字人民币由中国人民银行作为法定货币来设立并发行进入流通,由中国人民银行作为最终贷方提供担保,参与全国标准架构内的兑、汇与消费。它是一串代码,具有与实际流通中的「面值」一样的币值意义。数字货币模拟纸质货币在央行的发行和管理流程,在数字货币发行库中按央行的本次数字货币发行量一次性生成数字货币。

而在数字货币系统设计中,币值可以按最小单位面额产生,也可以根据用户具体提款金额来产生,也能按流通中实物货币面额产生,具体按哪种方式可通过系统参数在初始过程中设置。而为了贴近现实,专利描述中统一使用了「流通中固定面额」的形式来进行阐述,即发行库中的数字货币完全模拟流通中的面值,「印制」产生数字代表的「壹圆、伍圆、拾圆、贰拾圆、伍拾圆、壹佰圆」等,一个加密文本代表一个面值的数字货币。

而按照这种形式所产生的数字人民币必然要面临「找零」问题,尽管其可以通过软件工具自动配对以优化出最佳找零方式,遇到商家无法找零的情况甚至可以先后台连接数字货币系统进行拆分兑换后进行零钱搭配,但这样最终呈现给用户的使用体验可能很难达到理想状态。当然也可以采取「币值按最小单位面额」产生的形式,即所有的币值都是 1 分,这样也能够避免找零的问题,但系统和体验上是否会有其它问题不得而知。

因此,移动支付网推测,此前深圳数字人民币红包在线支付试点中可能并没有采取「固定面额」币值的形式,甚至也并没有采用 UTXO 的模式,而是直接采用的基于 Token 的账户余额模式。这样带来的好处就是,没有币值和找零的问题,直接通过数字货币系统更改相应钱包账户下的余额就可以了。 

不过「双离线」支付可能就不一样了,双离线支付面临着更高的安全要求,而且需要对每笔离线支付的钱需要进行「待重复支付验证」,这样来看基于 UTXO 的模式似乎更适合双离线支付。


结语


无论采用何种形式甚至是同时采用多种形式,其整体上的交易流程是不会有太大变化的,数字人民币的交易信息都需要通过央行的数字货币登记中心进行记录,双离线所带来的问题无非是延迟验证可能产生的双花问题。

而正如专利描述的一样,目前双离线交易情况下,几乎所有的电子现金系统进行的重复支付检查都是滞后的,即重复支付检查都是在支付过程完成后进行的。因此,也只能通过滞后重复支付检查来发现并追责,或者限定支付规则的形式来完善整个过程。 

当然了,移动互联网越来越发达的今天,网络本已经无处不在,「双离线」支付并不会是常态化的支付手段,仅仅是某些特殊环境和特殊情况下不可或缺的补充,所以也希望行业和大众能够冷静看待,避免过度渲染和炒作。

写评论,请先登录