[发明专利]一种基于区块链数据结构的终端软件分发验证方法有效
申请号: | 201810984245.0 | 申请日: | 2018-08-28 |
公开(公告)号: | CN109375944B | 公开(公告)日: | 2021-10-01 |
发明(设计)人: | 张家重;王涛;胡焱;付宪瑞 | 申请(专利权)人: | 浪潮金融信息技术有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71 |
代理公司: | 苏州思睿晶华知识产权代理事务所(普通合伙) 32403 | 代理人: | 吴碧骏 |
地址: | 215100 江苏省苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 数据结构 终端 软件 分发 验证 方法 | ||
1.一种基于区块链数据结构的终端软件分发验证方法,其特征在于,包括:终端设备上设置软件分发客户端,服务器上设置软件版本数据库,版本文件存储库;版本链条上每个版本构成区块链的一个区块,区块中存在区块头和区块文件,其中区块头中包含了前一区块的区块头哈希值和本区块区块文件的完整哈希树,即本区块的区块文件需计算生成默克尔树;终端设备和服务器上均存储完整的软件版本链条;
版本分发步骤如下;
第一步,版本文件压缩成zip包,上传到服务器,设置版本号;服务器解zip包,将版本文件存储在版本文件存储库中,并生成版本文件的完整默克尔树路径,并放入软件版本数据库,与当前版本号对应;另外,软件版本数据库中还需计算前一版本的区块头哈希值并存储;
第二步,服务器通知软件分发客户端有新的版本;软件分发客户端连接软件版本数据库获取新版本的区块头数据,并获得前一版本的头哈希值,与当前版本链条中对比,如果当前版本链条中已存在此哈希值,则仅需下载此新版本即可,否则继续向前追溯,直到找到已存在的版本为止;
第三步,得到新版本的默克尔树,根据默克尔树中文件哈希值从版本文件存储库获取文件并校验,如果校验失败则文件重新下载,直到下载完全成功,更新本地版本链条,并根据文件路径进行文件更新,文件更新完成也需校验文件哈希值,校验失败则需重新进行更新操作;重复此步骤,直到已得到最新版本并更新完成。
2.根据权利要求1所述的一种基于区块链数据结构的终端软件分发验证方法,其特征在于:第一步中上传的版本包文件打包时要按照实际更新的目录结构打包、上传;上传后的文件由服务器生成版本数据,并存储版本文件。
3.根据权利要求1所述的一种基于区块链数据结构的终端软件分发验证方法,其特征在于:第二步中软件分发客户端从服务器下载版本链信息,已有版本区块校验,未下载版本区块则下载。
4.根据权利要求1所述的一种基于区块链数据结构的终端软件分发验证方法,其特征在于:第三步中完成对更新版本的校验后,将区块文件更新到软件运行目录中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮金融信息技术有限公司,未经浪潮金融信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810984245.0/1.html,转载请声明来源钻瓜专利网。