如何实现法币上链

公众号:零识区块链

零识专栏作者:中成才

如何实现法币上链_第1张图片

原文标题:基于价值载体的法币上链流通协议

一、汇率中介

众所周知,比特币和区块链技术的爆发增长态势,牵动了各领域从业者和普通大众的神经。银行、金融、物流、保险、农业、电商、互联网科技等行业纷纷在区块链领域加大投入,推出了自己的产品;大批投资者也纷纷涌入了数字资产交易的阵营。甚至引发了各国政府相关职能部门的密切关注。

由于法定货币的主导地位,加密货币需要与法定货币建立汇兑关系。近来,由于各国针对比特币等加密货币政策的调整以及比特币国际市场环境的变化,区块链加密货币交易市场也随之发生了较大的变化。

法定货币的兑换通道变得稀缺,由此衍生出了一些用于交易媒介的数字资产,如:USDT、BNB 等,起到链接法币与加密货币汇率的作用,这里简称为汇率中介。这些中介有些与美元具有1:1 的汇率锚定关系(如:USDT),而有些则不是。

然而,即使与法币具有稳定的汇率,但这是共识汇率,而不是市场汇率。前者对其发行主体的信用要求更高。由于在加密货币领域,目前仍然缺乏有效的金融管制措施,这些商业公司发行的代币,难免不让人担忧其信任问题。如果无限量超发,会有价值归零的风险。以USDT为例,虽然其发行公司Tether 声称,每一个USDT背后都有1 美元实体货币作担保,但一直以来,似乎从未将审计结果公之于众,根据相关报道,现实情况不容乐观。

可以看到,类似USDT这种汇率中介普遍存在的问题,就是信任问题。比特币和区块链技术的出现,就是为了解决信任问题而生,却最终我们又绕回到了信任问题。那么,这种汇率中介的信任问题有没有办法解决呢?

回顾比特币短短几年的发展历程,涌现了大量的周边新技术和新的加密货币(简称另类币)。另类币为了扩大货币的分散程度和价值的影响力,往往需要与比特币的价值挂钩,通常有以下几种方案:

1.基于销毁证明的单向挂钩,即销毁一定量的比特币才能获得相当数量的另类币。这种方式使得另类币有价格上限(最多值1个比特币),同时也难以实施,毕竟以比特币的地位,谁愿意销毁它呢;

2.基于比特币拥有证明的免费发放(俗称领糖果),这是目前最受欢迎的方式,但无法确定汇率;

3.侧链技术,类似于准备金制度,通过抵押一定量的比特币去创建新的另类币,即用另类币替代流通中的比特币。这样可以用固定的汇率锚定到比特币上,避免汇率的大幅波动;

4.BitShare合约(如 BitUSD)技术,基于抵押BTS的法币锚定币贷款。

上述方案中,侧链和BTS贷款技术是两种能够获得比较稳定的汇率同时又能解决信任问题的方案。这种类似于准备金制度的技术,在国家机器中亦早有应用,如早期金本位的货币制度,和港币的100%准备金制度。港币兑美元这种自由市场环境下的汇率能够始终维持在7.8:1 左右的水平,是100% 准备金制度可行性的最好证明。

但是侧链和BTS贷款这两种方案是否适用于汇率中介呢?侧链技术适用于新发行的另类币,但不适用于法币;而BTS贷款技术在一定程度上是可行的,但受限于BitShare 本身的发展状况和市场规模。那有没有更简单有效的方案,能够实现汇率中介的功能,又能同时满足恒定汇率的法币锚定和信任要求,从而解决汇率中介的信任问题呢?答案是:Yes。

二、协议实现

本文将讲述一种将法定货币安全转移到区块链上的实现方法:基于价值载体的法币上链流通协议。

2.1 协议的目的

让法定货币可以安全的转移到区块链上,以便流通,也可以再转移到链下收回法币。

2.2 解决的问题

解决法币锚定币缺乏信任机制 的问题。

当前全球加密货币交易所,所流通的法定货币锚定代币(如:USDT)并没有可信的发行主体和可靠的金融管制措施,亦无价值载体,有价值归零的风险。

2.3 实现方式

通过使用当前流通中的得到普遍认可的具有UTXO特性的公链作为价值载体,以承载等值法定货币。

需要三方技术协作:

•区块链UTXO。在UTXO里面植入协议数据信息(该操作由钱包完成),以生成载入法币的UTXO,这里记作UTXOLET;

•移动端钱包(如:dEdge币兜钱包)。钱包解析协议,显示法币金额,并实现流通(支付/接收)操作;

•兑换网关。网关负责法币和链上数据的兑换签发操作(如:向等额 100 美元的量子链UTXO 中写入协议,或者反向操作),我们将签发后的UTXO记作UTXOnUSD(如:UTXO100USD,UTXO25CNY)。

支持本协议的钱包在处理UTXOLET的时候,显示的是法币金额而不是加密货币面值,用户必须把它当做 固定面额 的法币来使用。

2.4 价值载体与价值的协议转换

例如:向等额 100 美元的 1.8 个量子链UTXO 里面写入100USD 协议信息,由于 1.8 个 Qtum 本身的价值就是100USD,所以不用担心钱包(如:dEdge 币兜钱包)里面的这100USD会像USDT那样价值归零。同时如果某些钱包由于技术问题没有正确流通这个UTXO100USD,而当作了普通Qtum加密货币进行流通,那么双方也几乎没有损失(仅有汇率波动的小差异)。

协议信息的写入主体是自由的:

•持币者个人自己写入;

•兑换网关根据当前市场价格及用户购买的额度写入。

对于个人写入者(假设个人很诚实,按照市场价格写入,不诚实的问题将在第三节论述),由于写入后,仅能按照法币面值进行流通使用(即失去了加密货币而得到了链上法币),因此无法获得双倍的价值;

对于兑换网关写入者,用户支付了一定额度的法币,平台使用相当额度的UTXO 来承载这个额度的法币并支付给了用户,这是一个价值载体的交换,网关得到了链下法币,用户得到了链上法币,双方均无损失(用户可能需要支付点手续费)。

如果用户希望兑换回法币,同样有两种方式:

•与个人交换。可以将UTXOLET 支付给任何有链上使用需求的人以交换回等值法币,获得该UTXOLET 的人依然可以在链上使用这 nUSD(nCNY),双方均无损失;

•去平台兑换。平台由于在发行 UTXOnUSD 的时候,得到了nUSD 的法币,因此在用户提请换回 nUSD 法币的时候,也无损失,没有理由拒绝兑换;即使某一平台出于某些原因不得不拒绝,我们可以有许多平台,用户可以给其信用评级打分。

可以看到,UTXOLET 具备两种属性,一个是协议法币额度,另一个是区块链上的 UTXO 价值载体。但一次只能使用其中一种属性。无论使用哪种属性,都不会导致显著的损失(唯一的损失/增值是汇率波动)。

综上,我们通过将协议信息 nUSD(nCNY) 写入到UTXO的方式将两者捆绑为一个单元(即UTXOLET),并将本无价值的协议信息价值转换为由与其面额等值的UTXO 价值承载,隐藏UTXO作为加密货币的实际价值,并揭露协议信息的价值。我们把这个过程称为价值的协议转换,并把该UTXOLET称为价值载体。

由此我们可以认为:基于价值载体的协议转换机制使得链上法币的信任问题得以解决。

2.5 技术实现

代码级的技术实现分为以下几部分:

•UTXO的输出脚本。植入的协议信息将写入到脚本(这是本协议的核心),信息不易过长,且不应对UTXO在支出操作时的脚本执行有任何干扰作用。最简单的实现方式就是 在脚本的开头位置写入协议数据,并在后面跟 OP_DROP 操作码;

•网关签名。即签发商的私钥签名,用于公开监督;

•网关验证。网关公钥证书或链上存在性证明;

•协议格式。可以使用普遍应用的 Uri;

•钱包客户端对协议的识别、签名验证与风险提示;

•下链兑换与信息销毁。

例如,这是一个正常的交易(transaction)数据结构:

{

 "hash":"3b06b1e9d70217d5e02644703fe79f54355b0ea05cd535787f5a6c627f1c",

  "ver":1,

  "vin_sz":2,

  "vout_sz":1,

  "lock_time":0,

  "size":404,

  "in":[

    {

      "prev_out":{

       "hash":"022e05bdfa2e148bc1882cb7a81506b8316fee6957b11625126d075a8cf8791b",

        "n":0

      },

      "scriptSig":"304402203c1db72394263dd50070b91bb1da9125c591f15772dfc628f41447dabb7798a10220302dc6e7e8c81e24da9a99d5ac7233b90156a410051a50bb29d55aabbf0ff24d01

         02b8c918bd169a5e669cc149549f822dd5f2c50872eb83172a1c69172277fe378f"

    },

    {

      // 另一个输入,省略…

    }

  ],

  "out":[

    {

      "value":12.51603279

      "scriptPubKey":"OP_DUPOP_HASH160 69e02e18b5705a05dd6b283d517716c894b3d42e

          OP_EQUALVERIFY OP_CHECKSIG"

    }

  ]

}

应该在scriptPubKey 字段位置插入协议信息。协议内容格式 可初步定义为如下Uri 格式:

pin://usd/100.00/sig/3045022100db4dce24fae7a39faf9779a9e5efcb56a996606f67afd564447460cf939f52160220560c0347cd2abc16d36021dd7772788a90f8e10e7a330e7a9fd97ae55b42b61601/pk/024474f8829de5d7492a33c4ff15d054b73db49c6573f09572771e5120811c4979

将该Uri + OP_DROP 插入到scriptPubKey字段值的OP_DUP前面,即可完成植入。其中:pin 是协议的识别标识;usd 位置标识对应的法币币种,后面跟面额;sig 后面跟签发商对该UTXO的签名;pk后面跟签发商的公钥。这样便完成了UTXOLET的签发过程。

钱包客户端在解析UTXO余额的时候,应该首先查看scriptPubKey字段是否以pin:// 开头,如果不是,则正常统计该UTXO的余额(即value的值);如果是,则应该检查签名(sig 后的内容)是否有效,然后显示该Uri 中对应法币的面额,同时查询并显示公钥(pk 后的内容)对应签发商的 信用评级,对于信用评级较低的签发商,应该显示风险提示。

钱包客户端应同时为用户提供对签发商的评级投票功能。该功能可以通过 智能合约 实现,以提高公信力,而投票的统计也可以很简单:有多少面额的UTXOLET出了问题,那就统计多少票;甚至可以 拿钱投票:用户自愿销毁出问题的UTXOLET并提供销毁证明去投票以增加可信度。这要求智能合约具备查询链上数据的能力。

如果要解决第 3.3 节提到的问题,可以在scriptPubKey中变更相关控制脚本,这属于常规支付脚本控制问题,不属于本协议要讨论的内容。

2.6 应用示例

用户想要转移 100USD到区块链上,以便用于投资其它加密货币。可以向dEdge 公司提请兑换操作,此时我们充当兑换网关(即:签发商)。用户向dEdge 公司支付100USD,dEdge向用户的加密货币钱包币兜钱包发送植入了100USD协议信息的 1.8个量子链 UTXO(即:UTXO100USD)。所有使用币兜钱包的用户都可以正常发送/接收这个UTXO100USD,用于购物或者其他交易。收到UTXO100USD的用户,如果希望兑换回法币,可以再向dEdge公司提请兑换操作。

该流程是一个可持续循环,对于任何一方都没有任何安全风险和损失。兑换网关用于签发上链而使用的等值加密货币载体,需要购买得到,因此与用户交换的法币,实际流向了加密货币持有者。法币持有者获得了区块链上的资产,而加密货币持有者获得了链下法币资产。若价格下跌,最终的损失承担者可能是持币者而不是UTXOLET持有者。

三、需要应对的问题

笔者曾在多处提到:

-衡量一个技术方案的好坏,最重要的指标就是 抗作弊能力。

因此本协议也需要解决作弊问题。

3.1 签发者信用

前文提到,针对协议信息的个人写入者可能会出现不诚实的问题:使用价值低于面额的价值载体 去承载某面额的法币。不仅仅是个人,网关平台也可能存在该问题。要解决该问题其实不难,2.5 节已经提到了:签名监督与信用评级。

•协议要求发行者对[创建UTXOLET时写入的协议信息]签名并公布其公钥。公布公钥的最好方式是在链上写入永久性存证,并接受对存证的证明请求;

•由于区块链本身就是一个时间戳系统,我们可以追踪流通中的(未花费的)每一个UTXOLET创建时的粗粒度时间,并在交易平台历史数据里检索该时刻的价格,以确定相关签发者是否诚实,并发布各签发者的信用评级;

•钱包客户端在准备接受一个付款时,可以查验签发者的信用评级以决定是否接受付款。在实现比较好的钱包(如dEdge币兜钱包)里面,应该能够看到如同浏览器地址栏上显示的该网站的https签名评级。

•下链兑换操作,应该找签发者平台进行兑换,当然也可以卖给有需要的人。

3.2 汇率波动与价值承载差异

假如某UTXOLET的流通时间过久,而没有及时进行下链汇兑,或者本来某价值载体的汇率波动就很大,从而导致价值载体与协议价值的差异巨大。比如:用1BTC创建了UTXO10000USD,一月后,1BTC价值是 5000USD,在这种情况下会发生什么?

•若签发商承兑,是否会亏损?

理论上讲,不会。由于签发商曾经收到了 10000USD从而签发了一个UTXO10000USD,现在再兑换回来,他没有损失,却赚取了手续费,以及法币的存款利息,总体上是盈利的状态。或许签发商没有如此巨大的存量以满足用户的随时兑换需求,会将存量法币用于投资,或者用于其它用户的下链汇兑,从而有可能造成了流动性问题,这不属于本文的讨论范畴。

•若签发商拒绝兑换,会造成信用问题,同时可能会触发挤兑危机。

长远来讲,法币的贬值与加密货币的升值,使得签发商与用户各方都不会亏损。

那么,如果在用1BTC创建了UTXO10000USD的一个月后,1BTC价值是 15000USD,这种情况下又会发生什么呢?

-由于在签发商处兑换,只能得到原本的10000USD,用户可能会想办法将其支付给不支持的钱包,然后再将它卖出去以获得15000USD。那么此时,对签发商会有什么影响呢?法币将会累计,签发商不得不购买更多的加密货币以满足上链需求。

3.3 遏止用户作弊

有一个办法可遏制上述汇率大幅波动导致的兑换问题,使得签发商在汇率大幅上涨和下跌的时候,存量能够总体获得平衡。

-限制UTXOLET只能在某协议 P下流通,即:签发商控制一个脚本参数,UTXOLET 在签发后,只能由他们自己回收。该参数可以是一个 难度不太高的hash谜题,也可以是 签发商联合多签名,以便在签发商出现事故的时候,其他签发商或个人可以接管并进行回收。

-当然最好的办法,是加密货币对法币的市场汇率趋于稳定。

-关于某协议 P,是无须手续费的链下快速支付协议(仍需联网进行复杂的证明操作),笔者将在另一篇文章进行论述。

四、协议的意义

如前所述,本协议通过基于价值载体的协议转换机制解决了UTXOLET作为汇率中介的价值信任问题,消除了USDT等价值归零的风险,同时实现了法币上链。

法币上链使得在区块链上使用法币交易变得可行,让区块链技术走向实体经济更近了一步。对于已经接受了加密货币支付的电商平台而言,不再需要被汇率波动问题所烦扰;而对于青睐区块链技术特性(控制权、所有权转让、安全性和可靠性等)但又不能接受加密货币支付的某些领域(如:物流、共享租车、智能锁等),这也不失为一个极佳的选择。总结起来,法币上链 促成了以下几方面的进步:

•使得法币流通能够脱离传统的第三方信任中介(例如:银行和支付宝),从而使法币的“匿名”且“电子化”的支付方式变得可行(传统的法币支付方式,“匿名”和“电子化”不可兼得:电子支付必须有中介的存在,不可匿名;而匿名仅能使用纸、硬币现钞,又不可电子化);

•任何支持本协议的区块链钱包,都可以进行该链上法币的存储和支付操作,而不需要向任何第三方机构注册登记。这就如同 支付宝可以与微信间相互转账,而双方也不再需要银行的接入授权;

•手机钱包App不再受限于特定的公司实体控制,任何组织或个人都可以实现本协议从而支持链上法币的流通。用户不用担心被特定实体“绑架”(如仅能使用微信或支付宝);

•法币上链的网关是多中心的,当网关数量大到一定程度即等同于去中心(区块链节点的数量也是有限的,但我们认为它就是去中心化的)。这意味着链上法币 UTXOLET也是完全去中心化的,它完全可以替代类似USDT 这种中心化且无价值载体的代币,这不仅解决了信任问题,也打破了美元定价权,并重新拓宽了交易所法币兑换通道;

•基于扩展的区块链 交叉链互换 技术,我们可以将区块链 多链之间的价值转移操作 原子化(即:同时进行,并同时成功或失败),即可以实现链上法币与加密货币的双向原子记账,这为 去中心化交易所 的实施铺平了道路。

本文主要围绕法定货币论述本协议,但实际应用范围不限于法币,而可以是任意虚拟资产。

法币上链协议为区块链世界打开了新一扇大门,其应用前景不言而喻。

五、应用拓展

5.1 虚拟资产交易

UTXOLET 可用于替代目前的USDT,由于UTXOLET是定额的,事实上交易所往往有大额或变额的需求,那么可以对同一签发者发行的UTXOLET实施合并和拆分操作,方法与正常的UTXO支付无异。

兑换网关可以通过点对点的撮合交易方式实现签发,同时需要建立自己的存量缓冲池,以备缓解流通性问题和 3.2 节提到的问题。

5.2 购物支付

使用加密货币钱包进行线上线下购物支付操作,摆脱少数法币数字钱包的垄断。

5.3 虚拟资产的上链流通

如第四节所述,本协议的应用范围不限于法币,而可以是任意虚拟资产。因此游戏币、道具、徽章等所有互联网上的虚拟资产理论上都可以转移到链上并进行流通。

5.4 共享经济

本协议与快捷支付协议和存在性证明协议相结合,可打造出真正灵活智能的智能锁应用。智能锁可应用于共享经济的方方面面,如:租房、租车等。

(关于提及的相关协议,后续会有相关文章进行论述,也都将在dEdge币兜钱包中实现,敬请关注)

作者简介中成才

完美主义者,物理爱好者,吉他爱好者,编程爱好者。精通多种编程语言,prefer 用 Scala 技术栈构建一切,兴趣为物联网、比特币/区块链领域。现为 dEdge(币兜) Wallet 创始人。dEdge Wallet 充分利用安全芯片和 TEE 微操作系统技术,并实现了助记词透明加密,打造安全、便捷、有趣、会挣钱的加密货币钱包!

本文为零识原创专家专栏,转载请联系后台授权。

  项目采访

首发|发币谁都会,你会发“货”么?是时候用Token干点“正经事”了

电商“有病”,区块链“有药”吗?

正逢数字货币乱世,他们想用技术来保护投资人的最基本权益

数字货币交易所何去何从?

用区块链技术实现影响力的商业价值

用区块链技术拉起股权交易市场新的增长曲线

基于智能合约和区块链技术的创新信贷交换平台

专家专栏

既要懂技术又懂产业,2018将是区块链正规军入场元年

硅谷资深投资人讲析区块链项目投资|教程

王玮:区块链通证架构的思辨

软件好,才是真的好:区块链的1976—2017

信仰和投机:币圈没有奇迹

与元道对话三:区块链经济正在进行“动力切换”

百家观点

如何设计区块链项目的通证(token)模型

加密货币和区块链(一):历史的重演

裸照与区块链社群

疯狂的韩国比特币市场:“全民”炒币,人均收益率425%

开年反攻:泡沫中的token和被冷落的联盟链

对零识感兴趣的记者/活动/商务请甩Resume

至:[email protected]

你可能感兴趣的:(如何实现法币上链)