CN110602097A - 基于区块链的任务处理方法、装置、设备及存储介质 - Google Patents
基于区块链的任务处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110602097A CN110602097A CN201910867619.5A CN201910867619A CN110602097A CN 110602097 A CN110602097 A CN 110602097A CN 201910867619 A CN201910867619 A CN 201910867619A CN 110602097 A CN110602097 A CN 110602097A
- Authority
- CN
- China
- Prior art keywords
- block chain
- task
- result
- node
- verification
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种基于区块链的任务处理方法、装置、设备及存储介质,涉及互联网技术领域。上述方法包括:接收承接客户端的任务获取请求;根据任务获取请求将公开任务分配至承接客户端;接收承接客户端反馈的公开任务的执行结果;通过至少两个区块链节点中的每一个区块链节点对执行结果进行验证,并向承接客户端和发布客户端发送验证结果;该方法通过至少两个区块链节点对执行结果进行验收,确定出的验证结果的认可度高,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。
Description
技术领域
本申请涉及互联网技术领域,特别涉及一种基于区块链的任务处理方法、装置、设备及存储介质。
背景技术
在众包平台上,一些发布方会公开发布一些任务,这些任务由承接者承接并完成。
自上述任务发布起至任务完成止,发布方与承接者承担着不同的分工。示意性的,任务由发布方在众包平台上发布;承接者选择承接任务,并根据发布方的要求对任务进行处理;当承接者处理完成任务之后,将完成的任务反馈给发布方;发布方对承接者完成的任务进行验收,并在验收完成之后向承接者支付酬劳。
在上述过程中,由于发布方不信任承接者的任务完成质量,需要在验收完成后决定是否支付酬劳给承接者,而承接者不信任发布方的验收标准,会对发布者的酬劳支付决定产生质疑,最终导致发布方与承接者之间的不信任问题。
发明内容
本申请实施例提供了一种基于区块链的任务处理方法、装置、设备及存储介质,可以解决发布方与承接者之间的不信任问题。所述技术方案如下:
根据本申请的一个方面,提供了一种基于区块链的任务处理方法,应用于区块链平台中的任一区块链节点中,该方法包括:
接收承接客户端的任务获取请求;任务获取请求用于请求从区块链平台上获取公开任务;公开任务是发布客户端通过区块链节点发布至区块链平台上的;
根据任务获取请求从区块链平台上获取公开任务,并将公开任务分配至承接客户端;
接收承接客户端反馈的公开任务的执行结果;
在至少两个区块链节点的每一个区块链节点中,调用智能合约对执行结果进行验证,得到验证结果,并将验证结果存储至区块链上。
根据本申请的另一方面,提供了一种基于区块链的任务处理装置,该装置为区块链平台中的任一区块链节点,该装置包括:
接收模块,用于接收承接客户端的任务获取请求;任务获取请求用于请求从区块链平台上获取公开任务;公开任务是发布客户端通过区块链节点发布至区块链平台上的;
分配模块,用于根据任务获取请求从区块链平台上获取公开任务,并将公开任务分配至承接客户端;
接收模块,用于接收承接客户端反馈的公开任务的执行结果;
验证模块,用于在至少两个区块链节点的每一个区块链节点中,调用智能合约对执行结果进行验证,得到验证结果;
存储模块,用于将验证结果存储至区块链上。
根据本申请的另一方面,提供了一种电子设备,该电子设备包括:
存储器;
与存储器相连的处理器;
其中,处理器被配置为加载并执行可执行指令以实现如上述一个方面及其可选实施例所述的基于区块链的任务处理方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,上述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述一个方面及其可选实施例所述的基于区块链的任务处理方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
发布者通过发布客户端在区块链平台上发布公开任务;承接者通过承接客户端在区块链平台上承接公开任务,并在区块链平台上反馈公开任务的执行结果,通过至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验收,进而对多个子验证结果进行分析,确定公开任务的执行结果是通过结果或否决结果,将最终的验证结果存储至区块链上。该方法确定出的验证结果的认可度高,提高了验证结果的可靠性,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的基于区块链的任务处理方法的流程图;
图2是本申请一个示例性实施例提供的分布式系统的结构示意图;
图3是本申请一个示例性实施例提供的区块结构的示意图;
图4是本申请另一个示例性实施例提供的基于区块链的任务处理方法的流程图;
图5是本申请另一个示例性实施例提供的基于区块链的任务处理方法的流程图;
图6是本申请另一个示例性实施例提供的基于区块链的任务处理方法的流程图;
图7是本申请另一个示例性实施例提供的基于区块链的任务处理方法的流程图;
图8是本申请另一个示例性实施例提供的基于区块链的任务处理方法的流程图;
图9是本申请一个示例性实施例提供的基于区块链的任务处理装置的框图;
图10是本申请一个示例性实施例提供的电子设备的结构示意图;
图11是本申请一个示例性实施例提供的服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
对本申请的实施例中涉及的名词解释如下:
众包:是指企业将工作任务作为公开任务、以自由自愿的形式外包给非特定的(而且通常是大型的)大众网络的做法。
联盟链:也称共同体区块链(Consortium Blockchains),是指其共识过程受到预选节点控制的区块链。在联盟链中,只针对链内的节点成员开放全部或部分功能,联盟链中的各个区块链节点可以基于需要定制读写权限、查询权限等。比如,本申请提供的基于区块链的任务处理方法应用于联盟链中,验收机构、发布机构和支付机构作为节点成员,该联盟链对验收机构、发布机构和支付机构开放读写、查询等权限。
区块链平台:是指存储公开任务的执行信息的电子设备通信网络,构成区块链平台的电子设备被称为区块链节点。区块链平台中至少包括两个区块链节点,每个区块链节点通过有线或无线网络同步公开任务的执行信息。可选地,本申请提供的实施例中,区块链平台可以是基于联盟链构建的提供众包服务的平台。
共识机制(Consensus mechanism):是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。在区块链系统中,通过特殊节点的投票,可以在很短的时间内完成对交易的验证和确认,对一笔交易,如果利益不相干的若干个节点能够达成共识,就可以认为系统中的全部节点对此也能够达成共识。
一般情况下,企业(即发布方)在众包平台上发布公开任务,由承接者自由自愿的承接公开任务,并向发布方反馈处理完成的公开任务,由发布方对处理完成的公开任务进行验收。由于发布方不信任承接者的任务完成质量,需要在验收完成后决定是否支付酬劳给承接者,而承接者不信任发布方的验收标准,会对发布者的酬劳支付决定产生质疑,最终导致发布方与承接者之间的不信任问题。因此,相关技术中,采用去中心化的区块链平台解决上述发布方与承接者之间的不信任的问题,在区块链平台上构建智能合约,利用智能合约的自动履约以及不可逆转的特性,若智能合约对承接者的任务完成质量认可,则会进行履约,向承接者支付酬劳。
如今,采用上述智能合约进行履约的公开任务的任务类型,是通过算法或者函数可以对公开任务的执行结果直接验证的一类,且验证结果不会出现歧义。对于无法通过算法或者函数对执行结果直接验证的一类公开任务,对验证结果仍会产生歧义。比如,人工智能的样本标注问题是无法通过算法或者函数对执行结果进行直接验证,从而得到验证结果的;仍需要对公开任务的执行结果进行人工验证,使得上述发布方与承接者之间的不信任问题依旧存在。因此,本申请提出了一种基于区块链的任务处理方法,解决人工智能的样本标注等这一类公开任务导致的发布方与承接者之间的不信任问题。
示意性的,如图1,对上述基于区块链的任务处理方法的执行步骤进行说明,如下:
步骤101,发布方在区块链平台上发布公开任务。
其中,发布公开任务包括在区块链平台上注册任务信息11、注册验收函数12以及注册分配方式13三个过程。任务信息用于向承接者展示该公共任务的相关信息;任务信息包括任务类型、任务内容、任务期限、任务难度、任务酬劳、任务验收标准、以及酬劳分配方式中的至少一种。验收函数用于合并至少两个区块链节点对应的子验证结果,得到最终的验证结果。该子验证结果是区块链节点对执行结果的验证得到的;也就是说,通过至少两个区块链节点对公开任务的执行结果进行验证,得到至少两个子验证结果;通过该验收函数对上述至少两个子验证结果运算处理,得到最终的验证结果。分配方式是指酬劳分配方式,由于同一公开任务可以被至少两个承接者承接并处理,因此,区块链平台可以采用平均分配的方式将公开任务的酬劳分配至与验证结果对应的承接客户端的账号下。
需要说明的是,任务信息、验收函数与分配方式的注册可以采用智能合约的注册方式,因此,注册得到的智能合约能够完成公开任务的执行结果的验收,以及酬劳的分配。
步骤102,区块链平台将公开任务更新至任务池。
区块链平台上设置有任务池;该任务池用于存放待处理的公开任务。区块链平台在完成任务信息、验收函数、以及分配方式的注册之后,将对应的公开任务的任务信息放置至任务池中。
步骤103,区块链平台将公开任务分配给至少两个承接客户端。
至少两个承接者通过承接客户端从区块链平台上承接公开任务。区块链平台可以从任务池中获取同一公开任务分配到将至少两个承接客户端,至少两个承接客户端可以给出公开任务的至少两个执行结果。比如,区块链平台从任务池中获取同一公开任务分配至承接客户端1、承接客户端2和承接客户端3,由上述三个承接客户端分别给出执行结果1、执行结果2和执行结果3。
步骤104,区块链平台对至少两个执行结果进行验证,得到验证结果。
区块链平台通过共识机制将至少两个执行结果共识至每一个区块链节点,对至少两个执行结果进行验证,得到子验证结果。比如,区块链节点1对执行结果1、执行结果2和执行结果3进行验证,将执行结果2的验证结果确定为通过,也就是说,子验证结果1是区块链节点1认可执行结果2;区块链节点2对执行结果1、执行结果2和执行结果3进行验证,将执行结果3的验证结果确定为通过,也就是说,子验证结果2是区块链节点2认可执行结果3。
区块链平台通过验收函数对子验证结果进行合并,得到最终的验证结果。示意性的,区块链平台还包括区块链节点3,区块链节点3对执行结果1、执行结果2和执行结果3进行验证,将执行结果3的验证结果确定为通过,也就是说,子验证结果3是区块链节点3认可执行结果3。若验收函数为简单多数函数,区块链平台通过智能合约中的简单多数函数对子验证结果1、子验证结果2、以及子验证结果3进行合并,子验证结果2和子验证结果3均是认可执行结果3,因此,最终将执行结果3的验证结果确定为通过,也就是说,区块链平台认可执行结果3。
步骤105,区块链平台将酬劳分配至与验证结果对应的承接客户端的账户下。
区块链平台按照分配方式将酬劳分配至与验证结果对应的承接客户端的账号下。比如,可以按照平均分配的方式对酬劳进行分配,区块链平台认可执行结果3,则将酬劳分配至给出执行结果3的承接客户端3的账号下;若存在一个承接客户端4也给出了对公开任务的执行结果3,将酬劳平均分配至承接客户端3和承接客户端4的账号下。
上述过程通过多个区块链节点对同一公开任务的多个执行结果进行验证,分析区块链节点的多个子验证结果,进而从多个执行结果中确定出一个认可度最高的执行结果;由于该认可度最高的执行结果是多个区块链节点均认可的,通过上述过程对执行结果的验证结果可靠性高,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。示意性的,对本申请提供的基于区块链的的详细说明请参考以下实施例。
本申请实施例涉及的系统可以是由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式系统。
以分布式系统为区块链系统为例,参见图2,图2是本发明实施例提供的分布式系统200应用于区块链系统的一个可选的结构示意图,由多个节点300(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端400形成,节点300之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,TransmissionControl Protocol)协议之上的应用层协议。在分布式系统200中,任何机器如服务器、终端都可以加入而成为节点300,节点300包括硬件层、中间层、操作系统层和应用层。
参见图2示出的区块链系统中各节点的功能,涉及的功能包括:
1)路由,节点具有的基本功能,用于支持节点之间的通信。
节点除具有路由功能外,还可以具有以下功能:
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
例如,应用实现的业务包括:
2.1)钱包,用于提供进行电子货币的交易的功能,包括发起交易(即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币。
2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
2.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易。智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。例如,各家机构可以通过服务器中部署的区块链上的智能合约为众包服务提供验收功能,当承接者完成并反馈对公共任务的执行结果时,触发智能合约中的验收功能,根据验证结果完成自动化交易;该过程既对接收的执行结果进行了信息处理,又完成了自动化交易。
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。
参见图3,图3是本发明实施例提供的区块结构(Block Structure)一个可选的示意图,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
示意性的,本申请提供的基于区块链的任务处理方法应用于图2所示的区块链系统中,基于区块链系统构建的区块链平台用于为发布方与承接者提供任务处理服务。发布客户端在区块链节点上基于任务信息、验收函数以及分配方式构建智能合约,并将该智能合约共识至每一个区块链节点;发布客户端通过区块链节点调用智能合约在区块链平台上发布公开任务;承接客户端通过区块链节点从区块链平台上获取公开任务,并将公开任务的执行结果反馈至一个区块链节点上,由该区块链节点将上述执行结果共识至每一个区块链节点中,通过每一个区块链节点上的智能合约对上述执行结果进行验证,从而得到验证结果,并将上述验证结果存储至区块链上。
请参考图4,其示出了本申请一个示例性实施例提供的基于区块链的任务处理方法的流程图,该方法应用于基于图2所示的区块链系统构建的区块链平台上,该方法包括:
步骤501,第一终端向服务器发送任务发布请求。
第一终端中安装并运行有发布客户端;第一终端通过发布客户端向服务器发送任务发布请求;该任务发布请求是指请求在区块链平台上发布公开任务。其中,该区块链平台能够为发布机构提供众包服务。
可选地,该任务发布请求中包括公开任务的任务信息;其中,任务信息包括任务类型、任务内容、任务期限、任务难度、任务酬劳、任务验收标准、以及酬劳分配方式中的至少一种。
比如,任务类型可以是标注类,则公开任务包括但不限于对图片、文本、语音、自动驾驶行为等标注的任务。任务内容包括但不限于对标注目标进行分类、回归、情感、阅读理解、问题及答复等的标注处理,标注目标可以是上述图片、文本、语音、自动驾驶行为等等。任务期限是指规定的公开任务完成的期限。任务难度是指完成该公开任务的困难程度,其与脑力劳动和体力劳动成正比,任务难度越高,需要耗费的脑力劳动和体力劳动越多。任务酬劳是指完成该公开任务可以获得的报酬,该任务酬劳在区块链平台上是以电子货币的形式进行存储和转移的。
任务验收标准是指对公开任务的执行结果的评价标准,以该任务验收标准来评价任务完成质量,从而确定承接客户端反馈的公开任务的执行结果是否合格;也就是说,任务验收标准用于检验承接者对公开任务处理得到的执行结果的质量,从而确定是否支付该承接者任务酬劳。由于一个公开任务可能由多个任务承接者承接并完成,因此,酬劳分配方式规定了将该公开任务的任务酬劳分配至多个任务承接者的规则。
可选地,区块链平台包括联盟链系统,联盟链系统的节点成员包括验证机构、发布机构和支付机构中的至少一种。该验证机构是提供对公开任务的执行结果的验证服务的组织;发布机构是发布公开任务的组织;支付机构是提供进行电子货币的交易的功能的组织。
步骤502,服务器接收第一终端发送的任务发布请求。
其中,该服务器为区块链平台上的一个区块链节点,该区块链节点接收第一终端通过发布客户端发送的任务发布请求。
步骤503,服务器根据任务发布请求将公开任务更新至任务池。
可选地,区块链节点对任务信息进行注册,将注册完成的任务信息更新至任务池中。同时,区块链节点还根据任务验收标准注册验收函数,用于对公开任务的执行结果进行验收。本实施例提供的方法中,该验收函数可以用于对公开任务的执行结果的子验证结果进行处理,确定出公开任务的执行结果的验证结果;该子验证结果是由区块链平台上的至少两个区块链节点对公开任务的执行结果进行验证得到的。
可选地,区块链节点还对酬劳分配方式进行注册,该分配方式用于在完成对公开任务的执行结果的验收之后,将酬劳合理分配至至少两个承接客户端。
可选地,区块链节点根据任务信息构建公开任务对应的智能合约,该智能合约中可以包括公开任务的验收函数、以及分配方式。
区块链节点将注册完成的公开任务更新至任务池中,完成对该公开任务的发布;并将这一公开任务在注册过程中生成的任务数据共识至区块链上进行存储。可选地,区块链节点还根据公开任务的任务信息生成公开任务的唯一标识。
步骤504,第二终端向服务器发送任务获取请求。
第二终端中安装并运行有承接客户端;第二终端通过承接客户端向服务器发送任务获取请求;该任务获取请求用于请求从区块链平台上获取公开任务;该公开任务是发布客户端通过区块链节点发布至区块链平台上的。
在一种情况中,承接客户端上展示有任务池中的公开任务的部分或者全部任务信息,承接者可以通过展示的部分或者全部任务信息自主选择承接的公开任务,可选地,任务获取请求中包括公开任务的唯一标识。
步骤505,服务器接收承接客户端的任务获取请求。
步骤506,服务器根据任务获取请求从区块链平台上获取公开任务,并将公开任务分配至承接客户端。
区块链节点根据任务获取请求从区块链上获取对应的区块,得到公开任务,将公开任务分配至承接客户端。
可选地,区块链节点接收承接客户端的任务获取请求之后,从任务池中随机获取一个公开任务分配至承接客户端中。
或者,区块链节点根据公开任务的唯一标识对应获取公开任务,并将获取得到的公开任务分配至承接客户端中。
步骤507,第二终端接收服务器分配的公开任务。
第二终端接收区块链节点分配的公开任务,由承接者对公开任务进行处理,得到处理后公开任务的执行结果。比如,该公开任务是对图片中的人物形象进行标注,承接者对图片中的人物形象进行标注,执行结果即为标注完成的图片;又比如,该公开任务是对一组文本进行分类,承接者根据文本内容将文本划分至不同主题类别,执行结果即为划分完成的文本。
步骤508,第二终端向服务器发送对公开任务的执行结果。
第二终端通过承接客户端将公开任务的执行结果反馈至区块链节点。
步骤509,服务器接收承接客户端反馈的公开任务的执行结果。
步骤510,在至少两个区块链节点的每一个区块链节点中,服务器调用智能合约对执行结果进行验证,得到验证结果,并将验证结果存储至区块链上。
区块链平台上包括至少两个区块链节点,区块链节点将接收到的公开任务的执行结果共识到至少两个区块链节点中的每一个区块链节点中,通过至少两个区块链节点共同对执行结果进行验证,从而得到验证结果。
需要说明的是,区块链平台上包括n个区块链节点,n为大于2的正整数;当区块链平台对一个公开任务的执行结果进行验证时,区块链平台可以通过n个区块链节点中的至少两个区块链节点来对公开任务的执行结果进行验证,至少两个区块链节点中的每一个区块链节点均对至少两个区块链节点进行验证。也就是说,在对公开任务的执行结果进行验证的过程中,不必要区块链平台中的每一个区块链节点均参与。
示意性的,上述n个区块链节点中的至少两个区块链节点可以是根据业务需求确定出的;比如,区块链平台上的奖励机制是对于每一个参与验证的区块链节点奖励1个比特币,发布机构为一个公开任务支付50个比特币;若区块链平台上包括100个区块链节点,则有50个区块链节点会参与验证;若区块链平台上包括50个区块链节点,则有50个区块链节点会参与验证。
可选地,区块链节点中存储有智能合约;每一个区块链节点调用公开任务对应的智能合约对该公开任务的执行结果进行验证,得到对应的子验证结果;区块链节点对子验证结果进行分析处理,得到验证结果。
示意性的,至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验证,得到至少两个质量评分;区块链节点对至少两个质量评分进行加权计算,得到总评分;区块链节点中存储有分数阈值,区块链节点判断总评分是否大于分数阈值;当总评分大于等于分数阈值时,区块链节点将验证结果确定为通过结果,即区块链平台对该公开任务的执行结果是认可的;当总评分小于分数阈值时,区块链节点将验证结果确定为否决结果,即区块链平台对该公开任务的执行结果是不认可的。
可选地,区块链节点中存储的智能合约中包括分数阈值;区块链节点可以调用智能合约来判断总评分是否大于分数阈值。
可选地,每一个区块链节点对应的权值可以相同或者不同,该权值用于对至少两个质量评分进行加权计算,从而得到总评分。示意性的,该权值可以是根据区块链节点的验证表现设置的,该验证表现是对区块链节点的历史验证结果的正确率分析得到的,该验证表现包括区块链节点对执行结果的验证正确率;比如,区块链平台上包括两个区块链节点,第一个区块链节点的验证正确率为80%,第二个区块链节点的验证正确率为20%;则将第一个区块链节点的权值设置为0.8,第二个区块链节点的权值设置为0.2。
在区块链平台上得到公开任务的执行结果的验证结果之后,区块链节点还对上述公开任务的执行结果及对应的验证结果进行区块生成,将生成的上述区块对应公开任务的唯一标识存储至区块链上。
步骤511,服务器向第一终端和第二终端发送验证结果。
区块链节点将发送验证结果至发布客户端和承接客户端,发布者与承接者可以通过验证结果获知公开任务的执行结果的验证结果是通过结果或者否决结果。
综上所述,本实施例提供的基于区块链的任务处理方法,发布者通过发布客户端在区块链平台上发布公开任务;承接者通过承接客户端在区块链平台上承接公开任务,并在区块链平台上反馈公开任务的执行结果;通过至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验收,进而对多个子验证结果进行分析,确定公开任务的执行结果是通过结果或否决结果,将最终的验证结果存储至区块链上。该方法确定出的验证结果的认可度高,提高了验证结果的可靠性,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。
需要说明的是,公开任务的执行结果的验证结果是通过至少两个区块链节点共同验证得到的,示意性的,将图4中步骤510替换为步骤5101至步骤5102,对上述验证过程进一步说明,如图5,步骤如下:
步骤5101,在至少两个区块链节点中的每一个区块链节点中,服务器调用智能合约对执行结果进行验证,得到每一个区块链节点对应的子验证结果。
区块链节点中存储有智能合约,每一个区块链节点通过智能合约对执行结果进行验证,得到每一个区块链节点对应的子验证结果。由于每一个区块链节点的验证表现不同,区块链节点可以选取信任节点对应的子验证结果作为归类统计的依据。可选地,每一个区块链节点调用智能合约对执行结果进行验证,得到每一个区块链节点对应的候选子验证结果;将信任节点对应的候选子验证结果确定为子验证结果;信任节点是对历史执行结果的验证正确率大于概率阈值的区块链节点。
可选地,智能合约中包括概率阈值;因此,当区块链节点的验证正确率大于概率阈值时,区块链节点通过智能合约将该区块链节点确定为信任节点,并将该信任节点对应的候选子验证结果确定为子验证结果。比如,概率阈值为70%,若区块链节点的验证正确率为80%,则该区块链节点为信任节点,区块链节点将该信任节点的候选子验证结果确定为子验证结果。
步骤5102,服务器根据至少两个子验证结果对区块链节点进行归类统计,得到区块链平台认可的验证结果。
区块链节点对每一个子验证结果对应的区块链节点的节点数进行统计分析,得到区块链平台认可的验证结果。
可选地,该子验证结果包括至少两种类别的子验证结果;区块链节点对至少两种类别的子验证结果中每一种类别的子验证结果对应的区块链节点数进行归类统计;将至少两个区块链节点数中最大值对应的一种类别的子验证结果确定为验证结果。
比如,子验证结果包括第一子验证结果和第二子验证结果;区块链节点对得到第一子验证结果的区块链节点的节点数进行统计,得到第一区块链节点数;对得到第二子验证结果的区块链节点的节点数进行统计,得到第二区块链节点数;从第一区块链节点数和第二区块链节点数中确定出一个最大值,该最大值对应的子验证结果即为验证结果;若第一区块链节点数为最大值,则第一子验证结果即为验证结果,若第二区块链节点数为最大值,则第二子验证结果即为验证结果。
步骤5013,服务器将验证结果存储至区块链上。
综上所述,本实施例提供的基于区块链的任务处理方法,发布者通过发布客户端在区块链平台上发布公开任务;承接者通过承接客户端在区块链平台上承接公开任务,并在区块链平台上反馈公开任务的执行结果;通过至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验收,进而对多个子验证结果进行分析,确定公开任务的执行结果是通过结果或否决结果,并将最终的验证结果存储至区块链上。该方法确定出的验证结果的认可度高,提高了验证结果的可靠性,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。
该方法中还对每一个区块链节点的子验证结果进行筛选,获取验证正确率高的区块链节点的子验证结果,使子验证结果的可信度高,进而分析得到的最终的验证结果的可信度也高。
在一些实施例中,同一公开任务可以被分配至一个承接客户端,也可以被分配至至少两个承接客户端,对应的,存在一类公开任务的执行结果,或者,存在至少两类公开任务的执行结果。因此,区块链平台对公开任务的执行结果进行验证包括以下两种情况:
第一种情况,区块链平台对公开任务的一类执行结果进行验证,如图6所示;
第二种情况,区块链平台对公开任务的至少两类执行结果进行验证,如图7所示。
在第一种情况下,一个公开任务被分配至一个承接客户端,该公开任务的执行结果为一类;对应的,子验证结果包括通过结果和否决结果两类。示意性的,基于图5,将步骤5102替换为步骤601至步骤603,对上述第一情况下执行结果的验证过程进行说明,如图6,步骤如下:
步骤601,服务器统计每一类子验证结果对应的区块链节点的节点数,并确定节点比例。
区块链节点通过至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验证,得到通过结果或者否决结果。区块链节点统计通过结果对应的区块链节点的第一节点数;统计否决结果对应的区块链节点的第二节点数。
其中,通过结果是指区块链节点对该公开任务的执行结果认可;否决结果是指区块链节点对该公开任务的执行结果不认可。
区块链节点将第一节点数与第二节点数的比值确定为节点比例,并判断节点比例是否大于比例阈值。
可选地,该比例阈值可以是智能合约中设置的,区块链节点中还包括验收函数,因此,区块链节点调用智能合约中的验收函数对两个子验证结果对应的节点比例进行分析,得到验证结果。
当节点比例大于等于比例阈值时,执行步骤602;当节点比例小于比例阈值时,执行步骤603。
需要说明的是,由于区块链平台上每一个区块链节点对公开任务进行验收得到的子验证结果的可信任程度不同,因此,区块链节点选取可信任程度高的区块链节点的验证结果作为上述子验证结果。
步骤602,当第一节点数与第二节点数的节点比例大于比例阈值时,服务器确定验证结果为通过结果。
步骤603,当第一节点数与第二节点数的节点比例小于比例阈值时,服务器确定验证结果为否决结果。
需要说明的是,在上述确定验证结果的过程中,还可以采用简单多数函数作为验收函数,直接判断第一节点数与第二节点数的大小,将最大值对应的子验证结果作为最终的验证结果。或者,还可以采用第一节点数/第二节点数与总节点数的比值来确定最终的验证结果,比如,第一节点数与总结点数的比值大于比例阈值,则将第一节点数对应的子验证结果确定为最终的验证结果。
示意性的,区块链平台上包括区块链节点1、区块链节点2、区块链节点3、……、区块链节点n,n为大于1的正整数,区块链节点将公开任务的执行结果共识至上述n个区块链节点中,n个区块链节点中的每一个区块链节点对上述公开任务的执行结果进行验证,得到对应的n个子验证结果,包括子验证结果1、子验证结果2、子验证结果3、……、子验证结果n。
假设n个子验证结果中存在k个通过结果,n-k个否决结果;当k>n-k时,最终的验证结果为通过结果;否则,最终的验证结果为否决结果;k小于等于n。
综上所述,本实施例提供的基于区块链的任务处理方法,发布者通过发布客户端在区块链平台上发布公开任务;承接者通过承接客户端在区块链平台上承接公开任务,并在区块链平台上反馈公开任务的执行结果;通过至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验收,进而对多个子验证结果进行分析,确定公开任务的执行结果是通过结果或否决结果,并将最终的验证结果存储至区块链上。该方法确定出的验证结果的认可度高,提高了验证结果的可靠性,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。
在第二种情况下,同一公开任务被分配至至少两个承接客户端,公开任务的执行结果为至少两类;至少两类执行结果包括第一执行结果和第二执行结果;对应的,子验证结果包括认可第一执行结果和认可第二执行结果。基于图5,将步骤5102替换为步骤604至步骤606,对上述第二情况下执行结果的验证过程进行说明,如图7,步骤如下:
步骤604,服务器统计每一类子验证结果对应的区块链节点的节点数。
区块链节点将同一公开任务分配至至少两个承接客户端中,得到公开任务的至少两类执行结果;区块链节点通过区块链平台上的每一个区块链节点分别对每一类执行结果进行验证,得到子验证结果,其中,子验证结果包括对某一类执行结果认可,比如,一个区块链节点分别对执行结果1和执行结果2进行验证,得到子验证结果为认可执行结果1或者认可执行结果2。
区块链节点统计认可第一执行结果对应的区块链节点的第三节点数;统计认可第二执行结果对应的区块链节点的第四节点数。
可选地,区块链节点调用智能合约中的验收函数对第三节点数与第四节点数进行分析,得到最终的验证结果;比如,验收函数可以是简单多数函数,当第三节点数大于第四节点数时,执行步骤605;否则,执行步骤606。
需要说明的是,由于区块链平台上每一个区块链节点对公开任务进行验收得到的子验证结果的可信任程度不同,因此,区块链节点选取可信任程度高的区块链节点的验证结果作为上述子验证结果。
步骤605,当第三节点数大于第四节点数时,服务器确定验证结果为认可第一执行结果。
步骤606,当第三节点数小于等于第四节点数时,服务器确定验证结果为认可第二执行结果。
需要说明的是,至少两类执行结果表示执行结果可以包括i类,i是大于等于2的正整数,因此,第二执行结果可以表示多个执行结果,相应的,第四节点数可以表示多个节点数,第三节点数大于第四节点数可以表示为确定出多个节点数中的最大值,将最大值对应的子验证结果确定为验证结果。比如,有公开任务的三类执行结果,分别为执行结果1、执行结果2和执行节点3,100个区块链节点分别对执行结果1、执行结果2和执行节点3进行验证,分别得到执行结果1、执行结果2和执行节点3的子验证结果,100个区块链节点中有66个区块链节点的子验证结果为认可执行节点1,22个区块链节点的子验证结果为认可执行节点2,12个区块链节点的子验证结果为认可执行节点3;将最终结果确定为认可执行节点1。
综上所述,本实施例提供的基于区块链的任务处理方法,发布者通过发布客户端在区块链平台上发布公开任务;承接者通过承接客户端在区块链平台上承接公开任务,并在区块链平台上反馈公开任务的执行结果;通过至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验收,进而对多个子验证结果进行分析,确定出区块链平台认可的执行结果,并将最终的验证结果存储至区块链上。该方法确定出的验证结果的认可度高,提高了验证结果的可靠性,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。
需要说明的是,在通过至少两个区块链节点中的每一个区块链节点得到对公开任务的执行结果的验收结果之后,区块链节点基于验收结果对承接客户端进行酬劳支付,示意性的,如图8,在图步骤511之后增加步骤512,步骤如下:
步骤512,基于验证结果,服务器通过智能合约中的酬劳分配方式向承接客户端支付酬劳,并将支付酬劳的过程数据存储至区块链上。
区块链节点中存储有智能合约,智能合约中还包括酬劳分配方式,服务器通过智能合约中的酬劳分配方式对发布机构预先支付的酬劳进行分配。其中,预先支付的酬劳是由发布机构在任务发布时预先支付的,并通过支付平台暂时保存,当确定向承接客户端支付酬劳时,区块链节点向支付平台发送支付请求,请求将预先支付的酬劳转移至承接客户端对应的账户下,其中,支付请求中包括了按照酬劳分配方式确定出的对承接客户端的支付金额。
示意性的,若仅有一个承接客户端提供的公开任务的执行结果被区块链平台认可,则将酬劳分配至该承接客户端的账户下。若有至少两个承接客户端提供的公开任务的执行结果被区块链平台认可,则将酬劳平均分配至上述至少两个接客户端的账户下。
区块链节点还对支付酬劳的过程数据进行区块生成,将上述包括支付酬劳的过程数据的区块存储至区块链上。
还需要说明的是,步骤512可以在步骤511之前执行,或者步骤511之后执行,或者与步骤511同步执行,在本实施例中是以步骤512在步骤511之后执行为例进行说明的。
综上所述,本申请实施例提供的酬劳支付方法,通过区块链节点中的智能合约进行自动履约,当承接客户端提供的公开任务的执行结果得到区块链平台的认可时,将酬劳发放至承接客户端的账户下,不会存在拖延或者拒绝支付的情况;而当承接客户端提供的公开任务的执行结果得到区块链平台的认可时,则不会发放酬劳;从而提高了发布者与承接者之间的信任。而且区块链上存储的支付酬劳的过程数据不可抵赖、不可篡改、安全不可逆,提高了数据的可靠性,保证了系统的透明性和可审计性。
请参考图9,示出了本申请一个示例性实施例提供的基于区块链的任务处理装置的框图,该装置为区块链平台中的任一区块链节点,该装置通过软件、硬件或者二者的结合实现成为终端或者服务器的部分或者全部,该装置包括:
接收模块701,用于接收承接客户端的任务获取请求;任务获取请求用于请求从区块链平台上获取公开任务;公开任务是发布客户端通过区块链节点发布至区块链平台上的;
分配模块702,用于根据任务获取请求从区块链平台上获取公开任务,并将公开任务分配至承接客户端;
接收模块701,用于接收承接客户端反馈的公开任务的执行结果;
验证模块703,用于在至少两个区块链节点的每一个区块链节点中,调用智能合约对执行结果进行验证,得到验证结果,并将验证结果存储至区块链上。
在一些实施例中,区块链节点中存储智能合约;验证模块703,包括:
验证子模块7031,用于在区块链平台上的每一个区块链节点中,调用智能合约对执行结果进行验证,得到每一个区块链节点对应的子验证结果;根据至少两个子验证结果对区块链节点进行归类统计,得到区块链平台认可的验证结果。
在一些实施例中,至少两个子验证结果中包括至少两种类别的子验证结果;验证模块703,包括
验证子模块7031,用于对至少两种类别的子验证结果中每一种类别的子验证结果对应的区块链节点数进行归类统计;
确定子模块7032,用于将至少两个区块链节点数中最大值对应的一种类别的子验证结果确定为验证结果。
在一些实施例中,
验证子模块7031,用于在每一个区块链节点中,调用智能合约对执行结果进行验证,得到每一个区块链节点对应的候选子验证结果;
确定子模块7032,用于将信任节点对应的候选子验证结果确定为子验证结果;信任节点是对历史执行结果的验证正确率大于概率阈值的区块链节点。
在一些实施例中,验证表现包括区块链节点对执行结果的验证正确率;预设条件包括验证正确率大于概率阈值;其中,验证表现是对区块链节点的历史验证结果的正确率分析得到的。
在一些实施例中,公开任务被分配至一个承接客户端,执行结果为一类;对应的,子验证结果包括通过结果和否决结果两类;
验证子模块7031,用于统计通过结果对应的区块链节点的第一节点数;统计否决结果对应的区块链节点的第二节点数;
确定子模块7032,用于当第一节点数与第二节点数的节点比例大于比例阈值时,确定验证结果为通过结果;当第一节点数与第二节点数的节点比例小于比例阈值时,确定验证结果为否决结果。
在一些实施例中,同一公开任务被分配至至少两个承接客户端,执行结果为至少两类;至少两类执行结果包括第一执行结果和第二执行结果;对应的,子验证结果包括认可第一执行结果和认可第二执行结果;
验证模块703,包括:
统计子模块7033,用于统计认可第一执行结果对应的区块链节点的第三节点数;统计认可第二执行结果对应的区块链节点的第四节点数;
确定子模块7032,用于当第三节点数大于第四节点数时,确定验证结果为认可第一执行结果;当第三节点数小于第四节点数时,确定验证结果为认可第二执行结果。
在一些实施例中,区块链节点中存储智能合约,智能合约中包括酬劳分配方式;该装置还包括:
支付模块704,用于基于验证结果,通过智能合约中的酬劳分配方式向承接客户端支付酬劳,并将支付酬劳的过程数据存储至区块链上。
在一些实施例中,区块链平台包括联盟链系统,联盟链系统的节点成员包括验证机构、发布机构和支付机构中的至少一种。
综上所述,本实施例提供的基于区块链的任务处理装置,发布者通过发布客户端在区块链平台上发布公开任务;承接者通过承接客户端在区块链平台上承接公开任务,并在区块链平台上反馈公开任务的执行结果;该装置通过至少两个区块链节点中的每一个区块链节点对公开任务的执行结果进行验收,进而对多个子验证结果进行分析,确定公开任务的执行结果是通过结果或否决结果,并将最终的验证结果存储至区块链上。该装置确定出的验证结果的认可度高,提高了验证结果的可靠性,为发布方提供了可靠的验证服务,使发布者信任验证结果;且区块链平台上对执行结果的验证是公开和不可逆转的,是客观的验证结果,避免了发布者的主观性,使承接者也信任验证结果,解决了发布者与承接者之间的不信任问题。
请参考图10,示出了本申请一个示例性实施例提供的终端800的结构框图。该终端800可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group AudioLayer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts GroupAudio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的基于区块链的任务处理方法。
在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、显示屏805、音频电路806、定位组件807和电源808中的至少一种。
外围设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少一个,分别设置在终端800的不同表面或呈折叠设计;在一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
音频电路806可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路806还可以包括耳机插孔。
定位组件807用于定位终端800的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件807可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源808用于为终端800中的各个组件进行供电。电源808可以是交流电、直流电、一次性电池或可充电电池。当电源808包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
本领域技术人员可以理解,图10中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
请参考图11,示出了本申请一个实施例提供的服务器的结构示意图。该服务器用于实施上述实施例中提供的基于区块链的任务处理方法。具体来讲:
所述服务器900包括中央处理单元(CPU)901、包括RAM(Random Access Memory,随机存取存储器)902和ROM(Read-Only Memory,只读存储器)903的系统存储器904,以及连接系统存储器904和中央处理单元901的系统总线905。所述服务器900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。
所述基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标、键盘之类的输入设备909。其中所述显示器908和输入设备909都通过连接到系统总线905的输入输出控制器910连接到中央处理单元901。所述基本输入/输出系统906还可以包括输入输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。所述大容量存储设备907及其相关联的计算机可读介质为服务器900提供非易失性存储。也就是说,所述大容量存储设备907可以包括诸如硬盘或者CD-ROM(Compact Disc Read-Only Memory,只读光盘)驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM(ErasableProgrammableRead-Only Memory,可擦除可编程只读存储器)、EEPROM(Electrically Erasable ProgrammableRead-Only Memory,电可擦可编程只读存储器)、闪存(Flash Memory)或其他固态存储其技术,CD-ROM、DVD(Digital VersatileDisc,数字通用光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。
根据本申请的各种实施例,所述服务器900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器900可以通过连接在所述系统总线905上的网络接口单元911连接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程计算机系统(未示出)。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种基于区块链的任务处理方法,其特征在于,应用于区块链平台中的任一区块链节点中,所述方法包括:
接收承接客户端的任务获取请求;所述任务获取请求用于请求从所述区块链平台上获取公开任务;所述公开任务是发布客户端通过所述区块链节点发布至所述区块链平台上的;
根据所述任务获取请求从所述区块链平台上获取所述公开任务,并将所述公开任务分配至所述承接客户端;
接收所述承接客户端反馈的所述公开任务的执行结果;
在至少两个所述区块链节点的每一个区块链节点中,调用智能合约对所述执行结果进行验证,得到验证结果,并将所述验证结果存储至所述区块链上。
2.根据权利要求1所述的方法,其特征在于,所述在至少两个所述区块链节点的每一个区块链节点中,调用智能合约对所述执行结果进行验证,得到验证结果,包括:
在所述每一个区块链节点中,调用所述智能合约对所述执行结果进行验证,得到所述每一个区块链节点对应的子验证结果;
根据至少两个所述子验证结果对所述区块链节点进行归类统计,得到所述区块链平台认可的所述验证结果。
3.根据权利要求2所述的方法,其特征在于,所述至少两个所述子验证结果中包括至少两种类别的子验证结果;
所述根据至少两个所述子验证结果对所述区块链节点进行归类统计,得到所述区块链平台认可的所述验证结果,包括:
对所述至少两种类别的子验证结果中每一种类别的子验证结果对应的区块链节点数进行归类统计;
将至少两个所述区块链节点数中最大值对应的一种类别的子验证结果确定为所述验证结果。
4.根据权利要求2或3所述的方法,其特征在于,所述在所述区块链平台上的每一个区块链节点中,调用所述智能合约对所述执行结果进行验证,得到所述每一个区块链节点对应的子验证结果,包括:
在所述每一个区块链节点中,调用所述智能合约对所述执行结果进行验证,得到所述每一个区块链节点对应的候选子验证结果;
将信任节点对应的候选子验证结果确定为所述子验证结果;所述信任节点是对历史执行结果的验证正确率大于概率阈值的区块链节点。
5.根据权利要求2所述的方法,其特征在于,所述公开任务被分配至一个所述承接客户端,所述执行结果为一类;对应的,所述子验证结果包括通过结果和否决结果两类;
所述根据至少两个所述子验证结果对所述区块链节点进行归类统计,得到所述区块链平台认可的所述验证结果,包括:
统计所述通过结果对应的区块链节点的第一节点数;统计所述否决结果对应的区块链节点的第二节点数;
当所述第一节点数与所述第二节点数的节点比例大于比例阈值时,确定所述验证结果为所述通过结果;
当所述第一节点数与所述第二节点数的节点比例小于所述比例阈值时,确定所述验证结果为所述否决结果。
6.根据权利要求2所述的方法,其特征在于,同一所述公开任务被分配至至少两个所述承接客户端,所述执行结果为至少两类;至少两类所述执行结果包括第一执行结果和第二执行结果;对应的,所述子验证结果包括认可所述第一执行结果和认可所述第二执行结果;
所述根据至少两个所述子验证结果对所述区块链节点进行归类统计,得到所述区块链平台认可的所述验证结果,包括:
统计认可所述第一执行结果对应的区块链节点的第三节点数;统计认可所述第二执行结果对应的区块链节点的第四节点数;
当所述第三节点数大于所述第四节点数时,确定所述验证结果为认可所述第一执行结果;
当所述第三节点数小于所述第四节点数时,确定所述验证结果为认可所述第二执行结果。
7.根据权利要求1至3任一所述的方法,其特征在于,所述区块链节点中存储智能合约,所述智能合约中包括酬劳分配方式;
所述在至少两个所述区块链节点的每一个区块链节点中,调用智能合约对所述执行结果进行验证,得到验证结果之后,还包括:
基于所述验证结果,通过所述智能合约中的所述酬劳分配方式向所述承接客户端支付酬劳,并将所述支付酬劳的过程数据存储至区块链上。
8.根据权利要求1至3任一所述的方法,其特征在于,所述区块链平台包括联盟链系统,所述联盟链系统的节点成员包括验证机构、发布机构和支付机构中的至少一种。
9.一种基于区块链的任务处理装置,其特征在于,所述装置为区块链平台中的任一区块链节点,所述装置包括:
接收模块,用于接收承接客户端的任务获取请求;所述任务获取请求用于请求从所述区块链平台上获取公开任务;所述公开任务是发布客户端通过所述区块链节点发布至所述区块链平台上的;
分配模块,用于根据所述任务获取请求从所述区块链平台上获取所述公开任务,并将所述公开任务分配至所述承接客户端;
所述接收模块,用于接收所述承接客户端反馈的所述公开任务的执行结果;
验证模块,用于在至少两个所述区块链节点的每一个区块链节点中,调用智能合约对所述执行结果进行验证,得到验证结果;
存储模块,用于将所述验证结果存储至所述区块链上。
10.一种电子设备,其特征在于,所述电子设备包括:
存储器;
与所述存储器相连的处理器;
其中,所述处理器被配置为加载并执行可执行指令以实现如权利要求1至8任一所述的基于区块链的任务处理方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集;所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由处理器加载并执行以实现如权利要求1至8任一所述的基于区块链的任务处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910867619.5A CN110602097B (zh) | 2019-09-13 | 2019-09-13 | 基于区块链的任务处理方法、装置、设备及存储介质 |
CN201911269566.3A CN110944008B (zh) | 2019-09-13 | 2019-09-13 | 基于区块链的任务酬劳处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910867619.5A CN110602097B (zh) | 2019-09-13 | 2019-09-13 | 基于区块链的任务处理方法、装置、设备及存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911269566.3A Division CN110944008B (zh) | 2019-09-13 | 2019-09-13 | 基于区块链的任务酬劳处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110602097A true CN110602097A (zh) | 2019-12-20 |
CN110602097B CN110602097B (zh) | 2021-09-14 |
Family
ID=68859363
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910867619.5A Active CN110602097B (zh) | 2019-09-13 | 2019-09-13 | 基于区块链的任务处理方法、装置、设备及存储介质 |
CN201911269566.3A Active CN110944008B (zh) | 2019-09-13 | 2019-09-13 | 基于区块链的任务酬劳处理方法、装置、设备及存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911269566.3A Active CN110944008B (zh) | 2019-09-13 | 2019-09-13 | 基于区块链的任务酬劳处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN110602097B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111565204A (zh) * | 2020-07-16 | 2020-08-21 | 百度在线网络技术(北京)有限公司 | 区块链运行方法、装置、设备及存储介质 |
CN111882248A (zh) * | 2020-08-07 | 2020-11-03 | 武汉空心科技有限公司 | 一种工作平台任务结算系统及结算方法 |
CN111985856A (zh) * | 2020-09-11 | 2020-11-24 | 武汉空心科技有限公司 | 一种基于互联网平台的交付结果评估系统及评估方法 |
CN112257080A (zh) * | 2020-09-21 | 2021-01-22 | 西安电子科技大学 | 基于区块链的分布式众包系统、方法、存储介质及终端 |
CN112446611A (zh) * | 2020-11-25 | 2021-03-05 | 杭州趣链科技有限公司 | 基于区块链的众包服务管理系统及方法 |
CN112581097A (zh) * | 2020-12-24 | 2021-03-30 | 陕西交建云数据科技有限公司 | 一种基于区块链的责任追溯方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111563122A (zh) * | 2020-05-06 | 2020-08-21 | 青岛大学 | 一种基于区块链的任务交付方法、装置、设备及存储介质 |
CN112766895A (zh) * | 2021-01-12 | 2021-05-07 | 云南电网有限责任公司电力科学研究院 | 输电线路巡维任务结算方法、系统、计算机设备和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108805561A (zh) * | 2017-04-27 | 2018-11-13 | 中思博安科技(北京)有限公司 | 可访问多个区块链的智能合约的执行方法和系统 |
US20180349201A1 (en) * | 2017-06-05 | 2018-12-06 | Balanced Media Technology, LLC | Platform for collaborative processing of computing tasks |
CN109040014A (zh) * | 2018-06-13 | 2018-12-18 | 湖南搜云网络科技股份有限公司 | 区块链处理方法及装置、区块链节点及存储介质 |
CN109583857A (zh) * | 2018-12-11 | 2019-04-05 | 腾讯科技(深圳)有限公司 | 公开邀约任务处理方法、系统、设备及存储介质 |
CN109726887A (zh) * | 2018-10-12 | 2019-05-07 | 西安电子科技大学 | 基于区块链的移动众包数据数据采集与处理系统及方法 |
CN109993528A (zh) * | 2019-03-29 | 2019-07-09 | 上海掌门科技有限公司 | 一种用于管理委托任务的方法与设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11488147B2 (en) * | 2015-07-14 | 2022-11-01 | Fmr Llc | Computationally efficient transfer processing and auditing apparatuses, methods and systems |
CN108053241B (zh) * | 2017-12-12 | 2021-12-28 | 北京小米移动软件有限公司 | 数据分析方法、装置及计算机可读存储介质 |
CN109345392B (zh) * | 2018-10-26 | 2020-06-23 | 阿里巴巴集团控股有限公司 | 编程题目发布、解答代码发布、解答代码检验方法及系统 |
CN109740622A (zh) * | 2018-11-20 | 2019-05-10 | 众安信息技术服务有限公司 | 基于区块链通证奖励方式的图像标注任务众包方法及系统 |
CN109816259A (zh) * | 2019-01-30 | 2019-05-28 | 翟红鹰 | 基于区块链的工作任务分配方法、终端设备及存储介质 |
CN110163590B (zh) * | 2019-04-29 | 2021-02-19 | 创新先进技术有限公司 | 基于区块链的缴费代扣方法及装置、电子设备、存储介质 |
CN110166261A (zh) * | 2019-04-29 | 2019-08-23 | 深圳市元征科技股份有限公司 | 一种任务管理方法及区块链节点设备 |
-
2019
- 2019-09-13 CN CN201910867619.5A patent/CN110602097B/zh active Active
- 2019-09-13 CN CN201911269566.3A patent/CN110944008B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108805561A (zh) * | 2017-04-27 | 2018-11-13 | 中思博安科技(北京)有限公司 | 可访问多个区块链的智能合约的执行方法和系统 |
US20180349201A1 (en) * | 2017-06-05 | 2018-12-06 | Balanced Media Technology, LLC | Platform for collaborative processing of computing tasks |
CN109040014A (zh) * | 2018-06-13 | 2018-12-18 | 湖南搜云网络科技股份有限公司 | 区块链处理方法及装置、区块链节点及存储介质 |
CN109726887A (zh) * | 2018-10-12 | 2019-05-07 | 西安电子科技大学 | 基于区块链的移动众包数据数据采集与处理系统及方法 |
CN109583857A (zh) * | 2018-12-11 | 2019-04-05 | 腾讯科技(深圳)有限公司 | 公开邀约任务处理方法、系统、设备及存储介质 |
CN109993528A (zh) * | 2019-03-29 | 2019-07-09 | 上海掌门科技有限公司 | 一种用于管理委托任务的方法与设备 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111565204A (zh) * | 2020-07-16 | 2020-08-21 | 百度在线网络技术(北京)有限公司 | 区块链运行方法、装置、设备及存储介质 |
CN111565204B (zh) * | 2020-07-16 | 2021-06-18 | 百度在线网络技术(北京)有限公司 | 区块链运行方法、装置、设备及存储介质 |
CN111882248A (zh) * | 2020-08-07 | 2020-11-03 | 武汉空心科技有限公司 | 一种工作平台任务结算系统及结算方法 |
CN111985856A (zh) * | 2020-09-11 | 2020-11-24 | 武汉空心科技有限公司 | 一种基于互联网平台的交付结果评估系统及评估方法 |
CN112257080A (zh) * | 2020-09-21 | 2021-01-22 | 西安电子科技大学 | 基于区块链的分布式众包系统、方法、存储介质及终端 |
CN112446611A (zh) * | 2020-11-25 | 2021-03-05 | 杭州趣链科技有限公司 | 基于区块链的众包服务管理系统及方法 |
CN112581097A (zh) * | 2020-12-24 | 2021-03-30 | 陕西交建云数据科技有限公司 | 一种基于区块链的责任追溯方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110944008B (zh) | 2021-03-19 |
CN110602097B (zh) | 2021-09-14 |
CN110944008A (zh) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110602097B (zh) | 基于区块链的任务处理方法、装置、设备及存储介质 | |
US10783539B2 (en) | Incentive-based crowdvoting using a blockchain | |
EP3742323B1 (en) | Blockchain generating method, and related device and system | |
US20230022670A1 (en) | Communication exchanges and methods of use thereof | |
US10643208B2 (en) | Digital payment system | |
US20180191685A1 (en) | Recurring transfer notifications and secure transfers | |
CN110401715A (zh) | 资源收集任务管理方法、装置、存储介质及系统 | |
CN111339086B (zh) | 区块处理方法、基于区块链的数据查询方法及装置 | |
US11212871B2 (en) | Network of trust with blockchain | |
CN109598142A (zh) | 债权凭证生成方法、装置、电子设备及存储介质 | |
US20190114707A1 (en) | Distribution of Blockchain Tokens | |
CN110599331B (zh) | 基于区块链的债务催收系统、方法、设备及存储介质 | |
US20160275488A1 (en) | Device, system, and method for creating virtual credit card | |
CN110601858B (zh) | 证书管理方法及装置 | |
CN113222726B (zh) | 电子凭证的处理方法、装置及设备 | |
CN110910137A (zh) | 信用数字凭证流转方法、终端及可读存储介质 | |
US20240062187A1 (en) | Network of trust for bill splitting | |
CN116707821A (zh) | 基于区块链的交易数据处理方法及装置 | |
US20240314122A1 (en) | System and method for authenticating interactions with dynamically varying digital resources linked to resource distribution devices | |
CN110855780A (zh) | 基于区块链的面试评价信息共享方法、装置、设备及介质 | |
CN111222885B (zh) | 数据处理请求背书方法、装置、计算机设备及存储介质 | |
CN106302367B (zh) | 事务处理方法和系统 | |
US12020248B2 (en) | Payment redemption using non-fungible tokens | |
US11227266B2 (en) | Digital holding account | |
CN114358944A (zh) | 一种基于区块链的贸易轨迹凭证生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40016167 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |