1.在边缘计算中基于绿色计算共识机制区块链的数据完整性检测方法,其特征在于,包括以下步骤:
(1)边缘计算设备接收边缘计算用户所存储的数据,通过调度算法将数据动态存储在适当的边缘计算节点中;
(2)任务节点收集各个边缘节点信息,通过绿色计算共识机制进行工作量证明,每隔一段时间选举区块链记录人,记录人将用户事务打包发布至区块链;
(3)边缘计算节点验证新发布区块的合法性,若认同此区块,下一次就将在此区块后方继续添加区块,若不认同此区块,此区块将会被抛弃;
(4)边缘计算用户可随时查看自己的数据,向区块链中任意边缘节点申请数据hash值,用以检测用户数据的完整性。
2.根据权利要求1所述在边缘计算中基于绿色计算共识机制区块链的数据完整性检测方法,其特征在于:所述区块链中的成员包括,边缘节点EN、临时存储节点TSN、任务节点TN、用户节点UN,其中EN负责存储用户数据,通过绿色计算共识机制选举区块链记录人;TSN负责在部署结果出来之前存储用户信息;TN将一段时间内所有用户存储的数据大小、数量和所有参与区块链记录人选举的边缘节点信息打包为任务,发送给所有EN,EN接收信息后,执行数据放置算法,使用相同的参数解决文件放置问题,每个EN产生的不同放置结果作为工作证明的依据,然后通过工作证明依据选举区块链记录人,记录人会将这段时间内任务调度节点收集的用户数据信息打包组成区块,追加至当前区块链。
3.根据权利要求2所述在边缘计算中基于绿色计算共识机制区块链的数据完整性检测方法,其特征在于:所述绿色计算共识机制包括以下步骤:
1)任务信息收集期,TSN收集待放置的数据,将数据临时存储在该节点内,同时将数据信息集合 发送至TN, 表示临时存储节点TSN中第i个文件的信息i=
1,…,m,m表示TSN中总共有m个文件,TN收集当前各个边缘节点状态信息表示第i个边缘节点状态信息,将Ifile与Inode打包为一个任务Task=(Ifile,Inode);
2)放置任务发布,TN将任务T发布至各个EN;
3)放置结果计算期,每个EN使用相同的任务Task,计算放置结果Ri,Ri表示第i个节点的计算结果,计算完毕后EN将计算结果返回至TN;
4)记账人选举期,任务节点公布放置结果,并排名r(R1,R2,R3...Ri),所有边缘节点对排名进行验证,各个边缘节点只验证排名第一的结果,验证通过对其计算者进行投票,若不能通过验证则进而验证次优的,以此类推,选择获得票数最多的节点为此轮区块链记账人;
5)使用投票最多的放置方法作为实际的放置方法,使用此方法放置用户数据;
6)用户将自己数据的放置信息打包为一个事务T,其中T包含:用户公钥Keyp,数据放置位置URLfile,并对事务进行取hash运算,hash(T),使用非对称加密算法对hash值签名sig(hash(Tk)),打包发送给记账人S((Tk,sig(hash(Tk))),Nedge);
7)记账人收到各个用户的事务,将其打包为区块体Blockbody,并依次计算多个事务的默克尔树根值Merkel root,然后对区块体取hash,hash(Blockbody),并对hash值签名sign(hash(Blockbody)),加上区块头部Blockhead,构成完整的区块,记账人将区块加入区块链中,将新的区块链广播。
4.根据权利要求3所述在边缘计算中基于绿色计算共识机制区块链的数据完整性检测方法,其特征在于:所述步骤3)中在TN公布运算结果之前,节点之间互相不知道运算结果,其中等待EN计算时间Timecalculation具有最大阈值,i
Timecalculation表示第i个节点的放置结果计算时间,Timethreshold表示设置的最长等待阈值时间,当达到这个时间后便不再等待进入下一个阶段。
5.根据权利要求3所述在边缘计算中基于绿色计算共识机制区块链的数据完整性检测方法,其特征在于:步骤4)所述进行验证的方法为放置结果Ri是否能得到相对应的评估指标Ei,以此进行验证,V(Ri,Ei)表示利用放置结果与评估指标进行验证,是否能从Ri计算得到Ei。
6.根据权利要求1所述在边缘计算中基于绿色计算共识机制区块链的数据完整性检测方法,其特征在于:步骤(4)所述检测用户数据的完整性包括,用户向任意边缘节点发送检测申请,边缘节点传递给用户对应数据hash值,用户自行计算默克尔树根值,通过对比即可得知数据是否完整。