CN110599178A - 一种基于智能合约的数据处理方法、装置以及存储介质 - Google Patents
一种基于智能合约的数据处理方法、装置以及存储介质 Download PDFInfo
- Publication number
- CN110599178A CN110599178A CN201910911443.9A CN201910911443A CN110599178A CN 110599178 A CN110599178 A CN 110599178A CN 201910911443 A CN201910911443 A CN 201910911443A CN 110599178 A CN110599178 A CN 110599178A
- Authority
- CN
- China
- Prior art keywords
- type
- virtual assets
- asset
- block
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
在本申请实施例公开了一种基于智能合约的数据处理方法、装置以及存储介质,其中,所述方法包括:区块链的超级节点可以获取第一终端基于第一类虚拟资产发送的业务交互请求;进一步地,基于所述业务交互请求从区块链上获取智能合约;通过调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。由此可见,本申请实施例能够通过风险管控,保障该虚拟资产的使用效率。
Description
技术领域
本申请涉及互联网技术领域,具体涉及数据处理技术领域,尤其涉及一种基于智能合约的数据处理方法、装置以及存储介质。
背景技术
加密货币可以理解为一种虚拟资产,该虚拟资产是一类能够使用密码学原理进行电子数据转移的数字货币。但由于加密货币(即虚拟资产)的数值会随着市场的供给需求而出现上下波动,那么,当这类虚拟资产的数值陡然出现下跌时,会严重降低该虚拟资产的数值的可用性,进而导致用户难以支配该具有过低数值的虚拟资产执行其他数据交互业务,降低了该虚拟资产的使用效率。
申请内容
本申请实施例提供了一种基于智能合约的数据处理方法、装置以及存储介质,该方法可以对第一类虚拟资产进行风险管控,能够保障该虚拟资产的使用效率。
本申请实施例一方面提供了一种基于智能合约的数据处理方法,所述方法包括:
获取第一终端基于第一类虚拟资产发送的业务交互请求;
基于所述业务交互请求从区块链上获取智能合约;
调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型;
监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
其中,所述业务交互请求中包含所述第一终端通过第一用户的私钥对所述第一类虚拟资产进行签名后的签名信息以及所述第一用户的公钥;
所述方法还包括:
基于所述第一用户的公钥对所述签名信息进行签名验证,并在验证通过时确定所述业务交互请求的合法性;
在所述业务交互请求为合法的业务交互请求时,执行所述基于所述业务交互请求从区块链上获取智能合约,调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端的步骤。
其中,所述区块链所在的区块链网络包含用于针对所述第一类虚拟资产提供业务交互服务的多个服务节点;
所述调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端,包括:
通过调用所述智能合约获取每个服务节点针对所述第一类虚拟资产提供的第一参考值;
基于所述第一参考值以及所述第一参考值对应的加权系数,确定与所述第一类虚拟资产对应的第一资产值;
调用所述智能合约将具有所述第一资产值的第一类虚拟资产转换为具有所述第二资产值的第二类虚拟资产;
将所述具有第二资产值的第二类虚拟资产返回给所述第一终端,以使所述第一终端基于所述第二资产值与第二终端进行资产转移。
其中,所述方法还包括:
获取与所述第一类虚拟资产相关联的第一用户的用户账户信息;
将包含所述用户账户信息、所述第一资产值以及所述第二资产值的目标区块写入所述区块链。
其中,所述将包含所述用户账户信息、所述第一资产值以及所述第二资产值的目标区块写入所述区块链,包括:
根据所述用户账号信息以及所述第一资产值以及所述第二资产值,生成待写入所述区块链的目标区块;
将所述目标区块广播至所述区块链上的所有区块链节点;
在确定所述区块链上的所有区块链节点达成共识时,将所述目标区块写入所述区块链。
其中,所述根据所述用户账号信息、所述第一资产值以及所述第二资产值,生成待写入所述区块链的目标区块,包括:
从所述区块链上获取具有最大生成时间戳的区块作为第一区块;
对所述用户账号信息、所述第一资产值以及所述第二资产值进行哈希计算,得到第二区块的哈希值;
将所述第一区块的哈希值作为所述第二区块的父区块哈希值,并将所述第二区块的哈希值作为所述第二区块的默克尔树根;
基于所述父区块哈希值、所述默克尔树根,将所述第二区块作为待写入所述区块链的目标区块;所述目标区块中的生成时间戳用于更新所述区块链上具有最大生成时间戳。
其中,所述监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控,包括:
从所述区块链上获取目标区块,并获取所述目标区块中的所述第一资产值和所述第二资产值;
确定所述第一资产值与所述第二资产值之间的第一比值;所述第一比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第一时刻时的动态变化关系;
通过调用所述智能合约确定所述第一类虚拟资产的第三资产值,所述第三资产值是由所述多个服务节点基于所述第一类虚拟资产提供的第二参考值所确定的;
确定所述第三资产值与所述第二资产值之间的第二比值;所述第二比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第二时刻时的动态变化关系;
在所述第二比值小于所述第一比值,且所述第二比值达到第一风险阈值时,对所述第一类虚拟资产对应的第一用户进行风险提示;所述风险提示用于指示所述第一用户补偿所述第一资产值与所述第三资产值之间的资产差额。
其中,所述方法还包括:
在未获取到所述资产差额,且所述第二比值达到第二风险阈值时,对所述第一类虚拟资产对应的第一用户的用户账号信息进行锁定,对所述第一类虚拟资产进行资产转移;所述第二风险阈值小于所述第一风险阈值,且与所述第二风险阈值相关联的所述第一类虚拟资产的第三资产值大于所述第二资产值。
本申请实施例一方面提供了一种基于智能合约的数据处理装置,所述装置包括:
请求获取模块,用于获取第一终端基于第一类虚拟资产发送的业务交互请求;
合约获取模块,用于基于所述业务交互请求从区块链上获取智能合约;
资产转换模块,用于调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型;
风险监控模块,用于监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
其中,所述业务交互请求中包含所述第一终端通过第一用户的私钥对所述第一类虚拟资产进行签名后的签名信息以及所述第一用户的公钥;
所述请求获取模块,还用于:
基于所述第一用户的公钥对所述签名信息进行签名验证,并在验证通过时确定所述业务交互请求的合法性;在所述业务交互请求为合法的业务交互请求时,执行所述基于所述业务交互请求从区块链上获取智能合约,调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端的步骤。
其中,所述区块链所在的区块链网络包含用于针对所述第一类虚拟资产提供业务交互服务的多个服务节点;
所述资产转换模块包括:
第一获取单元,用于通过调用所述智能合约获取每个服务节点针对所述第一类虚拟资产提供的第一参考值;
第一确定单元,用于基于所述第一参考值以及所述第一参考值对应的加权系数,确定与所述第一类虚拟资产对应的第一资产值;
转换单元,用于调用所述智能合约将具有所述第一资产值的第一类虚拟资产转换为具有所述第二资产值的第二类虚拟资产;
返回单元,用于将所述具有第二资产值的第二类虚拟资产返回给所述第一终端,以使所述第一终端基于所述第二资产值与第二终端进行资产转移。
其中,所述资产转换模块还包括:
第二获取单元,用于获取与所述第一类虚拟资产相关联的第一用户的用户账户信息;
写入单元,用于将包含所述用户账户信息、所述第一资产值以及所述第二资产值的目标区块写入所述区块链。
其中,所述写入单元包括:
生成子单元,用于根据所述用户账号信息以及所述第一资产值以及所述第二资产值,生成待写入所述区块链的目标区块;
广播子单元,用于将所述目标区块广播至所述区块链上的所有区块链节点;
写入子单元,用于在确定所述区块链上的所有区块链节点达成共识时,将所述目标区块写入所述区块链。
其中,所述生成子单元,还用于:
从所述区块链上获取具有最大生成时间戳的区块作为第一区块;对所述用户账号信息、所述第一资产值以及所述第二资产值进行哈希计算,得到第二区块的哈希值;将所述第一区块的哈希值作为所述第二区块的父区块哈希值,并将所述第二区块的哈希值作为所述第二区块的默克尔树根;基于所述父区块哈希值、所述默克尔树根,将所述第二区块作为待写入所述区块链的目标区块;所述目标区块中的生成时间戳用于更新所述区块链上具有最大生成时间戳。
其中,所述风险监控模块包括:
第三获取单元,用于从所述区块链上获取目标区块,并获取所述目标区块中的所述第一资产值和所述第二资产值;
第二确定单元,用于确定所述第一资产值与所述第二资产值之间的第一比值;所述第一比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第一时刻时的动态变化关系;
第三确定单元,用于通过调用所述智能合约确定所述第一类虚拟资产的第三资产值,所述第三资产值是由所述多个服务节点基于所述第一类虚拟资产提供的第二参考值所确定的;
第四确定单元,用于确定所述第三资产值与所述第二资产值之间的第二比值;所述第二比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第二时刻时的动态变化关系;
提示单元,用于在所述第二比值小于所述第一比值,且所述第二比值达到第一风险阈值时,对所述第一类虚拟资产对应的第一用户进行风险提示;所述风险提示用于指示所述第一用户补偿所述第一资产值与所述第三资产值之间的资产差额。
其中,所述风险监控模块,还用于:
在未获取到所述资产差额,且所述第二比值达到第二风险阈值时,对所述第一类虚拟资产对应的第一用户的用户账号信息进行锁定,对所述第一类虚拟资产进行资产转移;所述第二风险阈值小于所述第一风险阈值,且与所述第二风险阈值相关联的所述第一类虚拟资产的第三资产值大于所述第二资产值。
本申请一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
所述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行本申请实施例中上述一方面中的方法。
本申请一方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行本申请实施例中上述一方面中的方法。
在本申请实施例中,区块链的超级节点可以获取第一终端基于第一类虚拟资产(例如,加密货币)发送的业务交互请求;进一步地,基于所述业务交互请求从区块链上获取智能合约;通过调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产(例如,稳定币),将所述第二类虚拟资产返回给所述第一终端;监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。由此可见,区块链中的超级节点可将动态的第一类虚拟资产转换成第二类虚拟资产,进行交易或转账,此外可以对第一类虚拟资产进行风险管控,以保障该虚拟资产的使用效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种网络架构图。
图1b是本申请实施例提供的一种场景示意图。
图2是本申请实施例提供的一种基于智能合约的数据处理方法的流程示意图。
图3是本申请实施例提供的另一种基于智能合约的数据处理方法的流程示意图。
图4a是本申请实施例提供的一种区块链的结构示意图。
图4b是本申请实施例提供的一种新区块生成的流程示意图。
图5是本申请实施例提供的一种基于智能合约的数据处理装置的结构示意图。
图6是本申请实施例提供的一种计算机处理设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1a,是本申请实施例提供的一种网络架构图。如图1a所示,所述网络架构包括用于运行区块链网络的区块链节点系统以及终端A。区块链节点系统是指用于进行节点与节点之间数据共享的系统。
本申请实施例中的区块链节点系统可以包含用于将第一类虚拟资产转换为第二类虚拟资产的超级区块链节点,该超级区块链节点可以简称为超级节点,在该超级节点通过智能合约将第一类虚拟资产转换为第二类虚拟资产时,还可以从该区块链系统中确定出用于提供资产估值服务的服务节点,以快速且有效地获取到这些服务节点对第一类虚拟资产的资产价值进行估值的参考值。
可以理解的是,本申请实施例中的每个服务节点均可以用于对第一类虚拟资产进行估值,以便于区块链节点系统中的超级节点可实时查看针对该第一类虚拟资产所提供的参考值。其中,本申请实施例中可以将所有的加密货币统称为第一类虚拟资产。例如,这些加密货币可以包含比特币,以太坊等具有动态变化特性的数字货币。本申请实施例也可以将具有稳定以及流通特性的稳定货币统称为第二类虚拟资产。例如,美金等价格波动范围小的通用货币。
如图1a所示,该区块链节点系统中可以包括节点A、节点B、…、节点N。其中,节点A可以为区块链节点系统中的超级区块链节点,简称超级节点。可以理解的是,本区块链节点系统中的超级节点可用于接收第一用户的业务交互请求,并将第一类虚拟资产转换为第二类虚拟资产。此外,超级节点通过动态变换的第一类虚拟资产进行风险管控,可以有效的对此次第一类虚拟资产转换为第二类虚拟资产的交易进行止损,进而可以保障该第一类虚拟资产的使用效率。为了保证区块链节点系统内的信息互通,区块链节点系统中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当区块链节点系统中的超级节点接收到业务交互请求并基于业务交互请求转换第一类虚拟资产这一交易时,区块链节点系统中的其他节点便根据共识算法获取该交易,将该交易作为共享数据中的数据进行存储,使得区块链节点系统中全部节点上存储的数据均一致。
对于区块链节点系统中的每个节点,均具有与其对应的节点标识,而且区块链节点系统中的每个节点均可以存储有区块链节点系统中其他节点的节点标识,以便后续根据其他节点的节点标识,将生成的区块广播至区块链节点系统中的其他节点。每个节点中可维护一个如下表所示的节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息,表1中仅以IP地址为例进行说明。
表1
节点名称 | 节点标识 |
节点A | 117.114.151.174 |
节点B | 117.116.189.145 |
… | … |
节点N | 119.123.789.258 |
进一步地,终端A可以为以下任一种:终端、独立的应用程序、API(ApplicationProgramming Interface,应用程序编程接口)或者SDK(Software Development Kit,软件开发工具包),也可以为区块链节点系统中的服务节点;终端A可包括:Hash计算与校验模块、签名与验签模块、交易封装模块、区块链通信模块等。其中,签名与验签模块负责采用数字签名算法对交易数据进行签名,并可校验公钥和签名的匹配情况;此处的数字签名算法可以包括但不限于:RSA(一种签名算法)、DSA(一种签名算法)、ECDSA(一种签名算法),等等。交易封装模块负责根据区块链网络指定的数据结构,对交易数据进行封装。区块链通信模块负责同区块链网络进行通信,上传封装好的交易数据至区块链网络,监听区块链网络中新区块的生成等。
应当理解,如图1a所示,目标用户(第一用户)可以通过终端A向超级节点发送将第一类虚拟资产转换为第二类虚拟资产的请求,即业务交互请求。其中,可以将基于第一类虚拟资产发送业务交互请求的终端A称之为第一终端,终端A所对应的目标用户也可以称之为第一用户。该第二类虚拟资产的资产类型是不同于第一类虚拟资产的类型的。
其中,该业务交互请求可以包含终端A通过目标用户对该第一类虚拟资产进行签名后的签名信息以及该目标用户的公钥。可选的,应当理解,所述业务交互请求还可以包含需要进行资产转移的第一类虚拟资产。此外,通过该业务交互请求所获取到的智能合约可以用于将所述第一类虚拟资产转换为第二类虚拟资产;可以理解的是,该智能合约中还可以包含与该第一类虚拟资产相关联的赎回合约;所述赎回合约用于指定所述第一用户可以在预设的赎回时长内赎回所述第一类虚拟资产。
进一步地,超级节点可以获取该业务交互请求,并基于业务交互请求中所携带的第一用户的公钥对所述签名信息进行验证,并在验证通过时可以确定该业务交互请求的合法性。当该业务交互请求为合法的业务交互请求时,超级节点可以从区块链上获取智能合约。
为便于理解,进一步地,请参见图1b,是本申请实施例提供的一种场景示意图。本申请实施例中可以描述在游戏场景中第一用户通过终端A向区块链节点系统中的超级节点发送将游戏金币(即第一类虚拟货币)转换为游戏钻石(即第二类虚拟货币)的业务交互请求的具体过程。
应当理解,超级节点通过调用智能合约可以将游戏金币智能转换为游戏钻石。可以理解的是,超级节点通过智能合约确定出多个服务节点对游戏金币的估值,并将该估值作为第一参考值,从而可以确定出游戏金币所对应的第一资产值。进一步地,通过调用智能合约将游戏金币转换为具有第二资产值的游戏钻石,并可以将第二类虚拟资产返回给终端A。其中,终端A可以基于该第二资产值在游戏商城购买所需装备,还可以与其他游戏用户进行转账等交易。
可选的,上述图1a中区块链节点系统中的每个节点均共享一条相同的区块链,该区块链可以为图1b所示的区块链。超级节点可以将游戏金币智能转换为游戏钻石这条资产转换记录在该区块链上进行上链。可以理解的是,超级节点可以从区块链上获取具有最大生成时间戳的区块作为第一区块。进一步地,根据第一用户的用户账户信息、第一资产值以及第二资产值生成待写入该区块链中的目标区块(第二区块)。超级节点将该目标区块广播至上述区块链节点系统中的所有区块链节点(比如,用于进行共识处理的共识节点),在确定所有的区块链节点达成共识时,可以将该目标区块写入上述区块链中,即将第二区块作为第一区块的下一区块。
其中,可以理解的是,超级节点可以从上述区块链中获取目标区块(第二区块)的第一资产值和第二资产值,以实现对游戏金币(第一类虚拟货币)与游戏钻石(第二类虚拟货币)的之间的动态变化关系进行实时监控,从而可以对第一类虚拟资产进行风险管控。在某一时刻,第一类虚拟资产与第二类虚拟资产的比值下跌到某一预设阈值时,对终端A进行风险提示,即超级节点可以在第一类虚拟资产与第二类虚拟资产的比值下跌到某一预设阈值时,生成风险提示信息,并将该风险提示信息发送给终端A进行风险提示。可以理解的是,该阈值可以称之为第一风险阈值。该风险提示可用于提示终端A所对应的第一用户对第一类虚拟资产进行补偿。
进一步地,若第一用户没有补偿资产差额,且第一类虚拟资产与第二类虚拟资产的比值下跌至某一预设阈值,对第一用户的账号信息进行锁定并转移第一类虚拟资产。该阈值可以称之为第二风险阈值。其中,第二风险阈值小于第一风险阈值。超级节点通过第动态变换的第一类虚拟资产进行风险管控,可以有效的对此次第一类虚拟资产转换为第二类虚拟资产的交易进行止损,进而可以保障该第一类虚拟资产的使用效率。
其中,区块链节点系统中的超级节点转换第一类虚拟资产、对动态变化的第一类虚拟资产进行风险管控的具体实现方式可以参见下述图2-图5所对应的实施例。
进一步地,请参见图2,是本申请实施例提供的一种基于智能合约的数据处理方法的流程示意图。如图2所示,所述方法可以包括:
步骤S101,获取第一终端基于第一类虚拟资产发送的业务交互请求;
具体地,第一用户可通过第一终端向区块链节点系统中的超级节点发送业务交互请求,该业务交互请求是将第一类虚拟资产转换为第二类虚拟资产的请求。进一步地,超级节点可以获取该业务请求。其中,该业务交互请求包含第一用户需要进行资产转换的第一类虚拟资产(例如,加密货币,也可以理解为一种数字资产)。
步骤S102,基于所述业务交互请求从区块链上获取智能合约;
具体地,当检验出业务交互请求合法时,从区块链网络上获取智能合约。所谓智能合约,是计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的应用在满足一定条件时而执行的代码,根据实际的业务需求代码,用于完成自动化交易。
应当理解,本申请实施例通过调用智能合约确定第一类虚拟资产所对应的第一参考值来确定出第一资产值,进而通过调用智能合约将第一资产值转换第二类虚拟资产对应的第二资产值。此外,本申请实施例还可通过智能合约还可对动态变化的第一类虚拟资产进行风险管控。
步骤S103,调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;
其中,所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型;所述区块链所在的区块链网络包含用于针对所述第一类虚拟资产提供业务交互服务的多个服务节点(例如,每个服务节点可以为一个交易所所部署的用于提供数据交易的终端设备);
具体地,在区块链网络中的多个服务节点均可对第一类虚拟资产进行估值,该估值可以统称为第一参考值,并将第一参考值上传至区块链网络,以使超级节点调用智能合约,从而获取每个服务节点针对所述第一类虚拟资产提供的第一参考值。
进一步地,区块链节点系统中的超级节点可根据每个服务节点的交易成交量、交易所的规模以及信用状况等,针对每个服务节点确定出不同的加权系数。其中,该加权系数可作为对第一类虚拟资产进行估值的加权系数。进一步地,基于每个服务节点所提供第一参考值以及所述第一参考值对应的加权系数,超级节点可以确定出与所述第一类虚拟资产对应的第一资产值。
应当理解,超级节点通过调用智能合约将具有所述第一资产值的第一类虚拟资产转换为具有所述第二资产值的第二类虚拟资产;进一步地,可以将该具有第二资产值的第二类虚拟资产返回给第一终端。基于所转换的第二资产值,第一用户也可以通过第一终端与第二终端所对应的用户进行资产转移。其中,第二终端可以为其他用户进行不同类型资产转换所对应的终端。
其中,可以理解的是,在游戏应用场景下,本申请实施例可以以游戏应用中的积分作为第一类虚拟资产为例,以阐述在该游戏应用场景下可以调用智能合约将积分(即第一类虚拟资产)转换为游戏币(即第二类虚拟资产)的具体过程。其中,第一用户可以在第一终端运行某一游戏应用(例如,游戏A)时,通过完成相应任务获取相应积分。例如,第一用户可以通过每天登录该游戏A获取相应的积分奖励、还可以通过在该游戏A中统计打怪次数、以及与其他游戏者进行互动等获得游戏中的积分,也可以通过节假日礼包抽取积分,此外,通过出售已有装备也可获得积分等。本申请实施例将不对获得积分的具体实现方式进行一一列举。其中,可以理解的是,该超级节点可以通过智能合约将需要转换的一定数量的积分兑换为相应数量的游戏币,以用于在游戏商城购买带有属性的装备,例如,攻击属性,速度属性,防御属性等。
当第一用户通过第一终端向超级节点将积分转换为游戏币。可以理解的是,所转换的游戏币可用于购买游戏商城的相应属性的装备,也可用于与游戏好友进行交易。例如,在向游戏好友主动发起挑战请求时,可以以一定额度的游戏币作为赌注。若对战失败,则所赌注的游戏币进入游戏好友所对应的第二终端的游戏账号中。此外,本申请实施例中的转换后的游戏币还可以用于通过赠送的方式,将游戏币直接赠送至游戏好友所对应的第二终端的游戏账户中,从而增加游戏应用场景中的游戏好友之间的好友度。
当然,本申请实施例所描述的应用场景不局限于上述游戏应用场景,还可以应用于金融领域中,比如,可以通过智能合约将加密货币(即第一类虚拟资产,例如,以太坊)智能兑换为稳定货币(即第二类虚拟资产,例如,美金)。
步骤S104,监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
具体地,区块链节点系统中的超级节点可以从所述区块链上获取目标区块,并能够获取所述目标区块(第二区块)中的所述第一资产值和所述第二资产值。其中,所述目标区块是基于第一用户的用户账户信息,第一资产值以及第二资产值生成的被其他节点(即共识节点)达成共识之后的写入区块链的新区块。进一步地,超级节点可以确定出目标区块所记录的所述第一资产值与所述第二资产值之间的第一比值;其中,所述第一比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第一时刻时的动态变化关系,可以理解的是,第一时刻是第一用户通过第一终端向超级节点发送业务交互请求时,超级节点通过调用智能合约基于第一参考值确定的第一资产值,并将其转换为具有第二资产值的第二类虚拟资产的时刻;
应当理解,因第一类虚拟资产的价格是上下波动的,所以超级节点可以通过调用所述智能合约确定出当前所述第一类虚拟资产的第三资产值,以实现对第一类虚拟资产的实时监控,从而可以基于动态关系对第一类虚拟资产进行风险管控。其中,所述第三资产值是由所述多个服务节点基于所述第一类虚拟资产提供的第二参考值所确定的;应当理解,第三资产值的确定过程可参见上述步骤S103中第一资产值的确定过程,在此不再赘述。
进一步地,超级节点通过调用智能合约可以确定出所述第三资产值与所述第二资产值之间的第二比值。其中,所述第二比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第二时刻时的动态变化关系。可以理解的是,第二时刻超级节点通过调用智能合约在第一类虚拟资产转换为第二类虚拟资产后且在赎回时长内,对第一类虚拟资产进行实时监控的任意时刻。换言之,智能合约中还可以包含赎回合约。其中,该赎回合约可以用于指定所述第一用户在当前时长达到赎回时长且所述第一类虚拟资产未被该超级节点转移给其他用户时,准许该第一用户赎回该第一类虚拟资产。
应当理解,区块链节点系统中的超级节点通过调用智能合约比较第一比值与第二比值的动态关系。进一步地,当第二比值小于第一比值,且所述第二比值达到第一风险阈值时,超级节点可以向第一类虚拟资产所对应的第一终端发送风险提示消息,从而对所述第一类虚拟资产对应的第一用户进行风险提示。
其中,所述风险提示用于指示所述第一用户补偿所述第一资产值与所述第三资产值之间的资产差额。该风险提示可以是一个信息,这里不对其进行限定。可以理解的是,第一用户可以通过在商城购买第一类虚拟资产或将电子钱包中的第一类虚拟资产余额等方式对该资产差额进行补偿,以便日后通过超级节点调用智能合约中的赎回合约在赎回时长内赎回第一类虚拟资产。
可选的,当超级节点对第一用户进行风险提示后,第一用户若没有进行补偿,则超级节点未获取到第一类虚拟资产差额。若第二比值达到第二风险阈值时,超级节点将对所述第一类虚拟资产对应的第一用户的用户账号信息进行锁定,对所述第一类虚拟资产进行资产转移。应当理解,区块链节点系统中的超级节点将第一用户的账户进行锁定,并通过调用智能合约使得第一用户无法赎回第一类虚拟资产。其中,所述第二风险阈值小于所述第一风险阈值,且与所述第二风险阈值相关联的所述第一类虚拟资产的第三资产值大于所述第二资产值。
为便于理解,如上述图1所示,第一用户通过终端A向区块链节点系统中的超级节点发送将以太坊(即第一类虚拟资产)转换为美金(即第二类虚拟资产)的业务交互请求。超级节点基于该业务交互请求从区块链上获取智能合约。进一步地,根据调用智能合约确定出多个服务节点对以太坊的参考值,从而可确定出当前的以太坊的第一资产值为100美金,进而通过调用智能合约可将其转换为80美金。超级节点可以将80美金终返回给终端A,以使终端A基于80美金与其他终端进行转账等交易。
应当理解,此刻,第一资产值与第二资产值之间的第一比值,也就是100美金以太坊与80美金的比值,该第一比值为125%。进一步,超级节点可以监控以太坊与美金的动态变化关系,从而可以及时进而可以保障该以太坊的使用效率。。
其中,该区块链节点系统的智能合约中预设了第一风险阈值为105%,第二风险阈值为102%。在某一时刻时,仍然可通过智能合约确定出以太坊所对应的第三类资产值并确定出第三类资产值与第二类资产值的比值,该比值为第二比值。
可以理解的是,若区块链中多个服务节点确定出第三类资产值为84美金,则第二比值为105%,达到第一风险阈值,则区块链节点系统中的超级节点会向终端A发送一个风险提示的消息,以使第一用户通过终端A补偿第一资产值和第三资产值之间的资产差额,即16美金,以便日后可在赎回时长内赎回以太坊。
若第一用户未进行资产差额的补偿,在某一时刻,当区块链中多个服务节点确定出第三类资产值为81.6美金时,上述第二比值为102%,达到第二风险阈值。此时,超级节点对第一用户的用户账号信息进行锁定,以确保该第一用户当前无法再赎回以太坊(即第一类虚拟资产)。可以理解的是,本申请实施例中的智能合约此时可以授权超级节点将第一用户抵押的以太坊(即第一类虚拟资产)与其他用户进行资产转移,比如,可以在市场上卖掉。其中,1.6美金是冗余手续费。
本申请实施例中,区块链的超级节点可以获取第一终端基于第一类虚拟资产(例如,加密货币)发送的业务交互请求;进一步地,基于所述业务交互请求从区块链上获取智能合约;通过调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产(例如,稳定币),将所述第二类虚拟资产返回给所述第一终端;监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。由此可见,区块链中的超级节点可将动态的第一类虚拟资产转换成第二类虚拟资产,进行交易或转账,此外,可以对第一类虚拟资产进行风险管控,能够保障该虚拟资产的使用效率。。
进一步地,请参见图3,是本申请实施例提供的另一种基于智能合约的数据处理方法的流程示意图。如图3所示,所述方法可以包括:
步骤S201,获取第一终端基于第一类虚拟资产发送的业务交互请求。
具体地,第一用户可通过第一终端向区块链节点系统中的超级节点发送业务交互请求,该业务交互请求是将第一类虚拟资产转换为第二类虚拟资产的请求。进一步地,超级节点可以获取该业务请求。其中,该业务交互请求包含第一用户的第一类虚拟资产(例如,加密货币)和赎回合约。所谓所述赎回合约用于指定所述第一用户可以在预设的赎回时长内赎回所述第一类虚拟资产。
应当理解,在执行S101步骤之前,超级节点可先采用非对称加密算法创建密钥对;此处的非对称加密算法可包括但不限于:Elgamal算法(一种非对称加密算法)、Rabin算法(一种非对称加密算法)、Diffie-Hellman算法(一种非对称加密算法)、ECC算法(椭圆曲线加密算法)。其中,该密钥对包括公钥和私钥;公钥可以用于标识第一终端的交易地址,私钥可以用于第一终端对交易数据进行签名。在分配密钥对之后,可以通过公钥确定第一终端的交易地址,交易地址用于存储第一类虚拟资产;而私钥由第一终端保管。需要说明的是,区块链网络中的交易地址是具有唯一性的,一个交易地址对应一个终端;也就是说,公钥可标记第一终端所指示的第一用户的用户身份。
步骤S202,基于所述第一用户的公钥对所述签名信息进行签名验证,并在验证通过时确定所述业务交互请求的合法性。
其中,上述业务交互请求中包含着第一终端对所述第一类虚拟资产进行签名的签名信息以及所述第一用户的公钥。
区块链节点系统中的超级节点基于所述第一用户的公钥对该签名信息进行签名验证,并在验证通过时,确定该业务交互请求的合法性;当检验出该业务交互请求为合法的业务交互请求时,执行下述S203-S205的步骤。
步骤S203,基于所述业务交互请求从区块链上获取智能合约。
步骤S204,调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端。
其中,所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型。
步骤S205,监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
其中,所述步骤S203-步骤S205的具体实施方式可参见上述图2所对应实施例中对步骤S102-步骤S104的描述,这里将不再赘述。
步骤S206,获取与所述第一类虚拟资产相关联的第一用户的用户账户信息。
具体地,超级节点可以获取与所述第一类虚拟资产相关联的第一用户的用户账户信息。其中,该用户账户信息可包括用户名,用户账号等。
步骤S207,将包含所述用户账户信息、所述第一资产值以及所述第二资产值的目标区块写入所述区块链。
其中,所谓区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
为便于理解,进一步地,请参见图4a,是本申请实施例提供的一种区块链的结构示意图。区块链节点系统中的每个节点均共享一条相同的区块链。区块链由多个区块组成,参见图4a,区块链由多个区块组成。
创始块中包括区块头和区块主体,区块头中存储有本区块输入信息对应的哈希值、版本号、时间戳和难度值,区块主体中存储有用户账号信息以及第一类虚拟资产对应的第一资产值;创始块的下一区块以创始块的哈希值为父区块哈希值,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的哈希值,作为本区块的默克尔树根、父区块的区块哈希值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
在生成区块链中的各个区块时,请参见图4b,是本申请实施例提供的一种新区块生成的流程示意图。区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行哈希值计算,使得计算得到的哈希值可以满足下述公式(1):
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET
(1)
其中,SHA256为计算哈希值所用的哈希值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头哈希值;merkle_root为输入信息的哈希值,即默克尔树根;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为哈希值阈值,该哈希值阈值可以根据nbits确定得到。
这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据上述图1所示的区块链节点系统中其他节点的节点标识,将新生成的区块分别发送给其所在的区块链节点系统中的其他节点,由其他节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
应当理解,如图1所述的区块链节点系统中的超级节点获取第一类虚拟资产相关联的第一用户的用户账户信息,进一步地,从上述图1b所示区块链中获取具有最大时间戳的区块作为第一区块。其中,该区块中可存储有任意用户的账户信息以及进行不同类型资产转换的历史交易,在此不做限定。
超级节点可以将发送业务交互请求的第一用户的账户信息、通过调用智能合约确定出的第一资产值以及与所转换的第二资产值存储至内存池中,并通过尝试不同的随机数,多次进行哈希值计算,使得计算得到的哈希值可以满足上述公式(1),得到第二区块的哈希值。当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到第二区块。进一步地,可以将第一区块所对应的哈希值(默克尔树根)作为第二区块的父区块哈希值,并可以将第二区块的哈希值作为该第二区块的默克尔树根。
应当理解,基于所述父区块哈希值、所述第二区块的默克尔树根,超级节点可以将所述第二区块作为待写入所述区块链的目标区块。其中,所述目标区块中的生成时间戳可用于更新所述区块链上具有最大生成时间戳。
进一步地,超级节点将目标区块(第二区块)广播至上述区块链节点系统的所有区块链节点,在确定区块链节点系统上的所有区块链节点达成共识时,将所述目标区块写入上述图4a所示区块链。
本申请实施例中,区块链的超级节点可以获取第一终端基于第一类虚拟资产(例如,加密货币)发送的业务交互请求;进一步地,基于所述业务交互请求从区块链上获取智能合约;通过调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产(例如,稳定币),将所述第二类虚拟资产返回给所述第一终端;监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。由此可见,区块链中的超级节点可将动态的第一类虚拟资产转换成第二类虚拟资产,进行交易或转账,此外可以对第一类虚拟资产进行风险管控,以保障该虚拟资产的使用效率。
进一步地,请参见图5,是本申请实施例提供的一种基于智能合约的数据处理装置的结构示意图。如图5所示,所述基于智能合约的数据处理装置1可以包括:请求获取模块10,合约获取模块20,资产转换模块30以及风险监控模块40。
所述请求获取模块10,用于获取第一终端基于第一类虚拟资产发送的业务交互请求;
其中,所述业务交互请求中包含所述第一终端通过第一用户的私钥对所述第一类虚拟资产进行签名后的签名信息以及所述第一用户的公钥;
所述请求获取模块10,还用于:
基于所述第一用户的公钥对所述签名信息进行签名验证,并在验证通过时确定所述业务交互请求的合法性;在所述业务交互请求为合法的业务交互请求时,执行所述基于所述业务交互请求从区块链上获取智能合约,调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端的步骤。
所述合约获取模块20,用于基于所述业务交互请求从区块链上获取智能合约;
所述资产转换模块30,用于调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型;
其中,所述区块链所在的区块链网络包含用于针对所述第一类虚拟资产提供业务交互服务的多个服务节点;
所述资产转换模块30包括:第一获取单元301,第一确定单元302,转换单元303,返回单元304,第二获取单元305以及写入单元306
所述第一获取单元301,用于通过调用所述智能合约获取每个服务节点针对所述第一类虚拟资产提供的第一参考值;
所述第一确定单元302,用于基于所述第一参考值以及所述第一参考值对应的加权系数,确定与所述第一类虚拟资产对应的第一资产值;
所述转换单元303,用于调用所述智能合约将具有所述第一资产值的第一类虚拟资产转换为具有所述第二资产值的第二类虚拟资产;
所述返回单元304,用于将所述具有第二资产值的第二类虚拟资产返回给所述第一终端,以使所述第一终端基于所述第二资产值与第二终端进行资产转移。
所述第二获取单元305,用于获取与所述第一类虚拟资产相关联的第一用户的用户账户信息;
所述写入单元306,用于将包含所述用户账户信息、所述第一资产值以及所述第二资产值的目标区块写入所述区块链。
其中,所述写入单元306包括:生成子单元3061,广播子单元3062以及写入子单元3063。
所述生成子单元3061,用于根据所述用户账号信息以及所述第一资产值以及所述第二资产值,生成待写入所述区块链的目标区块;
其中,所述生成子单元3061,还用于:
从所述区块链上获取具有最大生成时间戳的区块作为第一区块;对所述用户账号信息、所述第一资产值以及所述第二资产值进行哈希计算,得到第二区块的哈希值;将所述第一区块的哈希值作为所述第二区块的父区块哈希值,并将所述第二区块的哈希值作为所述第二区块的默克尔树根;基于所述父区块哈希值、所述默克尔树根,将所述第二区块作为待写入所述区块链的目标区块;所述目标区块中的生成时间戳用于更新所述区块链上具有最大生成时间戳。
所述广播子单元3062,用于将所述目标区块广播至所述区块链上的所有区块链节点;
所述写入子单元3063,用于在确定所述区块链上的所有区块链节点达成共识时,将所述目标区块写入所述区块链。
所述风险监控模块40,用于监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
其中,所述风险监控模块40包括:第三获取单元401,第二确定单元402,第三确定单元403,第四确定单元404以及提示单元405。
所述第三获取单元401,用于从所述区块链上获取目标区块,并获取所述目标区块中的所述第一资产值和所述第二资产值;
所述第二确定单元402,用于确定所述第一资产值与所述第二资产值之间的第一比值;所述第一比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第一时刻时的动态变化关系;
所述第三确定单元403,用于通过调用所述智能合约确定所述第一类虚拟资产的第三资产值,所述第三资产值是由所述多个服务节点基于所述第一类虚拟资产提供的第二参考值所确定的;
所述第四确定单元404,用于确定所述第三资产值与所述第二资产值之间的第二比值;所述第二比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第二时刻时的动态变化关系;
所述提示单元405,用于在所述第二比值小于所述第一比值,且所述第二比值达到第一风险阈值时,对所述第一类虚拟资产对应的第一用户进行风险提示;所述风险提示用于指示所述第一用户补偿所述第一资产值与所述第三资产值之间的资产差额。
其中,所述风险监控模块40,还用于:
在未获取到所述资产差额,且所述第二比值达到第二风险阈值时,对所述第一类虚拟资产对应的第一用户的用户账号信息进行锁定,对所述第一类虚拟资产进行资产转移;所述第二风险阈值小于所述第一风险阈值,且与所述第二风险阈值相关联的所述第一类虚拟资产的第三资产值大于所述第二资产值。
在本申请实施例中,区块链的超级节点可以获取第一终端基于第一类虚拟资产(例如,加密货币)发送的业务交互请求;进一步地,基于所述业务交互请求从区块链上获取智能合约;通过调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产(例如,稳定币),将所述第二类虚拟资产返回给所述第一终端;监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。由此可见,区块链中的超级节点可将动态的第一类虚拟资产转换成第二类虚拟资产,进行交易或转账,此外可以对第一类虚拟资产进行风险管控,以保障该虚拟资产的使用效率。
进一步地,请参见图6,是本申请实施例提供的一种计算机处理设备的示意图。如图6所示,所述计算机设备1000可以为上述图1对应实施例中的区块链节点系统中的超级节点,所述计算机设备1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),网络接口1004可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选地还可以是至少一个位于远离前述处理器1001的存储装置。如图6所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图6所示的计算机处理设备1000中,网络接口1004主要用于终端A;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取第一终端基于第一类虚拟资产发送的业务交互请求;
基于所述业务交互请求从区块链上获取智能合约;
调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型;
监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
应当理解,本申请实施例中所描述的计算机处理设备1000可执行前文图2或图3所对应实施例中对所述基于智能合约的数据处理方法的描述,也可执行前文图5所对应实施例中对所述基于智能合约的数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且所述计算机可读存储介质中存储有前文提及的基于智能合约的数据处理装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2或图3所对应实施例中对所述基于智能合约的数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (11)
1.一种基于智能合约的数据处理方法,其特征在于,包括:
获取第一终端基于第一类虚拟资产发送的业务交互请求;
基于所述业务交互请求从区块链上获取智能合约;
调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型;
监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
2.根据权利要求1所述的方法,其特征在于,所述业务交互请求中包含所述第一终端通过第一用户的私钥对所述第一类虚拟资产进行签名后的签名信息以及所述第一用户的公钥;
所述方法还包括:
基于所述第一用户的公钥对所述签名信息进行签名验证,并在验证通过时确定所述业务交互请求的合法性;
在所述业务交互请求为合法的业务交互请求时,执行所述基于所述业务交互请求从区块链上获取智能合约,调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端的步骤。
3.根据权利要求1所述的方法,其特征在于,所述区块链所在的区块链网络包含用于针对所述第一类虚拟资产提供业务交互服务的多个服务节点;
所述调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端,包括:
通过调用所述智能合约获取每个服务节点针对所述第一类虚拟资产提供的第一参考值;
基于所述第一参考值以及所述第一参考值对应的加权系数,确定与所述第一类虚拟资产对应的第一资产值;
调用所述智能合约将具有所述第一资产值的第一类虚拟资产转换为具有所述第二资产值的第二类虚拟资产;
将所述具有第二资产值的第二类虚拟资产返回给所述第一终端,以使所述第一终端基于所述第二资产值与第二终端进行资产转移。
4.根据权利要求3所述的方法,其特征在于,还包括:
获取与所述第一类虚拟资产相关联的第一用户的用户账户信息;
将包含所述用户账户信息、所述第一资产值以及所述第二资产值的目标区块写入所述区块链。
5.根据权利要求4所述的方法,其特征在于,所述将包含所述用户账户信息、所述第一资产值以及所述第二资产值的目标区块写入所述区块链,包括:
根据所述用户账号信息、所述第一资产值以及所述第二资产值,生成待写入所述区块链的目标区块;
将所述目标区块广播至所述区块链上的所有区块链节点;
在确定所述区块链上的所有区块链节点达成共识时,将所述目标区块写入所述区块链。
6.根据权利要求5所述的方法,其特征在于,所述根据所述用户账号信息、所述第一资产值以及所述第二资产值,生成待写入所述区块链的目标区块,包括:
从所述区块链上获取具有最大生成时间戳的区块作为第一区块;
对所述用户账号信息、所述第一资产值以及所述第二资产值进行哈希计算,得到第二区块的哈希值;
将所述第一区块的哈希值作为所述第二区块的父区块哈希值,并将所述第二区块的哈希值作为所述第二区块的默克尔树根;
基于所述父区块哈希值、所述默克尔树根,将所述第二区块作为待写入所述区块链的目标区块;所述目标区块中的生成时间戳用于更新所述区块链上具有最大生成时间戳。
7.根据权利要求3所述的方法,其特征在于,所述监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控,包括:
从所述区块链上获取目标区块,并获取所述目标区块中的所述第一资产值和所述第二资产值;
确定所述第一资产值与所述第二资产值之间的第一比值;所述第一比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第一时刻时的动态变化关系;
通过调用所述智能合约确定所述第一类虚拟资产的第三资产值,所述第三资产值是由所述多个服务节点基于所述第一类虚拟资产提供的第二参考值所确定的;
确定所述第三资产值与所述第二资产值之间的第二比值;所述第二比值用于描述所述第一类虚拟资产与所述第二类虚拟资产在第二时刻时的动态变化关系;
在所述第二比值小于所述第一比值,且所述第二比值达到第一风险阈值时,对所述第一类虚拟资产对应的第一用户进行风险提示;所述风险提示用于指示所述第一用户补偿所述第一资产值与所述第三资产值之间的资产差额。
8.根据权利要求7所述的方法,其特征在于,还包括:
在未获取到所述资产差额,且所述第二比值达到第二风险阈值时,对所述第一类虚拟资产对应的第一用户的用户账号信息进行锁定,对所述第一类虚拟资产进行资产转移;所述第二风险阈值小于所述第一风险阈值,且与所述第二风险阈值相关联的所述第一类虚拟资产的第三资产值大于所述第二资产值。
9.一种基于智能合约的数据处理装置,其特征在于,包括:
请求获取模块,用于获取第一终端基于第一类虚拟资产发送的业务交互请求;
合约获取模块,用于基于所述业务交互请求从区块链上获取智能合约;
资产转换模块,用于调用所述智能合约将所述第一类虚拟资产转换为第二类虚拟资产,将所述第二类虚拟资产返回给所述第一终端;所述第二类虚拟资产的资产类型不同于所述第一类虚拟资产的资产类型;
风险监控模块,用于监控所述第一类虚拟资产与所述第二类虚拟资产之间的动态变化关系,基于所述动态变化关系对所述第一类虚拟资产进行风险管控。
10.一种计算机设备,其特征在于,包括:处理器、存储器以及网络接口;
所述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-8任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910911443.9A CN110599178A (zh) | 2019-09-25 | 2019-09-25 | 一种基于智能合约的数据处理方法、装置以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910911443.9A CN110599178A (zh) | 2019-09-25 | 2019-09-25 | 一种基于智能合约的数据处理方法、装置以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110599178A true CN110599178A (zh) | 2019-12-20 |
Family
ID=68863358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910911443.9A Pending CN110599178A (zh) | 2019-09-25 | 2019-09-25 | 一种基于智能合约的数据处理方法、装置以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110599178A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125267A (zh) * | 2019-12-25 | 2020-05-08 | 安徽兆尹信息科技股份有限公司 | 一种用于资产管理额度控制的区块链数据存取控制方法 |
CN112132198A (zh) * | 2020-09-16 | 2020-12-25 | 建信金融科技有限责任公司 | 数据处理方法、装置、系统和服务器 |
CN112199186A (zh) * | 2020-12-07 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 基于智能合约的数据处理方法、装置、设备及存储介质 |
CN112561198A (zh) * | 2020-12-23 | 2021-03-26 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN112561384A (zh) * | 2020-12-23 | 2021-03-26 | iCALC控股有限公司 | 基于发动机的数据处理方法、装置、设备及可读存储介质 |
CN112561660A (zh) * | 2020-12-23 | 2021-03-26 | iCALC控股有限公司 | 一种资产数据处理方法、装置、设备及可读存储介质 |
CN112613784A (zh) * | 2020-12-29 | 2021-04-06 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN112700246A (zh) * | 2020-12-31 | 2021-04-23 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN113179272A (zh) * | 2021-04-28 | 2021-07-27 | 杭州丽冠科技有限公司 | 基于智能合约的区块链跨链交互方法、装置和计算机可读存储介质 |
CN113645042A (zh) * | 2021-08-30 | 2021-11-12 | 平安医疗健康管理股份有限公司 | 基于区块链的数据处理方法、装置、设备及存储介质 |
WO2022182303A1 (en) * | 2021-02-26 | 2022-09-01 | Cloudpeer Global Teknoloji A. S. | A block chain system |
CN115243080A (zh) * | 2022-09-21 | 2022-10-25 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108428120A (zh) * | 2018-03-16 | 2018-08-21 | 中链科技有限公司 | 一种数字资产互通方法和计算机可读存储介质 |
CN108647958A (zh) * | 2018-03-23 | 2018-10-12 | 北京大学深圳研究生院 | 一种基于区块链的数字资产交易方法和系统 |
CN108694668A (zh) * | 2018-06-15 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 数字资产交易方法、装置、介质以及设备 |
CN109345259A (zh) * | 2018-09-29 | 2019-02-15 | 腾讯科技(深圳)有限公司 | 基于区块链的虚拟资源转移方法、装置、介质及电子设备 |
CN109389504A (zh) * | 2018-10-22 | 2019-02-26 | 昧来网络科技(上海)有限公司 | 基于区块链的资产价格锚定通证系统及计算机可读介质 |
CN109472696A (zh) * | 2018-09-29 | 2019-03-15 | 腾讯科技(深圳)有限公司 | 资产交易方法、装置、存储介质及计算机设备 |
CN109767212A (zh) * | 2018-10-11 | 2019-05-17 | 平安科技(深圳)有限公司 | 基于区块链的资产兑换方法、系统、终端及存储介质 |
CN110084593A (zh) * | 2019-02-03 | 2019-08-02 | 杭州复杂美科技有限公司 | 稳定代币兑换方法、交易方法、设备和存储介质 |
-
2019
- 2019-09-25 CN CN201910911443.9A patent/CN110599178A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108428120A (zh) * | 2018-03-16 | 2018-08-21 | 中链科技有限公司 | 一种数字资产互通方法和计算机可读存储介质 |
CN108647958A (zh) * | 2018-03-23 | 2018-10-12 | 北京大学深圳研究生院 | 一种基于区块链的数字资产交易方法和系统 |
CN108694668A (zh) * | 2018-06-15 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 数字资产交易方法、装置、介质以及设备 |
CN109345259A (zh) * | 2018-09-29 | 2019-02-15 | 腾讯科技(深圳)有限公司 | 基于区块链的虚拟资源转移方法、装置、介质及电子设备 |
CN109472696A (zh) * | 2018-09-29 | 2019-03-15 | 腾讯科技(深圳)有限公司 | 资产交易方法、装置、存储介质及计算机设备 |
CN109767212A (zh) * | 2018-10-11 | 2019-05-17 | 平安科技(深圳)有限公司 | 基于区块链的资产兑换方法、系统、终端及存储介质 |
CN109389504A (zh) * | 2018-10-22 | 2019-02-26 | 昧来网络科技(上海)有限公司 | 基于区块链的资产价格锚定通证系统及计算机可读介质 |
CN110084593A (zh) * | 2019-02-03 | 2019-08-02 | 杭州复杂美科技有限公司 | 稳定代币兑换方法、交易方法、设备和存储介质 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125267A (zh) * | 2019-12-25 | 2020-05-08 | 安徽兆尹信息科技股份有限公司 | 一种用于资产管理额度控制的区块链数据存取控制方法 |
CN112132198A (zh) * | 2020-09-16 | 2020-12-25 | 建信金融科技有限责任公司 | 数据处理方法、装置、系统和服务器 |
CN112132198B (zh) * | 2020-09-16 | 2021-06-04 | 建信金融科技有限责任公司 | 数据处理方法、装置、系统和服务器 |
CN112199186B (zh) * | 2020-12-07 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 基于智能合约的数据处理方法、装置、设备及存储介质 |
CN112199186A (zh) * | 2020-12-07 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 基于智能合约的数据处理方法、装置、设备及存储介质 |
CN112561198A (zh) * | 2020-12-23 | 2021-03-26 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN112561384A (zh) * | 2020-12-23 | 2021-03-26 | iCALC控股有限公司 | 基于发动机的数据处理方法、装置、设备及可读存储介质 |
CN112561660A (zh) * | 2020-12-23 | 2021-03-26 | iCALC控股有限公司 | 一种资产数据处理方法、装置、设备及可读存储介质 |
CN112561198B (zh) * | 2020-12-23 | 2023-12-01 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN112561660B (zh) * | 2020-12-23 | 2023-12-01 | iCALC控股有限公司 | 一种资产数据处理方法、装置、设备及可读存储介质 |
CN112561384B (zh) * | 2020-12-23 | 2023-12-01 | iCALC控股有限公司 | 基于发动机的数据处理方法、装置、设备及可读存储介质 |
CN112613784A (zh) * | 2020-12-29 | 2021-04-06 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN112613784B (zh) * | 2020-12-29 | 2024-05-14 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN112700246B (zh) * | 2020-12-31 | 2023-11-28 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN112700246A (zh) * | 2020-12-31 | 2021-04-23 | iCALC控股有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
WO2022182303A1 (en) * | 2021-02-26 | 2022-09-01 | Cloudpeer Global Teknoloji A. S. | A block chain system |
CN113179272A (zh) * | 2021-04-28 | 2021-07-27 | 杭州丽冠科技有限公司 | 基于智能合约的区块链跨链交互方法、装置和计算机可读存储介质 |
CN113645042A (zh) * | 2021-08-30 | 2021-11-12 | 平安医疗健康管理股份有限公司 | 基于区块链的数据处理方法、装置、设备及存储介质 |
CN115243080B (zh) * | 2022-09-21 | 2022-12-20 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备及存储介质 |
CN115243080A (zh) * | 2022-09-21 | 2022-10-25 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110599178A (zh) | 一种基于智能合约的数据处理方法、装置以及存储介质 | |
WO2021184826A1 (zh) | 基于区块链的资源转移方法、装置、节点设备及存储介质 | |
Warren et al. | 0x: An open protocol for decentralized exchange on the Ethereum blockchain | |
Muzumdar et al. | A trustworthy and incentivized smart grid energy trading framework using distributed ledger and smart contracts | |
TWM543413U (zh) | 利用區塊鏈技術進行交易的網路借貸平台 | |
CN112801658B (zh) | 跨境资源转移真实性审核方法、装置及电子设备 | |
CN109102269A (zh) | 基于区块链的转账方法及装置、区块链节点及存储介质 | |
CN111444209B (zh) | 一种基于区块链的数据处理方法、装置、设备及介质 | |
CN111222841B (zh) | 一种基于区块链的数据分配方法及其设备、存储介质 | |
CN112200567B (zh) | 基于区块链的资源管理方法、装置及电子设备 | |
CN110599348B (zh) | 股权激励的方法、装置、设备及存储介质 | |
CN109395394B (zh) | 预测竞猜游戏部署方法和游戏方法、设备及存储介质 | |
CN112200571A (zh) | 基于区块链的资源发放方法、装置及电子设备 | |
EP3736760A1 (en) | Automated transaction protocol linking renewable energy generation assets to energy power consumers applying distributed digital ledger technology and iot energy meters | |
CN112200572A (zh) | 基于区块链的资源发放方法、装置及电子设备 | |
CN114219342A (zh) | 一种基于非同质化通证的碳资产管理方法及装置 | |
CN112862303A (zh) | 一种基于区块链的众包质量评估的系统及方法 | |
CN112101919A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN114331397A (zh) | 信息处理方法、装置、电子设备和存储介质 | |
CN111222885B (zh) | 数据处理请求背书方法、装置、计算机设备及存储介质 | |
CN111008900A (zh) | 基于智能合约的数据分配方法以及装置 | |
CN110852891B (zh) | 基于轧差的数据处理方法、装置以及可读存储介质 | |
CN114331460A (zh) | 基于区块链的基金交易确认方法、装置、设备及存储介质 | |
CN110599145B (zh) | 一种基于智能合约的数据处理方法、装置以及存储介质 | |
CN109395392B (zh) | 预测竞猜游戏部署方法和游戏方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |