1. 引言
传统的跨境支付体系由于存在第三方机构和其他因素,其交易周期长、支付成本高、安全性差等弊端越来越明显。近年来,随着比特币的飞速发展,区块链技术越来越受到人们的关注,其去中心化、公开透明、不可篡改、不可伪造的技术特征与智能合约技术相结合,为改写当代跨境支付体系提供了可能性。
为了更详细地论述区块链系统在跨链支付的可行性,丘天一等人将目前主流的跨境支付方式SWIFT和以区块链为核心Ripple系统进行了详细分析和对比,得出SWIFT系统虽通过引入固定长度的SWIFT代码,简化和标准化了交易流程,但流动性差和信贷风险仍然存在,且高度依赖银行等运营单位,而Ripple通过使用区块链技术,可以绕过银行的中间层,简化了流程,其发行的XPR加密货币也可以成为一种媒介,实现不同的货币轻松地转换为XPR,解决了不同种类货币的兑换问题,并且Ripple可以实现提交交易数据、汇款和结算的即时同步进行,这将会极大地提升交易的效率和安全性 [1]。邓肯等人对以瑞波币为代表的代币化区块链和以私有链、联盟链为核心的代币化区块链进行了分析,得出代币化区块链由于其过桥货币机制和安全机制,非常适用于跨境支付方向,无令牌区块链则非常适用于非货币区块链形式,例如各个银行和金融部门可以联动起来组成一个天然的联盟圈,形成一个方便及交易的内部生态圈 [2]。郭晔等人为了解决区块链无许可和自治的问题,提出了“监管沙盒”机制,为制定行业标准、强化系统的监管、推动区块链应用形成“多中心、弱中介”的场景提供了理论基础,从而极大地提升了银行业的效率 [3]。上述的诸多研究,对基于区块链技术的跨境支付原理以及优势都进行了充分的阐释,但是缺乏理论模型以及相应的仿真验证。
本文在EoS平台的基础上,尝试性地构建了一套跨境支付模型,设计了整体的框架和智能合约结构,并对框架和智能合约的各个模块功能进行了阐述,最后,在EoS的测试网上进行了仿真。仿真结果表明,EoS将传统跨境支付模式中的转账时间从数十分钟至数天缩短至0.5秒以内,提高了转账速度,将手续费从数十至数百美元降至0美元,降低了交易成本,将交易时间从工作日扩大为全天候,提升了交易的便利性,此外,在区块链网络中,每一笔支付都经过全网确认,不存在冻结或撤回的情况,安全性也得到了巨大的提升。
2. 相关理论和技术选型
2.1. 相关理论
本文主要是基于EoS技术平台的框架模型,涉及到以下理论:
1) 区块链:区块链起源于比特币,广义定义就是一种通过链块结构保存数据、利用共识算法更新和生成数据、利用密码学的方式保证数据的安全、利用脚本代码实现智能合约的分布式的基础架构和计算范式。
2) EoS:EoS是一款为商用分布式应用设计的新型区块链软件系统,该技术的最终形式是一个区块链体系架构,每秒可以支持数百万个交易,同时,普通用户无需支付使用费用,并且可以运行任意的智能合约,实现了分布式应用的高性能扩展 [4] [5] [6] [7]。
3) 智能合约:区块链中的智能合约本质上是一段写在区块链上的代码,一旦触发了合约中的条款,它可以在没有第三方的情况下自动执行,不需要人为的干预,确保了整个过程的自主性。
2.2. 技术选型
目前,在整个行业内比较成熟的产品主要有比特币、以太坊、超级账本和EoS等。由于超级账本没有代币机制,无法计算节点使用的数据空间或宽带费用等,因此本文将在剩下的三个当中选择一个作为技术架构 [8] [9]。
首先,比特币的重心是货币,以太坊的重心在合约,EoS的中心则偏向应用。其次,EoS是不在收取网络交易费用的,这将极大降低跨境支付的成本。最后,EoS的生成区块的速度是0.5秒,远超比特币和以太坊,更符合跨境支付环境的需要。因此,综合来看,本文选择EoS平台作为跨境支付的技术框架。
3. 基于EoS平台的跨境支付模型设计
本章节主要在EoS技术平台的基础上,尝试性地构建了一套基于区块链技术的跨境支付模型,并详细叙述了各个模块的功能和作用,描述了智能合约的设计和具体的交易流程,为解决当代跨境支付的痛点提供了理论支持 [10] [11] [12]。
3.1. 整体结构设计
经过区块链和EoS平台的特性,结合具体的实际情况,提出了如图1所示的基于区块链技术的整体框架图,主要分为数据层、协议层、共识层、合约层、工具层、应用层六个部分。
1) 数据层
数据层主要包含各种的存储资源,基于区块链技术的跨境支付中需要存储各个国家的银行和金融机构、客户、商品以及交易内容等信息,数据量非常的大。此外,许多智能合约也需要存储各种各样的数据如视频、声音、文字、图片等,这对存储方式和存储的空间的要求就更加的严格。EoS通过IPFS提供一个去中心化的网络,任何人都可以将通过其地址识别的文件托管在这个网络上。
2) 协议层
区块链是每个区块按照产生的时间顺序组成的链条,每个区块当中都包含当前区块的哈希值、Merkle根、时间戳等信息。哈希函数则是一种摘要生成函数,可以将任意长度的字符串转换成一个唯一的等长的字符串输出。
3) 共识层
EoS在最初的时候采用的是DPoS共识算法,即节点进行投票,选出一定数量的授权代表和见证人,见证人节点负责确认交易、创建区块,授权节点专注于网络协议的维护和必要的更新。在这个共识机制下出快速度要3秒钟,交易不可逆需要45秒,还是远远不能满足实际需求。
于是,Daniel Larimer为了充分挖掘EoS的性能,将DPoS和BFT算法结合了起来,首先,将出快速度从3秒钟降低到0.5秒,极大地提升了出块效率。其次,将出块顺序由随机出块改为见证人商量后确定出块顺序,避免发生分叉现象。最后,为了确保见证人不会因为特殊情况而被跳过,EoS规定每个人需要连续生产六个区块,当每个区块产生后立即进行全网广播,区块生产者一边等待0.5秒生产下一个区块,同时会接收其他见证人对于上一个区块的确认结果,即新区块的生产和旧区块确认的接收同时进行,这样就可以使得EoS的出块间隔从原来的3秒降低到500毫秒,这也使得跨链通信的时延大大缩短,单位时间内可确认的交易数量大大提升。
4) 工具层
在后续的改进中,技术人员可以将一些实用的模型进行封装,当开发人员需要进行一些进程的控制或者逻辑计算等工作时,可以直接通过调用这些API来完成,降低整个工作的复杂度。
5) 应用层
应用层当中主要包含一些客户端、区块浏览器和做市商客户端等。客户端和区块浏览器可以方便客户的操作,直接在手机上或者PC端为就可以完成所有的交易,极大地提升了便捷性和效率。做市商客户端则是交易双方的桥梁,可以将付款方的货币按照实时的比率转换成收款方的货币,并发送给收款方,为整个交易过程提供了流动性。
3.2. 跨链交互
在金融系统的交易过程中,交易双方各主体的身份审核至关重要,因此,区块链中会包含众多的数据信息,为了保证信息的安全性和交易的流畅性,我们可以如图2所示,建立一条平行链,来提升整个系统的效率。
为了确保信息审核的有效性,我们可以将一些权限较高的监管机构和商业银行放在主链,并赋予较高的权限,便于信息的审核。此外,所有的交易信息和账户信息也需要存放在主链中,一方面可以保证信息不会泄露,另一方面也可以方便不同权限的监管部门的监督。侧链上,我们也还可以存放一些公司或者个人的认证信息,如公司名称、公司规模、主营业务、身份信息等,便于第三方机构进行认证。
在功能上,主链可以完成转账、托管智能合约、锁定资产和交易确认等功能,侧链可以实现对有效性的验证以及目标账户值的加减功能,两条链的互相配合,极大地提升了交易的效率。
因此,该部分的设计主要是将不同职能和权力的部门和机构,以及各类信息和资料按照不同的权限,分别存放在不同的链,便于实现特定功能,以此来提升整体的效率。
4. 智能合约的设计
EoS中的智能合约可以实现某种行为,也可以用来描述规则。它是由action集合、类型定义以及其他参数组成组成,构建了合约的内容和数据结构,实现了智能合约的行为和功能。智能合约还定义了接口,便于调用 [13] [14] [15]。本文根据实际的使用环境设计了如图3所示的框架,包含用户管理、账户管理、支付管理合约以及相对应的接口。此外,每个智能合约都必须符合李嘉图原则,即将法律合约与区块链技术合并,即在跨境交易中,双方出现的任何违法的行为,都会受到法律的制裁。最后,由于智能合约一旦部署就无法改变其状态,本文则根据实际需求设计了中继合约,当在跨境交易中合约出现错误或者漏洞时,可以进行自毁,当交易双方的协议需要更新时可以通过调用新的合约进行升级。

Figure 3. Principal framework of smart contract
图3. 智能合约的主体框架
4.1. 主体部分
主体部分如图3所示,主要包含用户管理、账户管理、支付管理、中继管理等合约,共同确保了交易流程能够完整安全的实现。
1) 用户管理
如图4所示,该合约主要实现用户的登录注册、获取账户信息和客户权限、检查用户合法性等功能。跨境支付中交易双方以及做市商等首先需要调用此合约进行账号注册,若没有注册则需要先注册才能使用相关功能,注册完毕后则会生成相应的账户,随后各个用户需要上传相关的信息,主链上的监管机构会对客户进行KYC验证,验证通后对该信息进行签名并存储到区块链账本中。当上述流完毕时,用户可以获取相关的权限进行对应的转账操作。其接口实现的功能有获取账户信息、增加和更改用户信息、查询用户权限等。

Figure 4. Interface and function of user management contract
图4. 用户管理合约的接口及功能
2) 账户管理
如图5所示,账户管理合约主要实现对各银行账户和做市商的账户余额的更新。在跨境支付中,首先,收款方和汇款方银行会对做市商进行资质审查,当做市商通过审查后,会在收款方和汇款方银行开设对应的账户。在交易的过程中,汇款方、收款方银行、和做市商账户的账户余额会实时更新。其接口实现的功能有汇款方银行的账户信息查询、收款方银行的账户信息查询、做市商在汇款方和收款方银行开设的账户的信息查询。

Figure 5. Interface and functions of account management contract
图5. 账户管理合约的接口及功能
3) 支付管理
如图6所示,该合约主要实现了汇率转换、转账和进度查询功能。当汇款方发起跨境交易请求时,首先会调用用户管理合约再次确认汇款方的资质是否符合要求。其次,调用账户管理合约查询汇款方的账户余额是否大于本次的交易金额以及做市商的余额是否足已完成此次货币兑换,当验证无误后,将交易请求存入合约中,并广播到网络中。
当交易成功发起之后,做市商开始充当一个中间商的角色,符合要求的做市商可以根据当前的交易信息以及货币汇率等为交易双方制定一个最优的转换汇率,并将该请求发送到支付合约,合约经过对比之后选择一个最优的做市商进行货币转换。最后,调用支付合约中的转账功能,汇款方转出约定的金额到汇款方做市商银行账户中,收款方做市商银行账户根据汇率,将约定好的金额转换成收款方国家相对应的金额并转入到收款方账户中,随后账户管理合约会对各个账户的余额进行变动,整个交易完成。并在整个过程中,汇款方、汇款方银行、做市商、收款方、收款方银行等都可以对交易进行验证,当发现由问题的时候,可以随时停止交易。

Figure 6. Interface and function of payment management contract
图6. 支付理合约的接口及功能
4) 中继管理
如图7所示,该合约实现的功能主要是摧毁已部署的发现漏洞且无法修复的合约以及无感知的升级某个合约。由于智能合约一旦部署就不可以对其进行更改,因此在跨境支付中,当交易双方发现交易信息出现了漏洞,损害到交易双方利益时,我们可以设置一个自毁的函数,可以以另一种方式“删除”它。其次,当交易双方的支付协议需要更改协议或者更改金额时,我们也可以通过升级智能合约来完成后续的操作,假设调用合约V1的汇款方全部改为调用升级后的合约V2,但这样一来所有调用者都需要更改,只要有1个调用者漏改,那么他就会调用失败,为了解决这个问题本文通过增加一个中继管理合约通过Action触发另一个合约,实现删除和升级的功能。该中继合约抽象程度较高,不会将调用方法硬编码到合约中,出现问题时造成无法更改的现象,其次合约的状态会在中继合约中维护,这样状态就不会丢失,在调用后依旧可以调用合约的上下文。
本合约中有三个接口,Self_destruct接口触发自我毁灭的合约,Send接口可以触发其他合约,完成升级,Back接口主要是当中继合约找不到需要的方法时,重新调用请求,定向到其他的合同中去。

Figure 7. Interface and function of relay management contract
图7. 中继管理合约接口及功能
4.2. 验证层
智能合约的部署完毕后是无法更改的,一旦不法分子抓住代码的漏洞进行攻击,将会造成巨大的损失。为此,我们可以通过一些形式化的方法对智能合约进行检验,减少漏洞的出现。目前形式化验证主要包括定理证明和模型验证两种技术,基于定理的证明其主要有HOL、LEGO等,基于模型检验的工具主要有SPIN、UPPAL等。
4.3. 执行层
执行层主要封装一些保障智能合约运行的软件,如虚拟机等。EoS的智能合约就是在WASM虚拟机上运行的。当然,如果有其他满足沙盒机制的虚拟机也可以在EOSIO中运行。
总体而言,该部门描述了各合约的作用,用户管理合约主要实现用户的注册,信息的上传和审核以及权限的查询,如银行可以有对客户信息进行审核的权力,而客户拥有存取货币以及转账的权利。账户管理合约中,可以实现各方账户信息的查询,如账户余额的查询。在支付管理合约中,则可以随时查询交易进度,确保能够实时掌握交易信息。在中继管理合约中,则以一种特殊的方式实现了合约的升级和摧毁,解决了智能合约部署到区块链后就不能更改的弊端。这些模块共同构成了智能合约的主体,确保了交易可以顺利地进行。
5. 交易流程
根据以上的框架并结合实际的需求,我们可以大致的模拟出交易流程。首先我们要确认在这个交易过程中的角色有汇款放、汇款银行、做市商、收款银行、收款方。具体的流程如图8所示。
1) 首先,各方登陆EoS客户端,若没有账号,则需要进行账号注册。登陆完毕后,汇款方发起转账申请,汇款方银行对汇款方的身份信息以及汇款方的账户余额进行确认,并进行签名。确认完毕后,通过客户端构造一笔交易,并发送到网络中。
2) 当交易成功发起后,符合要求的做市商,即在汇款方和收款方银行都具有账户的余额足以支付本次的兑换,可以明确本次跨境交易支付中的汇率,随后确认本次交易,并对本次交易进行签名,并将该笔交易发送到区块链网络中。由于可能会有多个做市商满足要求,我们可以选取一个汇率最优的做市商来进行本次交易。
3) 在确认好做市商后,我们要在次对汇款方和做市商的签名进行认证,确保汇款方的客户信息无误,做市商和汇款方的账户余额充足。认证无误后,则对做市商在汇款方银行的账户以及汇款方的账户的余额进行更新,更新完毕后,做市商在在汇款方银行的账户余额将会增加,随后将交易的金额转到收款方账户,整个交易完成。
6. 跨境支付仿真测试
假设现在分别有两个公司甲和乙,甲为中国境内的公司,乙为俄罗斯境内的公司。现在甲从乙进口石油,甲需要支付乙一笔款项。此外,D为中国境内的银行,甲在D银行有开通账户,F为俄罗斯境内的银行,乙在F银行有开通账户。做市商P为货币兑换机构,在D开设有人民币账户,在F有卢布账户。为了方便观察,本文在EoS测试网上进行了模拟,对流程进行了展示,可以更加直观的体现出基于区块链的跨境支付的优势。
1、账号的注册和登录。

Figure 9. Account information of Company A
图9. 甲公司账户信息

Figure 11. Personal currency account information of P
图11. P的人民币账户信息
如图9~12所示,本文通过EoS测试网注册了四个账号:甲公司在国内银行D的账户lshonoidpetk,乙公司在俄罗斯银行F的账户为jjfmjdbpyuae,做市商P在D的人民币账户为rtatfrizgcqs,在F的卢布账户为kgnyrolfpcms。在各个账户中可以看到账户的余额、公钥、私钥、以及RAM、CPU、NET的使用率。
2、交易。
我们假设甲要向乙支付9万的卢布,则D银行将调用合,发出向F银行支付9万卢布的请求。此时将会选出一个最优的中间商,确定转换利率,假设我们选取人民币和卢布的比率为1比9,当这笔请求被区块链确认时,F银行开始确认最终的支付请求,确认无误后,会将做市商P在F银行的账户扣除9万的卢布,同时P在D银行的账户会增加1万人民币。与此同时,乙公司的账户会增加9万卢布,甲公司的账户会被扣除1万人民币。在EoS中有自带的eosio.token智能合约,我们可以直接调用它。
1) 如图13所示,做市商P在F银行的账户向乙账户转账9万卢布。
2) 如图14所示,甲账户向做市商在D银行的账户转账1万人民币。
3、账户余额查询。
交易完毕后,如图15~18所示,甲公司的人民币账户余额为71,乙公司的卢布账户余额为101,做市商P在D银行的人民币账户余额为83,在F银行的卢布账户余额为63。
4、整个流程如图19所示。

Figure 17. Market maker P’s account balance in bank D
图17. 做市商P在D银行的账户余额

Figure 18. Market maker P’s account balance in Bank F
图18. 做市商P在F银行的账户余额
7. 性能评估和对比
7.1. 与传统的跨境支付相对比
如图20所示,我们以国内跨境支付市场为例。目前,我国主要有四类跨境支付方法,分别是银行电汇、专业汇款公司、国际信用卡公司与第三方支付公司。
基于交易速度,EoS的到账时间约为0.5s,银行电汇的跨境支付到账时间约为3~5天,是EoS的数十万倍;专业汇款公司到账时间约为10~15分钟,是EoS的数千倍;国际信用卡公司到账时间约为两天,是EoS的数十万倍;第三方公司到账时间需要3~5天,是EoS的数十万倍。
基于安全性,专业汇款公司容易出现卖家欺诈现象,国际信用卡公司则容易出现盗卡等现象,且支付成功率不高,而基于EoS技术的跨境支付,由于区块链独特的机制,信息很难被泄露和修改,具有很高的安全性。
基于交易时间,银行电汇只有工作日才可以进行交易,而区块链可以实现全天候交易。
基于手续费,银行电汇需要汇款金额0.01%的手续费且需要外加其他的差价费;专业汇款公司则需要十至四十美元不等的手续费;国际信用卡公司则需收取汇款金额0.08%的手续费;第三方支付公司则需要70至160元不等的手续费,而基于EoS的跨境支付不需要任何的手续费。
综合比较,相对于传统支付,基于EoS平台的跨境支付,具有高速度、高安全性、低手续费等优势,极大的提高了交易效率。
7.2. 与现有区块链跨境支付平台相比
现有的以区块链为核心的主要平台有比特币、以太坊和Ripple等 [16] [17] [18] [19]。
基于交易速度而言,比特币需要10~60分钟,一探访需要12~15秒,Ripple需要5秒左右,而EoS最快速度接近0.5秒,接近瞬时到账。
基于手续费而言,比特币需要0.00038BTC,以太坊需要0.013ETH,Ripple则需要0.01美元左右,而EoS无需手续费。
因此,综合现有的区块链平台而言,EoS具有更快的速度和更低的手续费,综合性能更加优越。

Figure 20. Performance comparison of payment modes
图20. 支付模式性能对比
8. 总结
传统的金融体系在飞速发展的今天正面临着巨大的挑战,区块链技术的出现为其带来了巨大的变革 [20]。以EoS为基层平台的区块链跨境支付,为实现低延迟、零手续费和高安全性提供了可能性,相信未来随着区块链支付技术的飞速发展,必定会为金融行业做出更大的贡献。
基金项目
2020年度教育部人文社会科学研究青年基金(20YJCZH065)。