[发明专利]一种基于区块链的软件版本数据管理系统及建立方法在审
申请号: | 201811188132.6 | 申请日: | 2018-10-12 |
公开(公告)号: | CN109408108A | 公开(公告)日: | 2019-03-01 |
发明(设计)人: | 王劲松;赵泽宁;张洪玮;林胜 | 申请(专利权)人: | 天津理工大学 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F8/60 |
代理公司: | 天津才智专利商标代理有限公司 12108 | 代理人: | 张文华 |
地址: | 300384 天津市南*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件版本数据 区块 数据管理系统 软件版本 中心化 数据传输模块 数据获取模块 多版本软件 结构化处理 可靠性检验 系统兼容性 传输功能 单点故障 节点数据 软件管理 数据产生 数据传输 数据封装 数据获取 数据解析 数据拼接 数据通信 数据验证 数据转发 瘫痪 统一 维护 | ||
1.一种基于区块链的软件版本数据管理系统,其特征在于:包括数据获取模块、数据传输模块和数据共识模块,所述数据获取模块用于获取数据信息并将其结构化后为数据广播做准备,所述数据传输模块用于区块链中软件版本数据的传递及验证;所述数据共识模块是软件版本管理各方通过共识机制对软件版本达成统一,并通过提供软件地址接口使用户获得相关软件;
所述数据获取模块包括数据产生、数据拼接、数据封装,数据产生是由参与软件版本管理的各方对自己软件的数据自行采集,由厂商形成标准数据;数据拼接、数据封装对采集到的数据进行筛选整合和标记,剔除重复的数据和不满足需求的数据,并给出合成数据的统一存储标准,并将筛选后的数据进行拼接、存储以及封装,最终形成结构化数据;
所述数据传输模块包括数据通信、数据解析及数据转发,数据通信和数据转发解决参与软件版本管理的各方的普遍参与性,通过各方商议并签署联盟条约,并基于区块链的通信协议,为参与软件版本管理的各方提供去中心化的P2P网络通信,数据解析对传输的数据按照规则进行解析,无法解析的数据将会舍弃或者重传;
所述数据共识模块包括区块同步、数据验证、共识机制,区块同步通过设置套接字对区块数据进行接收和同步,数据验证确保同步的区块中软件来源及软件数据的可靠性,并处理被篡改的软件,所述共识机制为区块链的共识机制,对软件下载记录作记录内容保护、发布及下载记录溯源以及拓扑式存储。
2.一种基于区块链的软件版本数据管理系统建立方法,其特征在于:包括如下步骤:
(1)数据产生及处理
参与版本管理的各方对自己拥有的数据进行采集,并对数据进行清洗,对重复和无用数据进行去除,对处理后的数据做数据检验,确保数据的正确性,使用软件生成代表软件及其地址的字符串,包块软件地址,软件的MD5校验码和SHA1校验码,将软件数据和软件地址进行结构化及封装,生成软件版本信息;
(2)数据通信
对参与软件版本管理的各方进行节点初始化配置,通过各方签署联盟条约将节点组织成一个区域自治联盟,对各联盟节点作唯一标识,存储的标识后加上网络初始状态参数,状态参数包括节点数、各节点状态,并对其结构化处理生成新的存储数据,作为创世区块并广播至全网,全网络各节点存储创世区块数据,并采用基于区块链的通信协议;
(3)数据共识
链上节点发布步骤(1)中生成的软件版本信息,其他节点经广播接收信息,通过数字签名技术判断广播信息的节点身份及数据的真实性,若广播信息节点是联盟成员节点,则对软件版本信息进行完整性校验,若校验成功,则将软件数据上链;若节点是非链内成员,则区块链网络中各节点通过共识机制达成许可共识,若获得联盟中一半以上节点的许可,即可验证信息通过,并将节点信息加入创世区块,并对软件版本信息进行完整性校验,若校验成功,则将软件信息上链;若未获得联盟中一半以上节点的许可或者信息校验失败或者,则该拒绝该信息。
3.根据权利要求2所述的基于区块链的软件版本数据管理系统建立方法,其特征在于:所述步骤(2)中,当新的节点申请加入网络时,须全网广播并经过链中所有成员的协商议定,确定后将该节点的初始信息参数生成新的数据,保存在创世区块中。
4.根据权利要求2所述的基于区块链的软件版本数据管理系统建立方法,其特征在于:所述步骤(2)中通信协议配置过程中的通信协议内容为:用户将软件信息广播至全网,系统其它用户在收到广播信息后对信息进行存储和转发;系统内所有副节点选举出主节点用于生成新的区块并进行广播;系统内各个副节点对广播的区块的有效性进行验证;若验证通过则更新节点自身的区块链,若验证不通过则重新选取主节点进行区块生成。
5.根据权利要求2所述的基于区块链的软件版本数据管理系统建立方法,其特征在于:所述步骤(3)中的软件版本数据的完整性校验过程为:联盟节点收到广播的软件版本信息,根据地址请求软件,判断软件校验的真实性,若软件校验通过,则将软件版本信息生成区块广播至全网;当用户下载完整的软件时,需对下载的软件进行校验码计算,并将计算后的校验码与区块链中存储的校验码做比对,若校验通过,则生成新的软件地址,并将其广播至全网,具有打包区块权利的节点验证新的地址,若该地址有效则将其放入区块中,方便其他软件获取者从该处取得软件;若校验未通过,则通知软件厂商重新对软件版本信息进行数据清洗及封装。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津理工大学,未经天津理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811188132.6/1.html,转载请声明来源钻瓜专利网。