CN114329622A - 一种文件保护方法、验证方法、装置、设备和介质 - Google Patents

一种文件保护方法、验证方法、装置、设备和介质 Download PDF

Info

Publication number
CN114329622A
CN114329622A CN202111558879.8A CN202111558879A CN114329622A CN 114329622 A CN114329622 A CN 114329622A CN 202111558879 A CN202111558879 A CN 202111558879A CN 114329622 A CN114329622 A CN 114329622A
Authority
CN
China
Prior art keywords
file
attribute
hash value
verified
time
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.)
Pending
Application number
CN202111558879.8A
Other languages
English (en)
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.)
Beijing Infosec Technologies Co Ltd
Original Assignee
Beijing Infosec Technologies Co Ltd
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 Beijing Infosec Technologies Co Ltd filed Critical Beijing Infosec Technologies Co Ltd
Priority to CN202111558879.8A priority Critical patent/CN114329622A/zh
Publication of CN114329622A publication Critical patent/CN114329622A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种文件保护方法、验证方法、装置、设备和介质,由于该方法中对文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和第一哈希值组成第一字节流,并进行哈希运算得到第二哈希值;将文件的时间属性的属性值更新为第一时间,对文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;基于预先保存的私钥和签名算法对第二哈希值和第三哈希值分别进行数字签名,得到文件的数字时间戳,将数字时间戳、第一时间、文件的数据块和文件更新后的每种属性的属性值进行保存,由于文件的数据块和更新后的每种属性的属性值对应保存有数字时间戳,通过数字时间戳可以对第一时间对应的文件进行保护,从而保证了文件的完整性和时效性。

Description

一种文件保护方法、验证方法、装置、设备和介质
技术领域
本发明涉及时间技术和数字签名技术领域,尤其涉及一种文件保护方法、验证方法、装置、设备和介质。
背景技术
目前保护文件的完整性,主要是通过数字签名算法对文件进行数字签名保护,数字签名具有抗抵赖性。虽然数字签名可以保证数据的完整性,但是无法保证文件产生的时效性。
因此,如何同时保护文件完整性和文件产生的时效性就成为亟待解决的问题。
发明内容
本发明提供了一种文件保护方法、验证方法、装置、设备和介质,用以解决现有技术中的问题。
本发明提供了一种文件保护方法,所述方法包括:
对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;
基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
进一步地,所述对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值包括:
对所述文件更新后的文件权限对应的目标时间属性的属性值进行哈希运算,得到所述文件的权限对应的第四哈希值;
对所述文件更新后的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第二字节流进行哈希运算,得到所述文件的属性对应的第五哈希值。
进一步地,所述基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳包括:
基于预先保存的私钥和签名算法对所述第二哈希值进行数字签名,得到所述文件的数据块对应的第一数字时间戳;
基于预先保存的私钥和签名算法对所述第四哈希值进行数字签名,得到所述文件的权限对应的第二数字时间戳;
基于预先保存的私钥和签名算法对所述第五哈希值进行数字签名,得到所述文件的属性对应的第三数字时间戳。
相应地,本发明提供了一种文件验证方法,所述方法包括:
对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
进一步地,所述将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值包括:
将所述待验证文件的权限对应的目标时间属性的属性值进行哈希运算,得到所述待验证文件的权限对应的第九哈希值;
将所述待验证文件的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第四字节流进行哈希运算,得到所述待验证文件的属性对应的第十哈希值。
进一步地,所述基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果包括:
基于预先保存的公钥和签名算法,对所述第七哈希值和所述待验证文件的第一数字时间戳进行签名验证,得到所述待验证文件的数据块的第一验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的权限对应的所述第九哈希值和第二数字时间戳进行签名验证,得到所述待验证文件的权限对应的第二验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的属性对应的所述第十哈希值和第三数字时间戳进行签名验证,得到所述待验证文件的属性对应的第三验证结果。
进一步地,所述方法还包括:
若所述第一验证结果是失败,则确定所述待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在所述第一时间产生且数据块的内容未被篡改;
若所述第二验证结果是失败且所述第三验证结果是成功,则确定所述待验证文件的权限相比所述第一时间的所述待验证文件的权限存在修改;
若所述第三验证结果是失败,则确定所述待验证文件的文件属性相比所述第一时间的所述待验证文件的文件属性存在非法编辑;
若所述第二验证结果和所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且文件属性为未发生变化;
若所述第一验证结果、所述第二验证结果以及所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且未被篡改。
相应地,本发明提供了一种文件保护装置,所述装置包括:
处理模块,用于对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;
保存模块,用于基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
进一步地,所述处理模块,具体用于对所述文件更新后的文件权限对应的目标时间属性的属性值进行哈希运算,得到所述文件的权限对应的第四哈希值;对所述文件更新后的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第二字节流进行哈希运算,得到所述文件的属性对应的第五哈希值。
进一步地,所述保存模块,具体用于基于预先保存的私钥和签名算法对所述第二哈希值进行数字签名,得到所述文件的数据块对应的第一数字时间戳;基于预先保存的私钥和签名算法对所述第四哈希值进行数字签名,得到所述文件的权限对应的第二数字时间戳;基于预先保存的私钥和签名算法对所述第五哈希值进行数字签名,得到所述文件的属性对应的第三数字时间戳。
相应地,本发明提供了一种文件验证装置,所述装置包括:
处理模块,用于对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
验证模块,用于基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
进一步地,所述处理模块,具体用于将所述待验证文件的权限对应的目标时间属性的属性值进行哈希运算,得到所述待验证文件的权限对应的第九哈希值;将所述待验证文件的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第四字节流进行哈希运算,得到所述待验证文件的属性对应的第十哈希值。
进一步地,所述验证模块,具体用于基于预先保存的公钥和签名算法,对所述第七哈希值和所述待验证文件的第一数字时间戳进行签名验证,得到所述待验证文件的数据块的第一验证结果;基于所述公钥和所述签名算法,对所述待验证文件的权限对应的所述第九哈希值和第二数字时间戳进行签名验证,得到所述待验证文件的权限对应的第二验证结果;基于所述公钥和所述签名算法,对所述待验证文件的属性对应的所述第十哈希值和第三数字时间戳进行签名验证,得到所述待验证文件的属性对应的第三验证结果。
进一步地,所述验证模块,还用于若所述第一验证结果是失败,则确定所述待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在所述第一时间产生且数据块的内容未被篡改;若所述第二验证结果是失败且所述第三验证结果是成功,则确定所述待验证文件的权限相比所述第一时间的所述待验证文件的权限存在修改;若所述第三验证结果是失败,则确定所述待验证文件的文件属性相比所述第一时间的所述待验证文件的文件属性存在非法编辑;若所述第二验证结果和所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且文件属性为未发生变化;若所述第一验证结果、所述第二验证结果以及所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且未被篡改。
相应地,本发明提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器实现上述文件保护方法中任一所述方法的步骤。
相应地,本发明提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器实现上述文件验证方法中任一所述方法的步骤。
相应地,本发明提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现上述文件保护方法中任一所述方法的步骤。
相应地,本发明提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现上述文件验证方法中任一所述方法的步骤。
本发明提供了一种文件保护方法、验证方法、装置、设备和介质,由于该方法中对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存,由于文件的数据块和更新后的每种属性的属性值对应保存有数字时间戳,通过数字时间戳可以对第一时间对应的文件的数据块和每种属性的属性值进行保护,从而保证了文件的完整性和时效性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种文件保护方法的过程示意图;
图2为本发明实施例提供的一种文件验证方法的过程示意图;
图3为本发明实施例提供的一种文件保护方法的示意图;
图4为本发明实施例提供的一种文件验证方法的示意图;
图5为本发明实施例提供的一种文件保护装置的结构示意图;
图6为本发明实施例提供的一种文件验证装置的结构示意图;
图7为本发明实施例提供的一种电子设备结构示意图;
图8为本发明实施例提供的一种电子设备结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
为了保证文件的完整性和时效性,本发明实施例提供了一种文件保护方法、验证方法、装置、设备和介质。
实施例1:
图1为本发明实施例提供的一种文件保护方法的过程示意图,该过程包括以下步骤:
S101:对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值。
本发明实施例提供的一种文件保护方法应用于电子设备,其中该电子设备可以是平板电脑、PC、智能手机等智能终端设备、也可以是本地服务器、云端服务器、服务器集群等。
为了保证文件的完整性和时效性,在本发明实施例中,该电子设备首先获取到文件,其中该文件可以是日志文件、也可以是缓存文件、备份文件以及临时文件等其他文件;该文件可以是刚生成的,也可以是预先生成的。
该电子设备还获取到当前的第一时间,其中该第一时间是从国家授时中心获取到的可信时间。对获取到的文件的数据块进行哈希运算,确定文件的数据块对应的第一哈希值,其中对文件的数据块进行哈希运算时可以是采用现有的摘要算法、也可以是采用其他的哈希算法,本发明实施例对此不做限制。将当前的第一时间和第一哈希值组成第一字节流,并对第一字节流进行哈希运算得到第二哈希值。
为了实现对文件的保护,除了对文件内容的保护外,还要实现对文件属性的保护,将文件的时间属性的属性值进行更新,将时间属性的属性值更新为第一时间,其中时间属性包括修改时间(Modify Time)、状态改动时间(Change Time)以及其他属性。对文件更新后的每种属性的属性值进行哈希运算,从而得到每种属性的属性值对应的第三哈希值,其中文件的每种属性包括时间属性、文件(FILE)、字节大小(size)和索引节点(Inode)。
S102:基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
为了实现对文件的保护,在确定出文件的数据块对应的第二哈希值和文件的每种属性的属性值对应的第三哈希值后,在本发明实施例中还预先保存有私钥和签名算法,基于预先保存的私钥和签名算法对第二哈希值和第三哈希值进行数字签名,得到第一哈希值和第二哈希值分别对应的数字时间戳。
将第一哈希值和第二哈希值分别对应的数字时间戳、第一时间、文件的数据块和文件更新后的每种属性的属性值进行保存。
由于本发明实施例中对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存,由于文件的数据块和更新后的每种属性的属性值对应保存有数字时间戳,通过数字时间戳可以对第一时间对应的文件的数据块和每种属性的属性值进行保护,从而保证了文件的完整性和时效性。
实施例2:
为了确定出第三哈希值,在上述实施例的基础上,在本发明实施例中,所述对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值包括:
对所述文件更新后的文件权限对应的目标时间属性的属性值进行哈希运算,得到所述文件的权限对应的第四哈希值;
对所述文件更新后的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第二字节流进行哈希运算,得到所述文件的属性对应的第五哈希值。
为了确定出第三哈希值,在本发明实施例中,由于文件属性中包括多种属性,首先针对文件权限对应的目标时间属性,对目标时间属性的属性值进行哈希运算,确定出文件的权限对应的第四哈希值。
针对文件属性中除目标时间属性之外的其他属性,将其他属性的属性值按预设规则组成第二字节流,并对第二字节流进行哈希运算,得到文件的属性对应的第五哈希值,其中第四哈希值和第五哈希值组成了第三哈希值。
具体的,若文件为日志文件时,针对文件权限对应的Change Time属性,将该属性的属性值进行哈希运算,由于该属性的属性值为第一时间,即将第一时间进行哈希运算,确定出文件的权限对应的第四哈希值;对文件的Modify Time、FILE、size和Inode的属性值按预设规则组成第二字节流,对第二字节流进行哈希运算得到文件的属性对应的第五哈希值。
实施例3:
为了确定出数字时间戳,在上述各实施例的基础上,在本发明实施例中,所述基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳包括:
基于预先保存的私钥和签名算法对所述第二哈希值进行数字签名,得到所述文件的数据块对应的第一数字时间戳;
基于预先保存的私钥和签名算法对所述第四哈希值进行数字签名,得到所述文件的权限对应的第二数字时间戳;
基于预先保存的私钥和签名算法对所述第五哈希值进行数字签名,得到所述文件的属性对应的第三数字时间戳。
为了确定出文件对应的数字时间戳,在本发明实施例中,预先保存有私钥和签名算法,为了实现对文件内容的保护,基于预先保存的私钥和签名算法,对第二哈希值进行数字签名,确定出文件的数据块对应的第一数字时间戳。
为了实现对文件权限的保护,基于预先保存的私钥和签名算法,对文件的权限对应的第四哈希值进行数字签名,确定出文件的权限对应的第二数字时间戳。为了实现对文件属性的保护,基于预先保存的私钥和签名算法,对文件的属性对应的第五哈希值进行数字签名,确定出文件的文件属性对应的第三数字时间戳。
实施例4:
为了实现对文件的验证,在上述各实施例的基础上,本发明实施例提供了一种文件验证方法。图2为本发明实施例提供的一种文件验证方法的过程示意图,该过程包括以下步骤:
S201:对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
本发明实施例提供的一种文件验证方法应用于电子设备,其中该电子设备可以是文件保护方法应用的电子设备为同一电子设备,也可以是不同电子设备,本发明实施例对此不做限制。
该电子设备首先获取待验证文件以及与待验证文件对应保存的第一时间和数字时间戳,为了实现对文件内容的验证,在本发明实施例中,对待验证文件的数据块进行哈希运算得到第六哈希值,将第六哈希值与第一时间组成第三字节流,其中组成第三字节流的规则与组成第一字节流的规则相同,对第三字节流进行哈希运算得到第七哈希值。
为了实现对文件属性的验证,将待验证文件的每种属性的属性值进行哈希运算得到第八哈希值,其中待验证文件的每种属性包括修改时间(Modify Time)、状态改动时间(Change Time)、文件(FILE)、字节大小(size)和索引节点(Inode)。
S202:基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
在确定出待验证文件的第七哈希值和第八哈希值后,为了实现对待验证文件的数据块、权限和属性的验证,在本发明实施例中,基于预先保存的公钥和签名算法,根据待验证文件对应报文的数字时间戳,分别对第七哈希值和第八哈希值进行签名验证,确定出待验证文件的签名验证结果。
其中签名算法可以是采用现有的非对称加密算法(SM2),基于SM2和预先保存的公钥进行签名验证时的方法为现有技术中,本发明实施例中对此不做赘述。
实施例5:
为了确定出第八哈希值,在上述各实施例的基础上,在本发明实施例中,所述将所述待验证文件的每种属性的属性值进行哈希运算得到第六哈希值包括:
将所述待验证文件的权限对应的目标时间属性的属性值进行哈希运算,得到所述待验证文件的权限对应的第九哈希值;
将所述待验证文件的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第四字节流进行哈希运算,得到所述待验证文件的属性对应的第十哈希值。
为了实现对待验证文件的权限的验证,针对待验证文件的权限对应的目标时间属性,将目标时间属性的属性值进行哈希运算,得到待验证文件的权限对应的第九哈希值。其中生成待验证文件的权限对应的第九哈希值的算法与生成文件的权限对应的第四哈希值的算法相同。
为了实现对待验证文件的属性的验证,针对待验证文件的除目标时间属性之外的其他属性,将其他属性的属性值按预设规则生成第四字节流,并对第四字节流进行哈希运算得到待验证文件的属性对应的第十哈希值。其中生成第四字节流时的预设规则与生成第二字节流时的预设规则相同,其中第九哈希值和第十哈希值组成了第八哈希值。
实施例6:
为了实现对待验证文件的验证,在上述各实施例的基础上,在本发明实施例中,所述基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果包括:
基于预先保存的公钥和签名算法,对所述第七哈希值和所述待验证文件的第一数字时间戳进行签名验证,得到所述待验证文件的数据块的第一验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的权限对应的所述第九哈希值和第二数字时间戳进行签名验证,得到所述待验证文件的权限对应的第二验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的属性对应的所述第十哈希值和第三数字时间戳进行签名验证,得到所述待验证文件的属性对应的第三验证结果。
为了实现对待验证文件的数据块的内容的验证,在本发明实施例中,基于预先保存的公钥和签名算法,对待验证文件的权限对应的第七哈希值和第一数字时间戳进行签名验证。其中第七哈希值是对待验证文件的第三字节流进行哈希运算生成的,对第三字节流进行哈希运算的算法与对第一字节流进行哈希运算时的算法相同。
具体对待验证文件的权限对应的第七哈希值和第一数字时间戳进行签名验证时,是根据现有的SM2算法的验证原理进行验证,从而得到待验证文件的数据块的第一验证结果。
基于公钥和签名算法,对待验证文件的权限对应的第九哈希值和第二数字时间戳进行签名验证,具体根据现有的SM2算法的验证原理进行验证,得到待验证文件的权限对应的第二验证结果。其中,生成待验证文件的权限对应的第九哈希值的哈希算法、与生成文件的权限对应的第三哈希值的哈希算法相同。
基于公钥和签名算法,对待验证文件的属性对应的第十哈希值和第三数字时间戳进行签名验证,具体根据现有的SM2算法的验证原理进行验证,得到待验证文件的属性对应的第三验证结果。其中,生成待验证文件的属性对应的第十哈希值的哈希算法、与生成文件的属性对应的第三哈希值的哈希算法相同。
为了实现对待验证文件的数据块的内容、权限和属性的验证,在本发明实施例中,若所述第一验证结果是失败,则确定所述待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在所述第一时间产生且数据块的内容未被篡改;
若所述第二验证结果是失败且所述第三验证结果是成功,则确定所述待验证文件的权限相比所述第一时间的所述待验证文件的权限存在修改;
若所述第三验证结果是失败,则确定所述待验证文件的文件属性相比所述第一时间的所述待验证文件的文件属性存在非法编辑;
若所述第二验证结果和所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且文件属性为未发生变化;
若所述第一验证结果、所述第二验证结果以及所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且未被篡改。
为了实现对待验证文件的数据块的内容、权限和属性的验证,在确定出第一验证结果、第二验证结果和第三验证结果后,若第一验证结果是失败,则确定待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在第一时间产生且数据块的内容未被篡改,若第二验证结果是失败且第三验证结果是成功,则确定待验证文件的权限相比第一时间的待验证文件的权限存在修改,若第三验证结果是失败,则确定待验证文件的文件属性相比第一时间的待验证文件的文件属性存在非法编辑。
若第二验证结果和第三验证结果均是成功,则确定待验证文件是在第一时间产生且文件属性为未发生变化,若第一验证结果、第二验证结果和第三验证结果均为成功,则确定待验证文件是在第一时间产生且未被篡改。
实施例7:
下面通过一个具体的实施例对本发明的文件保护方法和文件验证方法进行说明,图3为本发明实施例提供的一种文件保护方法的示意图,如图3所示,从国家授时中心获取可信时间,得到时间字符串1,将时间字符1对应时间生成的日志文件的数据块采用现有的摘要算法进行哈希运算,得到第1摘要结果,将第一摘要结果和时间字符串1组成新的第一字节流,并对第一字节流采用摘要算法进行哈希运算,得到第2摘要结果。
将日志文件的Modify Time和Change Time属性值修改为时间字符串1,将文件属性中的Change Time属性值通过摘要算法进行哈希运算,得到第3摘要结果;将文件属性中的FILE、size、Inode、Modify属性值按照预定的规则组成第2字节流;将第2字节流通过摘要算法进行哈希运算,得到第4摘要结果。
使用预先保存的私钥和签名算法对第2摘要结果、第3摘要结果和第4摘要结果进行数字签名,得到对应的第1时间戳、第2时间戳和第3时间戳,将第1时间戳、第2时间戳和第3时间戳以及时间字符串1保存到数据库中。
图4为本发明实施例提供的一种文件验证方法的示意图,如图4所示,获取待验证的日志文件、时间字符串1、第1时间戳、第2时间戳和第3时间戳,将待验证的日志文件的数据块采用现有的摘要算法进行哈希运算,得到第1-1摘要结果,将第1-1摘要结果和与时间字符串1组成第3字节流,将第3字节流采用现有的摘要算法进行哈希运算,得到第1-2摘要结果,获取预先保存的公钥和签名算法对第1时间戳和第1-2摘要结果进行验证,得到第1验证结果。
将日志文件属性中的Change Time属性值通过摘要算法进行哈希运算,得到第2-1摘要结果,获取预先保存的公钥和签名算法对第2时间戳和第2-1摘要结果进行验证,得到第2验证结果。
将日志文件属性中的FILE、size、Inode、Modify属性按照预定的规则组成第4字节流,将第4字节流通过摘要算法进行哈希运算,得到第3-1摘要结果;获取预先保存的公钥和签名算法对第3时间戳和第3-1摘要结果进行验证,得到第3验证结果。
如果第1验证结果是失败,则代表日志数据内容已被篡改,如果第1验证结果是成功,则代表日志数据是在时间字符串1时刻产生并且内容未被篡改;如果第2验证结果是失败且第3验证结果是成功,则代表日志文件的权限与时间字符串1时刻的文件权限不一致,存在修改;如果第3验证结果是失败,则代表日志文件属性与时间字符串1时刻的文件属性不一致,存在非法编辑;如果第2验证结果和第3验证结果都是成功,则代表日志文件是在时间字符串1时刻产生的,并且文件属性为未发生变化;如果第1验证结果、第2验证结果以及第3验证结果都是成功,则代表日志文件在时间字符串1时刻产生,并且未有任何篡改。
实施例8:
图5为本发明实施例提供的一种文件保护装置的结构示意图,在上述各实施例的基础上,本发明实施例还提供一种文件保护装置,所述装置包括:
处理模块501,用于对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;
保存模块502,用于基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
进一步地,所述处理模块,具体用于对所述文件更新后的文件权限对应的目标时间属性的属性值进行哈希运算,得到所述文件的权限对应的第四哈希值;对所述文件更新后的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第二字节流进行哈希运算,得到所述文件的属性对应的第五哈希值。
进一步地,所述保存模块,具体用于基于预先保存的私钥和签名算法对所述第二哈希值进行数字签名,得到所述文件的数据块对应的第一数字时间戳;基于预先保存的私钥和签名算法对所述第四哈希值进行数字签名,得到所述文件的权限对应的第二数字时间戳;基于预先保存的私钥和签名算法对所述第五哈希值进行数字签名,得到所述文件的属性对应的第三数字时间戳。
实施例8:
图6为本发明实施例提供的一种文件验证装置的结构示意图,在上述各实施例的基础上,本发明实施例还提供一种文件验证装置,所述装置包括:
处理模块601,用于对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
验证模块602,用于基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
进一步地,所述处理模块,具体用于将所述待验证文件的权限对应的目标时间属性的属性值进行哈希运算,得到所述待验证文件的权限对应的第九哈希值;将所述待验证文件的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第四字节流进行哈希运算,得到所述待验证文件的属性对应的第十哈希值。
进一步地,所述验证模块,具体用于基于预先保存的公钥和签名算法,对所述第七哈希值和所述待验证文件的第一数字时间戳进行签名验证,得到所述待验证文件的数据块的第一验证结果;基于所述公钥和所述签名算法,对所述待验证文件的权限对应的所述第九哈希值和第二数字时间戳进行签名验证,得到所述待验证文件的权限对应的第二验证结果;基于所述公钥和所述签名算法,对所述待验证文件的属性对应的所述第十哈希值和第三数字时间戳进行签名验证,得到所述待验证文件的属性对应的第三验证结果。
进一步地,所述验证模块,还用于若所述第一验证结果是失败,则确定所述待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在所述第一时间产生且数据块的内容未被篡改;若所述第二验证结果是失败且所述第三验证结果是成功,则确定所述待验证文件的权限相比所述第一时间的所述待验证文件的权限存在修改;若所述第三验证结果是失败,则确定所述待验证文件的文件属性相比所述第一时间的所述待验证文件的文件属性存在非法编辑;若所述第二验证结果和所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且文件属性为未发生变化;若所述第一验证结果、所述第二验证结果以及所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且未被篡改。
实施例9:
图7为本发明实施例提供的一种电子设备结构示意图,在上述各实施例的基础上,本发明实施例中还提供了一种电子设备,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信;
所述存储器703中存储有计算机程序,当所述程序被所述处理器701执行时,使得所述处理器701执行如下步骤:
对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;
基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
进一步地,所述处理器701具体用于所述对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值包括:
对所述文件更新后的文件权限对应的目标时间属性的属性值进行哈希运算,得到所述文件的权限对应的第四哈希值;
对所述文件更新后的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第二字节流进行哈希运算,得到所述文件的属性对应的第五哈希值。
进一步地,所述处理器701具体用于所述基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳包括:
基于预先保存的私钥和签名算法对所述第二哈希值进行数字签名,得到所述文件的数据块对应的第一数字时间戳;
基于预先保存的私钥和签名算法对所述第四哈希值进行数字签名,得到所述文件的权限对应的第二数字时间戳;
基于预先保存的私钥和签名算法对所述第五哈希值进行数字签名,得到所述文件的属性对应的第三数字时间戳。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口702用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例10:
图8为本发明实施例提供的一种电子设备结构示意图,在上述各实施例的基础上,本发明实施例中还提供了一种电子设备,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信;
所述存储器803中存储有计算机程序,当所述程序被所述处理器801执行时,使得所述处理器801执行如下步骤:
对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
进一步地,所述处理器801具体用于所述将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值包括:
将所述待验证文件的权限对应的目标时间属性的属性值进行哈希运算,得到所述待验证文件的权限对应的第九哈希值;
将所述待验证文件的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第四字节流进行哈希运算,得到所述待验证文件的属性对应的第十哈希值。
进一步地,所述处理器801具体用于所述基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果包括:
基于预先保存的公钥和签名算法,对所述第七哈希值和所述待验证文件的第一数字时间戳进行签名验证,得到所述待验证文件的数据块的第一验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的权限对应的所述第九哈希值和第二数字时间戳进行签名验证,得到所述待验证文件的权限对应的第二验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的属性对应的所述第十哈希值和第三数字时间戳进行签名验证,得到所述待验证文件的属性对应的第三验证结果。
进一步地,所述处理器801还用于若所述第一验证结果是失败,则确定所述待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在所述第一时间产生且数据块的内容未被篡改;
若所述第二验证结果是失败且所述第三验证结果是成功,则确定所述待验证文件的权限相比所述第一时间的所述待验证文件的权限存在修改;
若所述第三验证结果是失败,则确定所述待验证文件的文件属性相比所述第一时间的所述待验证文件的文件属性存在非法编辑;
若所述第二验证结果和所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且文件属性为未发生变化;
若所述第一验证结果、所述第二验证结果以及所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且未被篡改。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口802用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器、网络处理器(NetworkProcessor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
实施例11:
在上述各实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行如下步骤:
对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;
基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
对所述文件更新后的文件权限对应的目标时间属性的属性值进行哈希运算,得到所述文件的权限对应的第四哈希值;
对所述文件更新后的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第二字节流进行哈希运算,得到所述文件的属性对应的第五哈希值。
进一步地,所述基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳包括:
基于预先保存的私钥和签名算法对所述第二哈希值进行数字签名,得到所述文件的数据块对应的第一数字时间戳;
基于预先保存的私钥和签名算法对所述第四哈希值进行数字签名,得到所述文件的权限对应的第二数字时间戳;
基于预先保存的私钥和签名算法对所述第五哈希值进行数字签名,得到所述文件的属性对应的第三数字时间戳。
实施例12:
在上述各实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行如下步骤:
对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
进一步地,所述将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值包括:
将所述待验证文件的权限对应的目标时间属性的属性值进行哈希运算,得到所述待验证文件的权限对应的第九哈希值;
将所述待验证文件的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第四字节流进行哈希运算,得到所述待验证文件的属性对应的第十哈希值。
进一步地,所述基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果包括:
基于预先保存的公钥和签名算法,对所述第七哈希值和所述待验证文件的第一数字时间戳进行签名验证,得到所述待验证文件的数据块的第一验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的权限对应的所述第九哈希值和第二数字时间戳进行签名验证,得到所述待验证文件的权限对应的第二验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的属性对应的所述第十哈希值和第三数字时间戳进行签名验证,得到所述待验证文件的属性对应的第三验证结果。
进一步地,所述方法还包括:
若所述第一验证结果是失败,则确定所述待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在所述第一时间产生且数据块的内容未被篡改;
若所述第二验证结果是失败且所述第三验证结果是成功,则确定所述待验证文件的权限相比所述第一时间的所述待验证文件的权限存在修改;
若所述第三验证结果是失败,则确定所述待验证文件的文件属性相比所述第一时间的所述待验证文件的文件属性存在非法编辑;
若所述第二验证结果和所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且文件属性为未发生变化;
若所述第一验证结果、所述第二验证结果以及所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且未被篡改。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (11)

1.一种文件保护方法,其特征在于,所述方法包括:
对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;
基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
2.根据权利要求1所述的方法,其特征在于,所述对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值包括:
对所述文件更新后的文件权限对应的目标时间属性的属性值进行哈希运算,得到所述文件的权限对应的第四哈希值;
对所述文件更新后的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第二字节流进行哈希运算,得到所述文件的属性对应的第五哈希值。
3.根据权利要求2所述的方法,其特征在于,所述基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳包括:
基于预先保存的私钥和签名算法对所述第二哈希值进行数字签名,得到所述文件的数据块对应的第一数字时间戳;
基于预先保存的私钥和签名算法对所述第四哈希值进行数字签名,得到所述文件的权限对应的第二数字时间戳;
基于预先保存的私钥和签名算法对所述第五哈希值进行数字签名,得到所述文件的属性对应的第三数字时间戳。
4.一种基于权利要求1-3任一所述方法的文件验证方法,其特征在于,所述方法包括:
对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
5.根据权利要求4所述的方法,其特征在于,所述将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值包括:
将所述待验证文件的权限对应的目标时间属性的属性值进行哈希运算,得到所述待验证文件的权限对应的第九哈希值;
将所述待验证文件的除所述目标时间属性之外的其他属性的属性值按预设规则组成的第四字节流进行哈希运算,得到所述待验证文件的属性对应的第十哈希值。
6.根据权利要求5所述的方法,其特征在于,所述基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果包括:
基于预先保存的公钥和签名算法,对所述第七哈希值和所述待验证文件的第一数字时间戳进行签名验证,得到所述待验证文件的数据块的第一验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的权限对应的所述第九哈希值和第二数字时间戳进行签名验证,得到所述待验证文件的权限对应的第二验证结果;
基于所述公钥和所述签名算法,对所述待验证文件的属性对应的所述第十哈希值和第三数字时间戳进行签名验证,得到所述待验证文件的属性对应的第三验证结果。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
若所述第一验证结果是失败,则确定所述待验证文件的数据块的内容被篡改,若所述第一验证结果是成功,则确定所述待验证文件是在所述第一时间产生且数据块的内容未被篡改;
若所述第二验证结果是失败且所述第三验证结果是成功,则确定所述待验证文件的权限相比所述第一时间的所述待验证文件的权限存在修改;
若所述第三验证结果是失败,则确定所述待验证文件的文件属性相比所述第一时间的所述待验证文件的文件属性存在非法编辑;
若所述第二验证结果和所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且文件属性为未发生变化;
若所述第一验证结果、所述第二验证结果以及所述第三验证结果均是成功,则确定所述待验证文件是在所述第一时间产生且未被篡改。
8.一种文件保护装置,其特征在于,所述装置包括:
处理模块,用于对所述文件的数据块进行哈希运算得到第一哈希值,将当前的第一时间和所述第一哈希值组成第一字节流,并对所述第一字节流进行哈希运算得到第二哈希值;将所述文件的时间属性的属性值更新为所述第一时间,对所述文件更新后的每种属性的属性值进行哈希运算得到第三哈希值;
保存模块,用于基于预先保存的私钥和签名算法对所述第二哈希值和所述第三哈希值分别进行数字签名,得到所述文件的数字时间戳,将所述数字时间戳、所述第一时间、所述文件的数据块和所述文件更新后的每种属性的属性值进行保存。
9.一种文件验证装置,其特征在于,所述装置包括:
处理模块,用于对待验证文件的数据块进行哈希运算得到第六哈希值,将与所述待验证文件对应保存的第一时间和所述第六哈希值组成第三字节流,并对所述第三字节流进行哈希运算得到第七哈希值;将所述待验证文件的每种属性的属性值进行哈希运算得到第八哈希值;
验证模块,用于基于预先保存的公钥和签名算法,根据所述待验证文件对应保存的数字时间戳,分别对所述第七哈希值和所述第八哈希值进行签名验证,得到所述待验证文件的签名验证结果。
10.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求1-3任一项所述方法、或执行权利要求4-7任一项所述方法。
11.一种计算机可读存储介质,其特征在于,其存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行时,使得所述处理器执行权利要求1-3任一项所述方法、或执行权利要求4-7任一项所述方法。
CN202111558879.8A 2021-12-20 2021-12-20 一种文件保护方法、验证方法、装置、设备和介质 Pending CN114329622A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111558879.8A CN114329622A (zh) 2021-12-20 2021-12-20 一种文件保护方法、验证方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111558879.8A CN114329622A (zh) 2021-12-20 2021-12-20 一种文件保护方法、验证方法、装置、设备和介质

Publications (1)

Publication Number Publication Date
CN114329622A true CN114329622A (zh) 2022-04-12

Family

ID=81052624

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111558879.8A Pending CN114329622A (zh) 2021-12-20 2021-12-20 一种文件保护方法、验证方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN114329622A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115941208A (zh) * 2022-12-28 2023-04-07 广州文远知行科技有限公司 一种车端文件的传输方法、系统、设备和介质
CN117150575A (zh) * 2023-10-30 2023-12-01 西安热工研究院有限公司 可信工控系统操作日志防篡改方法、系统、设备及介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115941208A (zh) * 2022-12-28 2023-04-07 广州文远知行科技有限公司 一种车端文件的传输方法、系统、设备和介质
CN115941208B (zh) * 2022-12-28 2024-04-02 广州文远知行科技有限公司 一种车端文件的传输方法、系统、设备和介质
CN117150575A (zh) * 2023-10-30 2023-12-01 西安热工研究院有限公司 可信工控系统操作日志防篡改方法、系统、设备及介质
CN117150575B (zh) * 2023-10-30 2024-02-23 西安热工研究院有限公司 可信工控系统操作日志防篡改方法、系统、设备及介质

Similar Documents

Publication Publication Date Title
CN107077557B (zh) 软件应用程序发布和验证的方法及装置
CN109086577B (zh) 一种基于区块链的原创音乐作品管理方法及相关设备
US10992482B2 (en) Verified boot and key rotation
CN108111314B (zh) 数字证书的生成和校验方法及设备
CN107463806B (zh) 一种Android应用程序安装包的签名和验签方法
CN111523890B (zh) 基于区块链的数据处理方法、装置、存储介质及设备
CN114329622A (zh) 一种文件保护方法、验证方法、装置、设备和介质
CN112287034B (zh) 一种数据同步方法、设备以及计算机可读存储介质
CN109634615B (zh) 应用安装包的发布方法、验证方法和装置
CN108229144B (zh) 一种应用程序的验证方法、终端设备及存储介质
CN110830257B (zh) 一种文件签名方法、装置、电子设备及可读存储介质
CN110826092A (zh) 一种文件签名处理系统
CN114116313A (zh) 一种备份数据处理方法及装置
CN110830256A (zh) 一种文件签名方法、装置、电子设备及可读存储介质
CN110826107A (zh) 一种文件签名方法、装置、电子设备及可读存储介质
CN114238874A (zh) 数字签章验证方法、装置、计算机设备和存储介质
US20220045866A1 (en) Method and system for authentication seal deployment in networked immutable transactions
CN110381114B (zh) 接口请求参数的处理方法、装置、终端设备及介质
CN110581863B (zh) 一种云平台的单点登录方法、装置、设备及介质
CN110826034B (zh) 一种文件签名方法、装置、电子设备及可读存储介质
CN107391970A (zh) Flash应用程序中的函数访问控制方法及装置
CN109687967B (zh) 电子签名方法和设备
CN110602051A (zh) 基于共识协议的信息处理方法及相关装置
CN111949996A (zh) 安全私钥的生成方法、加密方法、系统、设备及介质
CN113868628A (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