说到金融,大家最熟悉的就是银行了,存钱、取钱、转账,人们经常会和银行打交道。银行是金融体系中最重要的部门之一,是整个金融行业的基石,因为银行处理的是人类社会最重要的发明之一——货币。银行与保险、证券共同构成了金融体系,如图2-1所示。
图2-1 金融体系
银行体系由商业银行、中央银行和跨境机构3部分构成。本节讨论区块链在商业银行中的作用。
商业银行被称为金融中介机构,它主要承担资金中介业务,即我们通常说的存贷业务,这是银行最基础的功能。人们将钱存在银行中,银行除留一些准备金应付日常的取款业务外,将其余的钱拿去发放贷款。在这个过程中,储户不知道自己的钱被贷给了哪家公司,贷款的公司也不知道自己的贷款资金来自哪个储户,大家只需要与银行打交道,银行在其中充当了中介,这就是间接融资。
商业银行最重要的职责是“支付清算”服务,人们每天的消费都要与银行打交道,所以商业银行的支付清算系统需要承担海量的数据服务。比特币作为数字货币,其背后的区块链同样具有支付清算功能,但其在机制方面具有独特价值。
为了说明比特币机制与银行机制的区别,我们来看一个例子。张三给李四转账200元人民币,在银行体系中,这笔转账流程如图2-2所示。
图2-2 银行体系的转账流程
从业务参与者的角度来看,从张三到A银行,再到人民银行,然后到B银行,最后到李四,是一个串行机制,中间任何一个节点出问题都会使整个业务失败,这就是银行每天晚上都要对账的原因。
再来看看比特币机制,张三给李四转账2个比特币,比特币转账流程如图2-3所示。
图2-3 比特币转账流程示例
从业务参与者的角度来看,这个机制是并行的,业务的发起、验证和完成都在链上进行,张三、李四和其他矿工都可以在链上看到这笔交易,就算某个矿工出了问题,也不会影响整个业务流程的完成。此外,区块链中保存了每笔交易的具体数据,且保存在所有节点的存储中心,无法删除和篡改,无论怎么转账,都可以在区块中通过简单的查询操作追溯其历史。
银行转账与区块链转账的区别如表2-1所示。
表2-1 银行转账与区块链转账的区别
由表2-1可知,中心化的交易和去中心化的交易区别很大,中心化的交易需要依托可信第三方的背书,去中心化的交易则依靠矿工。
中心化的交易在系统内部的速度很快,但是跨系统会很慢;区块链模式虽然在系统内部不快,但跨系统的速度会快很多。例如,大家买基金,一般都需要T+1天确认,因为基金公司的IT系统和银行的IT系统之间对账需要时间;但是将比特币从中国的平台转到美国的平台,只需要1小时,而在以太坊这样的数字货币平台上只需要几分钟。因此,采用区块链技术可以对传统商业银行的基础设施进行改造升级。
在日常生活中,人们转账一般需要进行以下几个步骤。
第一步,得知道对方的账号、开户姓名和开户行。第二步,用手机银行(或到柜台)填写转账的表单(网上转账比柜台转账需要填写的信息少很多),其中包含转账金额、收款账户等信息。第三步,把填写好的表单提交给银行服务器(或营业员),等待处理完成后告知结果,打印凭证。
这样就完成了转账过程,其核心是基于账户的设计,主要依赖关系型数据库来保障数据的一致性,即原子性、一致性、隔离性、持久性。
银行后台的会计系统大多会采用“借贷记账法”,将账目分成借方和贷方,每发生一笔业务都要登记两个以上科目。
比特币使用UXTO模式代替了传统的借贷记账法。UXTO(Unspent Transaction Output)由中本聪设计。在本质上,UXTO就是流水账,只记录交易本身,不记录交易结果。从金融系统设计的角度来看,这种方式有点“交易、清算分离”的意思,区块链系统只处理交易,而清算、查看余额等由区块链节点自行处理。
UXTO模式和借贷记账法的区别到底在哪里呢?这里通过一个例子来说明。王五在山上挖矿,今天手气不错,挖到了价值10000元的稀有金属,为了感谢张三和李四将工具借给他,想分别给张三和李四转账100元和400元,以表示感谢。李四为了感谢张三告诉他王五想借工具这件事,给张三转账150元表示感谢。下面我们看看借贷记账法和UXTO模式是怎么处理的。
1)借贷记账法
首先需要有3个账户,账户状态1如表2-2所示。
表2-2 账户状态1
王五挖到一块价值10000元的稀有金属,此时的账户状态2如表2-3所示(只说明过程,不考虑其他)。
表2-3 账户状态2
然后,王五分别给张三和李四转账100元和400元,此时的账户状态3如表2-4所示。
表2-4 账户状态3
最后,李四给张三转账150元,此时的账户状态4如表2-5所示。
表2-5 账户状态4
借贷记账法只对账户余额做加减法运算,账户状态就是最终状态。每次操作前都需要对账户余额进行判断,查看是否具有成立条件。例如,李四转给张三150元,此时如果李四的账户余额不够150元,则转账失败。这种记账体系与拍照类似,是静态的,只保留当前情况。
2)UXTO模式
UTXO交易类型中的一类是CoinBase,即挖矿获得的奖励;另一类是我们日常所说的普通交易。其中,CoinBase交易必须是区块记录的第一笔交易。
第一步,王五挖到价值10000元的稀有金属,UXTO模式下的账户状态1如表2-6所示。
表2-6 UXTO模式下的账户状态1
第二步,王五分别给张三和李四转账100元和400元,UXTO模式下的账户状态2如表2-7所示。
表2-7 UXTO模式下的账户状态2
第三步,李四给张三转账150元,UXTO模式下的账户状态3如表2-8所示。
表2-8 UXTO模式下的账户状态3
综上所述,可以得到以下结论。
(1)比特币的普通交易必须有一个输入。例如,李四给张三转账150元,交易输入中的来源就是交易#10001#2,往前追溯就是王五转账给李四400元所对应的交易地址及序号。
(2)输入与输出必须相等。以李四给张三转账150元为例,根据输入可知这笔交易的输入是400元,而输出有两个,一个是转账给张三的150元,另一个就是李四自己剩余的250元。
(3)比特币系统中的“余额”是所有UTXO中的总和。例如,张三应该有250元,由交易#10001#1加上交易#10002#1得到,这两个地址都是未花费的交易输出。李四也有250元,是由交易#10002#2得到,因为交易#10001#2已被花费。对于王五来说,交易#10000#1是花费的,未花费的是交易#10001#3,所以王五的余额是9500元。
UXTO模式记录了所有的交易数据,只要交易完成,就可以根据交易记录推导出余额,也就实现了“交易即清算”,不需要完成借贷记账法中的对账工作,极大地降低了管理成本。
另外,在UXTO模式下,所有交易记录都保留在案。在上面的例子中,从交易#10000#2#2,也就是李四250元余额这条交易记录开始,一直倒推,直到最初的交易#10000的创世区块,就可以追溯到最初的王五挖矿获得10000元的交易。这就是区块链“可追溯”的基本原理。
银行基础设施一般包括交易与清算系统、中央证券存管系统、结算系统等。区块链技术的“交易即清算”模式实现了交易与清算的同步,颠覆了传统金融业中的集中式账务体系模式,有助于构建新的银行基础设施和流程。
商业银行应用区块链后,商家、银行、消费者同时使用区域链支付系统进行支付/清算,消费者的支付和商家的收款形成交易记录,类似前面案例中的张三、李四的交易,这笔交易以UXTO模式保存在银行的区块链上。系统各节点通过验证商家和消费者的数字签名来确认并记录,并写入区块,消费者的App、商家的App和银行的后台系统可以根据UXTO模式实时清算。这种区块链商业银行支付架构如图2-4所示。
图2-4 区块链商业银行支付架构
除了用于改造商业银行的支付与清算功能,区块链技术还有很多其他应用,这里简单介绍几个。
票据是供应链的一种重要金融工具,具有交易、支付、信用等多重属性。目前,无论是纸制票据还是电子票据,都有以下几个问题:一是票据不易拆分,不利于流转;二是纸制票据中一票多卖、电子票据中打款背书不同步等现象时有发生;三是小额纸制票据贴现困难。鉴于验票成本高、收益低,银行往往不愿意给中小企业融资足够的支持,小额纸制票据容易出现无银行贴现的情况。
在基于区块链的数字票据交易系统中,每个参与交易的企业都登记注册为区块链的用户,个别有条件的核心企业可以直接成为记账节点。票据一旦在区块链上发行,就成为支持拆分的数字资产,在后续流通环节中可以按照需求进行拆分、转让、贴现,并在票据交易市场中进行交易撮合。
同时,采用区块链去中心化的分布式结构,可以改变现有的系统存储和传输结构,解决一票多卖的问题。区块链的交易时间戳反映了票据从产生到消亡的完整过程,具有可追溯性,这种特殊的“背书”模式可以有效降低金融风险。
不同金融机构的基础设施、业务流程不同,清算参与方多、体系复杂,现有的交易与清算系统只能通过服务器代码和交易数据报送的方式进行清算和结算,成本高、准确性和时效性差、监管难度大。
基于区块链的机构间清算模式,可以让清算各参与方加入联盟链,共同创建和维护一份大家都认可的共享账本,实现实时清算和结算,极大地提高了效率。
世界银行的数据显示,全世界跨境支付成本居高不下,达到转账金额的7.68%,原因在于传统跨境支付模式需要多个国家的央行和商业银行的接力处理,这种串行的业务模式效率低、成本高。
采用区块链技术构建跨境金融机构间的联盟链,可以实现支付双方的直接数据联通,监管机构也可以参与每笔交易的处理,所有数据透明公开、不可篡改,极大地提高了效率,降低了成本。
区块链对商业银行的改造是全方位的,目前业内已经开始进行初步尝试。
2017年2月,招商银行将区块链技术应用于银行的核心系统,建成了基于区块链的跨境清算系统。通过该系统,招商银行可实现包括香港分行在内的5个分行和1个子行的跨境支付。原先的模式需要这些分行和子行通过总行直连中转,效率低且不够安全。
采用联盟链后,上述5个分行和1个子行成为联盟链的节点,跨境转账通过直接写入区块的方式进行,从而实现了跨境直连清算、全球账户统一及跨境资金归集三大功能。以前跨境交易中的6分钟报文转发时间被缩短到秒级,大大提高了交易效率。招商银行直连清算系统架构如图2-5所示。新的参与者不需要像以前那样和总行系统对接,只需要作为节点加入该联盟链,就可以实现快速部署,系统的可扩展性大大提高。
图2-5 招商银行直连清算系统架构
信用证是银行信贷领域的重要金融工具,传统的纸质信用证可能存在交易数据造假、时间不匹配等问题。民生银行开发的基于区块链的信用证应用系统,实现了信用证电子开单、电子交单、电子收单等功能,解决了交易双方的互信性和纸质数据信息传递不畅等一系列问题。
该系统的区块链平台层提供了合约管理、链路管理、共识机制、账本维护等功能,支持上层应用,包括信用证、供应链金融、智慧零售等一系列需要跨平台合作的业务。
客户可以通过网银等渠道实时查询完整的业务链条进展情况,提高了业务透明度。根据规划,该系统未来会引入物流等相关机构作为联盟链的节点,打造一个闭环的信用证区块链平台。民生银行区块链技术平台如图2-6所示。
本节介绍了区块链给商业银行带来的改变,其中最主要的是交易与清算系统的升级改造。传统的商业银行的“借贷记账法”需要不同机构每天进行清算对账,效率低。在UXTO模式下,记录了每笔交易明细,并在多个节点的区块上分布式保存,将支付和清算合二为一,从而可以提高商业银行的基础设施工作能力。
图2-6 民生银行区块链技术平台