本发明涉及信息技术领域,尤其是一种虚拟货币数据处理方法、系统、装置和存储介质。
背景技术:
分布式计算是一种计算方法,和集中式计算是相对的。随着计算技术的发展,有些应用需要非常巨大的计算能力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高计算效率。
分布式计算所用到的计算机可能分别属于不同的单位或个人,因此一项分布式计算任务实际上是由多个单位或个人合力完成的,参与分布式计算机任务的单位或个人理应获得相应的报酬。目前,这种报酬的计算和分配是通过商业谈判来完成的,无论是使用真实现金还是虚拟货币来支付,所付的报酬相当于征用计算机所付的租金。当前的报酬计算过程完全依赖人为参与,不能进行精确的量化,而且计算效率低,无法在分布式计算机任务完成后立即给出准确可靠的分配结果。
技术实现要素:
为了解决上述技术问题,本发明的目的在于提供一种虚拟货币数据处理方法、系统、装置和存储介质。
一方面,本发明一种虚拟货币数据处理方法,用于响应多个装置发出的虚拟货币分配请求,所述多个装置执行了同一分布式计算任务,所述方法包括以下步骤:
统计各装置在所述分布式计算任务中的计算工作量;
根据各装置的计算工作量,分别向各装置分配不同数量的虚拟货币。
进一步地,所述分别向各装置分配不同数量的虚拟货币这一步骤,具体为:
分别向各装置分配至少一种类型的验证字符串;所述验证字符串的类型与所要分配的虚拟货币的数量具有对应关系。
进一步地,所述方法还包括以下步骤:
根据所述装置发出的虚拟货币兑换请求,读取该装置的验证字符串;
当读取到个数达到预设阈值的多个相同类型的验证字符串时,使用验证程序对读取到的所有该类型的验证字符串进行验证;
当所有该类型的验证字符串通过验证时,向该装置分配与该类型验证字符串相应数量的虚拟货币。
进一步地,所述向该装置分配与该类型验证字符串相应数量的虚拟货币这一步骤之后,还包括以下步骤:
对验证程序进行配置,从而使得已通过验证的验证字符串失效。
进一步地,所述验证字符串的类型与虚拟货币的数量之间的对应关系是可变的。
另一方面,本发明还包括一种虚拟货币数据处理系统,用于响应多个装置发出的虚拟货币分配请求,所述多个装置执行了同一分布式计算任务,所述系统包括:
计算工作量统计模块,用于统计各装置在所述分布式计算任务中的计算工作量;
虚拟货币分配模块,用于根据各装置的计算工作量,分别向各装置分配不同数量的虚拟货币。
进一步地,所述虚拟货币分配模块具体用于分别向各装置分配至少一种类型的验证字符串;所述验证字符串的类型与所要分配的虚拟货币的数量具有对应关系。
进一步地,所述系统还包括:
验证字符串读取模块,用于根据所述装置发出的虚拟货币兑换请求,读取该装置的验证字符串;
验证字符串验证模块,用于在读取到个数达到预设阈值的多个相同类型的验证字符串时,使用验证程序对读取到的所有该类型的验证字符串进行验证;
虚拟货币分配模块,用于在所有该类型的验证字符串通过验证时,向该装置分配与该类型验证字符串相应数量的虚拟货币。
另一方面,本发明还包括一种虚拟货币数据处理装置,其包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行本发明方法。
另一方面,本发明还包括一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行本发明方法。
本发明的有益效果是:通过选取可量化且易计算的参量作为计算工作量,使计算工作量能够快速地统计出来,通过将虚拟货币分配数量与计算工作量直接挂钩,或者将与虚拟货币具有对应关系的验证字符串与计算工作量挂钩,能够精确地反映各装置在分布式计算任务中应得的报酬。本发明可以在极短的时间内完成计算工作量统计、虚拟货币计算分配以及结算等过程,从而实现对虚拟货币分配请求的快速自动响应。
附图说明
图1为实施例1虚拟货币数据处理方法的流程图;
图2为实施例3虚拟货币数据处理系统的结构框图。
具体实施方式
本发明的应用对象是执行了同一分布式计算任务、需要分配到作为报酬的虚拟货币的多个装置,这些装置可以是个人电脑和超级计算机,也可以是大型服务器和平板电脑,还可以是其他能够参与分布式计算任务的终端。在应用本发明之前,这些装置共同执行了同一分布式计算任务,这些装置当中的全部或部分发出了虚拟货币分配请求,该请求包含要求根据已完成的分布式计算任务通过分配虚拟货币的形式来支付报酬的内容,使用本发明可以响应虚拟货币分配请求。
实施例1
参照图1,本实施例中,通过以下步骤来响应虚拟货币分配请求:
s1.统计各装置在所述分布式计算任务中的计算工作量;
s2.根据各装置的计算工作量,分别向各装置分配不同数量的虚拟货币。
本实施例中,计算工作量可以通过以下参量表示:在分布式计算任务中接收并处理的原始数据量、输出的结果数据量、计算时长或综合算法难度和计算时长考虑的结果等。
本实施例中,根据各装置的计算工作量直接向其分配虚拟货币,所分配的虚拟货币的数量与计算工作量可以是正比关系。分配虚拟货币的过程,可以是更改各装置对应虚拟货币账户的余额;对于比特币等虚拟货币,分配虚拟货币的过程还可以是更新账本数据。
选取可量化且易计算的参量作为计算工作量,可以使计算工作量能够快速地统计出来,通过虚拟货币的分配数量与计算工作量直接挂钩,能够精确地反映各装置在分布式计算任务中应得的报酬。本实施例中,可以通过嵌入到服务器等装置的程序来执行本发明方法,可以在极短的时间内完成计算工作量统计、虚拟货币计算分配以及结算等过程,从而实现对虚拟货币分配请求的快速自动响应。
实施例2
在本实施例中,优选地,所述步骤s2.分别向各装置分配不同数量的虚拟货币中,虚拟货币是通过验证字符串的形式存在的。即在本实施例中,通过以下步骤来响应虚拟货币分配请求:
s1.通过以下步骤来响应虚拟货币分配请求:
s2.统计各装置在所述分布式计算任务中的计算工作量;根据各装置的计算工作量,分别向各装置分配至少一种类型的验证字符串;所述验证字符串的类型与所要分配的虚拟货币的数量具有对应关系。
各装置分配到验证字符串之后,还可以发出的虚拟货币兑换请求,从而将验证字符串更换成虚拟货币。当接收到各装置发出的虚拟货币兑换请求时,可以执行以下步骤:
s3.读取该装置的验证字符串;
s4.当读取到个数达到预设阈值的多个相同类型的验证字符串时,使用验证程序对读取到的所有该类型的验证字符串进行验证;
s5.当所有该类型的验证字符串通过验证时,向该装置分配与该类型验证字符串相应数量的虚拟货币。
本实施例与实施例1的区别点主要在于本实施例并不直接向各装置分配虚拟货币,而是分配验证字符串,只有当收到虚拟货币兑换请求时,才根据验证字符串与虚拟货币的对应关系,向各装置分配相应数量的虚拟货币。
本实施例中,每一个验证字符串可以是唯一的,同时每一个验证字符串可以属于一个确定的类型。在通过个人计算机和图形化操作系统来实现本发明方法时,可以将每一种类型的验证字符串通过一个具体的形象来描述。优选地,可以将验证字符串分为第一类型、第二类型和第三类型,在图形化操作系统中,第一类型使用“木头”形象来表示,第二类型使用“种子”形象来表示,第三类型使用“石头”形象来表示,具体可以参照现有计算机游戏系统中的装备系统来实现。
本实施例中,不同类型的验证字符串可以对应不同数量的虚拟货币。例如,“木头”对应10个虚拟货币,“种子”对应50个虚拟货币,“石头”对应20个虚拟货币。优选地,验证字符串的类型与虚拟货币的数量之间的对应关系是可变的,具体可以通过人工调整、随机改变或特定触发条件等改变对应关系。例如,在t时刻“木头”对应10个虚拟货币,“种子”对应50个虚拟货币,“石头”对应20个虚拟货币,在t+1时刻“木头”对应15个虚拟货币,“种子”对应50个虚拟货币,“石头”对应25个虚拟货币。
本实施例中,要求当读取到特定个数相同类型的验证字符串时,才使用验证程序对读取到的所有该类型的验证字符串进行验证。具体地,可以设定“特定个数”为1个,这样,只要读取到验证字符串即可使用验证程序对其进行验证;还可以设定“特定个数”为3个,这样,只有读取到3个均为“石头”的验证字符串时才能使用验证程序对这3个“石头”验证字符串进行验证,如果读取到2个“石头”验证字符串和1个“木头”验证字符串,则不进行验证。
本实施例中所述的验证字符串和验证程序可以使用现有加密技术实现。其中,验证程序相当于加密/解密算法,验证字符串相当于口令,具体地,验证程序可以是摘要算法,验证字符串可以是一段长256位的字符串。
当所有该类型的验证字符串通过验证时,向该装置分配与该类型验证字符串相应数量的虚拟货币。具体地,如果“特定个数”为3个,读取到4个均为“石头”的验证字符串,每个“石头”验证字符串对应20个虚拟货币,其中3个通过了验证程序的验证,另外1个没有通过验证程序的验证,则向该装置分配20*3=60个虚拟货币。
进一步作为优选的实施方式,所述向该装置分配与该类型验证字符串相应数量的虚拟货币这一步骤之后,还包括以下步骤:
对验证程序进行配置,从而使得已通过验证的验证字符串失效。
其中,所述失效是指,已通过验证的验证字符串不能再次通过验证。
通过对验证程序的配置,在装置提交已通过验证并兑换了相应虚拟货币的验证字符串的情况下,避免重复向该装置分配虚拟货币。
实施例3
本实施例中的虚拟货币数据处理系统,可以执行实施例1或实施例2中的虚拟货币数据处理方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
参照图2,本实施例中的虚拟货币数据处理系统具体包括:
计算工作量统计模块,用于统计各装置在所述分布式计算任务中的计算工作量;
虚拟货币分配模块,用于根据各装置的计算工作量,分别向各装置分配不同数量的虚拟货币。
其中,计算工作量统计模块和虚拟货币分配模块可以是具有相应功能的硬件模块,也可以是安装在各装置上位机当中的软件程序模块。
优选地,当需要执行实施例2中的方法时,虚拟货币分配模块的功能具体为:根据各装置的计算工作量,分别向各装置分配至少一种类型的验证字符串;所述验证字符串的类型与所要分配的虚拟货币的数量具有对应关系。
以上是对本发明的较佳实施进行了具体说明,但对本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。