虚拟资产交易方法、装置及区块链网络节点
技术领域
本公开涉及通信技术领域,具体涉及一种虚拟资产交易方法、装置及区块链网络节点。
背景技术
当下,网络游戏风靡全球,成为众多人休闲娱乐的重要方式,各种各样的网络游戏在PC(个人电脑)端或手机端层出不穷。网络游戏中存在着很多不同属性的虚拟物品或资产,提高了玩家的游戏体验。
在现有的网络游戏中,虚拟物品的交易主要有两种方式:1、网络游戏本身的线上交易平台,这种方式需要通过游戏本身的货币与交易方进行,没法在不同游戏之间流通,甚至某些游戏在它自己游戏的不同服务器都没法流通。2、游戏玩家之间通过第三方软件(比如支付宝、微信)进行支付,同时在游戏中交易虚拟资产。这种线下交易模式存在极大隐患,如果买家先付钱,可能造成买家付了钱,而没收到游戏虚拟资产或者收到的不相符;如果卖家先在游戏中给买家虚拟资产,可能造成买家抵赖,不进行支付。
发明内容
为克服相关技术中存在的问题,本公开提供一种虚拟资产交易方法、装置及区块链网络节点,能够跨游戏,且安全可追溯地进行虚拟资产的交易。
根据本公开实施例的第一方面,提供一种虚拟资产交易方法,应用于区块链网络节点,所述方法包括:
接收卖家账户发布的用于出售虚拟资产的卖家订单;
接收买家账户发布的针对所述卖家订单的下单操作;
将所述买家账户中,与所述卖家订单对应价格的区块链代币进行预授权;
在确定所述虚拟资产交易完成后,将预授权的区块链代币转入所述卖家账户。
根据本公开实施例的第二方面,提供一种虚拟资产交易装置,应用于区块链网络节点,所述装置包括:
订单发布模块,用于接收卖家账户发布的用于出售虚拟资产的卖家订单;
下单模块,用于接收买家账户发布的针对所述卖家订单的下单操作;
预授权模块,用于将所述买家账户中,与所述卖家订单对应价格的区块链代币进行预授权;
交易模块,用于在确定所述虚拟资产交易完成后,将预授权的区块链代币转入所述卖家账户。
根据本公开实施例的第三方面,提供一种计算机程序产品,所述计算机程序产品包含能够由可编程的装置执行的计算机程序,所述计算机程序具有当由所述可编程的装置执行时用于执行上述第一方面中任一项所述的方法的代码部分。
根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行上述第一方面中任一项所述的方法。
根据本公开实施例的第五方面,提供一种区块链网络节点,包括非临时性计算机可读存储介质;以及一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序;所述非临时性计算机可读存储介质中存储有用于执行如权利要求上述第一方面所述的方法的指令。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开实施例中,通过区块链来实现虚拟资产的交易,卖家账户可在区块链网络节点中发布用于出售虚拟资产的卖家订单,想要购买该虚拟资产的买家账户可以针对卖家订单进行下单操作,之后会对买家账户中对应虚拟资产价格的区块链代币进行预授权,在确定虚拟资产交易完成后,再将预授权的区块链代币转入卖家账户。可见,由于区块链的特性,不存在单点故障问题,资产交易信息全网同步,交易信息无法修改、且可追溯,利用区块链完成了交易之间的担保,交易有保障;同时,资产交易都使用区块链代币,可以解决不同游戏间没法流通的问题,保障了游戏玩家的利益。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种游戏资产交易平台的示意图;
图2是根据一示例性实施例示出的一种虚拟资产交易方法的流程图;
图3是根据一示例性实施例示出的一种游戏资产交易的示意图;
图4是根据一示例性实施例示出的另一种游戏资产交易的示意图;
图5是根据一示例性实施例示出的一种虚拟资产交易装置的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
本公开实施例中,对于虚拟资产包括哪些具体的资产不作限定,例如可以是各种网络游戏中的游戏装备、游戏货币等资产,或者也可以是各商场的购物积分、购物优惠券等资产。为了更好地阐明本公开技术方案,在下文中将以虚拟资产为游戏中的资产为例进行说明。
本公开实施例中,区块链网络节点可以是区块链网络中的任一节点,在区块链网络中,一个节点的信息更新后,会同步到区块链网络的所有节点中,防止单点故障,保证信息的安全性。在实际应用中,可以通过在区块链网络的每个节点中集成游戏资产交易平台来实现本公开的虚拟资产交易方法。如图1所示,图1为根据一示例性实施例示出的一种游戏资产交易平台的示意图,游戏资产交易平台可以与多个网络游戏进行信息交互,在每个游戏资产交易平台中可以集成有信息服务、订单管理、代币管理、用户管理等模块。
区块链:主要用于游戏资产交易中所有的用户信息、订单信息、代币信息的存储与维护,以及以上各种信息的全网数据同步与共识。利用区块链去中心化的特性,各个区块链全节点上都维护了游戏资产交易的所有信息,可以便于对游戏交易过程的审计,也避免了传统游戏资产交易中心服务器宕机可能造成的各种损失。游戏资产交易平台中其他模块都基于区块链,其实现方式也分两种:1)通过智能合约实现,智能合约记录用户信息、订单信息、代币信息,并在合约中提供接口对这些信息进行操作,该智能合约的代码公开发行到区块链上,受公众监督和审阅。2)通过区块链本身实现,用户信息、订单信息、代币信息的管理功能可通过区块链节点内部的逻辑实现,并提供相应的接口。
用户管理模块:游戏玩家使用原本游戏的账号密码登录游戏,当游戏玩家想要进行游戏资产的安全交易时,跳转到游戏资产交易平台中。若该玩家在游戏资产交易平台中无账户时,需要新建账户,并将该账户与游戏账号绑定;若已经在游戏资产交易平台中有账户了,则直接将已有账户与游戏账号进行绑定。通过绑定后的账户就可以得到所绑定游戏账号的相关信息,进而可以将这些信息用到之后可能发生的游戏资产交易之中。
订单管理模块:该模块实现了游戏资产交易的卖家订单发布、卖家订单撤销、买家下单等功能。卖家发布一条订单,即在区块链上写一条记录,订单消息包括卖家所在游戏、游戏账号、出售的游戏资产、区块链代币售价、出售时间;卖家撤销订单其实是将区块链上的这条记录标记为无效;买家下单是买家将相应数目的代币发送到代币管理模块,进行预授权操作。
代币管理模块:在游戏资产交易平台中全部以区块链代币进行交易,该模块实现了代币转移的相关功能接口,其中较为重要的功能包括:1)当买家进行下单操作后,买家相应数目的代币存入代币管理模块,完成预授权操作。2)当卖家在游戏中将正确的游戏资产交易给买家游戏账号,此操作也会在区块链游戏资产交易平台写入一条出售记录,若买家在游戏资产交易平台中确认该交易,代币管理模块就会将预授权的代币转到卖家账户;若买家超时未确认,则代币管理模块会根据平台记录确认是否将预授权的代币转到卖家账户。3)当卖家在游戏中转给买家错误的游戏资产或不转时,区块链游戏资产交易平台可以根据买家是否确认,并查看平台记录,决定是否将预授权的代币退给买家。4)区块链代币与真实社会法定货币的兑换。
消息服务模块:游戏资产交易平台与现有的游戏解耦存在,消息服务模块为两者之间提供了重要桥梁。现有游戏只需集成相应SDK,然后调用相关API即可与区块链游戏资产交易平台进行消息通信。
请参考图2,图2是根据一示例性实施例示出的一种应虚拟资产交易方法的流程图。如图2所示,该方法包括以下步骤。
步骤S11:接收卖家账户发布的用于出售虚拟资产的卖家订单;
步骤S12:接收买家账户发布的针对所述卖家订单的下单操作;
步骤S13:将所述买家账户中,与所述卖家订单对应价格的区块链代币进行预授权;
步骤S14:在确定所述虚拟资产交易完成后,将预授权的区块链代币转入所述卖家账户。
虚拟资产比如为游戏资产,可以通过图1所示区块链网络节点的游戏资产交易平台中订单管理模块来接收卖家发布的卖家订单,以及买家的下单操作,通过代币管理模块对买家账户中,对应价格的区块链代币进行预授权,并在确定交易成功后,将预授权的区块链代币转入卖家账户。例如,XX游戏的玩家A想要出售游戏装备1,售价为30个区块链代币,那么游戏玩家A可以从XX游戏中转到游戏资产交易平台,发布一条包含XX游戏的名称、自己的游戏账户、要出售的游戏装备1、售价30等信息的卖家订单,游戏玩家B可以在游戏资产交易平台查看到卖家订单,如果要买游戏装备1,可以针对玩家A发布的卖家订单进行下单操作,之后,代币管理模块会对玩家B账户中的30个区块链代币进行预授权,如果玩家B确认了游戏装备1已经成功完成交易,再将30个预授权的区块链代币转入玩家A的账户。
在一种可能的实施方式中,所述虚拟资产为目标游戏中的游戏资产,所述方法还包括:
接收将卖家用户在所述目标游戏中的游戏账号绑定到所述卖家账户的操作;
接收将买家用户在所述目标游戏中的游戏账号绑定到所述买家账户的操作;
其中,同一区块链账户可绑定多个游戏账号。
也即是说,用户在游戏资产交易平台中的账户可以绑定多个游戏账号,绑定游戏账号后,区块链网络节点可以获取到游戏账户对应的游戏信息,从而通过区块链网络进行虚拟资产交易。这样,可以实现不同游戏或者同一游戏的不同服务器直接进行资产的交易,同一用户可以将游戏A中的资产出售转换为区块链代币,再用区块链代币购买游戏B中的资产。
在一种可能的实施方式中,在将所述买家账户中,与所述卖家订单对应价格的区块链代币进行预授权之后,还包括:
监听所述目标游戏中针对所述游戏资产的交易记录;
若所述交易记录指示所述游戏资产交易成功,且接收到所述买家用户确认交易完成的操作,则确定所述游戏资产交易完成。
绑定游戏账号后,玩家在游戏中的交易会形成记录反馈到区块链网络节点的游戏资产交易平台中,如果交易记录指示买卖双方玩家在游戏中完成交易,同时,买方玩家在游戏资产交易平台中确认交易完成,那么说明游戏资产交易完成,可以将预授权的区块链代币转入卖方玩家的账户。
在一种可能的实施方式中,若超时未收到所述买家用户确认交易完成的操作,或接收到所述买家用户确认交易失败的操作,则根据所述交易记录,确定是否将所述预授权的区块链代币退回所述买家账户。
对于预授权的区块链代币,如果判断交易失败,会退还到买家账户,保证买家账户的资金安全,避免付了款没收到虚拟资产的情况的发生。
在一种可能的实施方式中,可以通过智能合约记录用户信息、订单信息、代币信息,并在所述智能合约中提供接口操作各种信息。
智能合约是区块链的核心构成要素,为静态的底层区块链数据赋予了灵活可编程的机制和算法,能够实现控制和管理区块链上的数据的功能,其自动化和可编程性赋予了区块链无数的应用可能。
以下将通过完整的实施例对本公开提供的虚拟资产交易方法进行说明。
实施例一:
如图3所示,区块链网络节点中用户管理模块、订单管理模块、代币管理模块都用智能合约实现,游戏资产交易过程如下:
1、游戏玩家A登录游戏,并绑定游戏账号A到区块链账号a;游戏玩家B登录同一游戏,并绑定游戏账号B到区块链账号b;
2、玩家A利用法币为区块链账号a充值区块链代币;
3、玩家B在区块链游戏资产交易平台发布卖家订单P,该订单包括游戏名称、自己的游戏账号、出售的游戏资产,以及售价多少区块链代币;
4、玩家A在区块链游戏资产交易平台下单买P;
5、区块链游戏资产交易平台中的订单管理模块收到下单消息后,将买家的区块链代币通过代币管理模块进行预授权;
6、卖家在游戏上交易游戏资产;
7、买家在游戏上确认交易,此时会向订单管理模块发送确认消息;
8、确认交易后,代币管理模块会转移区块链代币给卖家。
实施例二:
如图4所示,当某玩家在玩游戏A,其中他在游戏A中有资产。通过区块链游戏资产交易平台,该玩家可以将他在游戏A中的资产发布订单出售,进而转化为区块链游戏资产交易平台的代币。当该玩家想要玩游戏B时,他可以用他在区块链游戏资产交易平台所拥有的代币去买游戏B中的资产。
以上方式在区块链的安全机制下,实现了同一玩家在不同游戏或者同一游戏不同服务器之间的游戏资产便捷、安全的转移,保障了游戏玩家的利益。
请参见图5,基于同一发明构思,本公开提供一种虚拟资产交易装置500,该数据处理装置500应用于区块链网络节点,包括:
订单发布模块501,用于接收卖家账户发布的用于出售虚拟资产的卖家订单;
下单模块502,用于接收买家账户发布的针对所述卖家订单的下单操作;
预授权模块503,用于将所述买家账户中,与所述卖家订单对应价格的区块链代币进行预授权;
交易模块504,用于在确定所述虚拟资产交易完成后,将预授权的区块链代币转入所述卖家账户。
可选的,所述虚拟资产为目标游戏中的游戏资产,所述装置500还包括:
第一账户绑定模块,用于接收将卖家用户在所述目标游戏中的游戏账号绑定到所述卖家账户的操作;
第二账户绑定模块,用于接收将买家用户在所述目标游戏中的游戏账号绑定到所述买家账户的操作;
其中,同一区块链账户可绑定多个游戏账号。
可选的,所述装置500还包括:
信息获取模块,用于在将所述买家账户中,与所述卖家订单对应价格的区块链代币进行预授权之后,监听所述目标游戏中针对所述游戏资产的交易记录;
交易确定模块,用于在所述交易记录指示所述游戏资产交易成功,且接收到所述买家用户确认交易完成的操作时,确定所述游戏资产交易完成。
可选的,所述交易确定模块还用于:
若超时未收到所述买家用户确认交易完成的操作,或接收到所述买家用户确认交易失败的操作,则根据所述交易记录,确定是否将所述预授权的区块链代币退回所述买家账户。
可选的,所述装置500还包括:
信息管理模块,用于通过智能合约记录用户信息、订单信息、代币信息,并在所述智能合约中提供接口操作各种信息。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在另一示例性实施例中,还提供了一种计算机程序产品,所述计算机程序产品包含能够由可编程的装置执行的计算机程序,所述计算机程序具有当由所述可编程的装置执行时用于执行上述的虚拟资产交易方法的代码部分。
在另一示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行上述的虚拟资产交易方法。
在另一示例性实施例中,还提供了一种区块链网络节点,包括:非临时性计算机可读存储介质;以及一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序;所述非临时性计算机可读存储介质中存储有用于执行上述虚拟资产交易方法的指令。
在本公开所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以对本公开的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本公开的方法及其核心思想,不应理解为对本公开的限制。本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本公开的保护范围之内。