CN110941861B - 文件防护方法、装置、计算机设备及介质 - Google Patents
文件防护方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN110941861B CN110941861B CN201911294113.6A CN201911294113A CN110941861B CN 110941861 B CN110941861 B CN 110941861B CN 201911294113 A CN201911294113 A CN 201911294113A CN 110941861 B CN110941861 B CN 110941861B
- Authority
- CN
- China
- Prior art keywords
- hash value
- file
- signature
- original text
- value
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000004422 calculation algorithm Methods 0.000 claims description 29
- 238000012795 verification Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 26
- 230000005540 biological transmission Effects 0.000 abstract description 24
- 238000010586 diagram Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种文件防护方法、装置、计算机设备及介质,涉及信息安全技术领域,该文件防护方法包括:根据目标文件的文件体以及所述目标文件的签名信息生成原文杂凑值;根据所述原文杂凑值和所述签名信息生成哈希值,并对所述哈希值进行加密,得到签名值;将所述文件体、所述签名信息、所述原文杂凑值以及所述签名值发送至所述目标文件的接收终端。该文件防护方法可以提高文件传输过程中文件的安全性。
Description
技术领域
本申请涉及信息安全技术领域,特别是涉及一种文件防护方法、装置、计算机设备及介质。
背景技术
在计算机技术领域中,文件在数据存储和传输方面发挥着重要作用。基于计算机技术的大多数业务的开展,都离不开对文件的操作。由于文件为明文,且具有可编辑的特点,因此,在文件传输的过程中,容易发生文件被篡改的情况,这样可能会造成各种商业数据泄露和经济损失。
为了保障文件在传输过程中的安全性,通常需要对文件进行防护处理,现有的文件防护方法是对文件整体进行加密,得到加密文件。
然而,在实际中,可能发生非法终端拦截加密文件,对加密文件进行破密及篡改,将篡改的文件以原加密方式加密并发送给接收方的情况,这样接收方接收到的文件可能是被篡改过的,而接收方无法从接收到的文件中确定该文件是否被篡改过,因此在文件传输过程中文件的安全性较低。
发明内容
基于此,有必要针对上述存在的在文件传输过程中文件的安全性较低的问题,提供一种文件防护方法、装置、计算机设备及介质。
第一方面,本申请实施例提供了一种文件防护方法,该方法包括:
根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值;
根据原文杂凑值和签名信息生成哈希值,并对哈希值进行加密,得到签名值;
将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端。
在本申请的一个实施例中,将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端之前,包括:
将签名信息、原文杂凑值以及签名值添加至目标文件的文件头中;
对应地,将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端,包括:
将目标文件的文件头和目标文件的文件体共同发送至接收终端。
在本申请的一个实施例中,方法应用于具有签名***的发送终端中,对哈希值进行加密,得到签名值,包括:
发送终端根据签名***对应的设备私钥对哈希值进行加密,得到签名值。
第二方面,本申请实施例提供了文件防护方法,该方法包括:
接收目标文件的发送终端发送的目标文件的文件体、签名信息、原文杂凑值以及签名值;
根据文件体和签名信息对原文杂凑值进行验证;
当原文杂凑值验证通过时,根据原文杂凑值和签名信息对签名值进行验证;
当签名值验证通过时,获取文件体。
在本申请的一个实施例中,签名信息包括签名者信息,根据原文杂凑值和签名信息对签名值进行验证,包括:
根据签名者信息获取设备公钥;
根据设备公钥对签名值进行解密,得到第一哈希值;
根据原文杂凑值和签名信息生成第二哈希值;
根据第一哈希值与第二哈希值是否匹配对签名值进行验证。
在本申请的一个实施例中,根据文件体和签名信息对原文杂凑值进行验证,包括:
采用杂凑演算法对文件体和签名信息进行演算,得到待验证杂凑值;
根据待验证杂凑值与原文杂凑值是否匹配对原文杂凑值进行验证。
第三方面,本申请实施例提供了一种文件防护装置,该装置包括:
第一生成模块,用于根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值;
第二生成模块,用于根据原文杂凑值和签名信息生成哈希值,并对哈希值进行加密,得到签名值;
发送模块,用于将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端。
第四方面,本申请实施例提供了一种文件防护装置,该装置包括:
接收模块,用于接收目标文件的发送终端发送的目标文件的文件体、签名信息、原文杂凑值以及签名值;
第一验证模块,用于根据文件体和签名信息对原文杂凑值进行验证;
第二验证模块,用于当原文杂凑值验证通过时,根据原文杂凑值和签名信息对签名值进行验证;
获取模块,用于当签名值验证通过时,获取文件体。
第五方面,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该计算机程序被该处理器执行时实现上述第一方面的方法的步骤,或者该计算机程序被该处理器执行时实现上述第二方面的方法的步骤。
第六方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面的方法的步骤,或者该程序被处理器执行时实现上述第二方面的方法的步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值,根据原文杂凑值和签名信息生成哈希值,并通过签名***对哈希值进行加密,得到签名值。将文件体、签名信息、原文杂凑值和签名值发送给目标文件的接收终端。其中,原文杂凑值可以用于验证文件体是否被篡改,签名值可以用于验证原文杂凑值是否被篡改,并且,签名值是通过签名***加密得到的,非法终端拦截文件时,由于非法终端中不具有签名***,因此无法对签名值进行篡改,而当非法终端篡改了文件体和/或原文杂凑值时,均可以通过签名值验证出来,这样接收方就可以辨别出接收到的文件是否发生了篡改,从而可以提高在文件传输过程中文件的安全性。
附图说明
图1为本申请实施例提供的文件防护方法的实施环境的示意图;
图2为本申请实施例提供的一种计算机设备的模块图;
图3为本申请实施例提供的一种文件防护方法的流程图;
图4为本申请实施例提供的一种文件防护方法的流程图;
图5为本申请实施例提供的另一种文件防护方法的流程图;
图6为本申请实施例提供的一种文件防护装置的模块图;
图7为本申请实施例提供的一种文件防护装置的模块图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
网络安全是当前互联网技术领域的重点研究话题,网络安全是指网络***的硬件、软件及其***中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露。网络安全的所要保护的重点对象之一即文件,目前,在计算机技术领域中,基于计算机技术的大多数业务的开展,都离不开对文件的操作,文件在数据存储和传输方面发挥着重要作用。
由于文件为明文,且具有可编辑的特点,因此在文件传输的过程中,对文件中的数据完整性和一致性要求较高,一旦文件内容被篡改并且不可追溯,势必将造成各种商业数据泄露和经济损失。因此,在文件传输的过程中,容易发生文件被篡改的情况,这样可能会造成各种商业数据泄露和经济损失。为了保障文件在传输过程中的安全性,通常需要对文件进行防护处理。现有技术中,对文件进行防护处理的方式是对文件整体进行加密,得到加密文件。
然而,在实际应用中,可能发生恶意第三方拦截加密文件,对加密文件进行破密及篡改,将篡改的文件以原加密方式加密并发送给接收方的情况,这样接收方接收到的文件可能是被篡改过的,而接收方无法从接收到的文件中确定该文件是否被篡改过,因此在文件传输过程中文件的安全性较低。
本申请实施例提供一种文件防护方法、装置、计算机设备及介质,可以提高文件传输过程中的安全性。该文件防护方法通过根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值,根据原文杂凑值和签名信息生成哈希值,并通过签名***对哈希值进行加密,得到签名值。将文件体、签名信息、原文杂凑值和签名值发送给目标文件的接收终端。其中,原文杂凑值可以用于验证文件体是否被篡改,签名值可以用于验证原文杂凑值是否被篡改,并且,签名值是通过签名***加密得到的,非法终端拦截文件时,由于非法终端中不具有签名***,因此无法对签名值进行篡改,而当非法终端篡改了文件体和/或原文杂凑值时,均可以通过签名值验证出来,因此本申请实施例提供的文件防护方法,可以提高在文件传输过程中文件的安全性。
下面,将对本申请实施例提供的文件防护方法所涉及到的实施环境进行简要说明。
图1为本申请实施例提供的一种实施环境的示意图,如图1所示,该实施环境可以包括发送终端101和接收终端102,其中,发送终端101可以用于根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值;根据原文杂凑值和签名信息生成哈希值,并对哈希值进行加密,得到签名值;发送终端101将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端。
接收终端102可以用于接收目标文件的发送终端发送的目标文件的文件体、签名信息、原文杂凑值以及签名值;根据文件体和签名信息对原文杂凑值进行验证;当原文杂凑值验证通过时,根据原文杂凑值和签名信息对签名值进行验证;当签名值验证通过时,获取文件体。
发送终端101可以与接收终端102通过有线或者无线的方式进行通信。
可选的,本申请实施例中,一个终端设备可以作为发送终端也可以作为接收终端。
请参考图2,本申请提供的文件防护方法可以应用于如图2所示的计算机设备中,该计算机设备可以是终端设备,其内部结构图可以如图2所示,该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种文件防护方法。
图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图2中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
请参考图3,其示出了本申请实施例提供的一种文件防护方法的流程图,该文件防护方法可以应用于图1所示的实施环境中的发送终端,如图3所示,该文件防护方法可以包括以下步骤:
步骤301、发送终端根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值。
其中,文件体为目标文件的文件内容。
签名信息包括签名者信息、签名时间以及目标文件的版本信息。
其中,目标文件为需要传输的文件,目标文件可以是一个或者多个。
本申请实施例中,当文件需要传输时进行文件加密,当文件不需要传输时不进行本申请实施例中提供的加密过程。
在一种可选的实现方式中,发送终端获取原文杂凑值的过程可以是:发送终端采用杂凑演算法对目标文件的文件体和签名信息进行验算,杂凑演算法的输出被称为原文杂凑值。
无论目标文件的文件体和签名信息的内容的长短,原文杂凑值都会是固定的长度,不同杂凑演算法的输出长度不同,不同的杂凑演算法的输出长度不同。也就是说,杂凑演算法的输出长度与杂凑演算法有关,而与文件体和签名信息的长度没有关联。
进一步需要说明的是,相同的内容(文件体和签名信息)不同次输入到同一种杂凑演算法中得到的输出即原文杂凑值是相同的。而不同的内容输入到同一杂凑演算法中,得到相同的原文杂凑值的机率基地。因此,两个文件体的内容即便只差一个字,将两个文件体分别输入到同一杂凑演算法中产生的两个原文杂凑值的差异却会很大。这样当非法终端设备对文件体和签名信息作出任何改动时,改动后的文件体和签名信息生成的新的原文杂凑值与改动前的原文杂凑值的差异会极大。因此可以用于辨别文件体是否被篡改。
另外,杂凑演算法的输出(即原文杂凑值)是单向的,不可以通过原文杂凑值逆向回推。
步骤302、发送终端根据原文杂凑值和签名信息生成哈希值,并通过签名***对哈希值进行加密,得到签名值。
本申请实施例中,发送终端采用哈希算法,对原文杂凑值和签名信息进行哈希运算,得到哈希值,可选的哈希值可以为字符串。
其中,当原文杂凑值和签名信息被篡改时,修改后的原文杂凑值和签名信息进行哈希运算得到的哈希值与修改前的原文杂凑值和签名信息进行哈希运算得到的哈希值不相同。
本申请实施例中,哈希值可以用来验证原文杂凑值和签名信息是否被篡改。
进一步的,为了避免非法终端拦截文件后,在对文件体进行修改的基础上,对原文杂凑值和哈希值也一并进行修改,本申请实施例中,发送终端可以对哈希值进行加密,得到签名值。
可选的,发送终端对哈希值进行加密的方式可以是采用国密算法进行加密,可选的,国密算法可以是SM3密码杂凑算法。
在一种可选的实现方式中,本申请实施例提供的文件加密算法可以应用于具有签名***的发送终端中,发送终端可以根据签名***对应的设备私钥对哈希值进行加密,得到签名值。
也就是说,本申请实施例提供的加密过程是基于特定的签名***实现的,因此加密效果更好,对签名值进行解密的难度更大。当非法终端拦截文件后,非法终端无法对签名值进行修改,因此可以通过签名值对原文杂凑值以及文件体进行验证,以确定文件体是否被篡改。
步骤303、发送终端将文件体、签名信息、原文杂凑值和签名值发送至目标文件的接收终端。
在一种可选的实现方式中,发送终端可以将文件体、签名信息、原文杂凑值和签名值共同发送至目标文件的接收终端。
在另一种可选的实现方式中,发送终端将文件体、签名信息、原文杂凑值和签名值发送至目标文件的接收终端之前,还包括:
发送终端将签名信息、原文杂凑值和签名值添加至目标文件的文件头中。
对应的,发送终端将文件头和文件体共同发送至接收终端。具体的,发送终端将文件头和文件体组合生成加密文件,将加密文件发送至接收终端。
本申请实施例提供的文件加密算法,通过根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值,根据原文杂凑值和签名信息生成哈希值,并通过签名***对哈希值进行加密,得到签名值。将文件体、签名信息、原文杂凑值和签名值发送给目标文件的接收终端。其中,原文杂凑值可以用于验证文件体是否被篡改,签名值可以用于验证原文杂凑值是否被篡改,并且,签名值是通过签名***加密得到的,非法终端拦截文件时,由于非法终端中不具有签名***,因此无法对签名值进行篡改,而当非法终端篡改了文件体和/或原文杂凑值时,均可以通过签名值验证出来,这样接收方就可以辨别出接收到的文件是否发生了篡改,从而可以提高在文件传输过程中文件的安全性。
请参考图4,其示出了本申请实施例提供的一种文件防护方法的流程图,该文件防护方法可以应用于图1所示的实施环境中的接收终端,如图4所示,该文件防护方法可以包括以下步骤:
步骤401、接收终端接收目标文件的发送终端发送的目标文件的文件体、签名信息、原文杂凑值以及签名值。
发送终端对目标文件的文件体和签名信息进行加密之后,可以将目标文件的文件体、签名信息、原文杂凑值以及签名值发送至接收终端,接收终端可以接收到目标文件的文件体、签名信息、原文杂凑值以及签名值。
可选的,发送终端可以将签名信息、原文杂凑值以及签名值添加至目标文件的文件头,并将目标文件的文件头和目标文件的文件体共同发送至接收终端。相应的,接收终端可以接收到文件头和文件体,接收终端可以从文件头中获取签名信息、原文杂凑值和签名值。
步骤402、接收终端根据文件体和签名信息对原文杂凑值进行验证。
在一种可选的实现方式中,发送终端可以采用杂凑演算法对接收到的文件体和签名信息进行杂凑验算,得到待验证杂凑值。
基于上述实施例中步骤301公开的内容可知,相同的文件体和签名信息输入到同一种杂凑演算法中,得到的输出必然是相同的。不同的文件体和签名值输入到同一种杂凑演算法中,得到的输出不相同。
若在文件传输过程中,文件体(和签名信息)发生了篡改,接收终端接收到的文件体不再是文件传输之前的文件体,那么,接收到的文件体计算得到的待验证杂凑值与原文杂凑值就会存在差异。
相反,若在文件传输过程中,文件体(和签名信息)未发生篡改,那么,接收到的文件体计算得到的待验证杂凑值与原文杂凑值就相同。
基于上述原理,发送终端根据待验证杂凑值与原文杂凑值是否匹配对原文杂凑值进行验证的过程可以是:
发送终端可以对比待验证杂凑值与原文杂凑值,当待验证杂凑值与原文杂凑值相同,则说明文件体未被篡改,即原文杂凑值验证通过。当待验证杂凑值与原文杂凑值不同,则说明文件体被篡改,原文杂凑值验证不通过,此时,本次文件解密过程结束。
步骤403、当原文杂凑值验证通过时,接收终端可以根据原文杂凑值和签名信息对签名值进行验证。
当非法终端拦截传输文件后,可能对文件体进行篡改,并且基于修改后的文件体生成新的原文杂凑值,并将新的原文杂凑值替换原始的原文杂凑值。这样,接收终端接收到的文件体和原文杂凑值都是篡改过的,而仅通过步骤402的内容,并不能对此种情况进行有效辨别。因此,本申请实施例中,在原文杂凑值验证通过的基础上,需要对签名值进行进一步的验证。
本申请实施例中,签名信息中可以包括签名者信息,如图5所示,接收终端根据原文杂凑值和签名信息对签名值进行验证的过程可以包括以下步骤:
步骤501、接收终端根据签名者信息获取设备公钥。
可选的,签名者信息可以是签名者的身份标识,例如姓名、证件号码等。可选的签名信息中还可以包括签名时间和文件版本信息。
接收终端可以根据签名信息获得签名者信息,并根据签名者信息获取签名者信息对应的设备公钥。
可选的,本申请实施例中,每个发送终端的签名***可以设置唯一的签名者信息,同时,接收终端可以预先存储有多个签名者信息与设备公钥的对应关系,并基于接收到的文件中的签名者信息确定发送该文件的发送终端对应的设备公钥。
步骤502、接收终端根据设备公钥对签名值进行解密,得到第一哈希值。
本申请实施例中,接收终端可以获取到的设备公钥对接收到的签名值进行解密。
需要说明的是,本申请实施例中,接收终端中可以设置有签名***,相应的,接收终端可以是通过签名***基于设备公钥对签名值进行解密。
可选的,本申请实施例中,第一哈希值可以是字符串。
步骤503、接收终端根据原文杂凑值和签名信息生成第二哈希值。
本申请实施例中,接收终端可以对接收到的原文杂凑值和签名信息进行哈希运算。
可选的,本申请实施例中,接收终端对原文杂凑值和签名信息进行哈希运算的过程可以参考上述实施例中的步骤302公开的内容。
可选的,本申请实施例中,接收终端对原文杂凑值和签名信息进行哈希运算所采用的哈希运算方法与发送终端所采用的哈希算法相同。
可选的,本申请实施例中,接收终端可以预先设置有固定的哈希算法,相应的发送终端可以预先设置固定的哈希算法,且接收终端和发送终端中预设的哈希算法是同一种哈希算法。
步骤504、接收终端可以根据第一哈希值和第二哈希值是否匹配对签名值进行验证。
其中,第一哈希值是接收终端通过设备公钥解密得到的,即第一哈希值为进行文件传输之前的文件体对应的哈希值。
第二哈希值是根据接收终端接收到的文件体计算得到的哈希值。
若在文件传输过程中,原文杂凑值(和签名信息)发生了篡改,接收终端接收到的原文杂凑值不再是文件传输之前的原文杂凑值,那么,接收到的原文杂凑值计算得到的第二哈希值与第一哈希值就会存在差异。
若在文件传输过程中,原文杂凑值(和签名信息)未发生篡改,接收终端接收到的原文杂凑值与文件传输之前的原文杂凑值相同,那么,接收到的原文杂凑值计算得到的第二哈希值与第一哈希值就不会存在差异。
基于上述原理,当第一哈希值与第二哈希值相匹配时,说明原文杂凑值和签名信息未发生改动,即签名值验证通过。当第一哈希值与第二哈希值不匹配时,说明原文杂凑值和签名信息发生了改动,即签名值验证不通过。此时,本次文件解密过程结束。
步骤404、当签名值验证通过时,发送终端获取文件体。
当签名值验证通过,即说明,原文杂凑值未被篡改,因此可以说明接收终端接收到的文件是并未发生篡改。这样接收终端可以打开并允许文件体。
本申请实施例中,通过对接收到的目标文件的文件体、签名信息、原文杂凑值以及签名值进行分别处理,可以对目标文件是否被篡改进行有效验证,从而保证接收终端获取的文件体是合法的文件体,避免文件体中被恶意终端隐藏病毒木马等恶意软件,从而造成损失。
请参考图6,其示出了本申请实施例提供的一种文件防护装置的框图,该文件防护装置可以配置在图1所示实施环境的发送终端中。如图6所示,该文件防护装置可以包括第一生成模块601,第二生成模块602和发送模块603。
第一生成模块601,用于根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值;
第二生成模块602,用于根据原文杂凑值和签名信息生成哈希值,并对哈希值进行加密,得到签名值;
发送模块603,用于将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端。
在本申请的一个实施例中,发送模块603还用于将签名信息、原文杂凑值以及签名值添加至目标文件的文件头中;
对应地,将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端,包括:
发送模块603还用于将目标文件的文件头和目标文件的文件体共同发送至接收终端。
在本申请的一个实施例中,第二生成模块602还用于发送终端根据签名***对应的设备私钥对哈希值进行加密,得到签名值。
关于文件防护装置的具体限定可以参见上文中对于文件防护方法的限定,在此不再赘述。上述文件防护装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
请参考图7,其示出了本申请实施例提供的一种文件防护装置的框图,该文件防护装置可以配置在图1所示实施环境的接收终端中。如图7所示,该文件防护装置可以包括接收模块701、第一验证模块702、第二验证模块703和获取模块704。
接收模块701,用于接收目标文件的发送终端发送的目标文件的文件体、签名信息、原文杂凑值以及签名值;
第一验证模块702,用于根据文件体和签名信息对原文杂凑值进行验证;
第二验证模块703,用于当原文杂凑值验证通过时,根据原文杂凑值和签名信息对签名值进行验证;
获取模块704,用于当签名值验证通过时,获取文件体。
在本申请的一个实施例中,第二验证模块703还用于根据签名者信息获取设备公钥;根据设备公钥对签名值进行解密,得到第一哈希值;根据原文杂凑值和签名信息生成第二哈希值;根据第一哈希值与第二哈希值是否匹配对签名值进行验证。
在本申请的一个实施例中,第一验证模块702还用于采用杂凑演算法对文件体和签名信息进行演算,得到待验证杂凑值;根据待验证杂凑值与原文杂凑值是否匹配对原文杂凑值进行验证。
关于文件防护装置的具体限定可以参见上文中对于文件防护方法的限定,在此不再赘述。上述文件防护装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在本申请的一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值;根据原文杂凑值和签名信息生成哈希值,并对哈希值进行加密,得到签名值;将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:将签名信息、原文杂凑值以及签名值添加至目标文件的文件头中;对应地,将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端,包括:将目标文件的文件头和目标文件的文件体共同发送至接收终端。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:发送终端根据签名***对应的设备私钥对哈希值进行加密,得到签名值。
本申请实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
接收目标文件的发送终端发送的目标文件的文件体、签名信息、原文杂凑值以及签名值;根据文件体和签名信息对原文杂凑值进行验证;当原文杂凑值验证通过时,根据原文杂凑值和签名信息对签名值进行验证;当签名值验证通过时,获取文件体。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:根据签名者信息获取设备公钥;根据设备公钥对签名值进行解密,得到第一哈希值;根据原文杂凑值和签名信息生成第二哈希值;根据第一哈希值与第二哈希值是否匹配对签名值进行验证。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:采用杂凑演算法对文件体和签名信息进行演算,得到待验证杂凑值;根据待验证杂凑值与原文杂凑值是否匹配对原文杂凑值进行验证。
本申请实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
根据目标文件的文件体以及目标文件的签名信息生成原文杂凑值;根据原文杂凑值和签名信息生成哈希值,并对哈希值进行加密,得到签名值;将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:将签名信息、原文杂凑值以及签名值添加至目标文件的文件头中;对应地,将文件体、签名信息、原文杂凑值以及签名值发送至目标文件的接收终端,包括:将目标文件的文件头和目标文件的文件体共同发送至接收终端。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:发送终端根据签名***对应的设备私钥对哈希值进行加密,得到签名值。
本申请实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收目标文件的发送终端发送的目标文件的文件体、签名信息、原文杂凑值以及签名值;根据文件体和签名信息对原文杂凑值进行验证;当原文杂凑值验证通过时,根据原文杂凑值和签名信息对签名值进行验证;当签名值验证通过时,获取文件体。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据签名者信息获取设备公钥;根据设备公钥对签名值进行解密,得到第一哈希值;根据原文杂凑值和签名信息生成第二哈希值;根据第一哈希值与第二哈希值是否匹配对签名值进行验证。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:采用杂凑演算法对文件体和签名信息进行演算,得到待验证杂凑值;根据待验证杂凑值与原文杂凑值是否匹配对原文杂凑值进行验证。
本申请实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种文件防护方法,其特征在于,所述方法包括:
根据目标文件的文件体以及所述目标文件的签名信息生成原文杂凑值;
根据所述原文杂凑值和所述签名信息生成哈希值,并对所述哈希值进行加密,得到签名值,其中,所述哈希值用于验证所述原文杂凑值和所述签名信息是否被篡改;
将所述文件体、所述签名信息、所述原文杂凑值以及所述签名值发送至所述目标文件的接收终端,其中,所述原文杂凑值用于验证所述文件体是否被篡改。
2.根据权利要求1所述的方法,其特征在于,所述将所述文件体、所述签名信息、所述原文杂凑值以及所述签名值发送至所述目标文件的接收终端之前,包括:
将所述签名信息、所述原文杂凑值以及所述签名值添加至所述目标文件的文件头中;
对应地,所述将所述文件体、所述签名信息、所述原文杂凑值以及所述签名值发送至所述目标文件的接收终端,包括:
将所述目标文件的文件头和所述目标文件的文件体共同发送至所述接收终端。
3.根据权利要求1所述的方法,其特征在于,所述方法应用于具有签名***的发送终端中,所述对所述哈希值进行加密,得到签名值,包括:
所述发送终端根据所述签名***对应的设备私钥对所述哈希值进行加密,得到所述签名值。
4.一种文件防护方法,其特征在于,所述方法包括:
接收目标文件的发送终端发送的所述目标文件的文件体、签名信息、原文杂凑值以及签名值,其中,所述签名值是所述发送终端对哈希值进行加密得到的,所述哈希值是所述发送终端根据所述原文杂凑值和所述签名信息生成的,所述哈希值用于验证所述原文杂凑值和所述签名信息是否被篡改,所述原文杂凑值用于验证所述文件体是否被篡改;
根据所述文件体和所述签名信息对所述原文杂凑值进行验证;
当所述原文杂凑值验证通过时,根据所述原文杂凑值和所述签名信息对所述签名值进行验证;
当所述签名值验证通过时,获取所述文件体。
5.根据权利要求4所述的方法,其特征在于,所述签名信息包括签名者信息,所述根据所述原文杂凑值和所述签名信息对所述签名值进行验证,包括:
根据所述签名者信息获取设备公钥;
根据所述设备公钥对所述签名值进行解密,得到第一哈希值;
根据所述原文杂凑值和所述签名信息生成第二哈希值;
根据所述第一哈希值与所述第二哈希值是否匹配对所述签名值进行验证。
6.根据权利要求4所述的方法,其特征在于,所述根据所述文件体和所述签名信息对所述原文杂凑值进行验证,包括:
采用杂凑演算法对所述文件体和所述签名信息进行演算,得到待验证杂凑值;
根据所述待验证杂凑值与所述原文杂凑值是否匹配对所述原文杂凑值进行验证。
7.一种文件防护装置,其特征在于,所述装置包括:
第一生成模块,用于根据目标文件的文件体以及所述目标文件的签名信息生成原文杂凑值;
第二生成模块,用于根据所述原文杂凑值和所述签名信息生成哈希值,并对所述哈希值进行加密,得到签名值,其中,所述哈希值用于验证所述原文杂凑值和所述签名信息是否被篡改 ;
发送模块,用于将所述文件体、所述签名信息、所述原文杂凑值以及所述签名值发送至所述目标文件的接收终端,其中,所述原文杂凑值用于验证所述文件体是否被篡改。
8.一种文件防护装置,其特征在于,所述装置包括:
接收模块,用于接收目标文件的发送终端发送的所述目标文件的文件体、签名信息、原文杂凑值以及签名值,其中,所述签名值是所述发送终端对哈希值进行加密得到的,所述哈希值是所述发送终端根据所述原文杂凑值和所述签名信息生成的,所述哈希值用于验证所述原文杂凑值和所述签名信息是否被篡改,所述原文杂凑值用于验证所述文件体是否被篡改;
第一验证模块,用于根据所述文件体和所述签名信息对所述原文杂凑值进行验证;
第二验证模块,用于当所述原文杂凑值验证通过时,根据所述原文杂凑值和所述签名信息对所述签名值进行验证;
获取模块,用于当所述签名值验证通过时,获取所述文件体。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3中任一项所述的方法的步骤,或者,所述处理器执行所述计算机程序时实现权利要求4至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至3中任一项所述的方法的步骤,或者,所述计算机程序被处理器执行时实现权利要求4至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911294113.6A CN110941861B (zh) | 2019-12-16 | 2019-12-16 | 文件防护方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911294113.6A CN110941861B (zh) | 2019-12-16 | 2019-12-16 | 文件防护方法、装置、计算机设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110941861A CN110941861A (zh) | 2020-03-31 |
CN110941861B true CN110941861B (zh) | 2022-04-29 |
Family
ID=69911771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911294113.6A Active CN110941861B (zh) | 2019-12-16 | 2019-12-16 | 文件防护方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110941861B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651776A (zh) * | 2020-05-12 | 2020-09-11 | 北京信息科技大学 | 访问控制记录存储方法和装置 |
CN114499891B (zh) * | 2022-03-21 | 2024-05-31 | 宁夏凯信特信息科技有限公司 | 一种签名服务器***以及签名验证方法 |
CN115065478A (zh) * | 2022-05-31 | 2022-09-16 | 深信服科技股份有限公司 | 一种文件传输方法、设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7076062B1 (en) * | 2000-09-14 | 2006-07-11 | Microsoft Corporation | Methods and arrangements for using a signature generating device for encryption-based authentication |
CN103532721A (zh) * | 2013-10-23 | 2014-01-22 | 北京旋极信息技术股份有限公司 | 数字签名、验签方法和区分交易签名和普通签名的方法 |
CN104216799A (zh) * | 2014-08-18 | 2014-12-17 | 山东超越数控电子有限公司 | 一种密码机敏感信息备份和恢复方法 |
EP3361408A1 (en) * | 2017-02-10 | 2018-08-15 | Michael Mertens | Verifiable version control on authenticated and/or encrypted electronic documents |
CN109934017A (zh) * | 2019-03-12 | 2019-06-25 | 苏州科达科技股份有限公司 | 校验信息生成和文件完整性校验方法、***、设备及介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4531140B2 (ja) * | 1997-05-09 | 2010-08-25 | ジーティーイー サイバートラスト ソルーションズ インコーポレイテッド | 生物測定学的証明書 |
CN105743655B (zh) * | 2016-03-25 | 2019-07-16 | 中国科学院信息工程研究所 | 哈希计算和签名验签计算分离的sm2签名验签实现方法 |
CN107786504B (zh) * | 2016-08-26 | 2020-09-04 | 腾讯科技(深圳)有限公司 | Elf文件发布方法、elf文件校验方法、服务器及终端 |
CN106571928B (zh) * | 2016-11-09 | 2018-05-01 | 北京海泰方圆科技股份有限公司 | 一种浏览器管理的方法及装置 |
US10218511B2 (en) * | 2016-12-23 | 2019-02-26 | Amazon Technologies, Inc. | Signature delegation |
CN107508801B (zh) * | 2017-08-04 | 2020-09-08 | 安徽智圣通信技术股份有限公司 | 一种文件防篡改的方法及装置 |
CN108182366A (zh) * | 2017-12-29 | 2018-06-19 | 浪潮(北京)电子信息产业有限公司 | 一种度量虚拟机的文件的方法、装置及设备 |
CN107918739B (zh) * | 2017-12-29 | 2020-05-12 | 咪咕文化科技有限公司 | 一种数据的保护方法、装置及存储介质 |
CN108595969A (zh) * | 2018-04-20 | 2018-09-28 | 浙江正泰仪器仪表有限责任公司 | 一种文件的签名及校验方法、装置 |
CN109218295A (zh) * | 2018-08-22 | 2019-01-15 | 平安科技(深圳)有限公司 | 文件保护方法、装置、计算机设备及存储介质 |
CN110430192A (zh) * | 2019-08-06 | 2019-11-08 | 北京握奇数据股份有限公司 | 一种文件加解密的方法、***、控制器及存储介质 |
-
2019
- 2019-12-16 CN CN201911294113.6A patent/CN110941861B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7076062B1 (en) * | 2000-09-14 | 2006-07-11 | Microsoft Corporation | Methods and arrangements for using a signature generating device for encryption-based authentication |
CN103532721A (zh) * | 2013-10-23 | 2014-01-22 | 北京旋极信息技术股份有限公司 | 数字签名、验签方法和区分交易签名和普通签名的方法 |
CN104216799A (zh) * | 2014-08-18 | 2014-12-17 | 山东超越数控电子有限公司 | 一种密码机敏感信息备份和恢复方法 |
EP3361408A1 (en) * | 2017-02-10 | 2018-08-15 | Michael Mertens | Verifiable version control on authenticated and/or encrypted electronic documents |
CN109934017A (zh) * | 2019-03-12 | 2019-06-25 | 苏州科达科技股份有限公司 | 校验信息生成和文件完整性校验方法、***、设备及介质 |
Non-Patent Citations (2)
Title |
---|
一种基于IEC 62351的变电站远动通信混合加密算法;胡洋等;《电力信息与通信技术》;20180515(第05期);全文 * |
数字签名中哈希函数的分析与研究;赵文清等;《计算机工程与应用》;20060801(第32期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110941861A (zh) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10652015B2 (en) | Confidential communication management | |
CN108768664B (zh) | 密钥管理方法、装置、***、存储介质和计算机设备 | |
CN110941861B (zh) | 文件防护方法、装置、计算机设备及介质 | |
CN110401615B (zh) | 一种身份认证方法、装置、设备、***及可读存储介质 | |
US11979505B2 (en) | File acquisition method and device based on two-dimensional code and two-dimensional code generating method | |
CN111031047B (zh) | 设备通信方法、装置、计算机设备及存储介质 | |
CN110677382A (zh) | 数据安全处理方法、装置、计算机***及存储介质 | |
CN109347813B (zh) | 物联网设备登录方法、***、计算机设备和存储介质 | |
CN110727949A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN111479265B (zh) | 信息传播方法、装置、计算机设备和存储介质 | |
CN110311783B (zh) | 基于群签名的用户归属验证方法、装置和计算机设备 | |
US20220216999A1 (en) | Blockchain system for supporting change of plain text data included in transaction | |
CN117436043A (zh) | 待执行文件的来源验证方法、设备以及可读存储介质 | |
CN108390758B (zh) | 用户口令处理方法、装置和内控安全监察*** | |
CN108376212B (zh) | 执行代码安全保护方法、装置及电子装置 | |
CN115604034A (zh) | 一种通信连接的加解密方法、***及电子设备 | |
CN113721965B (zh) | 一种充电桩的基于安全固件的升级方法 | |
CN115643017A (zh) | 一种基于混合编码模型的软件标识有效性校验方法 | |
CN115203708A (zh) | 一种应用数据部署至协处理器的方法及*** | |
CN111212057B (zh) | 资源包传输方法、装置、计算机设备和可读存储介质 | |
CN110166231B (zh) | 用户数据加密方法、装置、计算机设备及存储介质 | |
CN115114648A (zh) | 一种数据处理方法、装置及电子设备 | |
CN110401535B (zh) | 数字证书生成、安全通信、身份认证方法及装置 | |
CN116318899B (zh) | 数据加密解密的处理方法、***、设备及介质 | |
CN116232716A (zh) | 一种基于puf的物联网ota升级方法及存储介质 |
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 |