提供数字资产交换协议的装置和方法与流程

文档序号:24305863发布日期:2021-03-17 00:58阅读:192来源:国知局
提供数字资产交换协议的装置和方法与流程

本发明涉及基于区块链技术的数字资产交换领域,特别涉及提供适用于数字加密货币交换、碳排放量交换、以及能够以数字方式识别和表示的其他资产的公平交换的协议。



背景技术:

区块链是一种点对点(peer-to-peer,p2p)电子帐本,其被实现为一种去中心化的分布式系统。通常,一个帐本是由区块组成,而区块又是由交换组成。每笔交换都是一种数据结构,该数据结构对区块链系统参与者之间的数字资产或资源进行转移,并包括至少一个输入和输出。每个区块都包含前一个区块的哈希值,所有区块都链接在一起,以创建一个永久的区块链。对于一个永久区块链,从其诞生之日起,已写入区块链的交换记录就不可更改。

不同的区块链产生了不同的数字货币,诸如比特币(bitcoin,btc)、以太币(ethereum,eth)、tether、瑞波币(xrp)等加密货币的基石。区块链采用共识机制产生区块,例如,btc区块链的共识机制是工作量证明(proof-of-work,pow)。在pow设计中,用户必须通过解决一个计算复杂的数学问题来证明自己已经完成了工作,包括验证要添加到区块链的交换。如果问题得以解决,则允许将一个区块添加到区块链中,经过验证的交换成为公共记录。相应地,第一个成功解决pow问题的用户会得到加密货币的奖励。这也被称为″挖矿″。

大多数加密数字货币不需要中央授权就可以运行,这不仅降低了单点故障、控制和安全漏洞的风险,而且还降低了许多处理和交换成本。

最近,原子交换的概念在加密货币团体(community)备受关注。各方之间的交换是″原子的″,即各方都收到了他们所需的资源(即加密货币代币或硬币),或者没有人收到。原子交换是加密货币中的一项建议功能,它允许一种加密货币与另一种加密货币进行交换(如在btc和eth之间交换),而无需受信任的第三方。这也称为跨链交换。在传统的加密货币中,为了防止一方发送一种货币而接收不到货币回报,需要一个受信任的第三方,如加密货币交换所,来执行不同类型的加密货币的交换。原子交换系统使用有时限的哈希值锁定智能合约,因此一方必须在指定时间内交付要交换的货币,否则交换将被取消。

由于将在指定时间内交换货币,因此始终存在一个公平性问题,即交换的发起方在时限之前有进行或中止交换的优势,这对卖方不公平。因此,在本领域需要一种新的加密货币交换方式,能够解决这种公平性不足的问题。



技术实现要素:

本发明提供一种数字资产交换的协议的方法和装置。根据本发明的各种实施案例,该方法包括以下步骤。通过计算系统在第一节点和第二节点之间互换交换信息,其中属于第一节点的第一数字货币和属于第二节点的第二数字货币预计将被交换,第一数字货币和第二数字货币的价格与时间相关。由计算系统生成智能合约。计算系统根据智能合约执行原子交换脚本。由计算系统计算出第一节点要支付给第二节点的补偿费。根据原子交换脚本,引发并处理兑现事件或退款事件,并计算应付给第二节点的补偿费,其中原子交换脚本的执行在初始时间点t0开始,兑现事件或退款事件在行动点t触发,补偿费取决于第一和第二数字货币在t0到t的时间间隔内的价格。

在一个实施例中,智能合约为第二节点参与交换设置了时限t1,其中t0<t<t1。当第一节点接受第二数字货币时,引发兑现事件并进行处理,补偿费计算如下:

ct=max(max(0,lt),et);

t0<t<t1;

其中ct是所述补偿费;lt是所述第二节点的资产价值贬值;et是最大潜在交换收益;是在时间t0交换的btc的数量;p1,t是所述行动点t的btc的价格;是在时间t0交换的eth的数量;是在初始点t0的eth的价格;是时间t0的所述第一节点和所述第二节点的约定汇率。

如果第一节点拒绝提取第二数字货币,从而引发退款事件,计算补偿费:

ct=max(dt,et);

t1<t<t2;

其中ct是补偿费;dt是所述的资产价值贬值;et是最大潜在交换收益;是在时间t0交换的btc数量;p1,t是行动点t的btc价格;是在时间t0交换的eth数量;是在初始点t0的eth价格;p2,t是行动点t的eth价格;是时间t0的约定汇率。

在各种实施例中,第一节点连接到第一区块链,第一数字货币是基于第一区块链构建的加密货币。第二节点与第二区块链连接,第二数字货币是基于第二区块链构建的加密货币。数字资产交换是一种跨链交换。

在不同的实施例中,提供了一种用于实现数字资产交换协议的装置,该装置包括计算系统、第一节点和第二节点,它们可以相互通信。而计算系统被配置以执行上述方法。

根据本发明各实施例的应用,提供了一种基于碳交换生态系统的数字资产交换方法,并进行了数字资产交换,第一和第二数字货币之一代表碳排放配额。

本发明的优点包括:(1)无论发生兑现事件或退款事件,结果都伴随有补偿费,保证了交换发起者和参与者之间的公平性;(2)由于补偿费取决于交换期间数字货币的价格波动,因此它迫使发起者考虑补偿费的增加,从而鼓励尽早完成交换;(3)针对退款事件需要提供较高的补偿费,这就抑制了取消交换。这样,就实现了提供公平交换协议的目标。

附图说明

下面参见附图更详细地描述本发明的实施例,其中:

图1显示一个示例性实施例的连接两个在线团体的数据网络的示意图。

图2显示根据本发明不同实施例的两个区块链团体的简化逻辑结构。

图3和图4显示根据本发明不同实施例的第一节点和第二节点交换btc和eth。

图5显示了btc和eth的历史价格;

图6显示根据本发明不同实施例的应用,两个实体使用公平交换协议参与交换。

具体实施方式

在以下描述中,阐述了用于提供数字资产交换的协议的方法和装置的优选示例。对于本领域技术人员来说,显而易见的是,可以在不背离本发明的范围和精神的情况下进行修改,包括增加和/或替换。可以省略某些具体细节,以免模糊本发明。然而,本公开内容是为了使本领域技术人员能够在不进行过多实验的情况下实践本发明教导。

在本公开中,数字资产交换的协议是由一个或多个计算系统构建和实现的,每个系统包括至少一个专门配置的计算机处理器。在不同实施例中,计算系统包括移动计算设备、物理处理服务器、虚拟服务器、云服务器等或其组合,配置为通过有线或无线数据连接彼此通信,从而构建在线团体。其中,术语″在线团体″是指虚拟团体,也称为互联网团体或网络团体,其成员通过互联网彼此交互。

图1显示根据本发明各种实施例的连接两个在线团体的数据网络100的一个示例性实施例的示意图。数字资产交换涉及在各自团体中广泛流通和使用的两种不同数字货币的交换。经由互联网彼此通信的两个在线团体是基于第一区块链团体110和基于第二区块链团体120。这里,区块链团体是由一系列区块组成的虚拟数据链,这些区块之间是被相互验证和引用的。作为一个示例,第一区块链团体110和第二区块链团体120分别是使用比特币(btc)区块链和以太币(eth)区块链,它们具有基于相应区块链构建的相应的数字货币/加密货币,即比特币区块链的btc和以太币区块链的eth。在本公开中,上述涉及比特币区块链和以太币区块链以及相应的btc和eth加密货币的示例用于说明本发明的典型实施方式,并不意味着对其进行限制。本领域普通技术人员可以很容易地将本发明改编、应用和实现到其他现有的和可预见的基于区块链的系统中,而不会偏离本发明的精神或进行不适当的实验。

图2显示根据本发明各种实施例的两个区块链团体110和120的简化逻辑结构。第一区块链团体110(即比特币区块链)具有在计算系统200上托管的分层架构,包括p2p网络层112、节点层114、共识层116和脚本层118。

p2p网络层112是一个计算机网络,其中节点(p2p网络中的每个计算设备或用户称为节点)是分散分布的。p2p网络层112负责节点间的通信,例如交换和区块传播。因此,p2p网络层112确保节点可以相互发现和通信,从而使第一区块链团体110处于活跃状态。

节点层114由第一区块链团体110上的节点构成。p2p网络中的节点被允许计算和验证交换,然后将它们存储在共享账本中,从而形成一个记录所有相关信息的分布式数据库。在一些实施例中,节点不仅负责验证交换,而且还将它们组织成区块,并将区块广播到第一区块链团体110。由于比特币区块链基于工作量证明(pow)共识设计,因此其中一个节点可以与p2p网络中的其他节点竞争,以解决pow问题,并根据一定的哈希算法和可用计算能力来验证交换(如最快的可用节点验证交换并产生一个新区块添加到链中)。在不同实施例中,新区块由其对应的节点用其私钥进行加密签名,也称为签名。在pow设计中,节点相互竞争以解决pow问题并获得奖励。在某些实际情况下,术语″节点″相当于术语″矿工″或″区块创建者″。

共识层116负责验证区块,对区块进行排序,并确保所有节点的协议。在不同实施例中,共识层116提供p2p网络中节点之间共识协议(算法),该协议描述公开可见的帐本格式。具体地,共识层116处理网络规则的执行,该网络规则描述了p2p网络内的节点应该做什么以达成关于广播交换的共识。此外,共识层116还处理区块的生成和验证。有了共识层116,确保了第一区块链团体110中的权威权力保持分散和分布式,使得不可能由单一实体控制。

脚本层118负责实现至少一个脚本(专门设计用于指示计算设备执行数据交换中的任务的一组机器指令)。对于比特币区块链,主要应用是p2p交换,比特币区块链通过至少一个脚本(以简单的基于堆栈和非图灵完备的语言)定义和执行交换。脚本可以包括一组操作码或命令。当其中一个节点(发送方)向交换中另一个节点(接收方)发送btc时,有关接收方如何获得对这些btc的指令会编码在脚本中。在各种实施例中,通过使用至少一个带有一组操作码或命令的脚本来生成智能合约,原子交换的逻辑由交换中包含的锁定脚本和解锁脚本来实现。

类似地,第二区块链团体120(即以太币区块链)具有托管在计算系统200上的分层架构,并且包括p2p网络层122、节点层124和共识层126。第二区块链团体120与第一区块链团体110相似或相同,因此上述描述同样适用于第二区块链团体120。但是,第一区块链团体110与第二区块链团体120之间的至少一个区别是:第二区块链团体120包括合约层128,而不是脚本层。更具体地,第二区块链团体120充当管理合约(即智能合约)的去中心化平台,使得交换完全按照编程进行,而没有任何第三方干扰的可能性。在这方面,开发人员可以使用可编程语言如solidity来编写智能合约,从而导致分配给智能合约的唯一地址。因此,第二区块链团体120中的任何节点都能够根据智能合约执行交换。

在实际情况下,基于原子交换协议,可以实现不同区块链团体的加密货币之间的交换,这就是跨链交换。但是,由于交换中发起者的优势,现有的原子交换协议缺乏公平性。对于第一和第二区块链团体110和120之间的交换,本发明提供了一种公平交换协议以解决交换加密货币(如btc和eth)的公平问题。使用以下描述的示例性交换来说明本发明的实施例,该示例性交换在第一区块链团体节点和第二区块链团体节点之间使用了公平交换协议130相互交换加密货币。

参见图3,第一节点140(如第一区块链团体中的节点)邀请第二节点142(如第二区块链团体中的节点)进行btc换eth的交换,第二节点142同意第一节点140的要求。在该交换中,第一节点140是发起者,第二节点142是参与者。这里,假设汇率是1btc兑换57.07eth(即第一节点140和第二节点142最初同意将0.01btc兑换0.57eth)。但是,btc和eth的实际价格(即以美元为单位的价格)与时间有关。也就是说,即使第一节点140和第二节点142同意1btc兑换57.07eth的汇率,价格也可能会波动,并与1btc兑换57.07eth的初始汇率不同。

在第一阶段pl中,在第一节点140和第二节点142之间互换交换信息150。交换信息至少包括第一节点140和第二节点142的账户地址、支付金额、交换费用、密码的哈希160值、锁定时间。

在第二阶段p2中,第一节点140将要兑换的btc存入密码箱160(即存入p2p网络中特定地址的数据存储器中)。对于打开密码箱160的条件,它需要第一节点的密码162、第二节点的签名,并在参与交换的第一节点140上设置的时限内(如24小时或更长时间)打开。第一节点的密码162由第一节点140随机选择。例如,第一节点140可以选择一串字母数字字符作为密码162,并相应地计算密码162的哈希160值。在一个实施例中,这些条件由智能合约完成,智能合约通过使用至少一个带有一组操作码或命令的脚本来生成,第一节点140的时间限制和密码162的哈希160值包含在交换信息中。另外,第一节点140将足够量的btc存入密码箱160中,以覆盖将在随后行动点确定并支付给第二节点142的补偿费″fee″。

在第三阶段p3中,第二节点142将要交换的eth存入密码箱164(即在p2p网络中特定地址的数据存储器中)。对于打开密码箱164的条件,它需要第一节点的密码162、第一节点的签名,并在第二节点142规定的交换时限内打开,其中第二节点142上的时限比第一节点140上的时限短。例如,由于第一节点140上的时限被设置为24小时,第二节点142上的时限可以设置为12小时。在不同实施例中,这些条件被嵌入并部署在智能合约中,第二节点142上的时限包含在交换信息中,可以根据需要进行调整。

在第三阶段p3之后,交换进入等待状态,直到第一节点140打开第二节点142的密码箱164,并根据智能合约进行原子交换脚本。为了说明,原子交换脚本的开始时间在初始时间点,在图3中标记为″t0″。在图3中将第一节点140和第二节点142上的时限分别标记为″t2″和″t1″。互换交换信息和生成智能合约的步骤是在初始点t0之前进行的。

参见图4和5,在第二节点142参与的时限t1到达之前,第一节点140在图4标示的时间点″t″处采取行动,该行动引发兑现事件或退款事件,它们是根据原子交换脚本而定义。计算系统经由数据通信链接到加密货币市场的价格数据库,来检索和获悉btc和eth的最新价格,更新加密货币价格的步骤与交换同时进行。

当第一节点140用自己的密码和签名打开密码箱164,并从密码箱164提取eth被称为兑现事件。接下来,在兑现事件发生在行动点t,其中t0<t<t1,它触发了要支付给第二节点142的补偿费用的计算。也就是说,补偿费用的计算和确定是和兑现事件同时发生在行动点t。对于兑现事件,补偿费用的计算由以下补偿公式确定:

ct=max(max(0,lt),et);

t0<t<t1;

其中ct是补偿费;lt是第二节点的资产价值贬值;et是最大潜在交换收益;是在时间t0交换的btc数量;p1,t是行动点t的btc价格;是在时间t0交换的eth数量;是在初始点t0的eth价格;是时间t0的约定汇率。

为了说明,假设初始点t0是2019年9月14日09:00,而行动点t是2019年9月14日22:00,如图5所示,p1,t和分别是与之对应的btc和eth的价格。第一节点140希望与第二节点142进行0.01btc兑换0.57eth的交换,因此,约定的汇率是1btc兑换57.07eth。在这些条件下,当两个节点都成功提取时,支付给第二节点142的补偿费ct计算如下:

ct=max(max(0,lt),et)=0.33;

其中,在确定et时,遵循以下方法:假设交换在时间t完成,以一个足够小的间隔时间(如10分钟,以至于btc和eth的价格都不会急剧变化)从t0到行动点(即从9:00到22:00)变化t,计算每个时间点的并取最大值。

这样,第一节点140需要在密码箱160中添加0.33usd或3.2×10-5btc作为补偿费用。此后,第二节点142提取btc和补偿费。其中,当打开密码箱164并提取eth时,第一节点140的密码162被透露给第二节点142。因此,第二节点142能够在时限t2之前用密码162和自己的签名来打开第一节点的密码箱160,从而提取btc和补偿费。

另一方面,如果第一节点140拒绝提取eth,则交换被取消,并且相应密码箱中的相应btc和eth被退还给相应各方。这被称为退款事件,它触发了要支付给第二节点142的补偿费用的计算。补偿费用的计算和确定是在行动点t处引发退款事件同时发生的。对于退款事件,补偿费的计算由以下公式确定:

ct=max(dt,et);

t1<t<t2;

其中ct是补偿费;dt是资产价值贬值;et是最大潜在交换收益;是在时间t0交换的btc数量;p1,t是行动点t的btc价格;是在时间t0交换的eth数量;是在初始点t0的eth价格;p2,t是行动点t的eth价格;是时间t0的约定汇率。

为了说明,假设初始点t0是2019年9月14日09:00,而行动点t是2019年9月14日22:00,如图5所示,p1,t和分别是btc和eth的价格。第一节点140希望与第二节点142进行0.01btc兑换0.57eth的交换,因此,约定的汇率是1btc兑换57.07eth。在这些条件下,当两个节点都被退还时,支付给第二节点142的补偿费ct计算如下:

et=max(p1,t-p2,t)=4.28;

ct=max(dt,et)=4.28.

这样,第一节点140需要在密码箱160中添加4.28usd或4.14×10-4btc作为补偿费用。另外,一旦第一节点140拒绝提取eth,第二节点142接收eth的退款,第一节点140随后接收btc的退款。

在一个实施例中,用于兑现和退款的补偿公式被嵌入并部署在智能合约中。

通过补偿公式中的最大值max函数,即使交换发起者故意在观察对方货币的汇率变化决定兑现时间时,补偿公式中也会考虑到交换时间区间内被交换方货币的原价或最高价,从而使被交换方得到公平补偿。更具体地说,如果被交换方货币升值,发起者则必须支付更高的补偿费;但是如果被交换方货币贬值,发起者将不会获得任何回报,因为补偿计算中使用的是对方货币的原价。因此,从交换发起者的角度来看,无论对方货币的汇率如何变动,其成本状况都不会因等待提取而改善,从而激励其尽早完成交换。

相反,如果第二节点142的时限过去,而第一节点140未采取任何动作,则引发退款事件,将btc和eth退还给第一节点140和第二节点142。

因此,无论是兑现事件还是退款事件,该事件总是伴随着补偿费。由于补偿费用取决于从初始点t0到行动点t的时间间隔内btc和eth的价格,所以第一节点140不得不考虑补偿费增加的可能性。这样,第一节点140的最佳选择是尽早完成交换。此外,由于退款事件也很有可能支付更高的补偿费,因此对于第一节点140来说,可以起到抑制其取消交换的作用。

图6显示根据本发明各个实施例的两个实体210和212(如两个国家)使用公平交换协议进行碳交换的示意图。类似于前述的应用于加密货币市场的公平交换协议,应用于碳市场的数字资产交换也很容易采取相同的协议。在碳市场中,碳交换是实体之间交换碳排放配额220的信用。由于碳市场中碳排放配额220的价格存在波动,因此必须解决交换中的公平性问题。通过本发明的公平交换协议,实体210和212之间的碳交换发起者不得不考虑向实体210和212之间参与者支付的补偿费,这将鼓励发起者在发起者和参与者之间就汇率达成协议后尽早完成交换。

本公开的电子实施例可以使用计算设备、计算机处理器、或电子电路(包括但不限于专用集成电路(asic)、现场可编程门阵列(fpga)、以及根据本公开教导而配置或编程的其他可编程逻辑设备)来实现。基于本公开的教导,软件或电子领域的技术人员可以容易地准备在计算设备、计算机处理器或可编程逻辑设备中运行的计算机指令或软件代码。

电子实施例的全部或部分可以在一个或多个计算设备中执行,所述计算设备包括服务器计算机、个人计算机、膝上型计算机、移动计算设备如智能电话和平板计算机。

电子实施例包括计算机存储介质,其中存储有计算机指令或软件代码,可用于对计算机或微处理器进行编程以执行本发明的任何过程。存储介质可以包括但不限于软盘、光盘、蓝光光盘、dvd、cd-rom、磁光盘、rom、ram、闪存设备或任何类型的适用于存储指令、代码和/或数据介质或设备。

本发明的各种实施例也可以在分布式计算环境和/或云计算环境中实施,其中,机器指令的全部或部分由一个或多个通过通信网络互连的处理设备以分布式方式执行,该通信网络例如是内部网、广域网(wan)、局域网(lan)、互联网和其他形式的数据传输介质。

为了说明和描述的目的,已经提供了本发明的前述描述。其并非旨在穷举或将本发明限制为所公开的精确形式。许多修改和变化对本领域技术人员而言是显而易见的。

选择和描述的实施例是为了最好地解释本发明的原理及其实际应用,从而使本领域的其他技术人员能够理解本发明的各种实施例以及具有适合于所设想的特定用途的各种修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1