首页 / 专利库 / 银行与财务事项 / 限价订单 / 用于改善区块链资产交易中的安全性的系统以及方法

用于改善链资产交易中的安全性的系统以及方法

阅读:888发布:2020-05-12

专利汇可以提供用于改善链资产交易中的安全性的系统以及方法专利检索,专利查询,专利分析的服务。并且本文所描述的 实施例 包括 区 块 链 资产交易技术中的 硬件 及 软件 的改进,由此一个或多个 服务器 基于一组预定规则而自动地执行一种机制,该机制允许区块链资产交易客户与对手方设置针对基于区块链的数字资产(例如, 加密 货币 )的约期 限价订单 或市价订单,而没有无对手方 风 险。在客户的交易订单被执行并且客户已经获取所期望的资产的所有权及物主身分之前,对手方将不会收到付款。一旦客户收到所期望的资产,则客户就不能使该付款逆转或者以其他方式从对手方撤销该付款。该系统和方法使用区块链 数据库 、多重签名密钥签名过程、以及透明的、客观的、自动化的、基于规则的软件代理,以在没有资产损失的风险并且没有任何人类行为者的决定权的情况下,对多方交易场景下的基于数字区块链的资产转移进行管理及自主支配。,下面是用于改善链资产交易中的安全性的系统以及方法专利的具体信息内容。

1.一种计算机实现的方法,包括:
由用于托管数字资产交易所服务的交易所服务器来生成加密的多重签名的付款账户,其中所述付款账户是根据由客户端计算机生成的第一密钥、由所述交易所服务器生成的第二密钥、以及由预言机服务器生成的第三密钥来进行加密的,并且其中所述付款账户在通过所述第一密钥、所述第二密钥和所述第三密钥中的至少两个密钥被解密时是可访问的;
由所述交易所服务器监控第一公共链资产记录、第一数字资产从所述客户端计算机到加密后的所述多重签名付款账户的转移;
由所述交易所服务器监控第二公共区块链资产记录、第二数字资产从第二客户端计算机到与所述客户端计算机相关联的账户的转移;以及
在由所述交易所服务器经由所述第二公共区块链资产记录验证所述第二数字资产到与所述客户端计算机相关联的账户的转移时:
由所述交易所服务器签署所述第一数字资产的所述第一区块链,其中所述预言机服务器使用所述第三密钥来签署所述第一区块链。
2.根据权利要求1所述的方法,进一步包括:
由所述交易所服务器向与所述第二客户端计算机相关联的付款地址传送用于指示所述第一数字资产的保管的、至与所述第二客户端计算机相关联的第二客户端的更新。
3.根据权利要求1所述的方法,其中,生成所述付款账户进一步包括:
由所述交易所服务器从所述客户端计算机中接收第一种子值。
4.根据权利要求3所述的方法,进一步包括:
由所述交易所服务器基于从所述客户端计算机接收到的所述第一种子值来生成所述第二密钥。
5.根据权利要求4所述的方法,进一步包括:
由所述交易所服务器基于由所述交易所服务器生成的所述第二密钥的一部分来生成第二种子。
6.根据权利要求5所述的方法,进一步包括:
由所述交易所服务器将所述第二种子和所述第一种子传送到所述预言机服务器。
7.根据权利要求6所述的方法,其中
所述预言机服务器基于所述第一种子和所述第二种子来生成所述第三密钥。
8.根据权利要求1所述的方法,进一步包括:在所述交易所服务器签署所述第一区块链时:
由所述交易所服务器向用于托管所述第一区块链的多个设备传送更新,所述更新用于指示所述第一数字资产的保管的、从第一客户端至第二客户端的更新。
9.根据权利要求1所述的方法,其中,验证所述第二数字资产的转移进一步包括:
由所述交易所服务器接收针对所述第二区块链的、用于指示所述第二数字资产的保管的、从第二客户端至第一客户端的更新。
10.根据权利要求1所述的方法,进一步包括:在确定超过了到期时间阈值时:
当由所述交易所服务器经由所述第二区块链验证所述第二数字资产的所述转移没有发生时:
由所述交易所服务器签署所述第一数字资产的所述第一区块链,其中所述预言机服务器使用所述第三密钥签署所述第一区块链;并且
由所述交易所服务器向与所述客户端计算机相关联的退款地址传送用于指示所述第一数字资产的保管的、至与所述第一客户端计算机相关联的第一客户端的更新。
11.一种用于交易基于区块链的数字资产的计算系统,所述系统包括:
交易所服务器,被托管在包括处理器的一个或多个服务器计算机上;所述交易所服务器被配置为:
生成加密的多重签名的付款账户,其中所述付款账户是根据由客户端计算机生成的第一密钥、由所述交易所服务器生成的第二密钥、以及由预言机服务器生成的第三密钥来进行加密的,并且其中所述付款账户在通过所述第一密钥、所述第二密钥和所述第三密钥中的至少两个密钥被解密时是可访问的;
监控第一公共区块链资产记录、第一数字资产从所述客户端计算机到加密后的所述多重签名付款账户的转移;
监控第二公共区块链资产记录、第二数字资产从第二客户端计算机到与所述客户端计算机相关联的具有付款地址的账户的转移;以及
在经由所述第二公共区块链资产记录验证所述第二数字资产到与所述客户端计算机相关联的账户的转移时:
签署所述第一数字资产的所述第一区块链,其中所述预言机服务器使用所述第三密钥来签署所述第一区块链。
12.其中,所述交易所服务器进一步被配置为:
向与所述第二客户端计算机相关联的付款地址传送用于指示所述第一数字资产的保管的、至与所述第二客户端计算机相关联的第二客户端的更新。
13.其中,所述交易所服务器进一步被配置为:
从所述客户计算机接收第一种子值;以及
基于从所述客户端计算机接收到的所述第一种子值来生成所述第二密钥。
14.其中,所述交易所服务器进一步被配置为:
基于由所述交易所服务器生成的所述第二密钥的一部分来生成第二种子。
15.其中,所述交易所服务器进一步被配置为:
将所述第二种子和所述第一种子传送到所述预言机服务器。
16.其中,在所述交易所服务器签署所述第一区块链时,所述交易所服务器进一步被配置为:
向用于托管所述第一区块链的多个设备传送更新,所述更新用于指示所述第一数字资产的保管从第一客户端变更为第二客户端。
17.其中,所述交易所服务器进一步被配置为:
接收针对所述第二区块链的、用于指示所述第二数字资产的保管的、从第二客户端至第一客户端的更新,从而对所述第二数字资产的转移进行验证。
18.其中,在所述交易所服务器确定超过了到期时间阈值时,并且当所述交易所服务器经由所述第二区块链验证所述第二数字资产的所述转移没有发生时,所述交易所服务器进一步被配置为:
签署所述第一数字资产的所述第一区块链,并且其中所述预言机服务器进一步被配置为:使用所述第三密钥来签署所述第一区块链。
19.其中,所述交易所服务器进一步被配置为:
向与所述客户端计算机相关联的退款地址传送用于指示所述第一数字资产的保管的、至与所述第一客户端计算机相关联的第一客户端的更新。
20.所述系统进一步包括:预言机服务器,所述预言机服务器被托管在包括处理器的一个或多个服务器计算机上,所述预言机服务器被配置为:
基于从所述交易所服务器接收到的所述第一种子和所述第二种子来生成所述第三密钥;以及
根据针对所述第一数字资产的保管的更新以及针对所述第二数字资产的保管的相应更新,使用所述第三密钥来签署所述第一数字区块链。
1.一种计算机实现的方法,包括:
由用于托管数字资产交易所服务的交易所服务器来生成加密的多重签名的付款账户,其中所述付款账户是根据由客户端计算机生成的第一密钥、由所述交易所服务器生成的第二密钥、以及由预言机服务器生成的第三密钥来进行加密的,并且其中所述付款账户在通过所述第一密钥、所述第二密钥和所述第三密钥中的至少两个密钥被解密时是可访问的;
由所述交易所服务器监控第一公共区块链资产记录、第一数字资产从所述客户端计算机到加密后的所述多重签名付款账户的转移;
由所述交易所服务器监控第二公共区块链资产记录、第二数字资产从第二客户端计算机到与所述客户端计算机相关联的账户的转移;以及
在由所述交易所服务器经由所述第二公共区块链资产记录验证所述第二数字资产到与所述客户端计算机相关联的账户的转移时:
由所述交易所服务器签署所述第一数字资产的所述第一区块链,其中所述预言机服务器使用所述第三密钥来签署所述第一区块链。
2.根据权利要求1所述的方法,进一步包括:
由所述交易所服务器向与所述第二客户端计算机相关联的付款地址传送用于指示所述第一数字资产的保管的、至与所述第二客户端计算机相关联的第二客户端的更新。
3.根据权利要求1所述的方法,其中,生成所述付款账户进一步包括:
由所述交易所服务器从所述客户端计算机中接收第一种子值。
4.根据权利要求3所述的方法,进一步包括:
由所述交易所服务器基于从所述客户端计算机接收到的所述第一种子值来生成所述第二密钥。
5.根据权利要求4所述的方法,进一步包括:
由所述交易所服务器基于由所述交易所服务器生成的所述第二密钥的一部分来生成第二种子。
6.根据权利要求5所述的方法,进一步包括:
由所述交易所服务器将所述第二种子和所述第一种子传送到所述预言机服务器。
7.根据权利要求6所述的方法,其中
所述预言机服务器基于所述第一种子和所述第二种子来生成所述第三密钥。
8.根据权利要求1所述的方法,进一步包括:在所述交易所服务器签署所述第一区块链时:
由所述交易所服务器向用于托管所述第一区块链的多个设备传送更新,所述更新用于指示所述第一数字资产的保管的、从第一客户端至第二客户端的更新。
9.根据权利要求1所述的方法,其中,验证所述第二数字资产的转移进一步包括:
由所述交易所服务器接收针对所述第二区块链的、用于指示所述第二数字资产的保管的、从第二客户端至第一客户端的更新。
10.根据权利要求1所述的方法,进一步包括:在确定超过了到期时间阈值时:
当由所述交易所服务器经由所述第二区块链验证所述第二数字资产的所述转移没有发生时:
由所述交易所服务器签署所述第一数字资产的所述第一区块链,其中所述预言机服务器使用所述第三密钥签署所述第一区块链;并且
由所述交易所服务器向与所述客户端计算机相关联的退款地址传送用于指示所述第一数字资产的保管的、至与所述第一客户端计算机相关联的第一客户端的更新。
11.一种用于交易基于区块链的数字资产的计算系统,所述系统包括:
交易所服务器,被托管在包括处理器的一个或多个服务器计算机上;所述交易所服务器被配置为:
生成加密的多重签名的付款账户,其中所述付款账户是根据由客户端计算机生成的第一密钥、由所述交易所服务器生成的第二密钥、以及由预言机服务器生成的第三密钥来进行加密的,并且其中所述付款账户在通过所述第一密钥、所述第二密钥和所述第三密钥中的至少两个密钥被解密时是可访问的;
监控第一公共区块链资产记录、第一数字资产从所述客户端计算机到加密后的所述多重签名付款账户的转移;
监控第二公共区块链资产记录、第二数字资产从第二客户端计算机到与所述客户端计算机相关联的具有付款地址的账户的转移;以及
在经由所述第二公共区块链资产记录验证所述第二数字资产到与所述客户端计算机相关联的账户的转移时:
签署所述第一数字资产的所述第一区块链,其中所述预言机服务器使用所述第三密钥来签署所述第一区块链。
12.根据权利要求11所述的系统,其中,所述交易所服务器进一步被配置为:
向与所述第二客户端计算机相关联的付款地址传送用于指示所述第一数字资产的保管的、至与所述第二客户端计算机相关联的第二客户端的更新。
13.根据权利要求12所述的系统,其中,所述交易所服务器进一步被配置为:
从所述客户计算机接收第一种子值;以及
基于从所述客户端计算机接收到的所述第一种子值来生成所述第二密钥。
14.根据权利要求13所述的系统,其中,所述交易所服务器进一步被配置为:
基于由所述交易所服务器生成的所述第二密钥的一部分来生成第二种子。
15.根据权利要求14所述的系统,其中,所述交易所服务器进一步被配置为:
将所述第二种子和所述第一种子传送到所述预言机服务器。
16.根据权利要求11所述的系统,其中,在所述交易所服务器签署所述第一区块链时,所述交易所服务器进一步被配置为:
向用于托管所述第一区块链的多个设备传送更新,所述更新用于指示所述第一数字资产的保管从第一客户端变更为第二客户端。
17.根据权利要求11所述的系统,其中,所述交易所服务器进一步被配置为:
接收针对所述第二区块链的、用于指示所述第二数字资产的保管的、从第二客户端至第一客户端的更新,从而对所述第二数字资产的转移进行验证。
18.根据权利要求11所述的系统,其中,在所述交易所服务器确定超过了到期时间阈值时,并且当所述交易所服务器经由所述第二区块链验证所述第二数字资产的所述转移没有发生时,所述交易所服务器进一步被配置为:
签署所述第一数字资产的所述第一区块链,并且其中所述预言机服务器进一步被配置为:使用所述第三密钥来签署所述第一区块链。
19.根据权利要求18所述的系统,其中,所述交易所服务器进一步被配置为:
向与所述客户端计算机相关联的退款地址传送用于指示所述第一数字资产的保管的、至与所述第一客户端计算机相关联的第一客户端的更新。
20.根据权利要求11所述的系统,所述系统进一步包括:预言机服务器,所述预言机服务器被托管在包括处理器的一个或多个服务器计算机上,所述预言机服务器被配置为:
基于从所述交易所服务器接收到的所述第一种子和所述第二种子来生成所述第三密钥;以及
根据针对所述第一数字资产的保管的更新以及针对所述第二数字资产的保管的相应更新,使用所述第三密钥来签署所述第一数字区块链。

说明书全文

用于改善链资产交易中的安全性的系统以及方法

技术领域

[0001] 本公开涉及通过采用自动规则和自动多方确认来改善并增强区块链资产交易中的安全性。

背景技术

[0002] 区块链资产是数字代币(digital tokens)(例如,比特币),该数字代币使用计算机密码学,以确保交易并且对新单元的创建加以控制。加密货币(Crypto-currencies)是区块链资产的子集(也称为“山寨币(altcoins)”、“数字货币(digital currencies)”和“虚拟货币(virtual currencies)”)。比特币是区块链资产的首个大众化示例,并且在2009年中成为首个分散式加密货币。目前存在众多的区块链资产,其包括加密货币、数字化所有权或资产代币、代币化的股票及证券等。定义的特征是分布式总账系统,被称为区块链。
[0003] 区块链资产在世界各地的交易所进行交易。传统的非区块链资产交易所提供了高效的订单匹配自动化,但是会遭遇保管险。他们在账户中持有客户资金以便执行交易。从纳斯达克(NASDAQ)到外汇交易(FOREX)市场到传统的比特币交易所等所有的现代交易所都持有客户资金,以便建立针对交易所交易的订单薄。因此,客户必须相信交易所将会保护他们的财产。
[0004] 对于非区块链资产交易所(如传统的纳斯达克或纽约证券交易所(NYSE)),所有资产都是基于合同或文件的,且被存储在中央数据库中。它们不是基于区块链的(被存储在分散式数据库或本地存储的总帐(ledgers)中)。因此,它们的转移和交易几乎总是可以被逆转的。所以,如果纳斯达克系统遭到黑客入侵或攻击,会导致客户余额发生变化或者坏人携资金逃逸,那么纳斯达克(连同行)可以将最后的指令回滚,并且客户将会保留住他们的财产。结果,传统的非区块链交易所已经赢得并保持了客户的信任,而且风险是可控的。
[0005] 诸如比特币等基于区块链的数字资产依赖对等网络联网的分布式数据库,以维护不断增长的数据记录列表,而这些数据记录列表可以抵御篡改和修改。这些记录通常是被强制加密的,并且被托管在作为数据存储节点而工作的机器上。区块链资产交易所使用分散式控制,而不是集中式电子货币/集中式银行系统。
[0006] 对于加密货币或基于区块链的资产而言,指令通常不可能“逆转”。如果坏人闯入交易所并且修改客户余额或窃取资金,则那些指令将无法被逆转。资金可能会被外部人士(或内部人士)窃取而无法追索。自比特币创建以来,这一问题就已随着最为臭名昭着的、基于日本的Mt.Gox比特币交易所的崩溃而多次出现。在2014年,当Mt.Gox崩溃时,超过4亿美元的客户财产消失了。这些财产是因为Mt.Gox已经保管了客户的财产而“消失”的。
[0007] 因此,需要一种区块链资产交易所,在该交易所中交易所自身对资金进行零保管。所需要的是一种系统以及方法,用于提供区块链资产交易所,该区块链资产交易所为交易方(party)和对手方(counter-party)提供安全保障,以交换其区块链资产的拥有权,而不存在对手方风险。客户需要保证,在客户(从对手方)接收到所期望的资产之前,对手方不会接收到客户的付款;反之,对手方需要保证,一旦订单被完成,则付款资金是客户不可逆转的。因此,所需要的是一种机制,该机制能够确认交易或交易的各方(例如,客户、对手方)在系统释放抵扣付款(counter-payment)或抵扣资产(counter-property)之前收到其预期的付款或财产。以这种方式,描述了基于规则的、计算机实现的“零保管转换”,该“零保管转换”通过确保资金到位并且在采取行动之前请求自动化的多重签名授权来提高计算机安全性,使得任何一方都不得不信任另外一方。
发明内容
[0008] 本文公开了能够解决现有技术中的上述缺点的系统和方法,并且还可以提供一些数量的附加或替代的益处及优点。本文所描述的实施例可以包括能够对区块链资产交易进行托管的硬件软件的组件,由此一个或多个服务器执行基于软件的机制,该机制允许交易所客户与对手方设置基于区块链的数字资产(例如,加密货币、比特币等)的约期限价(standing-limit)订单。本系统描述了一种机制(“零保管转换”),通过这种机制,可以将加密货币和基于区块链的资产设置在“投标(bid)”和“询问(ask)”订单中,并且可以在没有保管人的情况下进行交易。客户可以在该交易中设置市价(market)订单或限价(limit)订单,并且在不会对客户或交易所造成风险的情况下,可以根据客户的需求来执行这些订单或者全额退款。
[0009] 在实施例中,交易对于双方而言都是非保管的;交易以加密的方式被保护在区块链上,使得任何一方都不能单独转移支付,并且订单被配置为在用户定义的时间段之后过期。客户可以被确保,在客户接收到所期望的资产之前,对手方将不会收到付款。这种保证部分地基于以第三方规则为基础的“预言机(Oracle)”,该预言机可以基于对公共区块链数据库的更新来独立地对交易进行确认。同样地,对手方可以被确保,一旦订单被完成并且客户接收到所期望的资产,则客户就不能将该付款逆转或者以其他方式从对手方撤销该付款。
[0010] 在实施例中,一种计算机实现的方法包括:由用于托管数字资产交易所服务的交易所服务器来生成加密的多重签名付款账户,其中付款账户是根据由客户端计算机生成的第一密钥、由交易所服务器生成的第二密钥、以及由预言机服务器生成的第三密钥来进行加密的,并且其中付款账户在通过第一密钥、第二密钥和第三密钥中的至少两个密钥被解密时可以被访问;由交易所服务器监控第一公共区块链资产记录、第一数字资产从客户端计算机到加密后的多重签名付款账户的转移;由交易所服务器监控第二公共区块链资产记录、第二数字资产从第二客户端计算机到与客户端计算机相关联的账户的转移;以及在由交易所服务器经由第二公共区块链资产记录验证第二数字资产到与客户端计算机相关联的账户的转移时:由交易所服务器签署第一数字资产的第一区块链,其中预言机服务器使用第三密钥来签署第一区块链。
[0011] 在另一实施例中,一种用于交易基于区块链的数字资产的计算系统,该系统包括:交易所服务器,被托管在包括处理器的一个或多个服务器计算机上;该交易所服务器被配置为:生成加密的多重签名付款账户,其中付款账户是根据由客户端计算机生成的第一密钥、由交易所服务器生成的第二密钥、以及由预言机服务器产生的第三密钥来进行加密的,并且其中付款账户在通过第一密钥、第二密钥和第三密钥中的至少两个密钥被解密时可以被访问;监控第一公共区块链资产记录、第一数字资产从客户端计算机到加密后的多重签名付款账户的转移;监控第二公共区块链资产记录、第二数字资产从第二客户端计算机到与客户端计算机相关联的具有付款地址的账户的转移;以及在经由第二公共区块链资产记录验证第二数字资产到与客户端计算机相关联的账户的转移时:签署第一数字资产的第一区块链,其中预言机服务器使用第三密钥来签署第一区块链。
[0012] 应当理解,前面的一般描述和下面的详细描述都是示例性及解释性的,并且旨在提供对所要求保护的本发明的进一步解释。附图说明
[0013] 附图构成本说明书的一部分并示出本发明的实施例,并且与说明书一起对本发明进行解释。
[0014] 图1示出了根据本公开的实施例的组件。
[0015] 图2描绘了根据本公开的网络的实施例的组件。
[0016] 图3描绘了用于示出本公开的实施例中的步骤的流程图
[0017] 图4描绘了用于示出本公开的实施例中的步骤的流程图。
[0018] 图5描绘了用于示出本公开的实施例中的步骤的流程图。
[0019] 图6描绘了用于示出本公开的实施例中的步骤的流程图。
[0020] 图7描绘了用于示出在本公开的实施例中用于退还资产的步骤的流程图。

具体实施方式

[0021] 这里参考在构成本公开的一部分的附图中所示出的实施例,来详细地描述本公开。在不脱离本公开的精神或范围的情况下,可以使用其他实施例和/或可以做出其他变更。在详细描述中所描述的说明性实施例并不意味着对这里所提出的主题加以限制。
[0022] 在实施例中,术语“零保管转换”是指一种系统或机制,其能够全部或部分地实施针对基于区块链的资产的非保管限价订单或市场订购单(因此可实现功能性金融交易订单薄)。非保管订单是指其中任何一方均无法占有另一方的资产(而是资产由基于分布式区块链的分散式多重签名账户持有),从而消除了标的资产的潜在对手方风险,直到交易得到证实并完成为止。
[0023] 通常,用户希望购买一个基于区块链的资产或兑换为另一个。例如,用户A拥有币种A(即,比特币),他/她希望以1:10的价格出售以购买币种B(即,以太币)。交易所公司可能拥有其愿意出售的币种B。如本文所使用的术语“交易所”是指区块链资产商家或区块链资产交易所。因此,用户A想要设置在币种B的价格下降至币种A的0.1时才会执行的订单。用户A总是希望确保如果价格目标没有达到,那么订单将不会被执行并且将会被撤销或取消。用户A还可以在订单上设置持续时间或到期时间,该持续时间或到期时间将在给定时间点到期并且触发返回至用户A的退款。
[0024] 在实施例中,用户A与交易所创建非保管订单,然后将资金发送到由交易所识别出的N分之M(M-of-N)多重签名地址。在实施例中,使用了三分之二(2of 3)多重签名地址,然而可以使用任何其他等级的多重签名地址。在操作中,自动的、基于政策的第三方预言机(Oracle)(其可以是独立于交易所或由交易所运营的多重签名共同签署人)根据特定规则和情况而与用户A或交易所一起进行签署。在实施例中,第三方预言机可以是另一家公司,或者可以是驻留在服务器(包括分散式服务器,或者作为“数字自治机构”(DAO))上的软件应用程序。预言机一旦建立后就不需要被拥有或管理。它本质上是开关,根据一组预定规则来确定资金是转给交易所还是转给用户。这个开关的基本规则如下:如果所期望资金已发送给用户(如由公共区块链所定义),则与交易所签署以完成交易。使用三分之二的多重签名帐户来确保没有任何一方可以单方面地为任何交易采取行动。要完成任何交易,三方中的两方必须同意签署。交易所在证明它已经发送了所期望的资产之前不能收到用户的资金,并且如果交易所已经证明了所期望资产的转移,则用户就不能追回他的资金。预言机根据不可否认的区块链数据来与一方或另一方进行签署。
[0025] 一旦用户指定了订单,则交易所将为他们提供多重签名区块链资产地址。如在本领域中可理解的,多重签名地址需要使用几个专用密钥来访问该帐户并转移资产。这与仅需要一个签名的常见区块链资产交易不同。在常见的区块链资产交易中,如果用户有专用密钥,那他们就可以支出财产。传统的区块链资产交易所持有针对用户账户的专用密钥,这就是为什么他们拥有保管权,并因此具有对手方风险。
[0026] 一旦接收到两个签名(在三分之二的多重签名的场景下),则资产就可以被转移。在实施例中,如果预言机和卖家(交易所)签署,则资产就转到交易所。如果预言机和用户签署,则用户的资金就转回给用户。在部分履行订单的情况下,预言机可以仅针对将被转到交易所的资产中的一定比例的金额进行签署,并且在需要时会签署将反向金额返回给用户。
一旦发生了所期望的基于区块链的数字资产转移,则交易所或预言机将该交易广播给区块链网络上的每个节点,然后在全球范围内记录相同的交易。在这种方式下,像所有的区块链资产交易一样,都不存在中央服务器。所有基于块的报告都是在公共对等网络上完成的。
[0027] 在实施例中,可以使用以下规则来确定所需的签名。如果用户A在最终地址(Final_Address)接收到币种B(全部或部分),则预言机与接收币种A(全部或部分)的交易所签署;如果用户A在最终地址没有接收到币种B,则用户A可以取消订单,否则订单可能会过期。在任何情况下,预言机多重签名共同签署人都与用户A签署,使得用户A将其币种A收回到其指定的退款地址(Refund_Address)(如果没有订单被完成,则为全部金额,如果部分订单被完成,则为部分金额)。
[0028] 如本文所使用的,当系统的实施例在进行操作时有四个地址值得注意:付款地址(Payment_Address)、最终地址、商家地址(Merchant_Address)和退款地址。但是本领域的技术人员将会认识到,在各种实施例中,可以包括或使用任何数量的地址,以用于识别收款人、付款人、以及负责加密货币交易的各方。
[0029] 已注资订单是已经从用户A接收到币种A的非保管订单。未注资订单是尚未从用户A接收到币种A的非保管订单,而完成订单是币种B已在最终地址处发送给用户A从而完成该交易的非保管订单。
[0030] 付款地址是指用户A必须将币种A发送到以创建已注资订单的地址。最终地址是如果订单完成或者在完成订单时用户A想让币种B被发送到的地址。退款地址是如果订单未完成即订单过期时用户A想让币种A的退款被发送到的地址。此外,还有商家地址,这是如果完成订单时交易所想让币种A被发送到的地址。
[0031] 在实施例中,一方不能欺骗或者收取另一方的资金。想要从多重签名帐户中发出或移出资金,至少需要两个签名(来自双方的各一方)。如果没有两个签名,则资金不能被移出。因此,没有一方可以在未经另一方同意的情况下获得访问权限。如果交易所期望在没有授权的情况下收取用户的财产,那么它必须说服基于规则的预言机或用户提供他们的签名,而交易所不能强迫他们这样做。
[0032] 在实施例中,创建订单时将以下内容发送给预言机:最终地址(订单完成时必须将币种B发送到的用户地址);预期金额(订单完成时必须被发送到最终地址的金额);商家地址(订单完成时接收币种A的商家地址或交易所地址);退款地址(订单未完成时接收到币种A的用户地址);以及到期时间(UTC日期/时间,在此之后订单结束并且币种A被退还到退款地址)。在实施例中,退还增量(即,预言机在用户请求退款之后等待的时间量,用以确保订单不被清除)也可以作为变量来发送,或者可以在预言机中被设置为特定的时间段。
[0033] 在实施例中,币种B的报价与用户想要的价格相匹配。在这种情况下,交易所会将币种B资金发送到用户的最终地址。随后交易所请求预言机共同签署以将币种A资金移交到商家地址。预言机检查最终地址,如果存在预期金额的资金,则预言机将与交易所签署以将币种A资金转到商家地址(全部或部分,基于订单中的多少被完成)。
[0034] 在实施例中,如果用户希望取消订单,则用户可以向预言机发送请求以取消订单。预言机等待预定时间(退还增量),然后在与用户签署以将币种A转入退还地址(在创建时指定的)之前,执行检查以确认最终地址没有接收到预期金额中的任何存入资金。
[0035] 在实施例中,在用户希望取消订单的情况下,用户可以联系交易所以取消订单。在该实施例中,用户利用交易所而不是利用预言机来确认取消,并且交易所共同签署该退还(很可能是手动的)。例如,如果预言机处于离线状态或者以其他方式缺失,则执行该操作。在这种方式下,如果订单未完成或者如果预言机消失,则用户始终可以拿回他们的资产。
[0036] 在实施例中,在订单到期的情况下,因为在订单没有被完成的情况下持续时间到期,将自动发生全部退款,而无需交易所或用户请求退款。到期后,该交易将由预言机签署,以将币种A退还到退还地址。为了使这种情况发生,退还交易在创建时被提供给预言机,并且使用用户密钥来签署。这可以由预言机自动完成,或者甚至不使用预言机而使用诸如内置在区块链中的“checklocktimeverify”(检查定时间验证)等协议的情况下完成(参见图7)。
[0037] 在实施例中,如果在订单完成之前交易所不再存在,则预言机可以等待正常地发生的到期时间或者可以自动签署退还交易(因为它拥有已经由用户A共同签署的退还交易)。在这个实施例中,币种A将被发送到退款地址。
[0038] 在实施例中,即使预言机不再存在,用户也将被退款。如果限价订单被完成,则由于除了预言机之外没有人与交易所进行共同签署,所以交易所一旦确定预言机不再有效,则可以取消所有限价订单并且签署将币种A分别退还给用户。
[0039] 在实施例中,如果用户的密钥被盗,则用户将不会失去资金。被盗密钥仅能用于请求将币种A退还到退款地址(因为预言机仅对该地址进行共同签署)。即使用户的密钥被盗,这也消除了来自用户的风险,并且限制了交易所和预言机的责任。
[0040] 在实施例中,如果交易所的密钥被盗,则交易所将不会失去资金。由于商家地址是在创建时设置的,因此这种情况与用户密钥被盗时相同。窃取密钥的一方仅能将币种A发送到交易所,因为这是预言机将共同签署的唯一地址。因此即使交易所的密钥被盗,交易所也没有风险。
[0041] 在实施例中,如果交易所系统受到损害,则客户设备、预言机或系统中的其他计算机可以请求将所有的用户订单退款至退款地址。与传统交易所不同的是,在示例系统中的这种情况下,用户的资产没有危险,因为没有受到损害的预言机将仅会把资金发送到用户的退款地址。
[0042] 在实施例中,如果预言机受到损害,则资金将是安全的。如果预言机受到损害,它可能会对恶意地址签署交易。但这是不可能的,因为预言机为了转移加密货币的所有权,需要用户或交易所共同签署;因此在可能丢失资金之前需要三个实体中的两个实体受到损害。在实施例中,如果用户或交易所认为预言机受到损害,则用户或交易所可以将用户资金退款给退款地址(因为用户和交易所中的每个已经具有部分签署的退款交易)。
[0043] 在实施例中,在创建时从预言机返回以下信息:存款地址(即,用户发送币种A以激活订单的多重签名地址);TX完成(将由预言机签署以完成交易的、针对商家地址的未签名交易);以及TX退还_a(交给交易所的、针对由用户密钥和预言机密钥预先签署的退款地址的交易)。在实施例中,在帐户创建时,也可以将TX退还_b(针对由用户密钥和交易所密钥签署的退款地址的交易)发送给预言机。
[0044] 在实施例中,是否将资金转移给新的所有者的唯一决定权在于预言机(其遵循预定规则)。这是因为交易所会一直将交易签署给自己,因为它想要用户的资金,而用户会一直将交易签署回自己,因为其想要新的资产。因此,权归于预言机以导致发生资产交易,而预言机可以仅具有在其代码中内置的特定的规则。预言机对公开可用的区块链进行监控,并且预言机对用户帐户何时到其货币以及是否收到其货币进行检测。如果预言机可以验证到转移,则预言机采取第一动作。如果预言机无法验证交易,则预言机可以采取第二动作。只有在预言机能够从针对公共块链的更新中验证到资金已经存入后,它才会采取行动。预言机在没有用户或交易所输入的情况下根据公共信息来自动地进行动作,以编程方式使两个利益相关方之间的交易公平、安全和诚实。如果有足够的、客观的、可公开验证的条件已得到满足,则币种A将转给交易所(与所完成的程度成比例地)。如果条件不满足,则币种A将始终转回给用户(与未完成的程度成比例地)。
[0045] 现在将对附图中示出的示例性实施例进行参考,并且在此将使用特定的用语来对示例性实施例进行描述。然而应该理解的是,由此并未旨在限制本发明的范围。相关领域的并拥有本公开的技术人员将会想到,这里所示出的本发明特征的改变和进一步修改、以及这里所示出的本发明原理的附加应用,将被认为是在本发明的范围内。
[0046] 现在参考其中示出了本公开的示例实施例的附图来更全面地描述本公开。然而,本公开可以以许多不同的形式来体现,并且不应该被解释为必然受限于本文所公开的示例实施例。相反,提供这些示例实施例使得本公开为彻底且完整的,并且将本公开的概念充分地传达给相关领域中的技术人员。另外,关于某些示例实施例而描述的特征可以组合在各种其他示例实施例内和/或与各种其他示例实施例进行组合。如本文所公开的,示例实施例的不同方面和/或元素可以以类似的方式进行组合。此外,无论是单独地和/或共同地,一些示例实施例可以是较大系统的组件,其中其他过程可以优先于和/或以其他方式修改其应用。此外,如本文所公开的,可以在示例实施例之前、之后和/或与示例实施例同时地需要多个步骤。注意,至少如本文所公开的,任何和/或所有的方法和/或过程可以至少部分地以任何方式经由至少一个实体来执行。
[0047] 本文所使用的术语可以暗示出直接或间接、全部或部分、暂时或永久的行动或非行动。例如,当元件被称为在另一元件“上”、“连接”或“耦接”到另一元件时,元件可以直接在另一元件上、连接或耦接到另一元件,和/或可以存在中间元件,包括间接和/或直接的变体。相反,当元件被称为“直接连接”或“直接耦接”到另一元件时,不存在中间元件。
[0048] 虽然术语“第一”、“第二”等在本文中可被用于描述各种元件、组件、区域、层和/或区段,但是这些元件、组件、区域、层和/或区段不应必然地受到这些术语的限制。这些术语仅用于将一个元件、组件、区域、层或区段与另一元件、组件、区域、层或区段区分开来。因此,在不脱离本公开的教导的情况下,下面所讨论的第一元件、组件、区域、层和/或区段可被称为第二元件、组件、区域、层和/或区段。
[0049] 本文所使用的术语仅用于描述特定实施例,并不旨在必然地限制本公开。如本文所使用的,除非上下文另外清楚地指出,否则单数形式“一”、“一个”和“该”也旨在包括复数形式。此外,当在此说明书中使用时,术语“包括”和/或“包含”表明存在所陈述的特征、整体、步骤、操作、元件和/或组件,但并不排除存在或添加一个或多个其他的特征、整体、步骤、操作、元件、组件和/或它们的组。此外,替代术语不应被必然地限制为排他性的,也可以是包含性的。
[0050] 除非另有定义,否则本文所使用的所有术语(包括技术术语和科学术语)具有与本公开所属领域的普通技术人员通常所理解的含义相同的含义。诸如那些在常用词典中所定义的术语应被解释为具有与它们在相关领域的背景中的含义一致的含义,并且将不以理想化和/或过度正式的意义来解释,除非本文中明确地如此定义。
[0051] 如本文所使用的,术语“约”和/或“大致”是指相对于标称值/术语高达+/-10%并且包括+/-10%的变化。这种变化总是包含在本文所提供的任何给定值/术语中,无论这种变化是否被具体地提及。
[0052] 如果通过引用将任何公开内容并入本文并且这些公开内容与本公开部分和/或全部地冲突,那么就冲突程度和/或更广泛的公开和/或术语的更广泛含义而言,以本公开为准。如果这种公开部分和/或全部地彼此冲突,那么就冲突程度而言,以稍后日期的公开为准。
[0053] 图1示出根据示例性实施例的示例性系统100的组件。交易所服务101包括一个或多个交易所服务器103、以及一个或多个交易数据库105。交易所服务器103可以是任何通用或专用计算机。交易所服务器103可以作为单个计算机来进行操作,该计算机可以是硬件和/或软件服务器、工作站、台式计算机、膝上型计算机、平板电脑移动电话、大型机、超级计算机、服务器场等。计算机可以由交易所和/或代表交易所来直接和/或间接地进行操作。计算机可以是触摸屏和/或非触摸屏的。计算机可以包括和/或是另一计算机系统和/或TM TM TM
网络的一部分。计算机可以运行任何类型的操作系统,诸如iOS 、Windows 、Android 、UnixTM、LinuxTM和/或其他操作系统等。计算机可以包括和/或耦接到诸如鼠标键盘、相机、无论是前向还是后向的加速度计、触摸屏和/或麦克风等的输入设备,和/或诸如显示器、扬声器和/或打印机等的输出设备。计算机例如直接和/或间接地与网络102进行通信。这种通信可以通过软件应用程序、移动应用程序、浏览器、操作系统和/或它们的任何组合来实现。
计算机可以包括用于全球定位确定的电路,诸如经由GPS、信号测量系统等。计算机可以配备有NFC电路。计算机可以运行诸如关系数据库等数据库,该数据库包含用户以及帐户信息。
[0054] 交易数据库105可以是单独的数据库,或者被并入到用于对交易所服务器103进行托管的一台或多台计算机中。交易数据库105可以是关系数据库、平面文件、分段数据库、或任何其他形式或结构。数据库105可以由交易所服务101来维护,或者可以由第三方来维护。客户设备107可以是移动设备、平板电脑、计算机、膝上型计算机、便携式计算设备、固定计算设备、数据输入终端、或哑终端。交易数据库105可以是有线或无线设备,并且可以是独立设备或者可以被耦接到网络。
[0055] 第三方计算机109可以是计算机或服务器,其可以是硬件和/或软件服务器、工作站、台式计算机、膝上型计算机、平板电脑、移动电话、大型机、超级计算机、服务器场等。计算机可以通过预言机和/或代表预言机来直接和/或间接地进行操作。计算机可以是触摸屏和/或非触摸屏的。计算机可以包括和/或是另一计算机系统和/或云网络的一部分。计算机TM TM TM TM TM可以运行任何类型的操作系统,诸如iOS 、Windows 、Android 、Unix 、Linux 和/或其他操作系统等。计算机可以包括和/或耦接到诸如鼠标、键盘、相机、无论是前向还是后向的加速度计、触摸屏和/或麦克风等的输入设备,和/或诸如显示器、扬声器和/或打印机等的输出设备。计算机例如直接和/或间接地与网络102进行通信。这种通信可以通过软件应用程序、移动应用程序、浏览器、操作系统和/或它们的任何组合来实现。计算机可以包括用于全球定位确定的电路,诸如经由GPS、信号三角测量系统等。计算机可以运行预言机应用程序。
[0056] 一个或多个网络102可以包括多个节点,诸如通过通信信道互连的计算机和/或其他硬件的集合等,允许共享资源和/或信息。这种互连可以是直接和/或间接的。网络102可以是有线的和/或无线的。网络102可以允许短距离上和/或长距离上的通信。网络102可以经由至少一个网络协议(诸如以太网、传输控制协议(TCP)/互联网协议(IP)等)来进行操作。网络102可以具有任何规模,诸如个人域网、局域网、家庭域网、存储域网、校园域网、中枢网络、城域网、广域网、企业专用网络、虚拟专用网络、虚拟网络、卫星网络、计算机云网络、互联网络、蜂窝网络等。网络102可以是内联网和/或外联网、和/或包括内联网和/或外联网。网络102可以是互联网和/或包括互联网。网络102可以包括其他网络和/或允许与其他网络(无论是子网络和/或不同的网络,无论是否与网络102相同和/或不同)进行通信。网络102可以包括硬件,诸如网络接口卡、中继器、集线器、网桥、开关和/或防火墙等。网络102可以由一个和/或多个实体、和/或代表一个和/或多个实体,来直接和/或间接地进行操作。
[0057] 图2示出了根据本公开的网络环境的示例实施例。用于示例性系统20的环境包括网络204、用户A 200、预言机201、和交易所202。
[0058] 网络204包括多个节点,诸如通过通信信道互连的计算机和/或其他硬件的集合等,允许共享资源和/或信息。这种互连可以是直接和/或间接的。网络204可以是有线的和/或无线的。网络204可以允许短距离上和/或长距离上的通信。网络204可以经由至少一个网络协议(诸如以太网、传输控制协议(TCP)/互联网协议(IP)等)来进行操作。网络204可以具有任何规模,诸如个人域网、局域网、家庭域网、存储域网、校园域网、中枢网络、城域网、广域网、企业专用网络、虚拟专用网络、虚拟网络、卫星网络、计算机云网络、互联网络、蜂窝网络等。网络204可以是内联网和/或外联网、和/或包括内联网和/或外联网。网络204可以是互联网和/或包括互联网。网络204可以包括其他网络和/或允许与其他网络(无论是子网络和/或不同的网络,无论是否与网络204相同和/或不同)进行通信。网络204可以包括硬件,诸如网络接口卡、中继器、集线器、网桥、开关和/或防火墙等。网络204可以由一个和/或多个实体、和/或代表一个和/或多个实体,来直接和/或间接地进行操作,而无论与用户A 200、预言机201和/或交易所202有何关系。
[0059] 用户A 200对计算机进行操作,该计算机可以是硬件和/或软件服务器、工作站、台式计算机、膝上型计算机、平板电脑、移动电话、大型机、超级计算机、服务器场等。计算机可以通过用户A 200和/或代表用户A 200来直接和/或间接地进行操作。计算机可以是触摸屏和/或非触摸屏的。计算机可以包括和/或是另一计算机系统和/或云网络的一部分。计算机TM TM TM TM TM可以运行任何类型的操作系统,诸如iOS 、Windows 、Android 、Unix 、Linux 、和/或其他操作系统等。计算机可以包括和/或耦接到诸如鼠标、键盘、相机、无论是前向还是后向的加速度计、触摸屏和/或麦克风等的输入设备,和/或诸如显示器、扬声器和/或打印机等的输出设备。计算机例如直接和/或间接地与网络204进行通信。这种通信可以通过软件应用程序、移动应用程序、浏览器、操作系统和/或它们的任何组合来实现。计算机可以包括用于全球定位确定的电路,诸如经由全球定位系统(GPS)、信号三角测量系统等。计算机可以配备有近场通信(NFC)电路。
[0060] 预言机201可以对计算机进行操作,该计算机可以是硬件和/或软件服务器、工作站、台式计算机、膝上型计算机、平板电脑、移动电话、大型机、超级计算机、服务器场等。计算机可以通过预言机201和/或代表预言机201来直接和/或间接地进行操作。计算机可以是触摸屏和/或非触摸屏的。计算机可以包括和/或是另一计算机系统和/或云网络的一部分。计算机可以运行任何类型的操作系统,诸如iOSTM、WindowsTM、AndroidTM、UnixTM、LinuxTM和/或其他操作系统等。计算机可以包括和/或耦接到诸如鼠标、键盘、相机、无论是前向还是后向的加速度计、触摸屏和/或麦克风等输入设备,和/或诸如显示器、扬声器和/或打印机等输出设备。计算机例如直接和/或间接地与网络204进行通信。这种通信可以通过软件应用程序、移动应用程序、浏览器、操作系统和/或它们的任何组合来实现。计算机可以包括用于全球定位确定的电路,诸如经由GPS、信号三角测量系统等。计算机可以配备有NFC电路。计算机可以运行诸如关系数据库等的数据库,该数据库包含用户和/或帐户信息。交易所202对计算机进行操作,该计算机可以是硬件和/或软件服务器、工作站、台式计算机、膝上型计算机、平板电脑、移动电话、大型机、超级计算机、服务器场等。计算机可以通过预言机201和/或代表预言机201来直接和/或间接地进行操作。计算机可以是触摸屏和/或非触摸屏的。计算机可以包括和/或是另一计算机系统和/或云网络的一部分。计算机可以运行任何类型的操作系统,诸如iOSTM、WindowsTM、AndroidTM、UnixTM、LinuxTM和/或其他操作系统等。
计算机可以包括和/或耦接到诸如鼠标、键盘、相机、无论是前向还是后向的加速度计、触摸屏和/或麦克风等的输入设备,和/或诸如显示器、扬声器和/或打印机等的输出设备。计算机例如直接和/或间接地与网络204进行通信。这种通信可以通过软件应用程序、移动应用程序、浏览器、操作系统和/或它们的任何组合来实现。计算机可以包括用于全球定位确定的电路,诸如经由GPS、信号三角测量系统等。计算机可以配备有NFC电路。计算机可以运行诸如关系数据库等的数据库,该数据库包含付款信息。
[0061] 用户A 200与网络204进行通信,例如以直接、间接、加密、未加密以及其他方式等。用户A 200经由网络204与预言机201和/或交易所202中的至少一个选择性地进行通信,例如以直接、间接、加密、未加密以及其他方式等。
[0062] 用户A 200可以是消费者和/或法律实体,诸如组织、公司、合伙企业、和/或其他人。预言机201与网络204进行通信,例如以直接、间接、加密、未加密以及其他方式等。预言机201通过网络204与用户A 200和交易所202中的至少一个选择性地进行通信,例如以直接、间接、加密、未加密以及其他方式等。例如,预言机201可以与交易所202的收单机构(acquirer)关于交易所202而进行通信。例如,预言机201可以通过电子邮件或任何其他通信方式来与用户A 200进行通信。
[0063] 预言机201可以包括金融实体,诸如银行、交易所、安全服务器和/或其他实体等,和/或参与区块链资产交易和管理的任何其他组织。
[0064] 预言机可以是金融实体,其接受和/或处理针对交易所202的区块链资产交易,包括对交易所202的账户进行贷记(crediting)或借记(debiting)。这种接受和/或处理是针对经由交易所202提供给用户A 200的商品和/或服务的。预言机也可以是服务器或一系列服务器,或者是在计算机或服务器上自主运行的应用程序或一系列应用程序。交易所202与网络204进行通信,例如以直接、间接、加密、未加密以及其他方式等。交易所202通过网络204与用户A 200和预言机201中的至少一个选择性地进行通信,例如以直接、间接、加密、未加密以及其他方式等。交易所202包括直接和/或间接地接受区块链资产交易的个人、组织和/或企业。交易所202包括营利性实体、非营利性实体、政府机构、和/或其他实体。交易所
202包括在线交易所、实体交易所、和/或它们的任何组合。注意,如本文所描述的,可以使用任何数量的商家或交易所202。用户A 200可以是交易所202、和/或交易所202可以是用户A 
200。
[0065] 图3示出了根据本公开的实施例。用户A 200通过指定用户A持有以及希望交易的币种A的类型以及可选的金额,来与交易所202创建非保管订单交易请求304。用户A指定币种类型、用户A希望获得的币种B、币种B的期望价格、最终地址、退款地址、以及订单应就绪多长时间(即,持续时间,以小时或天数为单位)。在实施例中,币种B的期望金额是根据价格而自动建立的。
[0066] 作为响应,预言机201使用这些指定的标准来创建未注资订单305,并且请求用户A将币种A发送到三分之二的多重签名付款地址。用户A、预言机和交易所都基于公共密钥功能来生成密钥,并且任何一方都不能看到其他方的密钥。用户的密钥可以明确地显示给本人,或者被安全地保存在本人的浏览器窗口(客户侧)中。
[0067] 一旦未注资订单被建立,则用户A将币种A发送到指定的付款地址。在步骤306,系统等待对用户A将币种A发送到指定付款地址的确认。可以通过对区块链信息进行监控以确定资金何时被转移,来获取该确认。一旦付款被确认,则订单就从未注资订单转换为已注资订单307。如果用户A 200在特定的时间段内没有发送付款,那么未注资订单可以被预言机201关闭。此时,币种A被持有在三分之二的多重签名账户中,具有分别由用户A、预言机和交易所持有的三个密钥。
[0068] 在步骤308,系统确定用户A是否取消订单。如果订单被用户A 200取消,则如果在取消时币种B的预期金额没有在最终地址中,则预言机201将签署对用户A的退款。如果订单未被取消,则系统行进到步骤309。在步骤309,系统进行检查以查看订单持续时间是否到期。如果由于步骤309中的持续时间到期而导致订单到期,则在步骤310中,预言机201将用户A的币种A发送回退款地址。以这种方式,每个订单将被完成、取消或到期,并且预言机不会保留用户A的币种或交易所的币种B。系统对于用户A 200而言是安全的,因为交易所202不能获取用户A的币种A,直到交易所202已经将币种B发送给用户A 200为止。在本公开中,一旦交易所发送币种B,则系统就为交易所提供了安全性,因为一旦币种B被发送,则用户A就不能取消订单,并且如果交易被取消或到期,则用户A的币种A将被退还,所以用户A不存在风险。
[0069] 在实施例中,在步骤312由预言机201对预期金额进行的检查将在接受到用户A的签名后的一段时间内完成,以防止“竞争”情况。在实施例中,在从相关联的客户端计算机中接收到用户A的签名之后,该检查大约一小时完成(尽管可以使用任何时间),尽管持续时间可以是短于到期时间的任何时间。如果在步骤312预期金额的币种B没有在最终地址,如果订单已在步骤308中被取消或者在步骤309中到期,则预言机201将签署将币种A发送回用户A的传送,否则预言机201将等待交易所202在步骤311将币种B发送到付款地址。
[0070] 如果交易所202将预期金额的币种B发送到最终地址,则在步骤313,预言机将签署给交易所的付款,并且预言机将币种A发送到商家地址,并且在用户A指定的最终地址处将币种B发送给用户A,以完成订单。
[0071] 图4描述了所描述的系统和方法的另一实施例、以及被用于生成公共密钥的步骤,以及订单完成。在步骤401,由用户A从浏览器或其他输入入口中输入数据,该数据用于表示参与区块链资产交易的愿望。在实施例中,创建用户账户以便于数据输入。在另一实施例中,不需要账户,并且订单数据仅在用户、交易所和预言机之间传输。
[0072] 用户A可以输入订单金额、欲交易的货币、以及订单应保持就绪的持续时间。用户A也输入信息以生成公共密钥l。用户A的浏览器使用其他用户无权访问的客户侧代码来创建公共密钥l。这确保了公用密钥只能由用户A而不是其他人来访问。一旦生成密钥l,则将它保存。在步骤402,将对交易而言至关重要的数据和密钥l传递给交易所。在步骤403,交易所将使用由用户A生成的密钥1来生成公共密钥2、以及交易所所需的任何其他数据。这些密钥充当多重签名帐户上的签名。
[0073] 一旦生成密钥2,则在步骤404,用户的公共密钥l和交易所的公共密钥2将被发送给预言机。在步骤405,预言机将使用所有接收到的信息来生成公共密钥3,并将公共密钥3与密钥l和密钥2组合以创建针对多重签名账户的存款地址。在步骤406,预言机将该地址返回给交易所。在步骤407,交易所将使用该数据以创建未注资的限价订单。在步骤408,将存款地址发送给用户A。在步骤409,用户A将资金转移到该存款地址。
[0074] 图5描绘了本公开的系统和方法中的第二步骤。在步骤501,交易所检查网络上的区块链数据以查看在步骤405中创建的存款地址是否已被注资。一旦交易所确认用户A在步骤502已经对该地址注资,则交易所将创建并签署退还至用户的交易。在步骤503,退还至用户的交易以及退还a的文档将被发送给预言机以进行存储。这实质上是来自用户的退还地址。退还地址是资金可以被发送回用户的唯一地址。这是出于安全目的而进行的,使得某些人之后不能访问用户的密钥并更改地址并且将货币发送到不同的地址。本质上,交易所将签署该退还交易并将其转给预言机以进行存储。以这种方式,如果预言机需要为用户退款,则它已经从交易所获得了签名确认。在步骤504,预言机也将签署该退还交易,并在步骤505,将其发送回交易所以进行存储。在步骤506,交易所存储该退还地址并激活订单。这确保了如果预言机消失,则交易所可以为用户退款。在这一点上,交易所会检查以完成订单。
如图5所示,如果预言机或交易所消失并且在必要的时间内无法签署多重签名帐户,则可以将用户的资金退还给用户。
[0075] 图6描绘了本公开的系统和方法的实施例中的第三步骤。在图6中,在步骤600,限价订单被激活。从步骤600开始,有三种可能的场景。订单已完成、订单到期、或者订单被取消。如果订单要被完成,则交易所系统将搜索并确定何时以及是否能够实际地完成订单,即存在有交易所自身或其他用户愿意与用户A进行交易的账户。
[0076] 在步骤601,交易所会在交易所中寻找可以完成用户A的订单的价格(全部或部分)。在步骤602,交易所执行交易并交易资金。然后,在步骤603,交易所将所请求的金额(全部或部分)发送到作为用户A的帐户的最终地址。一旦完成,则在步骤604,交易所将对把资金存入其账户这一交易进行请求,并且将该信息发送给预言机以进行共同签署。在步骤605,预言机将通过对区块链上的最终地址进行验证,来自动地确认资金(全部或部分)是否已被交付给用户A。如果成功地对交易进行了验证,那么预言机将签署该交易(针对全额或其相应部分)并广播该交易或者将这一信息发送回交易所。此时,交易所将该交易广播给自己,并且具有所请求的两个签名以完成该交易。在步骤606,一旦接收到两个签名,则用户的资金将被存入交易所。
[0077] 在另一种场景下,订单在完成之前到期。这可能会发生在限价订单在步骤601中被完成之前,订单在步骤610到期。在实施例中,当用户最初在步骤401中设置其订单以及账户时,该用户将输入的数据之一就是到期时间,在该时间点,如果订单未被完成,则它将被自动地退还给用户(如果订单部分完成,则部分如此)。
[0078] 如果在步骤610达到了到期时间,则预言机将会注意到该到期,并且在步骤611将会签署在步骤604中交易所已经签署过的退还,使得在步骤612可以将资金发送回用户的地址。在实施例中,在步骤620中,用户可以在达到了到期时间或者已经完成订单之前的任意时刻,决定取消订单。
[0079] 通常,在步骤621中将联系预言机,但是在实施例中,交易所也可以退还资金。在步骤622,交易所或预言机将会等待,然后执行检查以确保收款地址未被注资,基本上确保用户不会试图欺诈交易所。一旦该信息被确认,则预言机将在步骤623签署退还a,使得资金可以被发送回用户。如果预言机已经由于某些原因而消失,则在步骤624,用户联系交易所以便退款。在步骤625,交易所可以通过验证收款地址来确认订单未被完成。如果得到确认,那么在步骤626,交易所可以签署退还b并且将资金退还给用户。因为预言机预先签署了该退还,所以这是可能的。在实施例中,任何取消将首先尝试先检查预言机,因为它会自动地进行处理。如果由于某种原因,预言机没有回应,则交易所也可以将货币退款,使得资金在没有人可以对它们进行访问的情况下,也不会丢失。
[0080] 图7示出了在预言机和交易所都消失的情况下向用户提供退款的实施例。在步骤701,交易所通过对区块链进行监控而检测到用户已经对付款地址注资。一旦检测到该注资,则在步骤702,交易所将创建针对用户的退还地址的退还交易,该退还交易指定针对订单的到期日期的op_checklocktimeverify和缓冲时间(例如七天)的。在步骤703,预言机将签署该交易,并且在步骤704处对该交易进行广播。用户可以看到该退还交易在区块链上已经就绪,但是直到达到了规定时间并且在此期间订单未被完成或者被取消时,该退还交易才在区块链中得到确认。
[0081] 这与比特币功能类似,“CheckLockTime”(检查锁定时间)使用户能够完成交易并且对交易进行广播,但该交易在指定时间之前不会变为“有效”或“已确认”。在本公开中,交易所对该退还交易进行广播,然后即使预言机和交易所离线或消失,则只要交易在规定的时间内没有完成,则用户就可以收回资产。如果订单退还给用户或成功完成,则op_checklocktimeverify交易将无效,因为资金已经被发送。结合本文所公开的实施例而描述的各种说明性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件、或两者的组合。为了清楚地说明硬件和软件的这种可互换性,上面已根据它们的功能一般性地描述了各种说明性的组件、块、模块、电路和步骤。这样的功能是以硬件还是软件来实现将取决于特定的应用以及对整个系统所施加的设计约束。本领域技术人员可以针对每个特定的应用而以不同的方式来实现所描述的功能,但是这样的实现决策不应被解释为导致偏离本发明的范围。
[0082] 在计算机软件中实现的实施例可以用软件、固件中间件微码、硬件描述语言、或它们的任何组合来实现。代码段或机器可执行指令可以表示过程、函数、子程序、程序、例程、子例程、模块、软件包、类,或指令、数据结构和程序语句的任何组合。代码段可以通过传递和/或接收信息、数据、自变量、参数或存储器内容而与另一代码段或硬件电路连结。信息、自变量、参数、数据等可以通过包括存储器共享、消息传递、令牌传递、网络传输等在内的任何适当手段而被传递、转发或传送。
[0083] 用于实现这些系统和方法的实际软件代码或专用控制硬件并不限制本发明。因此,在不参考特定软件代码的情况下对系统和方法的操作以及行为进行了描述,要理解的是软件和控制硬件可以被设计为基于本文的描述来实现系统和方法。
[0084] 当以软件来实现时,功能可以作为一个或多个指令或代码而被存储在非暂时性计算机可读存储介质或处理器可读存储介质上。本文所公开的方法或算法的步骤可以被体现在可驻留于计算机可读存储介质或处理器可读存储介质上的处理器可执行软件模块中。非暂时性计算机可读介质或处理器可读介质包括计算机存储介质和便于将计算机程序从一个地方传输到另一个地方的有形的存储介质。非暂时性处理器可读存储介质可以是可以由计算机访问的任何可用介质。作为示例而非限制,这种非暂时性处理器可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其他磁存储设备,或者可被用于以指令或数据结构的形式来存储所期望的程序代码并且可被计算机或处理器访问的任何其他有形的存储介质。本文所使用的光盘和磁盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘和蓝光盘,其中磁盘通常磁性地复制数据,而光盘通过激光以光学方式来复制数据。上述的组合也应被包括在计算机可读介质的范围内。另外,方法或算法的操作可以作为代码和/或指令的一个或任何的组合或集合而被驻留在非暂时性的处理器可读介质和/或计算机可读介质上,其可被并入计算机程序产品中。
[0085] 提供了所公开的实施例的先前描述,以使本领域的任何技术人员能够制造或使用本发明。对于本领域技术人员而言,对这些实施例的各种修改将是显而易见的,并且在不脱离本发明的精神或范围的情况下,可以将本文中定义的一般性原理应用于其他实施例。因此,本发明并不旨在受限于本文所示出的实施例,而是应被赋予与所附权利要求以及本文所公开的原理及新颖特征一致的最宽范围。
[0086] 尽管已经公开了各个方面以及实施例,但是可以构想其他方面以及实施例。所公开的各个方面以及实施例是为了说明的目的,而并非旨在进行限制,真正的范围和精神将由所附权利要求指出。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈