CN112967148B - 面向智能物联网算力服务的区块链共识机制 - Google Patents
面向智能物联网算力服务的区块链共识机制 Download PDFInfo
- Publication number
- CN112967148B CN112967148B CN202110340751.8A CN202110340751A CN112967148B CN 112967148 B CN112967148 B CN 112967148B CN 202110340751 A CN202110340751 A CN 202110340751A CN 112967148 B CN112967148 B CN 112967148B
- Authority
- CN
- China
- Prior art keywords
- block
- task
- matrix
- result
- subtask
- 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.)
- Active
Links
- 230000007246 mechanism Effects 0.000 title claims abstract description 80
- 238000004364 calculation method Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 28
- 229940050561 matrix product Drugs 0.000 claims abstract description 24
- 238000005065 mining Methods 0.000 claims abstract description 16
- 239000011159 matrix material Substances 0.000 claims description 106
- 238000000034 method Methods 0.000 claims description 43
- 238000010606 normalization Methods 0.000 claims description 43
- 230000006870 function Effects 0.000 claims description 22
- 238000012795 verification Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 18
- 238000012549 training Methods 0.000 claims description 15
- 230000008901 benefit Effects 0.000 claims description 9
- 230000002860 competitive effect Effects 0.000 claims description 9
- 230000011218 segmentation Effects 0.000 claims description 9
- 239000013598 vector Substances 0.000 claims description 6
- 230000005284 excitation Effects 0.000 claims description 3
- 238000012856 packing Methods 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 3
- 238000003672 processing method Methods 0.000 claims 2
- 230000008859 change Effects 0.000 claims 1
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 239000002699 waste material Substances 0.000 description 4
- 238000005336 cracking Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910052500 inorganic mineral Inorganic materials 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000011707 mineral Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/02—Agriculture; Fishing; Forestry; Mining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0226—Incentive systems for frequent usage, e.g. frequent flyer miles programs or point systems
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y10/00—Economic sectors
- G16Y10/20—Mining
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
- G16Y30/10—Security thereof
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y40/00—IoT characterised by the purpose of the information processing
- G16Y40/50—Safety; Security of things, users, data or systems
-
- 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)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- Computing Systems (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Tourism & Hospitality (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Game Theory and Decision Science (AREA)
- Finance (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Operations Research (AREA)
- Mining & Mineral Resources (AREA)
- Quality & Reliability (AREA)
- Educational Administration (AREA)
- Marine Sciences & Fisheries (AREA)
- Agronomy & Crop Science (AREA)
- Animal Husbandry (AREA)
- Algebra (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种面向智能物联网算力服务的区块链共识机制,包括面向智能物联网算力服务的区块链架构、矩阵乘积计算任务处理机制、以及奖励调整机制;面向智能物联网算力服务的区块链架构中有四类节点:AIoT节点、协调节点、矿工节点以及验证节点。本发明提出的一系列矩阵乘积计算任务处理机制为参与算力服务的区块链矿工制定了统一的规则与接口,保证了区块链挖矿竞争的公平性,有利于吸引更多矿工参与到区块链,从而进一步提升区块链网络的安全性。利用区块链中矿工分布式的计算服务,降低了因中心式服务带来的安全与隐私泄露风险,提高了算力服务的安全性。
Description
技术领域
本发明属于区块链与智能物联网领域,具体针对现有区块链网络中的工作量证明共识机制带来的矿工算力浪费问题,以及智能物联网设备进行人工智能模型训练面临的算力不足问题,设计了一种面向智能物联网算力服务的区块链新型共识机制。
背景技术
近年来,区块链技术快速发展并得到了广泛应用。其中,区块链共识机制是当前研究的重点方向之一。通过共识机制,区块链中的节点可以在无需互相信任的分布式系统中维持交易记录的安全性与一致性。
工作量证明(Proof of Work,PoW)共识机制是最早和迄今为止最安全可靠的公有链共识机制,可用来保证网络分布式记账的一致性。然而,在基于PoW共识的区块链中,矿工节点需要消耗大量算力进行暴力搜索以找到一个随机数(Nonce),使得区块头哈希小于目标哈希。率先找到该Nonce的矿工便完成了工作量证明,从而获得打包本轮区块的权利。作为本轮出块竞争的胜出者,该矿工会被系统按照预先设定奖励一定量的数字货币。这种奖励促使矿工将计算资源投入到共识过程,以消耗算力的方式保障区块链网络的安全。但是,矿工在共识过程中执行大量哈希计算得到的输出结果无其他应用价值,这被广泛认为是一种算力浪费。
与此同时,随着物联网与人工智能的迅速发展与融合,新兴的智能物联网(Artificial Intelligence of Things,AIoT)开始出现并迅速获得了广泛的关注与迅猛的发展,越来越多的智能物联网设备有了AI需求以分析处理大规模的数据。然而,相当多智能物联网设备的计算能力是有限的,无法执行AI模型训练这种计算密集型的计算任务。这通常需要云计算、边缘计算等的辅助,使得拥有足够计算能力的服务器(例如云服务器、边缘服务器等)为资源受限物联设备的AI训练提供算力服务。但是,这种模式有两方面的限制:(1)云计算、边缘计算等服务方,需要部署更多的算力以提供AI训练服务,增加整个系统的成本,从而间接影响各个算力用户的服务价格;(2)通常,这些服务器都处于中心位置,一旦其遭受攻击,将导致大量的数据泄露,这在安全与隐私方面带来了挑战。若能将AI训练中的计算需求融入到区块链的暴力破解计算过程中,回收PoW暴力破解过程中浪费的算力,则不仅能以较低的成本解决智能物联网设备AI训练中的算力不足问题,同时可利用区块链技术的去中心化特性解决有中心式服务所带来的安全问题。
因此,针对当前区块链和智能物联网面临的问题,设计一种面向智能物联网算力服务的区块链新型共识机制,将智能物联网设备进行AI模型训练产生的计算任务融入到区块链网络PoW的暴力破解过程中,矿工通过完成这些计算任务进行工作量证明以达成共识,将同时解决区块链中PoW共识机制存在的算力浪费问题和智能物联网设备进行AI模型训练存在的算力不足问题,还可以减轻中心式服务带来的安全问题。这既有利于区块链应用的落地实施,又有利于满足智能物联网中不断增长的AI需求,有着重要的研究意义与应用价值。
发明内容
本发明的目的在于克服现有技术的不足,提供一种为参与算力服务的区块链矿工制定了统一的规则与接口,保证了区块链挖矿竞争的公平性;利用区块链中矿工分布式的计算服务,降低了因中心式服务带来的安全与隐私泄露风险,提高了算力服务的安全性的面向智能物联网算力服务的区块链共识机制。
本发明的目的是通过以下技术方案来实现的:面向智能物联网算力服务的区块链共识机制,包括面向智能物联网算力服务的区块链架构、矩阵乘积计算任务处理机制、以及奖励调整机制;
面向智能物联网算力服务的区块链架构中有四类节点:AIoT节点、协调节点、矿工节点以及验证节点;
AIoT节点是位于区块链网络外部的有AI训练需求但算力有限的AIoT设备,其计算类型以矩阵乘积计算为主,AIoT节点将矩阵乘积计算任务交付给协调节点进行处理;
协调节点用于将原始的矩阵乘积计算任务转换为归一化的子任务,并将子任务分发给矿工节点;对来自矿工的任务结果进行验证和合并并将任务结果返回给AIoT节点;
矿工节点完成接收到的子任务并将结果返回给协调节点;
验证节点包括协调节点和区块链中的全节点,其中协调节点会验证所有归一化子任务结果的正确性,而区块链中的全节点只会验证新区块对应的归一化子任务结果的正确性;
矩阵乘积计算任务处理机制包括连乘处理机制、归一化机制、结果验证及合并机制、难度调整机制;
通过连乘处理机制和归一化机制,协调节点能够将来自AIoT节点的矩阵数量、规模、计算复杂度都不同的原始MMC任务划分处理为归一化的子任务,每个子任务都是计算两个k阶方阵的乘积;
通过结果验证及合并机制,协调节点能够验证归一化子任务结果的正确性,同时能够将这些结果合并为对应的子任务的结果矩阵,最终得到原始任务的结果矩阵;
难度调整机制用于对引入MMC任务后矿工挖矿难度进行调整;
奖励调整机制能够引导矿工参与完成来自AIoT节点的MMC任务的积极性,通过调整系统参数,矿工的总收益函数会相应变化;当希望矿工积极完成MMC任务时,总收益函数是与矿工完成的MMC任务数成正比的;而当外部AIoT的计算需求不足时,为了维持供需平衡,不希望矿工过多地接受MMC任务,通过调整相关参数,总收益函数与矿工完成的MMC任务数的关系会变为反比。
进一步地,所述矿工节点会执行两种循环来进行寻找目标哈希的暴力搜索,分别是无任务循环和有任务循环;在无任务循环中,矿工节点mi并不会参与完成MMC任务,而是像传统的PoW矿工一样;在有任务循环中,mi不仅仅是基于传统PoW区块头进行暴力搜索,还要包括一个学习服务提供字段,该字段包5个元素,分别是原始任务ID、子任务ID、归一化子任务ID、归一化子任务哈希以及归一化子任务结果哈希;
在竞争打包区块bj的权利时,矿工mi首先会决定其计划在本轮竞争中完成的归一化子任务数量
表示非负整数集,表示正整数集;然后mi会在该轮竞争中执行/>次有任务循环,有以下两种情况:
(1)在完成次有任务循环之前,区块bj被成功挖出;如果该区块是mi挖出的,mi会将该区块广播出去;否则mi将验证该区块的合法性,具体验证过程为:mi向协调节点请求该区块中包含的原始任务ID、子任务ID和归一化子任务ID以及对应的任务及其结果,验证任务ID与任务结果是否正确,并验证区块头中的任务哈希、结果哈希是否正确,以及区块头哈希是否小于目标哈希,若是则判定为合法区块,接受该区块;否则判定为非法区块,拒绝该区块;然后,mi会在下一轮区块竞争中完成余下的归一化子任务;
(2)在完成次有任务循环后,区块bj仍旧没有被挖出;此时mi会不断执行无任务循环,直到该区块被自己或者其他矿工挖出;
在每次有任务循环中,mi首先完成一个从协调节点接收到的归一化子任务并将任务结果提交给协调节点;mi会基于该归一化子任务的信息及其结果填充学习服务提供字段,然后将传统PoW区块头和学习服务提供字段作为E-PoW区块头,计算得到区块头哈希;若区块头哈希小于区块头对应的目标哈希,该E-PoW区块头会被广播其他节点,否则mi会进行下一次循环。
在每次有任务循环中,mi首先完成一个从协调节点接收到的归一化子任务以得到任务结果,并将其提交给协调节点;mi会基于该归一化子任务的信息及其结果填充学习服务提供字段,然后将传统PoW区块头和学习服务提供字段作为E-PoW区块头,计算得到区块头哈希;若区块头哈希小于目标哈希,该E-PoW区块头会被广播其他节点,否则mi会进行下一次循环。
进一步地,所述连乘处理机制具体实现方法为:对于一个来自AIoT的原始MMC任务其要求是计算s个矩阵Mj的乘积,j=1,...,s;需要先对其进行连乘处理以便于后续处理;协调节点会将该原始MMC任务划分为s-1个子任务,分别为其中/>计算子任务/>得到的结果就是原始任务Tw的最终结果。
进一步地,所述归一化机制具体实现方法为:用Tw,u表示原始任务Tw的一个子任务,u∈{1,...,s-1};其中包含两个矩阵A和B,其矩阵阶数分别为m×n和n×l,通过归一化处理,计算A×B的子任务被划分为若干个归一化子任务,每个归一化子任务都是计算两个k阶方阵的乘积;该机制主要包括矩阵扩展和矩阵分割两个步骤:
(1)矩阵扩展:矩阵A按照下式进行拓展:
其中,A'的阶数为m'×n', 表示向上取整;Z1,Z2,Z3都是随机矩阵,其阶数分别为m×(n'-n),(m'-m)×n,(m'-m)×(n'-n);
同样的,矩阵B'按照下式由矩阵B拓展得到:
其中,B'的阶数为n'×l',Z4和Z6是随机矩阵,而矩阵Z5满足等式Z1×Z5=0;矩阵Z4,Z5和Z6的阶数分别为n×(l'-l),(n'-n)×l和(n'-n)×(l'-l);
矩阵A'和B'的乘积表示为如下形式:
因此,A'B'左上角的m×n阶子矩阵就是子任务Tw,u的结果矩阵;
(2)矩阵分割:通过矩阵分割,得到矩阵A'和B',其阶数都是k的整数倍,A'和B'按照如下方式进行分割:
其中A′iq和B'qj都是k阶方阵,
根据分块矩阵乘积原理,通过计算A′iq×B'qj来得到A'×B'的结果矩阵,进而得到A×B的结果矩阵;因此子任务Tw,u被划分为个计算A′iq×B'qj的归一化子任务Tw,u,v, 如下式所示:
进一步地,所述结果验证与合并机制具体实现方法为:
(1)结果验证:协调节点和验证节点都可能会对归一化子任务结果进行验证;定义待验证的归一化子任务是X×Y,X和Y都是k阶方阵,其结果矩阵为S;选择两个随机整数sr和sc,1≤sr,sc≤k,然后计算矩阵X的第sr行行向量和矩阵Y的第sc列列向量的内积,得到验证值s:
其中和/>分别表示矩阵X第sr行第i个元素和矩阵Y第sc列的第i个元素;通过判断s和结果矩阵S中第sr行的第sc个元素/>是否相等来验证结果矩阵S的正确性,若两者相等,则结果矩阵正确,否则错误;
(2)结果合并
经过协调节点进行连乘和归一化处理得到的归一化子任务会被分发给有意愿完成MMC任务的矿工节点;具体来说,矿工会在有任务循环中计算归一化子任务,并将其结果返回给协调节点;当收集了所有属于子任务Tw,u的归一化子任务Tw,u,v的结果,协调节点会按照下式将这些结果矩阵合并为Tw,u的结果矩阵:
其中Riqj表示A′iq×B'qj的结果矩阵,并且矩阵Rw,u左上角的m×n阶子矩阵就是子任务Tw,u的结果矩阵;当u<s-1时,Rw,u是属于原始任务Tw的一个中间过程性质的结果;当u=s-1时,Rw,u就包含了原始任务Tw的最终结果。
进一步地,所述难度调整机制具体实现方法为:在基于E-PoW共识的区块链系统中,矿工mi竞争挖掘新区块bj时的难度是其能够决定区块生成速率,该难度是由基础难度和尺度因子决定的;
假设区块链系统每生成W个区块就调整一次基础难度,用来表示生成区块bj时的基础难度/>“|”表示整除;基础难度调整公式表示为:
其中1/Ttar是目标区块生成速率,Tspan表示区块链系统生成W个区块所实际经历的时间;根据该基础难度调整公式,如果系统的实际区块生成速率超过了目标区块生成速率,基础难度会增大,反之会减小;
矿工mi在生成区块bj时的尺度因子表示为:
其中θ和δ都是取值为正的激励因子,表示mi想要在区块周期bj完成的归一化子任务数量;根据尺度因子的定义公式,Fi j和/>是反比关系,因此矿工完成MMC任务的积极性越低,尺度因子就越大,当矿工不参与完成MMC任务时,尺度因子会达到最大值1;
最终,矿工mi竞争挖掘新区块bj时的难度被表示为:
进一步地,所述奖励调整机制具体实现方法为:假设一个E-PoW系统中有n个矿工,并且这些矿工设备的CPU时钟频率都是f;用Cti表示矿工执行一次有任务循环需要的时钟周期数,Ctx表示执行一次无任务循环需要的时钟周期数:
其中Cnt表示矿工完成一个归一化子任务经历的时钟周期数,和/>分别表示计算一次PoW区块头哈希和E-PoW区块头哈希需要的时钟周期数,/>和/>分别表示计算一次任务哈希和结果哈希经历的时钟周期数;
计算矿工的总收益函数:矿工mi在区块周期bj能够获得总收益由两部分构成:任务奖励和区块奖励;基于mi在区块周期bj完成的归一化子任务的数量/>以及单个归一化子任务的奖励rt,得到mi在区块周期bj获得的任务奖励,如下式所示:
通过推导mi在区块周期bj计算区块链哈希的次数,得到mi的哈希率,从而计算出mi成功挖掘出区块bj的概率,得到矿工mi在区块周期bj获得的预期区块奖励,如下式所示:
其中rb表示一份区块奖励,1/Tj表示生成区块bj时的区块生成速率,表示矿工mi计划在区块周期bj内完成的归一化子任务的数量,Vi j和/>如下式所示:
根据任务奖励与预期区块奖励公式,得到矿工mi在区块周期bj获得的总收益函数:
通过改变一些变量来调整总收益函数,从而影响矿工参与完成MMC任务的积极性,具体包括以下两种情况:
(1)鼓励矿工参与完成MMC任务:总收益函数应当与/>成正比关系,此时具体的系统参数设置如下:
当时,系统参数间需满足如下不等式关系:
当时,系统参数间需满足如下不等式关系:
(2)不鼓励矿工参与完成MMC任务:总收益函数应当与/>成反比关系,此时具体的系统参数设置如下:
当时,系统参数间需满足如下不等式关系:
当不满足/>时,无法找到约束条件使得总收益函数/>与/>成反比关系。
本发明的有益效果是:
1、为解决AIoT的算力不足问题和区块链的算力浪费问题提供了一种面向AIoT算力服务的区块链新型共识机制,使得区块链矿工的算力能够被同时应用于维护区块链网络和为AIoT设备进行AI模型训练提供矩阵乘积计算服务,区块链算力的有效利用率得到了大幅提升,同时AIoT的算力需求得到了满足。
2本发明提出的一系列矩阵乘积计算任务处理机制为参与算力服务的区块链矿工制定了统一的规则与接口,保证了区块链挖矿竞争的公平性,有利于吸引更多矿工参与到区块链,从而进一步提升区块链网络的安全性。
3、奖励调整机制为引导矿工参与矩阵乘积计算的积极性提供了方案,从而可以依据外部AIoT计算需求的多寡动态调整奖励以鼓励矿工更多或者更少地完成MMC任务。
4、利用区块链中矿工分布式的计算服务,降低了因中心式服务带来的安全与隐私泄露风险,提高了算力服务的安全性。
附图说明
图1为面向智能物联网算力服务的区块链架构图;
图2是E-PoW共识的有任务循环流程图;
图3是矩阵乘积任务归一化处理机制示意图。
具体实施方式
下面结合附图进一步说明本发明的技术方案。
本发明的一种面向智能物联网算力服务的区块链共识机制,是一种进化的工作量证明(Evolved Proof of Work,E-PoW)共识机制。如图1所示,位于区块链网络外部的AIoT进行AI模型训练产生了大量的矩阵乘积计算需求,这些需求被作为MMC任务注入到区块链网络中。一个被称为协调节点的中间节点会把这些MMC任务划分并归一化为归一化子任务,进而将其分发给基于E-PoW共识的区块链矿工。根据E-PoW共识机制,矿工寻找满足条件的区块头哈希的暴力搜索过程是基于四个元素的,分别是传统的PoW区块头、任务ID、归一化子任务中的矩阵的哈希值以及该归一化子任务的结果的哈希值。当一个矿工率先找到一个小于目标哈希的区块头哈希时,会将该区块广播出去,当该区块被其他节点接受时,该矿工便赢得了一份区块奖励。
本发明的一种面向智能物联网算力服务的区块链共识机制,包括面向智能物联网算力服务的区块链架构、矩阵乘积计算任务处理机制、以及奖励调整机制;
面向智能物联网算力服务的区块链架构中有四类节点:AIoT节点、协调节点、矿工节点以及验证节点;虽然所有的MMC任务最终都是由区块链矿工完成的,但AI与区块链之间的算力协同是通过这四类节点间的合作完成的。
AIoT节点是位于区块链网络外部的有AI训练需求但算力有限的AIoT设备,其计算类型以矩阵乘积计算(Matrix Multiplication Calculation,MMC)为主,这些节点无法执行AI训练这种算力密集型任务,因此AIoT节点将矩阵乘积计算任务交付给协调节点进行处理,进而利用协调节点返回的MMC结果执行下一步的训练。
协调节点用于将原始的矩阵乘积计算任务转换为归一化的子任务,并将子任务分发给矿工节点;除此之外,在将任务结果返回给AIoT节点之前,对来自矿工的子任务结果进行验证和合并,并将任务结果返回给AIoT节点;同时,协调节点还会将历史归一化子任务及其对应的结果数据保留一段时间以应对有可能的查询和验证。
一个MMC任务是计算多个矩阵的乘积,其包含的矩阵可能不止两个,协调节点会将其划分为若干个子任务,每个子任务都是计算两个矩阵之间的乘积。然而,这些子任务仍旧有着不同的规模和计算复杂度,如果直接将这些子任务分发给矿工,会很难保证矿工之间有统一的外部计算负载。因此协调节点会将这些子任务进一步划分为归一化子任务,它们都有统一的计算复杂度。矿工会将这些带有任务ID(包括原始任务ID、子任务ID、归一化子任务ID)的归一化子任务依次完成并返回结果给协调节点,后者会验证这些结果,如果结果正确,协调节点会将其合并为MMC任务的最终结果,再将其返回给AIoT节点,矿工也因此能够获得相应的任务奖励;反之,协调节点会重新发布该任务,同时作为惩罚,该矿工在一段时间内无法获得任务。
矿工节点完成接收到的子任务并将结果返回给协调节点;矿工节点完成任务的过程是寻找小于目标哈希的区块头哈希的过程的一部分,即一份算力被同时应用于矩阵乘积计算和区块挖掘,有着算力复用的效果。当一个矿工率先找到一个小于目标哈希的区块头哈希时,会将该区块广播出去,当该区块被其他节点接受时,该矿工便赢得了一份区块奖励。矿工节点会执行两种循环来进行寻找目标哈希的暴力搜索,分别是无任务循环和有任务循环;在无任务循环中,矿工节点mi并不会参与完成MMC任务,而是像传统的PoW矿工一样;在有任务循环中,mi不仅仅是基于传统PoW区块头(Traditional header)进行暴力搜索,还要包括一个学习服务提供(Learning service providing,LSP)字段,该字段包5个元素,分别是原始任务(Original task)ID、子任务(Sub-task)ID、归一化子任务(Normalizedsub-task)ID、归一化子任务哈希(Task hash)以及归一化子任务结果哈希(Result hash);
在竞争打包区块bj的权利时,矿工mi首先会决定其计划在本轮竞争中完成的归一化子任务数量表示非负整数集,/>表示正整数集;然后mi会在该轮竞争中执行/>次有任务循环,有以下两种情况:
(1)在完成次有任务循环之前,区块bj被成功挖出;如果该区块是mi挖出的,mi会将该区块广播出去;否则mi将验证该区块的合法性,具体验证过程为:mi向协调节点请求该区块中包含的原始任务ID、子任务ID和归一化子任务ID以及对应的任务及其结果,验证任务ID与任务结果是否正确,并验证区块头中的任务哈希、结果哈希是否正确,以及区块头哈希是否小于目标哈希,若是则判定为合法区块,接受该区块;否则判定为非法区块,拒绝该区块;然后,mi会在下一轮区块竞争中完成余下的归一化子任务;
(2)在完成次有任务循环后,区块bj仍旧没有被挖出;此时mi会不断执行无任务循环,直到该区块被自己或者其他矿工挖出;
如图2所示,在每次有任务循环中,mi首先完成一个从协调节点接收到的归一化子任务并将任务结果提交给协调节点;mi会基于该归一化子任务的信息及其结果填充学习服务提供字段,然后将传统PoW区块头和学习服务提供字段作为E-PoW区块头,计算得到区块头哈希;若区块头哈希小于区块头对应的目标哈希,该E-PoW区块头会被广播其他节点,否则mi会进行下一次循环。
验证节点包括协调节点和区块链中的全节点,其中协调节点会验证所有归一化子任务结果的正确性;而区块链中的全节点只会验证新区块对应的归一化子任务结果的正确性,如果任务结果、任务哈希以及结果哈希都正确,并且区块头哈希小于目标哈希,该区块就会被接受;
MMC是E-PoW共识实现区块链矿工为AIoT提供算力服务的关键,矩阵乘积计算任务处理机制包括连乘处理机制、归一化机制、结果验证及合并机制、难度调整机制;
通过连乘处理机制和归一化机制,协调节点能够将来自AIoT节点的矩阵数量、规模、计算复杂度都不同的原始MMC任务划分处理为归一化的子任务,每个子任务都是计算两个k阶方阵的乘积;
所述连乘处理机制具体实现方法为:对于一个来自AIoT的原始MMC任务其要求是计算s个矩阵Mj的乘积,j=1,...,s;需要先对其进行连乘处理以便于后续处理;协调节点会将该原始MMC任务划分为s-1个子任务,分别为其中/>计算子任务/>得到的结果就是原始任务Tw的最终结果。
所述归一化机制具体实现方法为:用Tw,u表示原始任务Tw的一个子任务,u∈{1,...,s-1};其中包含两个矩阵A和B,其矩阵阶数分别为m×n和n×l,如图3所示,通过归一化处理,计算A×B的子任务被划分为若干个归一化子任务,每个归一化子任务都是计算两个k阶方阵的乘积;该机制主要包括矩阵扩展和矩阵分割两个步骤:
(1)矩阵扩展:矩阵A按照下式进行拓展:
其中,A'的阶数为m'×n', 表示向上取整;Z1,Z2,Z3都是随机矩阵,其阶数分别为m×(n'-n),(m'-m)×n,(m'-m)×(n'-n);
同样的,矩阵B'按照下式由矩阵B拓展得到:
其中,B'的阶数为n'×l',Z4和Z6是随机矩阵,而矩阵Z5满足等式Z1×Z5=0;矩阵Z4,Z5和Z6的阶数分别为n×(l'-l),(n'-n)×l和(n'-n)×(l'-l);
矩阵A'和B'的乘积表示为如下形式:
因此,A'B'左上角的m×n阶子矩阵就是子任务Tw,u的结果矩阵;
(2)矩阵分割:通过矩阵分割,得到矩阵A'和B',其阶数都是k的整数倍,A'和B'按照如下方式进行分割:
其中A′iq和B'qj都是k阶方阵,
根据分块矩阵乘积原理,通过计算A′iq×B'qj来得到A'×B'的结果矩阵,进而得到A×B的结果矩阵;因此子任务Tw,u被划分为个计算A′iq×B'qj的归一化子任务Tw,u,v, 如下式所示:
通过结果验证及合并机制,协调节点能够验证归一化子任务结果的正确性,同时能够将这些结果合并为对应的子任务的结果矩阵,最终得到原始任务的结果矩阵;
结果验证与合并机制具体实现方法为:
(1)结果验证:协调节点和验证节点都可能会对归一化子任务结果进行验证;定义待验证的归一化子任务是X×Y,X和Y都是k阶方阵,其结果矩阵为S;选择两个随机整数sr和sc,1≤sr,sc≤k,然后计算矩阵X的第sr行行向量和矩阵Y的第sc列列向量的内积,得到验证值s:
其中和/>分别表示矩阵X第sr行第i个元素和矩阵Y第sc列的第i个元素;通过判断s和结果矩阵S中第sr行的第sc个元素/>是否相等来验证结果矩阵S的正确性,若两者相等,则结果矩阵正确,否则错误;
(2)结果合并
经过协调节点进行连乘和归一化处理得到的归一化子任务会被分发给有意愿完成MMC任务的矿工节点;具体来说,矿工会在有任务循环中计算归一化子任务,并将其结果返回给协调节点;当收集了所有属于子任务Tw,u的归一化子任务Tw,u,v的结果,协调节点会按照下式将这些结果矩阵合并为Tw,u的结果矩阵:
/>
其中Riqj表示A′iq×B'qj的结果矩阵,并且矩阵Rw,u左上角的m×n阶子矩阵就是子任务Tw,u的结果矩阵;当u<s-1时,Rw,u是属于原始任务Tw的一个中间过程性质的结果;当u=s-1时,Rw,u就包含了原始任务Tw的最终结果。
难度调整机制用于对引入MMC任务后矿工挖矿难度进行调整;
难度调整机制具体实现方法为:在基于E-PoW共识的区块链系统中,矿工mi竞争挖掘新区块bj时的难度是其能够决定区块生成速率,该难度是由基础难度和尺度因子决定的;
假设区块链系统每生成W个区块就调整一次基础难度,用来表示生成区块bj时的基础难度/>“|”表示整除;基础难度调整公式表示为:
其中1/Ttar是目标区块生成速率,Tspan表示区块链系统生成W个区块所实际经历的时间;根据该基础难度调整公式,如果系统的实际区块生成速率超过了目标区块生成速率,基础难度会增大,反之会减小;
矿工mi在生成区块bj时的尺度因子表示为:
其中θ和δ都是取值为正的激励因子,表示mi想要在区块周期bj完成的归一化子任务数量;根据尺度因子的定义公式,Fi j和/>是反比关系,因此矿工完成MMC任务的积极性越低,尺度因子就越大,当矿工不参与完成MMC任务时,尺度因子会达到最大值1;
最终,矿工mi竞争挖掘新区块bj时的难度被表示为:
根据该公式,对于所有矿工来说,基础难度是相同的,然而尺度因子会因其计划完成的归一化子任务的数量而发生变化。由于Fi j和是反比关系,因此/>和/>也是反比关系,这意味着矿工越积极参与完成MMC任务,其挖掘新区块的难度就越小。当区块链系统中的所有矿工都不参与完成MMC任务时,其尺度因子都会变为1,此时这个基于E-PoW共识的系统会退化为传统的基于PoW共识的系统,所有矿工的挖矿难度都是相同的,即基础难度。
在一个基于E-PoW共识的区块链系统中,矿工参与完成MMC任务的积极性是不同的,外部AIoT节点的计算需求的变化也会影响MMC任务数量的多寡。我们设计了奖励调整机制以影响矿工完成MMC任务的积极性,从而维持任务和计算服务之间的平衡。
奖励调整机制能够引导矿工参与完成来自AIoT节点的MMC任务的积极性,通过调整系统参数,矿工的总收益函数会相应变化;当希望矿工积极完成MMC任务时,总收益函数是与矿工完成的MMC任务数成正比的;而当外部AIoT的计算需求不足时,为了维持供需平衡,不希望矿工过多地接受MMC任务,通过调整相关参数,总收益函数与矿工完成的MMC任务数的关系会变为反比。
奖励调整机制具体实现方法为:用时钟周期来衡量E-PoW系统中的工作负载。为了简单而又不是一般性,假设一个E-PoW系统中有n个矿工,并且这些矿工设备的CPU时钟频率都是f;用Cti表示矿工执行一次有任务循环需要的时钟周期数,Ctx表示执行一次无任务循环需要的时钟周期数:
其中Cnt表示矿工完成一个归一化子任务经历的时钟周期数,和/>分别表示计算一次PoW区块头哈希和E-PoW区块头哈希需要的时钟周期数,/>和/>分别表示计算一次任务哈希和结果哈希经历的时钟周期数;
通常,是成立的。即矿工完成一个归一化子任务所消耗的时钟周期数是远大于计算一次E-PoW区块头哈希消耗的时钟周期数的,并且跟Cnt相比,/>和之间的差值可以忽略不计。
计算矿工的总收益函数:矿工mi在区块周期bj能够获得总收益由两部分构成:任务奖励和区块奖励;基于mi在区块周期bj完成的归一化子任务的数量/>以及单个归一化子任务的奖励rt,得到mi在区块周期bj获得的任务奖励,如下式所示:
通过推导mi在区块周期bj计算区块链哈希的次数,得到mi的哈希率,从而计算出mi成功挖掘出区块bj的概率,得到矿工mi在区块周期bj获得的预期区块奖励,如下式所示:
其中rb表示一份区块奖励,1/Tj表示生成区块bj时的区块生成速率,表示矿工mi计划在区块周期bj内完成的归一化子任务的数量,Vi j和/>如下式所示:
根据任务奖励与预期区块奖励公式,得到矿工mi在区块周期bj获得的总收益函数:
通过改变一些变量来调整总收益函数,从而影响矿工参与完成MMC任务的积极性,具体包括以下两种情况:
(1)鼓励矿工参与完成MMC任务:矿工加入区块链系统的目的是获取最大化的收益,因此如果我们希望鼓励矿工参与完成MMC任务,那么总收益函数应当与/>成正比关系。通过分析总收益函数关于/>的偏导,我们发现在/>的定义域中,/>始终小于0,这意味着/>与/>之间是反比关系。根据这一结论,我们找到了/>在/>的定义域中的最小值,然后用不等式放缩法推导得到了使不等式/>始终成立的约束条件,这就确保了不等式/>始终成立,也就是总收益函数/>与/>之间满足正比关系,此时具体的系统参数设置如下:
当时,系统参数间需满足如下不等式关系:
当时,系统参数间需满足如下不等式关系:
(2)不鼓励矿工参与完成MMC任务:当外部AIoT的计算需求不足时,为了维持供需平衡,并不希望矿工过多地参与完成MMC任务时,总收益函数应当与/>成反比关系。由于/>与/>成反比,我们可以使用放缩法得到/>的上界,然后找到使得上界始终小于0的约束条件,这就确保了/>始终小于0,总收益函数/>应当与/>成反比关系,此时具体的系统参数设置如下:
当时,系统参数间需满足如下不等式关系:
当不满足/>时,无法找到约束条件使得总收益函数/>与/>成反比关系。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (2)
1.面向智能物联网算力服务的区块链共识机制处理方法,其特征在于,包括面向智能物联网算力服务的区块链架构、矩阵乘积计算任务处理机制、以及奖励调整机制;
面向智能物联网算力服务的区块链架构中有四类节点:AIoT节点、协调节点、矿工节点以及验证节点;
AIoT节点是位于区块链网络外部的有AI训练需求但算力有限的AIoT设备,其计算类型以矩阵乘积计算为主,AIoT节点将矩阵乘积计算任务交付给协调节点进行处理;
协调节点用于将原始的矩阵乘积计算任务转换为归一化的子任务,并将子任务分发给矿工节点;对来自矿工的任务结果进行验证和合并并将任务结果返回给AIoT节点;
矿工节点完成接收到的子任务并将结果返回给协调节点;
验证节点包括协调节点和区块链中的全节点,其中协调节点会验证所有归一化子任务结果的正确性,而区块链中的全节点只会验证新区块对应的归一化子任务结果的正确性;
矩阵乘积计算任务处理机制包括连乘处理机制、归一化机制、结果验证及合并机制、难度调整机制;
通过连乘处理机制和归一化机制,协调节点能够将来自AIoT节点的矩阵数量、规模、计算复杂度都不同的原始MMC任务划分处理为归一化的子任务,每个子任务都是计算两个k阶方阵的乘积;所述连乘处理机制具体实现方法为:对于一个来自AIoT的原始MMC任务表示非负整数集,其要求是计算s个矩阵Mj的乘积,j=1,...,s;需要先对其进行连乘处理以便于后续处理;协调节点会将该原始MMC任务划分为s-1个子任务,分别为/>其中计算子任务/>得到的结果就是原始任务Tw的最终结果;
所述归一化机制具体实现方法为:用Tw,u表示原始任务Tw的一个子任务,u∈{1,...,s-1};其中包含两个矩阵A和B,其矩阵阶数分别为m×n和n×l,表示正整数集;通过归一化处理,计算A×B的子任务被划分为若干个归一化子任务,每个归一化子任务都是计算两个k阶方阵的乘积;该机制主要包括矩阵扩展和矩阵分割两个步骤:
(1)矩阵扩展:矩阵A按照下式进行拓展:
其中,A′的阶数为m′×n′,表示向上取整;Z1,Z2,Z3都是随机矩阵,其阶数分别为m×(n′-n),(m′-m)×n,(m′-m)×(n′-n);
同样的,矩阵B′按照下式由矩阵B拓展得到:
其中,B′的阶数为n′×l′,Z4和Z6是随机矩阵,而矩阵Z5满足等式Z1×Z5=0;矩阵Z4,Z5和Z6的阶数分别为n×(l′-l),(n′-n)×l和(n′-n)×(l′-l);
矩阵A′和B′的乘积表示为如下形式:
因此,A′B′左上角的m×n阶子矩阵就是子任务Tw,u的结果矩阵;
(2)矩阵分割:通过矩阵分割,得到矩阵A′和B′,其阶数都是k的整数倍,A′和B′按照如下方式进行分割:
其中A′iq和B′qj都是k阶方阵,
根据分块矩阵乘积原理,通过计算A′iq×B′qj来得到A′×B′的结果矩阵,进而得到A×B的结果矩阵;因此子任务Tw,u被划分为个计算A′iq×B′qj的归一化子任务Tw,u,v,如下式所示:
通过结果验证及合并机制,协调节点能够验证归一化子任务结果的正确性,同时能够将这些结果合并为对应的子任务的结果矩阵,最终得到原始任务的结果矩阵;所述结果验证与合并机制具体实现方法为:
(1)结果验证:协调节点和验证节点都可能会对归一化子任务结果进行验证;定义待验证的归一化子任务是X×Y,X和Y都是k阶方阵,其结果矩阵为S;选择两个随机整数sr和sc,1≤sr,sc≤k,然后计算矩阵X的第sr行行向量和矩阵Y的第sc列列向量的内积,得到验证值s:
其中和/>分别表示矩阵X第sr行第i个元素和矩阵Y第sc列的第i个元素;通过判断s和结果矩阵S中第sr行的第sc个元素/>是否相等来验证结果矩阵S的正确性,若两者相等,则结果矩阵正确,否则错误;
(2)结果合并
经过协调节点进行连乘和归一化处理得到的归一化子任务会被分发给有意愿完成MMC任务的矿工节点;具体来说,矿工会在有任务循环中计算归一化子任务,并将其结果返回给协调节点;当收集了所有属于子任务Tw,u的归一化子任务Tw,u,v的结果,协调节点会按照下式将这些结果矩阵合并为Tw,u的结果矩阵:
其中Riqj表示A′iq×B′qj的结果矩阵,并且矩阵Rw,u左上角的m×n阶子矩阵就是子任务Tw,u的结果矩阵;当u<s-1时,Rw,u是属于原始任务Tw的一个中间过程性质的结果;当u=s-1时,Rw,u就包含了原始任务Tw的最终结果;
难度调整机制用于对引入MMC任务后矿工挖矿难度进行调整;所述难度调整机制具体实现方法为:在基于E-PoW共识的区块链系统中,矿工mi竞争挖掘新区块bj时的难度是其能够决定区块生成速率,该难度是由基础难度和尺度因子决定的;
假设区块链系统每生成W个区块就调整一次基础难度,用来表示生成区块bj时的基础难度/>“|”表示整除;基础难度调整公式表示为:
其中1/Ttar是目标区块生成速率,Tspan表示区块链系统生成W个区块所实际经历的时间;根据该基础难度调整公式,如果系统的实际区块生成速率超过了目标区块生成速率,基础难度会增大,反之会减小;
矿工mi在生成区块bj时的尺度因子表示为:
其中θ和δ都是取值为正的激励因子,表示mi想要在区块周期bj完成的归一化子任务数量;根据尺度因子的定义公式,Fi j和/>是反比关系,因此矿工完成MMC任务的积极性越低,尺度因子就越大,当矿工不参与完成MMC任务时,尺度因子会达到最大值1;
最终,矿工mi竞争挖掘新区块bj时的难度被表示为:
奖励调整机制能够引导矿工参与完成来自AIoT节点的MMC任务的积极性,通过调整系统参数,矿工的总收益函数会相应变化;当希望矿工积极完成MMC任务时,总收益函数是与矿工完成的MMC任务数成正比的;而当外部AIoT的计算需求不足时,为了维持供需平衡,不希望矿工过多地接受MMC任务,通过调整相关参数,总收益函数与矿工完成的MMC任务数的关系会变为反比;所述奖励调整机制具体实现方法为:假设一个E-PoW系统中有n个矿工,并且这些矿工设备的CPU时钟频率都是f;用Cti表示矿工执行一次有任务循环需要的时钟周期数,Ctx表示执行一次无任务循环需要的时钟周期数:
其中Cnt表示矿工完成一个归一化子任务经历的时钟周期数,和/>分别表示计算一次PoW区块头哈希和E-PoW区块头哈希需要的时钟周期数,/>和/>分别表示计算一次任务哈希和结果哈希经历的时钟周期数;
计算矿工的总收益函数:矿工mi在区块周期bj能够获得总收益由两部分构成:任务奖励和区块奖励;基于mi在区块周期bj完成的归一化子任务的数量/>以及单个归一化子任务的奖励rt,得到mi在区块周期bj获得的任务奖励,如下式所示:
通过推导mi在区块周期bj计算区块链哈希的次数,得到mi的哈希率,从而计算出mi成功挖掘出区块bj的概率,得到矿工mi在区块周期bj获得的预期区块奖励,如下式所示:
其中rb表示一份区块奖励,1/Tj表示生成区块bj时的区块生成速率,表示矿工mi计划在区块周期bj内完成的归一化子任务的数量,Vi j和/>如下式所示:
根据任务奖励与预期区块奖励公式,得到矿工mi在区块周期bj获得的总收益函数:
通过改变一些变量来调整总收益函数,从而影响矿工参与完成MMC任务的积极性,具体包括以下两种情况:
(1)鼓励矿工参与完成MMC任务:总收益函数应当与/>成正比关系,此时具体的系统参数设置如下:
当时,系统参数间需满足如下不等式关系:
当时,系统参数间需满足如下不等式关系:
(2)不鼓励矿工参与完成MMC任务:总收益函数应当与/>成反比关系,此时具体的系统参数设置如下:
当时,系统参数间需满足如下不等式关系:
当不满足/>时,无法找到约束条件使得总收益函数/>与/>成反比关系。
2.根据权利要求1所述的面向智能物联网算力服务的区块链共识机制处理方法,其特征在于,所述矿工节点会执行两种循环来进行寻找目标哈希的暴力搜索,分别是无任务循环和有任务循环;在无任务循环中,矿工节点mi并不会参与完成MMC任务,而是像传统的PoW矿工一样;在有任务循环中,mi不仅仅是基于传统PoW区块头进行暴力搜索,还要包括一个学习服务提供字段,该字段包5个元素,分别是原始任务ID、子任务ID、归一化子任务ID、归一化子任务哈希以及归一化子任务结果哈希;
在竞争打包区块bj的权利时,矿工mi首先会决定其计划在本轮竞争中完成的归一化子任务数量表示非负整数集,/>表示正整数集;然后mi会在该轮竞争中执行/>次有任务循环,有以下两种情况:
(1)在完成次有任务循环之前,区块bj被成功挖出;如果该区块是mi挖出的,mi会将该区块广播出去;否则mi将验证该区块的合法性,具体验证过程为:mi向协调节点请求该区块中包含的原始任务ID、子任务ID和归一化子任务ID以及对应的任务及其结果,验证任务ID与任务结果是否正确,并验证区块头中的任务哈希、结果哈希是否正确,以及区块头哈希是否小于目标哈希,若是则判定为合法区块,接受该区块;否则判定为非法区块,拒绝该区块;然后,mi会在下一轮区块竞争中完成余下的归一化子任务;
(2)在完成次有任务循环后,区块bj仍旧没有被挖出;此时mi会不断执行无任务循环,直到该区块被自己或者其他矿工挖出;
在每次有任务循环中,mi首先完成一个从协调节点接收到的归一化子任务并将任务结果提交给协调节点;mi会基于该归一化子任务的信息及其结果填充学习服务提供字段,然后将传统PoW区块头和学习服务提供字段作为E-PoW区块头,计算得到区块头哈希;若区块头哈希小于区块头对应的目标哈希,该E-PoW区块头会被广播其他节点,否则mi会进行下一次循环。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110340751.8A CN112967148B (zh) | 2021-03-30 | 2021-03-30 | 面向智能物联网算力服务的区块链共识机制 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110340751.8A CN112967148B (zh) | 2021-03-30 | 2021-03-30 | 面向智能物联网算力服务的区块链共识机制 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112967148A CN112967148A (zh) | 2021-06-15 |
CN112967148B true CN112967148B (zh) | 2024-02-20 |
Family
ID=76279711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110340751.8A Active CN112967148B (zh) | 2021-03-30 | 2021-03-30 | 面向智能物联网算力服务的区块链共识机制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112967148B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113918645A (zh) * | 2021-09-02 | 2022-01-11 | 上海柚子工道物联技术有限公司 | 一种基于区块链的非同质资产交易系统、方法和计算机装置 |
CN114499885B (zh) * | 2022-02-14 | 2024-03-19 | 中国农业银行股份有限公司 | 一种工作量证明的方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108449401A (zh) * | 2018-03-12 | 2018-08-24 | 厦门益东智能科技有限公司 | 一种基于区块链技术的算力共享方法及系统 |
CN109977166A (zh) * | 2019-02-18 | 2019-07-05 | 陕西优米数据技术有限公司 | 一种区块链共识机制 |
WO2020126025A1 (en) * | 2018-12-21 | 2020-06-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for computing a block in a blockchain network |
CN111680793A (zh) * | 2020-04-21 | 2020-09-18 | 广州中科易德科技有限公司 | 一种基于深度学习模型训练的区块链共识方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190370793A1 (en) * | 2018-06-04 | 2019-12-05 | Decentralized Finance Labs, Inc. | Hybrid consensus for blockchain using proof of work and proof of stake |
-
2021
- 2021-03-30 CN CN202110340751.8A patent/CN112967148B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108449401A (zh) * | 2018-03-12 | 2018-08-24 | 厦门益东智能科技有限公司 | 一种基于区块链技术的算力共享方法及系统 |
WO2020126025A1 (en) * | 2018-12-21 | 2020-06-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for computing a block in a blockchain network |
CN109977166A (zh) * | 2019-02-18 | 2019-07-05 | 陕西优米数据技术有限公司 | 一种区块链共识机制 |
CN111680793A (zh) * | 2020-04-21 | 2020-09-18 | 广州中科易德科技有限公司 | 一种基于深度学习模型训练的区块链共识方法和系统 |
Non-Patent Citations (3)
Title |
---|
BlockIoTIntelligence: A Blockchain-enabled Intelligent IoT Architecture with Artificial Intelligence;Sushil Kumar Singh, et al;Future Generation Computer Systems;第110卷;721-743 * |
基于区块链的需求响应系统设计;宫飞翔;田世明;李德智;刘强;马闯;张露露;桂勋;;电力信息与通信技术(06);82-88 * |
面向物联网区块链的共识机制优化研究;宋琪杰;陈铁明;陈园;马栋捷;翁正秋;;电信科学(02);5-16 * |
Also Published As
Publication number | Publication date |
---|---|
CN112967148A (zh) | 2021-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110580653B (zh) | 一种基于交易的区块链共识机制 | |
Xu et al. | Improvement of the DPoS consensus mechanism in blockchain based on vague sets | |
CN109426952B (zh) | 一种区块链架构 | |
CN112967148B (zh) | 面向智能物联网算力服务的区块链共识机制 | |
Froleyks et al. | SAT competition 2020 | |
Das et al. | Yoda: Enabling computationally intensive contracts on blockchains with byzantine and selfish nodes | |
Ouyang et al. | Learning markets: An AI collaboration framework based on blockchain and smart contracts | |
CN110855432B (zh) | 基于可验证随机函数分配验证者奖励的异步bft&dpos共识机制 | |
US11475025B2 (en) | Blockchain system comprising consensus protocol using search for good approximate solutions to any optimization problem and its computor program | |
CN112333251B (zh) | 区块链共识的分布式电力交易代理节点选择方法及系统 | |
CN108321795A (zh) | 基于深度确定性策略算法的发电机组启停配置方法及系统 | |
CN109410054B (zh) | 自治域模式下基于信息共享贡献值的区块链共识方法 | |
Wang et al. | Blockchain-based dynamic energy management mode for distributed energy system with high penetration of renewable energy | |
CN111078787A (zh) | 一种基于随机数映射的区块链共识方法 | |
Yang et al. | Federated learning incentive mechanism design via enhanced shapley value method | |
CN109064329B (zh) | 一种算力交易方法及装置 | |
Carlier et al. | Lower bounds for the event scheduling problem with consumption and production of resources | |
Kenta et al. | Gamification based blockchain tournaments between miners | |
Xu et al. | Edge resource prediction and auction for distributed spatial crowdsourcing with differential privacy | |
CN114491616A (zh) | 基于区块链和同态加密的联邦学习方法和应用 | |
CN112488227B (zh) | 一种提供完整性验证的可审计外包机器学习服务方法 | |
Yuan et al. | Lightweight and reliable decentralized reward system using blockchain | |
CN116797245A (zh) | 一种用电侧碳排放系数分摊方法及系统 | |
Diamandis et al. | Designing Multidimensional Blockchain Fee Markets | |
CN115269723A (zh) | 面向联邦学习的能源回收的区块链绿色共识方法及系统 |
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 |