CN109408319A - 一种基于区块链的软件运行技术状态监控方法 - Google Patents

一种基于区块链的软件运行技术状态监控方法 Download PDF

Info

Publication number
CN109408319A
CN109408319A CN201811006095.2A CN201811006095A CN109408319A CN 109408319 A CN109408319 A CN 109408319A CN 201811006095 A CN201811006095 A CN 201811006095A CN 109408319 A CN109408319 A CN 109408319A
Authority
CN
China
Prior art keywords
block
software
monitoring
monitored
list
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
Application number
CN201811006095.2A
Other languages
English (en)
Other versions
CN109408319B (zh
Inventor
任伟
何森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suqian Yitong Digital Technology Co.,Ltd.
Original Assignee
China University of Geosciences
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China University of Geosciences filed Critical China University of Geosciences
Priority to CN201811006095.2A priority Critical patent/CN109408319B/zh
Publication of CN109408319A publication Critical patent/CN109408319A/zh
Application granted granted Critical
Publication of CN109408319B publication Critical patent/CN109408319B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Mathematical Physics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)

Abstract

本发明一种基于区块链的软件运行技术状态监控方法,包括区块链构建、软件初始技术状态采集、软件初始技术状态检测和软件技术状态监控检测四个步骤。针对目前针对软件技术状态的监控使用构建本地数据库或是中心化数据库服务器的方法,一旦数据库遭到攻击,对软件的监控就会失效的技术缺陷。本方法提出了软件监控系统区块链结构、区块头结构以及监控方法,通过建立中心化私有链或半中心化联盟链来保证链上文件特征值数据不可篡改、可追溯以及具有时间戳等性质,以此用户可以根据链上的文件特征值数据监控本地软件的技术状态。

Description

一种基于区块链的软件运行技术状态监控方法
技术领域
本发明涉及区块链及其应用技术领域,涉及一种监控软件的安全运行以及发现运行中软件的非法篡改的方法,具体涉及一种基于区块链的软件运行技术状态监控方法。
背景技术
在一些工业领域,软件的使用条件十分严格,软件版本的更新换代以及一些稍小的修改可能就会导致与硬件或是操作系统的不兼容,产生无法预料的错误。在个人与企业的软件使用过程中,软件的非法篡改如果没有及时检测出来,就会让非法的攻击者有机可乘,危害个人和企业的信息安全。因此软件的技术状态检测就显得十分重要,传统的软件监控方法将软件的运行文件的特征值存储在本地数据库中,或是搭建中心化的服务器存储特征值数据。使用传统方法存储文件特征值无法阻挡攻击者对数据库的攻击,一旦数据库被攻击者攻陷,监控系统对于软件的监控就会失效。
发明内容
本发明要解决的技术问题在于,针对上述目前针对软件技术状态的监控使用构建本地数据库或是中心化数据库服务器的方法,一旦数据库遭到攻击,对软件的监控就会失效的技术缺陷,提供一种基于区块链的软件运行技术状态监控方法解决上述问题。
一种基于区块链的软件运行技术状态监控方法,包括:
(1)区块链构建:监控软件首先创建创世区块BLOCK_C0,然后向其他所有节点N依次获取区块链信息,然后监控软件一边从节点N获得区块,一边检查区块的签名以及公钥,如果签名和公钥不符,或公钥不属于相对应的超级管理员或管理员,则拒绝该区块,并重新更换节点请求区块链数据,直到获得了所有的区块;创世区块用于存储一个或多个超级管理员SA的公钥SA_PUBKEY;超级管理员SA用于创建改密区块BLOCK_C,发布和更改超级管理员SA或管理员Admin的公钥;管理员Admin用于打包区块BLOCK并将区块加入区块链BC上;
(2A)软件初始技术状态采集:被监控软件的提供者在自己的设备上运行监控软件,监控软件在被监控软件的安装过程中获得被监控软件产生的文件列表FILE_LIST1,对FILE_LIST1上的所有文件计算哈希值之后将哈希值列表S_LIST1以及该列表的哈希值LIST_H放入区块BLOCK1中;管理员节点Admin1对区块BLOCK1进行签名获得签名SIG_BLOCK1,将签名SIG_BLOCK1存入区块BLOCK1中;管理员节点Admin1随后将区块BLOCK1加入区块链BC上,向其他节点广播此区块;
(2B)软件初始技术状态检测:被监控软件的使用者在自己的设备上运行监控软件,监控软件在被监控软件的安装过程中获得被监控软件产生的文件列表FILE_LIST2,对FILE_LIST2上的所有文件计算哈希值之后得到哈希值列表S_LIST2,根据被监控软件的软件名以及版本在区块链BC上搜索记录有该软件信息的区块BLOCK1,从区块中取出软件S的文件特征值列表S_LIST1,将S_LIST2与S_LIST1比对,如果一致则通过检测,否则软件弹出报警信息;
(3)软件技术状态监控检测:每隔一段预设时间对被监控软件的技术状态进行一次检查,对文件列表FILE_LIST1上的所有文件计算哈希值获得哈希值列表S_LIST3,与其他节点通信获得区块链BC1中的区块BLOCK1上存储的特征值列表S_LIST1,验证BLOCK1中的签名SIG_BLOCK1,验证通过后验证特征值列表S_LIST3是否与S_LIST1相同,若不相同则软件报警。
进一步的,步骤1~3中所述私有区块BLOCK的数据结构包括:
A1区块版本:标识区块的种类,0x01为软件技术状态区块,0x03为改密区块;
A2区块大小:此区块的大小;
A3区块头信息,包括:
A31软件名:被监控软件的名称;
A32软件版本:该区块记录的被监控软件的版本;
A33时间戳:区块打包的时间;
A34文件列表哈希值:该区块记录的文件哈希列表的哈希值;
A35前一区块哈希值:该区块的父区块的哈希值;
A36此区块数字签名:使用管理员私钥对该区块进行数字签名;
A37管理员公钥:与管理员私钥对应的公钥;
A4文件数量:该区块记录的文件哈希值列表的文件数量;
A5文件名与文件哈希列表:被监控软件所含文件的文件名与该文件的哈希值一一对应的列表。
进一步的,步骤1中所述改密区块BLOCK_C的数据结构包括:
B1区块版本:标识区块的种类,0x01为软件技术状态区块,0x03为改密区块;
B2区块大小:此区块的大小;
B3区块头信息,包括:
B31时间戳:区块打包的时间;
B32密钥条目哈希值:该区块所存储的密钥条目的哈希值;
B33前一区块哈希值:该区块的父区块的哈希值;
B34此区块的数字签名:使用超级管理员私钥对该区块进行数字签名;
B35超级管理员公钥:与超级管理员私钥对应的公钥;
B4密钥数量:该区块存储的公钥条目的数量。
B5密钥条目:原私钥与新私钥一一对应的列表,若是新发布密钥,则使用数据0x01表示超级管理员节点,使用数据0x03表示管理员节点。
进一步的,步骤1中的创世区块BLOCK_C0为改密区块,其中只发布超级管理员节点的公钥,且其内容为公开的,固化到程序内的数据结构,在创世区块之后,超级管理员节点能够使用私钥通过创建改密区块来确定其他的超级管理员节点和管理员节点。
进一步的,步骤1中的获取区块链数据的过程,监控软件的节点N1,拥有网络路由功能,可以响应其他节点的请求发送他所维护的区块链数据,同时也可以随时向其他节点请求区块链数据;如果监控软件还没有区块链数据,那么就会先通过软件代码中内含的创世区块数据结构创建创世区块BLOCK_C0,然后将创世区块中记录的超级管理员节点的公钥存储在内存中,并开始向其他节点N2请求区块链数据,每当节点N1获取一个区块BLOCK1后,先判断区块头中的管理员公钥A37或超级管理员公钥B35与内存中存储的管理员公钥或超级管理员公钥是否一致,然后通过前一区块哈希值A35或B33,此区块的数字签名A36或B34来检查该区块是否合法,若检查全部通过就接收此区块,否则拒绝此区块并向其他节点N3请求区块数据,接收区块后判断区块版本A1或B1,如果区块是改密区块BLOCK_C,那么就更新内存中存储的管理员公钥和超级管理员公钥。
进一步的,步骤2A中,监控软件先于被监控软件安装在设备中,在被监控软件的安装过程中,监控软件通过系统内核函数,监控被监控软件的系统调用,获得被监控软件读写的所有文件,从而获得被监控软件安装所生成的文件列表FILE_LIST1,通过对列表FILE_LIST1上的所有文件进行哈希值的计算,获得这些文件的哈希值列表S_LIST1,然后对哈希值列表S_LIST1进行哈希值的计算,获得列表的哈希值LIST_H;监控软件将哈希值列表S_LIST1放入区块结构的文件名与文件哈希列表A5,计算出文件数量填入A4,将文件名和版本分别填入A31和A32,将哈希值列表的哈希值LIST_H填入A34后,将被监控软件和区块发送给管理员节点Admin1,管理员节点重复节点N1的被监控软件安装过程,验证文件名与文件哈希值列表S_LIST1。验证通过后,管理员计算出区块链最后一个区块的哈希值、该区块的大小、时间戳并使用自己的私钥对此区块签名;区块打包完成后,管理员节点Admin1广播此区块,分发给其他节点。
进一步的,如果被监控软件有版本更新,版本更新后将新版本的被监控软件替换旧版本的被监控软件执行步骤2A和步骤2B。
进一步的,步骤3中,每隔一个固定时间,或者在一个特殊的操作之后,监控软件对被监控软件进行一次检测,对被监控软件的文件列表FILE_LIST2中的所有文件进行哈希值的计算获得哈希值列表S_LIST2,在区块中通过被监控软件的软件名以及软件版本搜索存有该软件技术状态信息的区块BLOCK1,获得BLOCK1中存储的文件名与文件哈希值列表S_LIST1,将S_LIST2与S_LIST1进行对比,如果两者相同就通过检测,否则不通过检测,监控软件弹出报警信息。
本方法提出了软件监控系统区块链结构、区块头结构以及监控方法,通过建立中心化私有链(或半中心化联盟链)来保证链上文件特征值数据不可篡改、可追溯以及具有时间戳等性质,以此用户可以根据链上的文件特征值数据监控本地软件的技术状态。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1为本发明一种基于区块链的软件运行技术状态监控方法流程图;
图2为本发明的区块链总体运行流程图;
图3为本发明的软件技术状态采集过程流程图;
图4为本发明的软件初始状态检测过程流程图;
图5为本发明的软件状态检测过程流程图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图详细说明本发明的具体实施方式。
步骤(1)构建区块链过程如图2所示:
监控软件BTSM程序中固化了一个创世区块BLOCK_C0,该区块是一个改密区块,公布了一个或多个超级管理员公钥,假设它公布了一个超级管理员公钥SA_PUBKEY1,与该超级管理员公钥对应的私钥为SA_PRIKEY1该区块BLOCK_C0如表1所示。
表1区块BLOCK_C0
其中B32使用哈希函数对B5进行哈希运算,推荐使用国家密码算法SM3哈希函数算法。
B34使用数字签名算法对该区块除了B34的部分使用超级管理员的私钥SA_PRIKEY1进行数字签名,推荐使用国家密码算法SM2数字签名算法。
该区块创建完成后,超级管理员可以创建改密区块修改公钥或者发布管理员公钥。假设超级管理员生成了一个公私密钥对(SA_PRIKEY2,SA_PUBKEY2)用来更新自己的密钥,另外生成了2个公私密钥对(AD_PRIKEY1,AD_PUBKEY1)和(AD_PRIKEY2,AD_PUBKEY2)用来发布两个管理员用户Admin1和Admin2,该区块BLOCK_C1如表2所示:
表2区块BLOCK_C1
在该区块生成并广播后,公私密钥对(SA_PRIKEY1,SA_PUBKEY1)就无效了,以后再使用SA_PRIKEY1签名的区块将不会被其他节点承认。同时,管理员用户Admin1和Admin2可以使用他们的各自的私钥AD_PRIKEY1和AD_PRIKEY2打包文件技术状态信息区块。
步骤(2A)软件初始技术状态采集过程如图3所示:
软件S的提供者O需要在自己的设备上安装软件BTSM,在启动软件BTSM后,再安装软件S。软件S在安装过程中生成文件F1、F2、F3和F4,在软件运行过程中调用了动态库D1和软件库D2,读了文件F5。然后执行以下步骤:
Step1:软件BTSM获得软件S的文件列表FILE_LIST1=[F1,F2,F3,F4,F5,D1,D2];
Step2:使用哈希函数对这些列表FILE_LIST1上的文件计算哈希值,得到文件哈希值列表S_LIST1=[(F1,Hash(F1)),(F2,Hash(F2)),(F3,Hash(F3)),(F4,Hash(F4)),(F5,Hash(F5)),(D1,Hash(D1)),(D2,Hash(D2))]
Step3:使用哈希函数计算文件哈希值列表的哈希值,得到LIST_H1。
Step4:创建不完整区块BLOCK1_UN,如表3所示:
表3不完整区块BLOCK1_UN
Step5:软件提供者O将软件S和不完整区块BLOCK1_UN发送给管理员节点Admin1或Admin2。
假设软件提供者O将信息发送给了管理员节点Admin1。管理员节点Admin1接收到软件提供者O的信息后,执行如下步骤:
Step1:安装并运行软件S,获得软件S的文件列表FILE_LIST2;
Step2:计算文件列表FILE_LIST2上所有文件的哈希值,得到文件哈希值列表S_LIST2;
Step3:比较不完整区块BLOCK1_UN中的S_LIST1和S_LIST2,如果S_LIST1=S_LIST2,进入Step4,否则管理员节点Admin1拒绝打包该区块;
Step4:将区块补充完,补充完成区块BLOCK1如表4所示:
表4区块BLOCK1
Step5:管理员节点Admin1将区块BLOCK1广播。
所有节点接收到管理员节点Admin1广播的信息后执行如下步骤:
Step1:检查区块BLOCK1中管理员公钥AD_PUBKEY1是否是改密区块中公布的管理员公钥,如果确实为管理员公钥则进入Step2,否则拒绝该区块。
Step2:使用公钥AD_PUBKEY1检验A36数字签名,通过检验则接收此区块收入本地区块链数据库,否则拒绝该区块。
步骤(2B)软件初始技术状态检测过程如图4所示:
软件S的使用者U1首先安装软件BTSM,安装完成之后安装并运行软件S,软件BTSM在软件S的安装过程中执行如下步骤:
Step1:软件BTSM获得软件S的文件列表FILE_LIST3;
Step2:计算文件列表FILE_LIST3中所有文件的哈希值,获得文件哈希列表S_LIST3;
Step3:通过软件S的软件名和版本在区块链BC中搜索记录软件S技术状态信息的区块BLOCK1;
Step4:如果找到区块BLOCK1则进入Step5,否则报警提示软件S未上链;
Step5:从区块BLOCK1中获得文件哈希值列表S_LIST1,将S_LIST3与S_LIST1进行比较,如果S_LIST3=S_LIST1则通过检测,否则报警提示本机安装的软件S技术状态错误。
步骤(3)软件技术状态检测过程如图5所示:
软件BTSM每隔一个时间t,或是在软件S有特殊操作(如读写文件,网络通信)时,对软件S进行一次技术状态检测,执行如下步骤:
Step1:软件BTSM获得软件S的文件列表FILE_LIST4;
Step2:计算文件列表FILE_LIST4中所有文件的哈希值,获得文件哈希列表S_LIST4;
Step3:通过软件S的软件名和版本在区块链BC中搜索记录软件S技术状态信息的区块BLOCK1;
Step4:从区块BLOCK1中获得文件哈希值列表S_LIST1,将S_LIST4与S_LIST1进行比较,如果S_LIST4=S_LIST1则通过检测,否则报警提示本机安装的软件S技术状态错误。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (8)

1.一种基于区块链的软件运行技术状态监控方法,其特征在于,包括:
(1)区块链构建:监控软件首先创建创世区块BLOCK_C0,然后向其他所有节点N依次获取区块链信息,然后监控软件一边从节点N获得区块,一边检查区块的签名以及公钥,如果签名和公钥不符,或公钥不属于相对应的超级管理员或管理员,则拒绝该区块,并重新更换节点请求区块链数据,直到获得了所有的区块;创世区块用于存储一个或多个超级管理员SA的公钥SA_PUBKEY;超级管理员SA用于创建改密区块BLOCK_C,发布和更改超级管理员SA或管理员Admin的公钥;管理员Admin用于打包区块BLOCK并将区块加入区块链BC上;
(2A)软件初始技术状态采集:被监控软件的提供者在自己的设备上运行监控软件,监控软件在被监控软件的安装过程中获得被监控软件产生的文件列表FILE_LIST1,对FILE_LIST1上的所有文件计算哈希值之后将哈希值列表S_LIST1以及该列表的哈希值LIST_H放入区块BLOCK1中;管理员节点Admin1对区块BLOCK1进行签名获得签名SIG_BLOCK1,将签名SIG_BLOCK1存入区块BLOCK1中;管理员节点Admin1随后将区块BLOCK1加入区块链BC上,向其他节点广播此区块;
(2B)软件初始技术状态检测:被监控软件的使用者在自己的设备上运行监控软件,监控软件在被监控软件的安装过程中获得被监控软件产生的文件列表FILE_LIST2,对FILE_LIST2上的所有文件计算哈希值之后得到哈希值列表S_LIST2,根据被监控软件的软件名以及版本在区块链BC上搜索记录有该软件信息的区块BLOCK1,从区块中取出软件S的文件特征值列表S_LIST1,将S_LIST2与S_LIST1比对,如果一致则通过检测,否则软件弹出报警信息;
(3)软件技术状态监控检测:每隔一段预设时间对被监控软件的技术状态进行一次检查,对文件列表FILE_LIST1上的所有文件计算哈希值获得哈希值列表S_LIST3,与其他节点通信获得区块链BC1中的区块BLOCK1上存储的特征值列表S_LIST1,验证BLOCK1中的签名SIG_BLOCK1,验证通过后验证特征值列表S_LIST3是否与S_LIST1相同,若不相同则软件报警。
2.根据权利要求1所述的一种基于区块链的软件运行技术状态监控方法,其特征在于,步骤1~3中所述私有区块BLOCK的数据结构包括:
A1区块版本:标识区块的种类,0x01为软件技术状态区块,0x03为改密区块;
A2区块大小:此区块的大小;
A3区块头信息,包括:
A31软件名:被监控软件的名称;
A32软件版本:该区块记录的被监控软件的版本;
A33时间戳:区块打包的时间;
A34文件列表哈希值:该区块记录的文件哈希列表的哈希值;
A35前一区块哈希值:该区块的父区块的哈希值;
A36此区块数字签名:使用管理员私钥对该区块进行数字签名;
A37管理员公钥:与管理员私钥对应的公钥;
A4文件数量:该区块记录的文件哈希值列表的文件数量;
A5文件名与文件哈希列表:被监控软件所含文件的文件名与该文件的哈希值一一对应的列表。
3.根据权利要求1所述的一种基于区块链的软件运行技术状态监控方法,其特征在于,步骤1中所述改密区块BLOCK_C的数据结构包括:
B1区块版本:标识区块的种类,0x01为软件技术状态区块,0x03为改密区块;
B2区块大小:此区块的大小;
B3区块头信息,包括:
B31时间戳:区块打包的时间;
B32密钥条目哈希值:该区块所存储的密钥条目的哈希值;
B33前一区块哈希值:该区块的父区块的哈希值;
B34此区块的数字签名:使用超级管理员私钥对该区块进行数字签名;
B35超级管理员公钥:与超级管理员私钥对应的公钥;
B4密钥数量:该区块存储的公钥条目的数量。
B5密钥条目:原私钥与新私钥一一对应的列表,若是新发布密钥,则使用数据0x01表示超级管理员节点,使用数据0x03表示管理员节点。
4.根据权利要求1所述的一种基于区块链的软件运行技术状态监控方法,其特征在于,步骤1中的创世区块BLOCK_C0为改密区块,其中只发布超级管理员节点的公钥,且其内容为公开的,固化到程序内的数据结构,在创世区块之后,超级管理员节点能够使用私钥通过创建改密区块来确定其他的超级管理员节点和管理员节点。
5.根据权利要求1所述的一种基于区块链的软件运行技术状态监控方法,其特征在于,步骤1中的获取区块链数据的过程,监控软件的节点N1,拥有网络路由功能,可以响应其他节点的请求发送他所维护的区块链数据,同时也可以随时向其他节点请求区块链数据;如果监控软件还没有区块链数据,那么就会先通过软件代码中内含的创世区块数据结构创建创世区块BLOCK_C0,然后将创世区块中记录的超级管理员节点的公钥存储在内存中,并开始向其他节点N2请求区块链数据,每当节点N1获取一个区块BLOCK1后,先判断区块头中的管理员公钥A37或超级管理员公钥B35与内存中存储的管理员公钥或超级管理员公钥是否一致,然后通过前一区块哈希值A35或B33,此区块的数字签名A36或B34来检查该区块是否合法,若检查全部通过就接收此区块,否则拒绝此区块并向其他节点N3请求区块数据,接收区块后判断区块版本A1或B1,如果区块是改密区块BLOCK_C,那么就更新内存中存储的管理员公钥和超级管理员公钥。
6.根据权利要求1所述的一种基于区块链的软件运行技术状态监控方法,其特征在于,步骤2A中,监控软件先于被监控软件安装在设备中,在被监控软件的安装过程中,监控软件通过系统内核函数,监控被监控软件的系统调用,获得被监控软件读写的所有文件,从而获得被监控软件安装所生成的文件列表FILE_LIST1,通过对列表FILE_LIST1上的所有文件进行哈希值的计算,获得这些文件的哈希值列表S_LIST1,然后对哈希值列表S_LIST1进行哈希值的计算,获得列表的哈希值LIST_H;监控软件将哈希值列表S_LIST1放入区块结构的文件名与文件哈希列表A5,计算出文件数量填入A4,将文件名和版本分别填入A31和A32,将哈希值列表的哈希值LIST_H填入A34后,将被监控软件和区块发送给管理员节点Admin1,管理员节点重复节点N1的被监控软件安装过程,验证文件名与文件哈希值列表S_LIST1。验证通过后,管理员计算出区块链最后一个区块的哈希值、该区块的大小、时间戳并使用自己的私钥对此区块签名;区块打包完成后,管理员节点Admin1广播此区块,分发给其他节点。
7.根据权利要求1所述的一种基于区块链的软件运行技术状态监控方法,其特征在于,如果被监控软件有版本更新,版本更新后将新版本的被监控软件替换旧版本的被监控软件执行步骤2A和步骤2B。
8.根据权利要求1所述的一种基于区块链的软件运行技术状态监控方法,其特征在于,步骤3中,每隔一个固定时间,或者在一个特殊的操作之后,监控软件对被监控软件进行一次检测,对被监控软件的文件列表FILE_LIST2中的所有文件进行哈希值的计算获得哈希值列表S_LIST2,在区块中通过被监控软件的软件名以及软件版本搜索存有该软件技术状态信息的区块BLOCK1,获得BLOCK1中存储的文件名与文件哈希值列表S_LIST1,将S_LIST2与S_LIST1进行对比,如果两者相同就通过检测,否则不通过检测,监控软件弹出报警信息。
CN201811006095.2A 2018-08-30 2018-08-30 一种基于区块链的软件运行技术状态监控方法 Active CN109408319B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811006095.2A CN109408319B (zh) 2018-08-30 2018-08-30 一种基于区块链的软件运行技术状态监控方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811006095.2A CN109408319B (zh) 2018-08-30 2018-08-30 一种基于区块链的软件运行技术状态监控方法

Publications (2)

Publication Number Publication Date
CN109408319A true CN109408319A (zh) 2019-03-01
CN109408319B CN109408319B (zh) 2020-09-29

Family

ID=65463819

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811006095.2A Active CN109408319B (zh) 2018-08-30 2018-08-30 一种基于区块链的软件运行技术状态监控方法

Country Status (1)

Country Link
CN (1) CN109408319B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110020951A (zh) * 2019-04-10 2019-07-16 北京筑龙信息技术有限责任公司 一种基于区块链的交易数据验证方法、装置及存储介质
CN110213171A (zh) * 2019-06-03 2019-09-06 杭州云象网络技术有限公司 一种基于联盟链技术的数据流量监测与控制方法
CN111930598A (zh) * 2020-08-28 2020-11-13 张坚伟 基于区块链和大数据分析的信息处理方法及大数据平台
CN113658656A (zh) * 2021-10-19 2021-11-16 宁波杜比医疗科技有限公司 一种基于区块链的诊断记录存证方法、系统及相关装置
CN115905895A (zh) * 2023-03-08 2023-04-04 云加速(北京)科技有限公司 一种基于区块链的sbom标识聚类模型实现方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106651332A (zh) * 2016-12-29 2017-05-10 先锋支付有限公司 一种区块链中新区快的生成方法及区块链
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
CN107171810A (zh) * 2017-06-27 2017-09-15 中国联合网络通信集团有限公司 区块链的验证方法及装置
CN107391298A (zh) * 2017-07-06 2017-11-24 上海策链信息科技有限公司 数据存储状态检测方法、装置及计算机可读存储介质
KR101892537B1 (ko) * 2017-03-10 2018-08-29 현대카드 주식회사 블록체인 기반의 홈페이지 위변조 탐지 방법 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106651332A (zh) * 2016-12-29 2017-05-10 先锋支付有限公司 一种区块链中新区快的生成方法及区块链
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
KR101892537B1 (ko) * 2017-03-10 2018-08-29 현대카드 주식회사 블록체인 기반의 홈페이지 위변조 탐지 방법 및 시스템
CN107171810A (zh) * 2017-06-27 2017-09-15 中国联合网络通信集团有限公司 区块链的验证方法及装置
CN107391298A (zh) * 2017-07-06 2017-11-24 上海策链信息科技有限公司 数据存储状态检测方法、装置及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马昂等: "区块链技术基础及应用研究综述", 《信息安全研究》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110020951A (zh) * 2019-04-10 2019-07-16 北京筑龙信息技术有限责任公司 一种基于区块链的交易数据验证方法、装置及存储介质
CN110213171A (zh) * 2019-06-03 2019-09-06 杭州云象网络技术有限公司 一种基于联盟链技术的数据流量监测与控制方法
CN111930598A (zh) * 2020-08-28 2020-11-13 张坚伟 基于区块链和大数据分析的信息处理方法及大数据平台
CN113658656A (zh) * 2021-10-19 2021-11-16 宁波杜比医疗科技有限公司 一种基于区块链的诊断记录存证方法、系统及相关装置
CN115905895A (zh) * 2023-03-08 2023-04-04 云加速(北京)科技有限公司 一种基于区块链的sbom标识聚类模型实现方法
CN115905895B (zh) * 2023-03-08 2023-05-09 云加速(北京)科技有限公司 一种基于区块链的sbom标识聚类模型实现方法

Also Published As

Publication number Publication date
CN109408319B (zh) 2020-09-29

Similar Documents

Publication Publication Date Title
CN109408319A (zh) 一种基于区块链的软件运行技术状态监控方法
CN111209346B (zh) 一种区块链数据归档方法、装置和计算机可读存储介质
Kim et al. Experiences with tripwire: Using integrity checkers for intrusion detection
US8769296B2 (en) Software signature tracking
CN110826111A (zh) 测试监管方法、装置、设备及存储介质
CN103294950B (zh) 一种基于反向追踪的高威窃密恶意代码检测方法及系统
US8190915B2 (en) Method and apparatus for detecting data tampering within a database
US20210026834A1 (en) Blockchain Based Integrity Checks
JP2006511877A (ja) ソフトウェアの改ざんを事前に対処することによって検出するためのシステムおよび方法
CN108696356B (zh) 一种基于区块链的数字证书删除方法、装置及系统
CN112286898B (zh) 基于分布式文件边缘节点的配置文件方法和装置
WO2022237497A1 (zh) 一种基于区块链网络的数据存储方法及装置
US20220237326A1 (en) System and method for certifying integrity of data assets
CN114372296A (zh) 一种基于区块链的用户行为数据审计方法及系统
Heitzmann et al. Efficient integrity checking of untrusted network storage
US9965625B2 (en) Control system and authentication device
CN108256351B (zh) 文件处理方法和装置、存储介质及终端
Cao et al. Design and implementation for MD5-based data integrity checking system
US20020069198A1 (en) System and method for positive identification of electronic files
CN112765588B (zh) 一种身份识别方法、装置、电子设备及存储介质
CN110602121B (zh) 一种网络密钥获取方法、装置和计算机可读存储介质
CN111008395B (zh) 一种u盘保护的方法和装置
CN109271811B (zh) 一种基于群签名的电子物证防篡改存储方法
US20160092886A1 (en) Methods of authorizing a computer license
US20210089497A1 (en) Method, device, and computer program product for managing data object

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210402

Address after: Room 801, 85 Kefeng Road, Huangpu District, Guangzhou City, Guangdong Province

Patentee after: Yami Technology (Guangzhou) Co.,Ltd.

Address before: 430000 Lu Mill Road, Hongshan District, Wuhan, Hubei Province, No. 388

Patentee before: CHINA University OF GEOSCIENCES (WUHAN CITY)

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220114

Address after: 223800 Huaguan building, No. 19, Hongzehu East Road, Suyu District, Suqian City, Jiangsu Province

Patentee after: Qikuai (Suqian) Network Technology Co.,Ltd.

Address before: Room 801, 85 Kefeng Road, Huangpu District, Guangzhou City, Guangdong Province

Patentee before: Yami Technology (Guangzhou) Co.,Ltd.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 223800 Huaguan building, No. 19, Hongzehu East Road, Suyu District, Suqian City, Jiangsu Province

Patentee after: Suqian Yitong Digital Technology Co.,Ltd.

Address before: 223800 Huaguan building, No. 19, Hongzehu East Road, Suyu District, Suqian City, Jiangsu Province

Patentee before: Qikuai (Suqian) Network Technology Co.,Ltd.