CN111046439A - 一种基于区块链的智能合约任务可验证方法和系统 - Google Patents
一种基于区块链的智能合约任务可验证方法和系统 Download PDFInfo
- Publication number
- CN111046439A CN111046439A CN201911221945.5A CN201911221945A CN111046439A CN 111046439 A CN111046439 A CN 111046439A CN 201911221945 A CN201911221945 A CN 201911221945A CN 111046439 A CN111046439 A CN 111046439A
- Authority
- CN
- China
- Prior art keywords
- task
- execution result
- intelligent contract
- solver
- chain
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Technology Law (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种基于区块链的智能合约任务可验证方法和系统,其通过获取任务发布者发布的任务信息,任务信息包括依次串联执行的多个子任务文件;将发布的任务信息注册为任务求解者可求解的计算任务;获取任务求解者线下执行后上传的任务执行结果;存在任务验证者挑战任务执行结果时触发争议定位,获取任务验证者的任务执行结果,依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决,从而实现大容量的智能合约任务的链上判决,同时提高系统的安全性。
Description
技术领域
本发明属于区块链领域,具体涉及一种基于区块链的智能合约任务可验证方法和系统。
背景技术
区块链网络是建立在互联网基础上的网络,使用区块链共识机制来维持和更新状态,使用加密通证(比如coins或者tokens)去激励共识参与者(比如矿工/验证者)。区块链实际上就是一个大型项目,它本身是由很多个部分组成的,由下往上分别是P2P网络、共识机制、智能合约虚拟机、智能合约代码。区块链技术在不依赖于任何第三方可信机构的前提下,可以解决开放网络中的信任问题,去中心化的特点使其有着广泛的应用前景,但区块链面临着可扩展性不足的瓶颈。
目前,区块链可扩展性的瓶颈主要体现在两个方面:性能效率低下、功能难以扩展。针对区块链可扩展性,即扩容技术的研究,已经引起了学术界及产业界越来越多的关注,有利于丰富区块链技术适用的应用场景,目前对可扩展技术有一种比较通用的分类方法,称为第一层扩容技术和第二层扩容技术。第一层扩容技术是指在区块链共识层这个部分改进区块链的扩容方案,通过改进区块链自身的共识算法,把区块链自身变的更快、容量变的更大。对于第一层扩容技术的研究已经很成熟和丰富了,都能使区块链支持更多更快的链上交易,但对于区块链计算能力以及功能的扩展效果有限。第二层扩容技术的目的则是把计算移到链下,也称为智能合约层扩容。使用了传统第二层扩容技术的方案有侧链,侧链的支撑功能和主链一样,可以实现交易,但交易速度可以很快,但是侧链存在一个问题:因为侧链只是在侧链节点网络内部跑,服务器比较少,可能很容易受到恶意人员的攻击,这就需要信任矿工,而恶意矿工很可能偷走资产。
为解决侧链网络中可能存在的恶意节点的信任问题,于是诞生了针对信任问题的新型第二层扩容技术。Plasma即是改进的传统第二层扩容技术,解决的是区块容量的问题。但Plasma也存在一些问题,第一个问题是它只能用来做资产交易;第二个问题是需要等待交易在链上确认;第三个是如果想要确保资产安全,就需要一直监视主链,否则资产还是可能会被偷走。相对于Plasma只能用来做资产交易这个痛点,状态通道可以通过写一个智能合约,实现在链下执行智能合约程序。在发起一笔交易时,状态通道首先要在链上创造一个多重签订合约;接下来,是在链下接受这笔交易或者状态的更新,每一笔交易多重合约里面所有人都要签名;而合约发布最终的状态更新时,区块链会检查所有人是否都签名。状态通道的优点是允许一组各方在链外相互同意消息序列,并且只在处理完所有消息之后发布单个聚合事务。重点在于各方都诚实、可利用,但在其他情况下却无法顺利、有效地运作。具体而言,如果通道的任何成员间存在争议或不能继续参与,则状态通道必须准备好链上解决,状态通道还存在一些问题,一个最明显的问题就是用户的数量需要固定,第二个问题是每一笔交易都需要所有人签名,第三个问题是仍需要监视主链来保证资产和状态的安全性。因此,不管是Plasma还是状态通道都存在无法链上解决容量较大任务的链上判决,因而并不能支持大型的扩容。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于区块链的智能合约任务可验证方法和系统,其通过获取任务发布者发布的包括依次串联执行的多个子任务文件的智能合约任务信息,获取任务求解者线下执行后上传的任务执行结果;存在任务验证者挑战任务执行结果时触发争议定位,获取任务验证者的任务执行结果,依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决,从而实现大容量的智能合约任务的链上判决,同时提高系统的安全性。
为实现上述目的,按照本发明的一个方面,提供了一种基于区块链的智能合约任务可验证方法,包括如下步骤:
获取任务发布者发布的智能合约任务信息,智能合约任务信息包括依次串联执行的多个子任务文件;将发布的智能合约任务信息注册为任务求解者可求解的计算任务;获取任务求解者线下执行后上传的任务执行结果;
存在任务验证者挑战任务执行结果时触发争议定位,获取任务验证者的任务执行结果,依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决;其中,当前子任务执行的链上判决具体为:将上一子任务执行结果作为输入并执行当前子任务,比对链上执行结果和任务求解者当前子任务的执行结果是否相同。
作为本发明的进一步改进,获取任务发布者发布的智能合约任务信息具体为:获取任务发布者的智能合约任务信息并转化为WASM任务文件上传至IPFS网络,获取IPFS网络返回文件哈希作为任务文件ID,通过任务文件创建接口将任务文件ID和任务酬金信息发布至区块链网络。
作为本发明的进一步改进,获取任务验证者或任务发布者发布的任务执行结果具体为:依据任务文件ID从IPFS网络获取WASM任务文件,线下执行WASM任务文件获取任务执行结果,将任务执行结果上传至IPFS网络。
作为本发明的进一步改进,链上执行结果和任务求解者当前子任务的执行结果相同则链上判断任务求解者的任务执行结果正确,给予任务求解者相应的奖励;链上执行结果和任务求解者当前子任务的执行结果不相同则链上判断任务求解者的任务执行结果不正确,给予任务求解者相应的惩罚。
作为本发明的进一步改进,该方法还包括如下步骤:当预设的时间阈值内未触发任务争议模块时触发系统强制错误,系统强制错误具体为,随机生成并发布一个智能合约任务信息,上传错误的执行结果,等待任务验证者挑战,若存在任务验证者挑战并上传正确的执行结果,则给予任务验证者相应的奖励。
为实现上述目的,按照本发明的另一个方面,提供了一种基于区块链的智能合约任务可验证系统,其包括任务创建模块、任务执行模块、任务验证模块和争议定位模块,
任务创建模块用于获取任务发布者发布的智能合约任务信息,智能合约任务信息包括依次串联执行的多个子任务文件,将发布的智能合约任务信息注册为任务求解者可求解的计算任务;
任务执行模块用于任务求解者获取智能合约任务信息、线下执行智能合约任务信息并上传任务执行结果;
任务验证模块用于任务验证者获取智能合约任务信息并线下执行智能合约任务信息,存在挑战任务执行结果时触发争议定位并上传任务执行结果;
争议定位模块用于依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决,当前子任务执行的链上判决具体为:将上一子任务执行结果作为输入并执行当前子任务,比对链上执行结果和任务求解者当前子任务的执行结果是否相同。
作为本发明的进一步改进,获取任务发布者发布的智能合约任务信息具体为:获取任务发布者的智能合约任务信息并转化为WASM任务文件上传至IPFS网络,获取IPFS网络返回文件哈希作为任务文件ID,通过任务文件创建接口将任务文件ID和任务酬金信息发布至区块链网络。
作为本发明的进一步改进,获取任务验证者或任务发布者发布的任务执行结果具体为:依据任务文件ID从IPFS网络获取WASM任务文件,线下执行WASM任务文件获取任务执行结果,将任务执行结果上传至IPFS网络。
作为本发明的进一步改进,争议定位模块还用于链上执行结果和任务求解者当前子任务的执行结果相同则链上判断任务求解者的任务执行结果正确,给予任务求解者相应的奖励;链上执行结果和任务求解者当前子任务的执行结果不相同则链上判断任务求解者的任务执行结果不正确,给予任务求解者相应的惩罚。
作为本发明的进一步改进,该系统还包括系统强制错误模块,系统强制错误模块用于当预设的时间阈值内未触发任务争议模块时触发系统强制错误,系统强制错误具体为:随机生成并发布一个智能合约任务信息,上传错误的执行结果,等待任务验证者挑战,若存在验证者挑战并上传正确的执行结果,则给予任务求解者相应的奖励。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
本发明的一种基于区块链的智能合约任务可验证方法和系统,其通过获取任务发布者发布的智能合约任务信息,存在任务验证者挑战任务执行结果时触发争议定位,获取任务验证者的任务执行结果,依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决,通过限制链上判决所需消耗的链上代价保证实现链上判决,如果争议判决所需链上计算代价在区块链系统允许的范围内,就可以借助区块链保证判决的公正性,从而实现大容量的智能合约任务的链上判决,同时,通过打造一个链下系统,并且确保链下任务承载的价值大于攻击本身的价值,借助链下经济体,应用只要保证链下执行的智能合约任务所承载的实际价值,小于攻击者发起攻击而损失的价值,从而提高系统的安全性。
本发明的一种基于区块链的智能合约任务可验证方法和系统,其任务分发模块并未采取随机分配策略,而是添加了特色的信誉评估模块,依据参与者信誉度进行任务分发以及酬金分配,以提高求解者求解结果的正确率,为保证可扩展智能合约的可行性,必须解决验证者困境问题以保证脱链计算市场的正常生态,同时,通过系统强制错误模块提高计算任务求解可信度,系统故意上传错误求解结果检验验证者活跃度,如果强制错误没有被发现,则提高验证酬金,鼓励验证者参与验证,可解决验证者困境问题,提高脱链验证参与者的积极性。
本发明的一种基于区块链的智能合约任务可验证方法和系统,将链下求解者作为可扩展智能合约任务的实际执行者,任务发布者通过激励层智能合约的任务创建接口发布任务酬金和智能合约任务信息,计算节点通过注册成为任务求解者,提供正确解决方案以获得酬金。由于链上节点需要执行争议指令以判决博弈结果,任务发布者统一将计算任务编译为WASM文件,使得计算节点和区块链节点可拥有相同的执行环境,用于执行计算任务、提交执行结果或执行争议指令、判决博弈结果。系统争议定位功能在定位结束后会向区块链网络广播定位到的争议指令以及对应虚拟机执行证明,然后链上节点执行争议指令以验证求解者执行结果的合法性,给出链上共识的脱链验证博弈的胜利者的判决。可扩展智能合约激励层通过锚定链上共识,保证博弈判决的公正性,根据共识后的判决结果分配赏金。
附图说明
图1是本发明实施例的一种基于区块链的智能合约任务可验证方法的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。下面结合具体实施方式对本发明进一步详细说明。
图1是本发明实施例的一种基于区块链的智能合约任务可验证方法的示意图。如图1所示,一种基于区块链的智能合约任务可验证方法,其包括如下步骤:
获取任务发布者发布的智能合约任务信息,智能合约任务信息包括依次串联执行的多个子任务文件;将发布的智能合约任务信息注册为任务求解者可求解的计算任务;获取任务求解者线下执行后上传的任务执行结果;
具体地,获取任务发布者的智能合约任务信息并转化为WASM任务文件上传至IPFS网络,获取IPFS网络返回文件哈希作为任务文件ID,通过任务文件创建接口将任务文件ID和任务酬金信息发布至区块链网络;作为一个示例,任务发布者的智能合约任务信息可以为C/C++编写的程序代码,该任务文件创建接口可由solidity智能合约层提供;获取任务求解者线下执行后上传的任务执行结果,具体地,依据任务文件ID从IPFS网络获取WASM任务文件,线下执行WASM任务文件获取任务执行结果,将任务执行结果上传至IPFS网络,存在任务验证者挑战任务结果时,触发争议定位;否则,即任务执行结果无争议,任务执行结束;作为一个优选的实施例,任务执行结果无争议,执行结束,任务求解者获得相应的奖励,如该任务相应酬金。
存在任务验证者挑战任务执行结果时触发争议定位,获取任务验证者的任务执行结果,依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决,当前子任务执行的链上判决具体为:将上一子任务执行结果作为输入并执行当前子任务,比对链上执行结果和任务求解者当前子任务的执行结果是否相同。作为一个优选的实施例,链上执行结果和任务求解者当前子任务的执行结果相同则链上判断任务求解者的任务执行结果正确,则给予任务求解者相应的奖励,如增加任务求解者信誉并发放相应的求解酬金;链上执行结果和任务求解者当前子任务的执行结果不相同则链上判断任务求解者的任务执行结果不正确,则给予任务求解者相应的惩罚,如降低任务求解者信誉并没收任务求解者的任务求解抵押金。
作为一个示例,当任务求解者和任务验证者存在争议时,可以通过争议判决以找出不诚实者,解决争议,在解决脱链冲突时通过争议定位模块定位最小争议程序段,减少判决的链上开销。当争议产生时,通争议程序段定位获取最小争议程序段,并上传争议指令对应的虚拟机执行证明至区块链网络,接着链上节点会复现最小争议程序段的执行过程,比较链上执行结果与执行证明是否相符,以实现争议任务的链上判决。由于链上节点不能完整复现任务的完整求解过程,只能复现任务的一小部分,因此争议程序段定位必须依赖任务求解者和任务验证者的计算力,根据争议双方当前虚拟机状态划分、执行并定位争议程序段。
作为一个优选的实施例,该方法还包括如下步骤:当预设的时间阈值内未触发任务争议模块时触发系统强制错误,系统强制错误具体为,随机生成并发布一个智能合约任务信息,上传错误的执行结果,等待任务验证者挑战,若存在任务验证者挑战并上传正确的执行结果,则给予任务验证者相应的奖励。
通过激励链下节点脱链验证执行结果,确保系统本身交易的价值大于攻击本身的价值,极大降低第二层扩容技术中链下网络50%攻击发生的可能性。由于计算参与者中可能存在恶意节点,因此必须避免恶意求解者跳过脱链验证过程,而通争议程序段定位发现错误的执行结果,系统拥有合理的激励机制鼓励计算节点进行脱链验证,以保证脱链验证过程不可省略。与此同时,还需要避免恶意挑战者恶意延迟虚拟机进度。一旦任务求解者和验证者产生有争议的任务执行结果,需要在链上节点并不能完整复现智能合约的完整执行过程的情况下,保证链上可识别恶意参与者,以保证区块链系统的安全性。实际上,区块链节点的计算能力可以复现合约任务的一小部分,但合约任务中争议指令位置的确定就要依赖任务求解者和验证者的计算力,因此必须实现争议指令定位、可链上验证的虚拟机执行证明。链上节点通过复现争议指令的执行过程,验证计算节点的执行证明,以完成争议的公正判决。
一种基于区块链的智能合约任务可验证系统,其包括任务创建模块、任务执行模块、任务验证模块和争议定位模块,其中
任务创建模块用于获取任务发布者发布的智能合约任务信息,智能合约任务信息包括依次串联执行的多个子任务文件,将发布的智能合约任务信息注册为任务求解者可求解的计算任务;具体地,获取任务发布者的智能合约任务信息并转化为WASM任务文件上传至IPFS网络,获取IPFS网络返回文件哈希作为任务文件ID,通过任务文件创建接口将任务文件ID和任务酬金信息发布至区块链网络;作为一个示例,任务发布者的智能合约任务信息可以为C/C++编写的程序代码,该任务文件创建接口可由solidity智能合约层提供。
任务执行模块用于任务求解者获取智能合约任务信息、线下执行智能合约任务信息并上传任务执行结果;具体地,依据任务文件ID从IPFS网络获取WASM任务文件,线下执行WASM任务文件获取任务执行结果,将任务执行结果上传至IPFS网络,存在任务验证者挑战任务结果时,触发争议定位模块;否则,即任务执行结果无争议,任务执行结束;
作为一个优选的实施例,任务执行结果无争议,执行结束,任务求解者获得相应的奖励,如该任务相应酬金;
任务验证模块用于任务验证者获取智能合约任务信息并线下执行智能合约任务信息,挑战任务执行结果时触发争议定位并上传任务执行结果,具体地,依据任务文件ID从IPFS网络获取WASM任务文件,执行WASM任务文件获取任务执行结果,对比执行结果一致性,不一致时触发争议定位;否则,验证结束;
争议定位模块用于依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决,当前子任务执行的链上判决具体为:将上一子任务执行结果作为输入并执行当前子任务,比对链上执行结果和任务求解者当前子任务的执行结果是否相同。作为一个优选的实施例,链上执行结果和任务求解者当前子任务的执行结果相同则链上判断任务求解者的任务执行结果正确,则给予任务求解者相应的奖励,如增加任务求解者信誉并发放相应的求解酬金;链上执行结果和任务求解者当前子任务的执行结果不相同则链上判断任务求解者的任务执行结果不正确,则给予任务求解者相应的奖励,如降低任务求解者信誉并没收任务求解者的任务求解抵押金。
作为一个示例,当任务求解者和验证者存在争议时,可以通过争议判决以找出不诚实者,解决争议,在解决脱链冲突时通过争议定位模块定位最小争议程序段,减少判决的链上开销。当争议产生时,通争议程序段定位获取最小争议程序段,并上传争议指令对应的虚拟机执行证明至区块链网络,接着链上节点会复现最小争议程序段的执行过程,比较链上执行结果与执行证明是否相符,以实现争议任务的链上判决。由于链上节点不能完整复现任务的完整求解过程,只能复现任务的一小部分,因此争议程序段定位必须依赖任务求解者和验证者的计算力,根据争议双方当前虚拟机状态划分、执行并定位争议程序段。
作为一个优选的实施例,该系统还包括系统强制错误模块,系统强制错误模块用于当预设的时间阈值内未触发任务争议模块时触发系统强制错误,系统强制错误具体为:随机生成并发布一个智能合约任务信息,上传错误的执行结果,等待任务验证者挑战,若存在验证者挑战并上传正确的执行结果,则给予任务求解者相应的奖励。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于区块链的智能合约任务可验证方法,其特征在于,包括如下步骤:
获取任务发布者发布的智能合约任务信息,智能合约任务信息包括依次串联执行的多个子任务文件;将发布的任务信息注册为任务求解者可求解的计算任务;获取任务求解者线下执行后上传的任务执行结果;
存在任务验证者挑战任务执行结果时触发争议定位,获取任务验证者的任务执行结果,依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决;其中,当前子任务执行的链上判决具体为:将上一子任务执行结果作为输入并执行当前子任务,比对链上执行结果和任务求解者当前子任务的执行结果是否相同。
2.根据权利要求1所述的一种基于区块链的智能合约任务可验证方法,其特征在于,获取任务发布者发布的智能合约任务信息具体为:获取任务发布者的智能合约任务信息并转化为WASM任务文件上传至IPFS网络,获取IPFS网络返回文件哈希作为任务文件ID,通过任务文件创建接口将任务文件ID和任务酬金信息发布至区块链网络。
3.根据权利要求2所述的一种基于区块链的智能合约任务可验证方法,其特征在于,获取任务验证者或任务发布者发布的任务执行结果具体为:依据任务文件ID从IPFS网络获取WASM任务文件,线下执行WASM任务文件获取任务执行结果,将任务执行结果上传至IPFS网络。
4.根据权利要求1-3中任一项所述的一种基于区块链的智能合约任务可验证方法,其特征在于,链上执行结果和任务求解者当前子任务的执行结果相同则链上判断任务求解者的任务执行结果正确,给予任务求解者相应的奖励;链上执行结果和任务求解者当前子任务的执行结果不相同则链上判断任务求解者的任务执行结果不正确,给予任务求解者相应的惩罚。
5.根据权利要求1-3中任一项所述的一种基于区块链的智能合约任务可验证方法,其特征在于,该方法还包括如下步骤:当预设的时间阈值内未触发任务争议模块时触发系统强制错误,系统强制错误具体为,随机生成并发布一个智能合约任务信息,上传错误的执行结果,等待任务验证者挑战,若存在任务验证者挑战并上传正确的执行结果,则给予任务验证者相应的奖励。
6.一种基于区块链的智能合约任务可验证系统,其包括任务创建模块、任务执行模块、任务验证模块和争议定位模块,其特征在于,
任务创建模块用于获取任务发布者发布的智能合约任务信息,智能合约任务信息包括依次串联执行的多个子任务文件,将发布的任务信息注册为任务求解者可求解的计算任务;
任务执行模块用于任务求解者获取智能合约任务信息、线下执行智能合约任务信息并上传任务执行结果;
任务验证模块用于任务验证者获取智能合约任务信息并线下执行智能合约任务信息,存在挑战任务执行结果时触发争议定位并上传任务执行结果;
争议定位模块用于依据子任务文件的执行顺序依次比对任务求解者和任务验证者的子任务执行结果,当前子任务执行结果不同时,触发当前子任务执行的链上判决,当前子任务执行的链上判决具体为:将上一子任务执行结果作为输入并执行当前子任务,比对链上执行结果和任务求解者当前子任务的执行结果是否相同。
7.根据权利要求6所述的一种基于区块链的智能合约任务可验证系统,其特征在于,获取任务发布者发布的智能合约任务信息具体为:获取任务发布者的智能合约任务信息并转化为WASM任务文件上传至IPFS网络,获取IPFS网络返回文件哈希作为任务文件ID,通过任务文件创建接口将任务文件ID和任务酬金信息发布至区块链网络。
8.根据权利要求7所述的一种基于区块链的智能合约任务可验证系统,其特征在于,获取任务验证者或任务发布者发布的任务执行结果具体为:依据任务文件ID从IPFS网络获取WASM任务文件,线下执行WASM任务文件获取任务执行结果,将任务执行结果上传至IPFS网络。
9.根据权利要求6-8中任一项所述的一种基于区块链的智能合约任务可验证系统,其特征在于,争议定位模块还用于链上执行结果和任务求解者当前子任务的执行结果相同则链上判断任务求解者的任务执行结果正确,给予任务求解者相应的奖励;链上执行结果和任务求解者当前子任务的执行结果不相同则链上判断任务求解者的任务执行结果不正确,给予任务求解者相应的惩罚。
10.根据权利要求6-8中任一项所述的一种基于区块链的智能合约任务可验证系统,该系统还包括系统强制错误模块,系统强制错误模块用于当预设的时间阈值内未触发任务争议模块时触发系统强制错误,系统强制错误具体为:随机生成并发布一个智能合约任务信息,上传错误的执行结果,等待任务验证者挑战,若存在验证者挑战并上传正确的执行结果,则给予任务求解者相应的奖励。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911221945.5A CN111046439B (zh) | 2019-12-03 | 2019-12-03 | 一种基于区块链的智能合约任务可验证方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911221945.5A CN111046439B (zh) | 2019-12-03 | 2019-12-03 | 一种基于区块链的智能合约任务可验证方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111046439A true CN111046439A (zh) | 2020-04-21 |
CN111046439B CN111046439B (zh) | 2023-06-06 |
Family
ID=70234518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911221945.5A Active CN111046439B (zh) | 2019-12-03 | 2019-12-03 | 一种基于区块链的智能合约任务可验证方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111046439B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111415165A (zh) * | 2020-05-07 | 2020-07-14 | 北京思特奇信息技术股份有限公司 | 基于区块链渠道的酬金管理方法及系统 |
CN111563122A (zh) * | 2020-05-06 | 2020-08-21 | 青岛大学 | 一种基于区块链的任务交付方法、装置、设备及存储介质 |
CN113641631A (zh) * | 2021-08-10 | 2021-11-12 | 深圳技术大学 | 基于区块链的ipfs文件管理方法、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985936A (zh) * | 2018-07-09 | 2018-12-11 | 北京中电普华信息技术有限公司 | 一种基于智能合约的审计方法及系统 |
US20190334726A1 (en) * | 2018-04-30 | 2019-10-31 | Dell Products L.P. | Blockchain-based method and system for immutable resource allocation in a cloud computing environment |
-
2019
- 2019-12-03 CN CN201911221945.5A patent/CN111046439B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190334726A1 (en) * | 2018-04-30 | 2019-10-31 | Dell Products L.P. | Blockchain-based method and system for immutable resource allocation in a cloud computing environment |
CN108985936A (zh) * | 2018-07-09 | 2018-12-11 | 北京中电普华信息技术有限公司 | 一种基于智能合约的审计方法及系统 |
Non-Patent Citations (1)
Title |
---|
赵明慧;张;亓晋;: "基于区块链的社会物联网可信服务管理框架" * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111563122A (zh) * | 2020-05-06 | 2020-08-21 | 青岛大学 | 一种基于区块链的任务交付方法、装置、设备及存储介质 |
CN111415165A (zh) * | 2020-05-07 | 2020-07-14 | 北京思特奇信息技术股份有限公司 | 基于区块链渠道的酬金管理方法及系统 |
CN113641631A (zh) * | 2021-08-10 | 2021-11-12 | 深圳技术大学 | 基于区块链的ipfs文件管理方法、设备及存储介质 |
CN113641631B (zh) * | 2021-08-10 | 2023-05-23 | 深圳技术大学 | 基于区块链的ipfs文件管理方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111046439B (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109842606B (zh) | 基于一致性哈希算法的区块链共识算法和系统 | |
JP6998348B2 (ja) | 複数のノードの分散ネットワークで構成されたブロックチェーン上の複数のノード間の合意をなすための方法 | |
Baza et al. | B-ride: Ride sharing with privacy-preservation, trust and fair payment atop public blockchain | |
CN109035012B (zh) | 一种区块链系统的跨链处理方法和计算机可读存储介质 | |
EP3586493B1 (en) | Method for mining a block in a decentralized blockchain consensus network | |
CN111090892B (zh) | 一种基于vrf和门限签名的区块链共识方法和装置 | |
Kumaresan et al. | How to use bitcoin to incentivize correct computations | |
CN110351067B (zh) | 针对主从多链的区块链共识方法 | |
Wahab et al. | Survey of consensus protocols | |
CN113853578A (zh) | 用于在区块链智能合约中生成随机数的方法 | |
CN111046439B (zh) | 一种基于区块链的智能合约任务可验证方法和系统 | |
CN113746858B (zh) | 一种基于可验证随机函数的跨链通信方法 | |
CN110855432B (zh) | 基于可验证随机函数分配验证者奖励的异步bft&dpos共识机制 | |
CN110445603B (zh) | 一种去中心化随机数生成方法 | |
Wang et al. | Beh-Raft-Chain: a behavior-based fast blockchain protocol for complex networks | |
CN111951108A (zh) | 一种具有图灵完备智能合约区块链的链结构设计方法 | |
Wang et al. | Blockchain-based dynamic energy management mode for distributed energy system with high penetration of renewable energy | |
Bashar et al. | Contextualizing consensus protocols in blockchain: A short survey | |
WO2020082213A1 (zh) | 一种网络可扩展性区块链实现方法 | |
CN110990790B (zh) | 一种数据处理方法及设备 | |
CN114503143A (zh) | 统一协议共识 | |
CN114372589A (zh) | 一种联邦学习方法及相关装置 | |
Jennath et al. | Survey on blockchain consensus strategies | |
CN112907246B (zh) | 基于BFT协议和PoW机制的区块链共识协议实现方法和系统 | |
Yun et al. | MMOG user participation based decentralized consensus scheme and proof of participation analysis on the bryllite blockchain system |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |