基于区块链的竞赛仲裁方法、系统、核心节点及存储介质与流程

文档序号:16534120发布日期:2019-01-05 11:02阅读:233来源:国知局
基于区块链的竞赛仲裁方法、系统、核心节点及存储介质与流程

本发明涉及分布式存储技术领域,尤其涉及一种基于区块链的竞赛仲裁方法、基于区块链的竞赛仲裁系统、核心节点以及计算机可读存储介质。



背景技术:

分布式竞赛是指多个参赛者在不同区域进行同一类别的竞赛,通过统计各个参赛者的成绩,以给予仲裁。但是成绩是由各个区域人工上传,不免存在真实性差的缺点。



技术实现要素:

本发明的主要目的在于提供一种基于区块链的竞赛仲裁方法、系统、核心节点以及计算机可读存储介质,旨在利用区块链原理统计竞赛信息,从而实现分布式竞赛结果的准确性以及公平性。

为实现上述目的,本发明提供一种基于区块链的竞赛仲裁方法,所述基于区块链的竞赛仲裁方法包括以下步骤:

在检测到区块链系统的节点的竞赛信息时,获取并记录所述竞赛信息;

将所述竞赛信息广播至其它节点,以使其它节点记录所述竞赛信息;

根据所有节点记录的所述竞赛信息确定竞赛仲裁结果。

优选地,所述检测到区块链系统的节点的竞赛信息之后,还包括:

判断所述节点当前的网络状况是否满足预设条件;

在所述节点当前的网络状况不满足所述预设条件时,存储所述竞赛信息至预设区域;

在所述节点当前的网络状况满足所述预设条件时,执行所述获取并记录所述竞赛信息的步骤。

优选地,所述获取并记录所述竞赛信息的步骤包括:

获取所述竞赛信息的时间戳;

根据所述时间戳确定所述竞赛信息的记录位置;

将所述竞赛信息记录至所述记录位置。

优选地,所述竞赛信息包括第一竞赛信息以及第二竞赛信息,所述第一竞赛信息为所述节点生成,所述第二竞赛信息为所述区块链系统生成。

优选地,所述根据所有节点记录的所述竞赛信息确定竞赛仲裁结果的步骤包括:

校验所有节点记录的所述竞赛信息,以获取所有节点的所述第一竞赛信息;

根据所有节点的所述第一竞赛信息确定所述竞赛仲裁结果。

优选地,所述获取所有节点的所述第一竞赛信息的同时,还包括:

删除所有节点的所述第二竞赛信息。

优选地,所述根据所有节点的所述第一竞赛信息确定所述竞赛仲裁结果的步骤包括:

获取所有节点的所述第一竞赛信息的时间戳;

根据所述时间戳排布所述第一竞赛信息,并根据排布结果确定所述竞赛仲裁结果。

为实现上述目的,本发明还提供一种核心节点,所述核心节点包括:

所述核心节点包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于区块链的竞赛仲裁程序,所述基于区块链的竞赛仲裁程序被所述处理器执行时实现上述基于区块链的竞赛仲裁方法的步骤。

为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于区块链的竞赛仲裁程序,所述基于区块链的竞赛仲裁程序被处理器执行时实现上述基于区块链的竞赛仲裁方法的步骤。

为实现上述目的,本发明还提供一种基于区块链的竞赛仲裁系统,所述基于区块链的竞赛仲裁系统包括:

上述核心节点以及客户端,所述客户端用于:在检测到区块链系统的节点的竞赛信息时,获取所述竞赛信息,并在节点当前的网络状况不满足预设条件时,存储所述竞赛信息至预设区域,在节点当前的网络状况满足预设条件时,将所述竞赛信息上传至核心节点,以供所述核心节点记录。

本发明提供的基于区块链的竞赛仲裁方法、系统、核心节点以及计算机可读存储介质,在检测到区块链系统的节点的竞赛信息时,获取并记录竞赛信息;将竞赛信息广播至其它节点,以使其它节点记录竞赛信息;根据所有节点记录的竞赛信息确定竞赛仲裁结果。这样,利用区块链原理统计竞赛信息,从而实现分布式竞赛结果的准确性以及公平性。

附图说明

图1为本发明实施例方案涉及的终端的硬件运行环境示意图;

图2为本发明基于区块链的竞赛仲裁方法第一实施例的流程示意图;

图3为本发明基于区块链的竞赛仲裁方法第二实施例的流程示意图;

图4为本发明基于区块链的竞赛仲裁方法第三实施例的流程示意图;

图5为本发明基于区块链的竞赛仲裁方法第四实施例的流程示意图;

图6为本发明基于区块链的竞赛仲裁方法第五实施例的流程示意图;

图7为本发明基于区块链的竞赛仲裁方法第六实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种基于区块链的竞赛仲裁方法,利用区块链原理统计竞赛信息,从而实现分布式竞赛结果的准确性以及公平性。

如图1所示,图1是本发明实施例方案涉及的终端的硬件运行环境示意图。

本发明实施例终端可以是核心节点,也可以是节点。

如图1所示,该核心节点可以包括:处理器1001,例如cpu,存储器1002,通信总线1003。其中,通信总线1003用于实现该核心节点中各组成部件之间的连接通信。存储器1002可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1002可选的还可以是独立于前述处理器1001的存储装置。

如图1所示,作为一种计算机存储介质的存储器1002中可以包括基于区块链的竞赛仲裁程序。

在图1所示的核心节点中,处理器1001可以用于调用存储器1002中存储的基于区块链的竞赛仲裁程序,并执行以下操作:

在检测到区块链系统的节点的竞赛信息时,获取并记录所述竞赛信息;

将所述竞赛信息广播至其它节点,以使其它节点记录所述竞赛信息;

根据所有节点记录的所述竞赛信息确定竞赛仲裁结果。

进一步地,处理器1001可以调用存储器1002中存储的基于区块链的竞赛仲裁程序,还执行以下操作:

判断所述节点当前的网络状况是否满足预设条件;

在所述节点当前的网络状况不满足所述预设条件时,存储所述竞赛信息至预设区域;

在所述节点当前的网络状况满足所述预设条件时,执行所述获取并记录所述竞赛信息的步骤。

进一步地,处理器1001可以调用存储器1002中存储的基于区块链的竞赛仲裁程序,还执行以下操作:

获取所述竞赛信息的时间戳;

根据所述时间戳确定所述竞赛信息的记录位置;

将所述竞赛信息记录至所述记录位置。

进一步地,处理器1001可以调用存储器1002中存储的基于区块链的竞赛仲裁程序,还执行以下操作:

所述竞赛信息包括第一竞赛信息以及第二竞赛信息,所述第一竞赛信息为所述节点生成,所述第二竞赛信息为所述区块链系统生成。

进一步地,处理器1001可以调用存储器1002中存储的基于区块链的竞赛仲裁程序,还执行以下操作:

校验所有节点记录的所述竞赛信息,以获取所有节点的所述第一竞赛信息;

根据所有节点的所述第一竞赛信息确定所述竞赛仲裁结果。

进一步地,处理器1001可以调用存储器1002中存储的基于区块链的竞赛仲裁程序,还执行以下操作:

删除所有节点的所述第二竞赛信息。

进一步地,处理器1001可以调用存储器1002中存储的基于区块链的竞赛仲裁程序,还执行以下操作:

获取所有节点的所述第一竞赛信息的时间戳;

根据所述时间戳排布所述第一竞赛信息,并根据排布结果确定所述竞赛仲裁结果。

参照图2,在第一实施例中,所述基于区块链的竞赛仲裁方法包括:

步骤s10、在检测到区块链系统的节点的竞赛信息时,获取并记录所述竞赛信息;

本实施例中,执行主体可以是核心节点。

本实施例中,竞赛组织者构建区块链系统,即生成核心节点,每个参赛者作为节点参与通信,以按照区块链原理管理参赛者的竞赛信息。每个节点可通过终端、移动终端等作为载体实现通信,终端可以是pc等,移动终端可以是手机、可穿戴设备等。使用区块链技术可以实现对竞赛信息的恢复以及对竞赛信息异常的检测,有效保证了每个参赛者的竞赛信息的安全性,并且分布式存储避免了中心服务器庞大的存储量以及运算量。

竞赛信息包括竞赛进程中参赛者所产生的竞赛成绩、竞赛成绩生成的时间戳以及竞赛成绩生成的地址中的至少一个,比如在射击比赛中,a区域的参赛者在8点30分获得10环,b区域的参赛者在8点35分获得9环,那么a区域、8点30分、10环,以及b区域、8点35分、9环均为竞赛信息。

在节点检测到竞赛信息时,记录,并将竞赛信息发送至核心节点,以供核心节点记录,并在仲裁时对各个节点记录的竞赛信息进行核对。

步骤s20、将所述竞赛信息广播至其它节点,以使其它节点记录所述竞赛信息;

本实施例中,在按照区块链的原理管理参赛者的竞赛信息时,每一条竞赛信息均广播至其它节点,核心节点核在仲裁时对各个节点记录的竞赛信息进行核对,以实现竞赛信息的去中心化管理。

需要说明的是,在一场竞技比赛中,竞赛组织者可构建一个区块链系统,也可以构建多个区块链系统,可根据实际应用进行设置。

在将竞赛信息广播至其它节点时,根据sha256函数以及非对称加密算法对竞赛信息进行处理,以实现竞赛信息的安全性以及可靠性。具体地,利用sha256函数以及私钥依次处理竞赛信息得到数字签名,并将明文、数字签名以及公钥广播至其它节点。其它节点在接收到明文、数字签名以及公钥时,利用sha256函数处理明文得到第一字符串,并利用公钥解密数字签名得到第二字符串,在第二字符串与第一字符串一致时,则判定竞赛信息真实。

步骤s30、根据所有节点记录的所述竞赛信息确定竞赛仲裁结果。

本实施例中,在所有节点记录的该条竞赛信息一致,或者超过一定比例的节点记录的该条竞赛信息一致,则判定该条竞赛信息有效,并根据该条竞赛信息确定竞赛仲裁结果。比如,所有节点记录的a区域的参赛者的最终成绩为10环,所有节点记录的b区域的参赛者的最终成绩为9环,那么获胜者即为a区域的参赛者。

在第一实施例中,在检测到区块链系统的节点的竞赛信息时,获取并记录竞赛信息;将竞赛信息广播至其它节点,以使其它节点记录竞赛信息;根据所有节点记录的竞赛信息确定竞赛仲裁结果。这样,利用区块链原理统计竞赛信息,从而实现分布式竞赛结果的准确性以及公平性。

在第二实施例中,如图3所示,在上述图2所示的实施例基础上,所述检测到区块链系统的节点的竞赛信息之后,还包括:

步骤s101、判断所述节点当前的网络状况是否满足预设条件;

步骤s102、在所述节点当前的网络状况不满足所述预设条件时,存储所述竞赛信息至预设区域;

步骤s103、在所述节点当前的网络状况满足所述预设条件时,执行所述获取并记录所述竞赛信息的步骤。

在实际应用中,难免会出现节点的网络状况较差的情况,比如断网、网络不稳定等。在节点的网络状况不满足预设条件时,可将竞赛信息存储至预设区域,在节点的网络状况满足预设条件时,将竞赛信息上传至核心节点。其中,预设区域可以是终端的本地存储。

需要说明的是,在节点或者核心节点记录竞赛信息时,竞赛信息按照一定的规律进行排布,比如竞赛信息按照竞赛信息的时间戳排布,这样在网络恢复时,根据时间戳即可确定本地上传的竞赛信息的记录位置。其中,竞赛信息的时间戳是指竞赛信息的生成时间。

在第二实施例中,在节点当前的网络状况不满足预设条件时,存储竞赛信息至预设区域,并在网络状况满足预设条件时,获取并记录竞赛信息。这样,为区块链技术中节点网络状况不佳的情况提供了解决方案。

在第三实施例中,如图4所示,在上述图2至图3所示的实施例基础上,所述获取并记录所述竞赛信息的步骤包括:

步骤s11、获取所述竞赛信息的时间戳;

步骤s12、根据所述时间戳确定所述竞赛信息的记录位置;

步骤s13、将所述竞赛信息记录至所述记录位置。

本实施例中,在竞赛信息生成时即生成时间戳。在节点或者核心节点记录竞赛信息时,竞赛信息按照一定的规律进行排布,比如竞赛信息按照竞赛信息的时间戳排布,这样在网络恢复时,根据时间戳即可确定本地上传的竞赛信息的记录位置。

在第三实施例中,根据时间戳确定竞赛信息的记录位置,这样,保证了竞赛信息记录的有序性。

在第四实施例中,如图5所示,在上述图2至图4所示的实施例基础上,所述根据所有节点记录的所述竞赛信息确定竞赛仲裁结果的步骤包括:

步骤s31、校验所有节点记录的所述竞赛信息,以获取所有节点的所述第一竞赛信息;

步骤s32、根据所有节点的所述第一竞赛信息确定所述竞赛仲裁结果。

本实施例中,竞赛信息包括第一竞赛信息以及第二竞赛信息,第一竞赛信息为节点生成,第二竞赛信息为区块链系统生成。

由于区块链的共享特性,其它节点可通过该共享特性推测对手的竞赛进程,为了避免此种情况所引发的恶意干扰等行为,区块链系统随机生成第二竞赛信息。其中,第二竞赛信息与第一竞赛信息均按照时间戳进行记录。

需要说明的是,第一竞赛信息以及第二竞赛信息可通过sha256函数以及非对称加密算法进行区分。

在第四实施例中,校验所有节点记录的竞赛信息,并根据所有节点的第一竞赛信息确定竞赛仲裁结果。这样,避免了区块链的共享特性所引发的恶意干扰等行为。

在第五实施例中,如图6所示,在上述图2至图5所示的实施例基础上,所述获取所有节点的所述第一竞赛信息的同时,还包括:

步骤s33、删除所有节点的所述第二竞赛信息。

需要说明的是,也可以在获取所有节点的第一竞赛信息之后,删除所有节点的第二竞赛信息。

在第五实施例中,在校验所有节点记录的竞赛信息,获取所有节点的第一竞赛信息的同时,删除第二竞赛信息,以节省存储空间。

在第六实施例中,如图7所示,在上述图2至图6所示的实施例基础上,所述根据所有节点的所述第一竞赛信息确定所述竞赛仲裁结果的步骤包括:

步骤s321、获取所有节点的所述第一竞赛信息的时间戳;

步骤s322、根据所述时间戳排布所述第一竞赛信息,并根据排布结果确定所述竞赛仲裁结果。

本实施例中,在核心节点记录第一竞赛信息时,第一竞赛信息按照一定的规律进行排布,比如竞赛信息按照竞赛信息的时间戳排布,这样根据排布结果即可确定竞赛仲裁结果。

在第六实施例中,获取所有节点的第一竞赛信息的时间戳,根据时间戳排布第一竞赛信息,并根据排布结果确定竞赛仲裁结果。这样,保证了竞赛仲裁结果的准确性。

此外,本发明还提出一种核心节点,所述核心节点包括存储器、处理器及存储在存储器上并可在处理器上运行的基于区块链的竞赛仲裁程序,所述处理器执行所述基于区块链的竞赛仲裁程序时实现如以上实施例所述的基于区块链的竞赛仲裁方法的步骤。

此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有基于区块链的竞赛仲裁程序,所述基于区块链的竞赛仲裁程序被处理器执行时实现如以上实施例所述的基于区块链的竞赛仲裁方法的步骤。

此外,本发明还提出一种基于区块链的竞赛仲裁系统,所述基于区块链的竞赛仲裁系统包括上述核心节点以及客户端,所述客户端用于:在检测到区块链系统的节点的竞赛信息时,获取所述竞赛信息,并在节点当前的网络状况不满足预设条件时,存储所述竞赛信息至预设区域,在节点当前的网络状况满足预设条件时,将所述竞赛信息上传至核心节点,以供所述核心节点记录。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是电视机,手机,计算机,核心节点,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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