CN107330340A - 文件加密方法、设备、文件解密方法、设备及存储介质 - Google Patents

文件加密方法、设备、文件解密方法、设备及存储介质 Download PDF

Info

Publication number
CN107330340A
CN107330340A CN201710462698.2A CN201710462698A CN107330340A CN 107330340 A CN107330340 A CN 107330340A CN 201710462698 A CN201710462698 A CN 201710462698A CN 107330340 A CN107330340 A CN 107330340A
Authority
CN
China
Prior art keywords
file
encryption
information
fragment
key information
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
CN201710462698.2A
Other languages
English (en)
Other versions
CN107330340B (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.)
National Computer Network and Information Security Management Center
Beijing Topsec Technology Co Ltd
Original Assignee
National Computer Network and Information Security Management Center
Beijing Topsec Technology 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 National Computer Network and Information Security Management Center, Beijing Topsec Technology Co Ltd filed Critical National Computer Network and Information Security Management Center
Priority to CN201710462698.2A priority Critical patent/CN107330340B/zh
Publication of CN107330340A publication Critical patent/CN107330340A/zh
Application granted granted Critical
Publication of CN107330340B publication Critical patent/CN107330340B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提出了一种文件加密方法、设备、文件解密方法、设备及存储介质,该文件加密方法包括:提取密钥单元中的硬件标识信息,根据所述硬件标识信息,生成第一密钥信息和第二密钥信息;基于预置的密钥信息设置模型,将所述第二密钥信息设置到原文件中设定位置中,得到第一加密文件;根据所述第一密钥信息,将所述第一加密文件设置为多个碎片文件,并基于预置的第一碎片文件重组模型,对所述多个碎片文件进行重组,得到第二加密文件。本发明能够有效的根据密钥单元的硬件识别信息对文件进行加密和解密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,极大的提高了文件的安全性。

Description

文件加密方法、设备、文件解密方法、设备及存储介质
技术领域
本发明涉及信息安全技术领域,尤其涉及一种文件加密方法、设备、文件解密方法、设备及存储介质。
背景技术
随着计算机技术的高速发展,无纸化办公成为一种趋势,越来越多的重要文件都被存储在计算机中。这些文件中有些是极度敏感的文件,可能涉及个人隐私、公司商业秘密或政府机关内部文档。对于这些重要文档,一旦被非授权人员查看甚至外泄,后果不堪设想,因此需要采取措施对这些文档进行保护,防止文件被非法调阅或外泄。
现有技术中,常用的文件保护方法即使用第三方加密程序加密,当需要查看时再进行解密,首先,这种方法使用起来较为不便,使用人员不愿去搜寻并下载第三方加密程序,其次,第三方加密程序对文档的加密方式对用户不透明,有些甚至仅仅通过修改文件属性实现,对于这样的加密程序,文件受保护度较差。有些强度较高的加密系统仅从加密算法上入手,通过混合几种加密算法,生成的加密文档被泄露后,仍可通过暴力破解方式进行破译,无法实现真正的文件内容保护。
发明内容
本发明要解决的技术问题是,提供一种文件加密方法、设备、文件解密方法、设备及存储介质,克服现有技术中的计算机中的文件保护方式安全性不高导致的文件被非法调用和/或恶意获取的缺陷。
本发明采用的技术方案是,所述一种文件加密方法,包括:
提取密钥单元中的硬件标识信息,根据所述硬件标识信息,生成第一密钥信息和第二密钥信息;
基于预置的密钥信息设置模型,将所述第二密钥信息设置到原文件中设定位置中,得到第一加密文件;
根据所述第一密钥信息,将所述第一加密文件设置为多个碎片文件,并基于预置的第一碎片文件重组模型,对所述多个碎片文件进行重组,得到第二加密文件。
进一步的,在所述基于预置的密钥信息设置模型,将所述第二密钥信息设置到原文件中设定位置中,得到第一加密文件之后,所述方法还包括:
根据所述第一密钥信息,提取所述原文件的第一文件标识信息,并将所述第一文件标识信息和所述第一密钥信息存储至所述密钥单元中的非易失性随机访问存储器NVRAM,以供根据所述第一文件标识信息和所述第一密钥信息,对所述第一加密文件进行解密。
进一步的,在所述基于预置的第一碎片文件重组模型,对所述多个碎片文件进行重组,得到第二加密文件之后,所述方法还包括:
根据消息摘要算法MD5计算所述第二加密文件的第二文件标识信息,并将所述第二文件标识信息保存至所述密钥单元中的NVRAM,以供根据所述第二文件标识信息,对所述第二加密文件进行解密。
进一步的,在所述将所述第二文件标识信息保存至所述密钥单元中的NVRAM之后,所述方法还包括:
根据所述第二文件标识信息对所述原文件对应的应用程序进行授权,得到授权信息,并将所述授权信息保存至所述密钥模块中的NVRAM,以供根据所述授权信息,判断能否对所述第二加密文件进行解密。
进一步的,所述根据所述第一密钥信息,提取所述原文件的第一文件标识信息,包括:
计算所述原文件的长度,并根据预置的采样率n,得到所述原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将所述第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过所述第i个采样点的基准地址basei和所述第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
对各采样点的采样区间分别通过MD5计算,得到第一MD5值;并对所述第一MD5值与对应阶的范德蒙德矩阵进行内积运算,得到第二MD5值;
获取所述原文件的第一文件标识信息;所述第一文件标识信息包括:所述原文件的长度、所述预置的采样率n和所述第二MD5值。
进一步的,所述将所述第一密钥信息分解为n个元素,包括:
将所述第一密钥信息的字符串长度除以n,将截取到的第i个字符串设置为第i个元素。
进一步的,所述基于预置的密钥信息设置模型,将所述第二密钥信息设置到原文件中设定位置中,得到第一加密文件,包括:
将所述第二密钥信息分别设置到所述原文件中的每个加密地址,得到所述第一加密文件;
其中,第i个加密地址为posti+((basei+1)-(basei))/3。
进一步的,所述根据所述第一密钥信息,将所述第一加密文件设置为多个碎片文件,并基于预置的第一碎片文件重组模型,对所述多个碎片文件进行重组,得到第二加密文件,包括:
将所述第一密钥信息的所有位的和与10取模,得到所述第一密钥信息的模值m;
判断所述模值m是否大于或等于2;若判定所述模值m大于或等于2,则将所述第一加密文件设置为m个碎片文件,对所述m个碎片文件进行依次排序,并将第m个碎片文件移动至第1个碎片文件之前,得到所述第二加密文件;
若所述模值m小于2,则将所述模值m加10,将所述第一加密文件设置为m+10个碎片文件,对所述m+10个碎片文件进行依次排序,并将第m+10个碎片文件移动至第1个碎片文件之前,得到所述第二加密文件。
本发明还提供一种文件加密设备,所述文件加密设备包括处理器、存储器和密钥单元;
所述处理器用于执行存储器中存储的文件加密程序,以实现上述述的文件加密方法的步骤。
本发明还提供一种文件解密方法,包括:
当应用程序读取设定文件时,判断所述设定文件是否为第二加密文件;
在判定所述设定文件为第二加密文件的情况下,根据密钥单元中的NVRAM存储的授权信息,判断所述应用程序是否被授权;
在判定所述应用程序被授权的情况下,判断所述密钥单元中的NVRAM是否存储第二文件标识信息;
在判定所述密钥单元中的NVRAM存储有所述第二文件标识信息的情况下,根据所述密钥单元中的NVRAM存储的第一密钥信息,将所述第二加密文件设置为多个碎片文件,并基于预置的第二碎片文件重组模型,对所述多个碎片文件进行重组,得到第一加密文件;
根据所述密钥单元中的NVRAM存储的第一文件标识信息、第一密钥信息和第二密钥信息,对所述第一加密文件进行解密,得到原文件。
进一步的,所述根据所述密钥单元中的NVRAM存储的第一密钥信息,将所述第二加密文件设置为多个碎片文件,并基于预置的第二碎片文件重组模型,对所述多个碎片文件进行重组,得到第一加密文件,包括:
将所述第一密钥信息的所有位的和与10取模,得到所述第一密钥信息的模值m;
判断所述模值m是否大于或等于2;若判定所述模值m大于或等于2,则将所述第二加密文件设置为m个碎片文件,对所述m个碎片文件进行依次排序,并将第1个碎片文件移动至第m个碎片文件之后,得到所述第一加密文件;
若所述模值m小于2,则将所述模值m加10,将所述第一加密文件设置为m+10个碎片文件,对所述m+10个碎片文件进行依次排序,并将第1个碎片文件移动至第m+10个碎片文件之后,得到所述第一加密文件。
进一步的,所述第一文件标识信息包括:原文件的长度、预置的采样率n和第二MD5值;
所述根据所述密钥单元中的NVRAM存储的第一文件标识信息、第一密钥信息和第二密钥信息,对所述第一加密文件进行解密,得到原文件,包括:
根据所述密钥单元中的NVRAM存储的第一文件标识信息中的所述原文件的长度和所述预置的采样率n,得到所述原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将所述密钥单元中的NVRAM存储的第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过所述第i个采样点的基准地址basei和所述第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
通过提取出所述第一加密文件中的每个加密地址中的第二密钥信息,对所述第一加密文件进行解密,得到所述原文件其中,第i个加密地址为posti+((basei+1)-(basei))/3。
进一步的,在所述根据密钥单元中的NVRAM存储的授权信息,判断所述应用程序是否被授权之后,所述方法包括:
在判定应用程序未被授权的情况下,提示所述第二加密文件读取失败,并将第一读取失败信息存储至预置的安全隐患信息日志。
进一步的,在所述判断所述密钥单元中的NVRAM是否存储第二文件标识信息之后,所述方法还包括:
在判定所述密钥单元中的NVRAM未存储有所述第二文件标识信息的情况下,提示所述第二加密文件读取失败,并将第二读取失败信息存储至所述安全隐患信息日志。
本发明还提供一种文件解密设备,所述文件解密设备包括处理器、存储器和密钥单元;
所述处理器用于执行存储器中存储的文件解密程序,以实现上述的文件解密方法的步骤。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的文件加密方法的步骤,或者以实现上述的文件解密方法的步骤。
采用上述技术方案,本发明至少具有下列优点:
本发明所述一种文件加密方法、设备、文件解密方法、设备及存储介质,能够有效的根据密钥单元的硬件识别信息对文件进行加密和解密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
附图说明
图1为本发明第一实施例的文件加密方法流程图;
图2为本发明第二实施例的文件加密方法流程图;
图3为本发明第三实施例的文件加密设备组成结构示意图;
图4为本发明第四实施例的文件解密方法流程图;
图5为本发明第五实施例的文件解密方法流程图;
图6为本发明第六实施例的文件解密设备组成结构示意图。
具体实施方式
为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。
本发明第一实施例,一种文件加密方法,如图1所示,包括以下具体步骤:
步骤S101,提取密钥单元中的硬件标识信息,根据硬件标识信息,生成第一密钥信息和第二密钥信息。
其中,密钥单元中的硬件标识信息至少包括以下信息之一:密钥单元的出厂序列、密钥单元的类型信息和密钥单元的存储容量信息。
当密钥单元中的硬件标识信息被恶意篡改后,第一密钥信息和第二密钥信息即失效,不能根据第一密钥信息和第二密钥信息对加密后的文件进行解密。
步骤S102,基于预置的密钥信息设置模型,将第二密钥信息设置到原文件中设定位置中,得到第一加密文件。
可选的,步骤S102,包括:
将第二密钥信息分别设置到原文件中的每个加密地址,得到第一加密文件;
其中,第i个加密地址为posti+((basei+1)-(basei))/3;
获取第i个加密地址为posti+((basei+1)-(basei))/3的方式包括:
计算原文件的长度,并根据预置的采样率n,得到原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过第i个采样点的基准地址basei和第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
步骤S103,根据第一密钥信息,将第一加密文件设置为多个碎片文件,并基于预置的第一碎片文件重组模型,对多个碎片文件进行重组,得到第二加密文件。
可选的,步骤S103,包括:
将第一密钥信息的所有位的和与10取模,得到第一密钥信息的模值m;
判断模值m是否大于或等于2;若判定模值m大于或等于2,则将第一加密文件设置为m个碎片文件,对m个碎片文件进行依次排序,并将第m个碎片文件移动至第1个碎片文件之前,得到第二加密文件;
若模值m小于2,则将模值m加10,将第一加密文件设置为m+10个碎片文件,对m+10个碎片文件进行依次排序,并将第m+10个碎片文件移动至第1个碎片文件之前,得到第二加密文件。
本发明第一实施例所述的一种文件加密方法,能够有效的根据密钥单元的硬件识别信息对文件进行加密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
本发明第二实施例,一种文件加密方法,如图2所示,包括以下具体步骤:
步骤S201,提取密钥单元中的硬件标识信息,根据硬件标识信息,生成第一密钥信息和第二密钥信息。
其中,密钥单元中的硬件标识信息至少包括以下信息之一:密钥单元的出厂序列、密钥单元的类型信息和密钥单元的存储容量信息。
当密钥单元中的硬件标识信息被恶意篡改后,第一密钥信息和第二密钥信息即失效,不能根据第一密钥信息和第二密钥信息对加密后的文件进行解密。
步骤S202,基于预置的密钥信息设置模型,将第二密钥信息设置到原文件中设定位置中,得到第一加密文件。
可选的,步骤S202,包括:
将第二密钥信息分别设置到原文件中的每个加密地址,得到第一加密文件;
其中,第i个加密地址为posti+((basei+1)-(basei))/3;
获取第i个加密地址为posti+((basei+1)-(basei))/3的方式包括:
计算原文件的长度,并根据预置的采样率n,得到原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过第i个采样点的基准地址basei和第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
步骤S203,根据第一密钥信息,提取原文件的第一文件标识信息,并将第一文件标识信息和第一密钥信息存储至密钥单元中的NVRAM(Non-VolatileRandom Access Memory,非易失性随机访问存储器),以供根据第一文件标识信息和第一密钥信息,对第一加密文件进行解密。
其中,根据第一密钥信息,提取原文件的第一文件标识信息的方式,包括但不限于:
计算原文件的长度,并根据预置的采样率n,得到原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过第i个采样点的基准地址basei和第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
对各采样点的采样区间分别通过MD5计算,得到第一MD5值;并对第一MD5值与对应阶的范德蒙德矩阵进行内积运算,得到第二MD5值;
获取原文件的第一文件标识信息;第一文件标识信息包括:原文件的长度、预置的采样率n和第二MD5值。
其中,将第一密钥信息分解为n个元素的方式包括但不限于:
将第一密钥信息的字符串长度除以n,将截取到的第i个字符串设置为第i个元素。
将第一密钥信息存储至密钥单元中的NVRAM的方式包括但不限于:
判断密钥单元中的NVRAM是否存储有第一密钥信息;
若判定密钥单元中的NVRAM存储有第一密钥信息,则不将第一密钥信息存储至密钥单元中的NVRAM;
若判定密钥单元中的NVRAM没有存储第一密钥信息,则将第一密钥信息存储至密钥单元中的NVRAM。
步骤S204,根据第一密钥信息,将第一加密文件设置为多个碎片文件,并基于预置的第一碎片文件重组模型,对多个碎片文件进行重组,得到第二加密文件。
可选的,步骤S204,包括:
将第一密钥信息的所有位的和与10取模,得到第一密钥信息的模值m;
判断模值m是否大于或等于2;若判定模值m大于或等于2,则将第一加密文件设置为m个碎片文件,对m个碎片文件进行依次排序,并将第m个碎片文件移动至第1个碎片文件之前,得到第二加密文件;
若模值m小于2,则将模值m加10,将第一加密文件设置为m+10个碎片文件,对m+10个碎片文件进行依次排序,并将第m+10个碎片文件移动至第1个碎片文件之前,得到第二加密文件。
步骤S205,根据MD5(Message Digest Algorithm,消息摘要算法第五版)计算第二加密文件的第二文件标识信息,并将第二文件标识信息保存至密钥单元中的NVRAM,以供根据第二文件标识信息,对第二加密文件进行解密。
其中,将第二文件标识信息保存至密钥单元中的NVRAM的方式包括但不限于:
判断密钥单元中的NVRAM是否存储有第二文件标识信息;
若判定密钥单元中的NVRAM存储有第二文件标识信息,则不将第二文件标识信息存储至密钥单元中的NVRAM;
若判定密钥单元中的NVRAM没有存储第二文件标识信息,则将第二文件标识信息存储至密钥单元中的NVRAM。
步骤S206,根据第二文件标识信息对原文件对应的应用程序进行授权,得到授权信息,并将授权信息保存至密钥模块中的NVRAM,以供根据授权信息,判断能否对第二加密文件进行解密。
其中,根据第二文件标识信息对第二加密文件对应的应用程序进行授权的方式包括但不限于:
在可信环境下,获取第二加密文件对应的应用程序名称,第二加密文件运行时的应用程序进程名称,第二加密文件对应的应用程序所在路径,和/或第二加密文件对应的应用程序的识别信息(例如,MD5值)等信息,将上述在可信环境下进行应用程序授权,得到授权信息。
本发明第一实施例所述的一种文件加密方法,能够有效的根据密钥单元的硬件识别信息对文件进行加密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
,本发明第三实施例,一种文件加密设备,如图3所示,包括以下组成部分:
处理器110、存储器109、密钥单元201。在本发明的一些实施例中,这些部件可通过总线或者其它方式连接。
处理器110可以是通用处理器,例如中央处理器(Central Processing Unit,CPU),还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(英文:Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。其中,存储器用于存储处理器的可执行指令;
存储器109,用于存储程序代码,并将该程序代码传输给处理器110。存储器109可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器109也可以包括非易失性存储器(Non-Volatile Memory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器109还可以包括上述种类的存储器的组合。
其中,处理器110用于调用存储器109存储的程序代码管理代码,执行本发明第一实施例至第二实施例中任一实施例中部分或全部步骤。
本发明第三实施例所述的一种文件加密设备,能够有效的根据密钥单元的硬件识别信息对文件进行加密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
本发明第四实施例,一种文件解密方法,如图4所示,包括以下具体步骤:
步骤S401,当应用程序读取设定文件时,判断设定文件是否为第二加密文件。
步骤S402,在判定设定文件为第二加密文件的情况下,根据密钥单元中的NVRAM存储的授权信息,判断应用程序是否被授权。
步骤S403,在判定应用程序被授权的情况下,判断密钥单元中的NVRAM是否存储第二文件标识信息。
步骤S404,在判定密钥单元中的NVRAM存储有第二文件标识信息的情况下,根据密钥单元中的NVRAM存储的第一密钥信息,将第二加密文件设置为多个碎片文件,并基于预置的第二碎片文件重组模型,对多个碎片文件进行重组,得到第一加密文件;
可选的,步骤S404,包括:
在判定密钥单元中的NVRAM存储有第二文件标识信息的情况下,将第一密钥信息的所有位的和与10取模,得到第一密钥信息的模值m;
判断模值m是否大于或等于2;若判定模值m大于或等于2,则将第二加密文件设置为m个碎片文件,对m个碎片文件进行依次排序,并将第1个碎片文件移动至第m个碎片文件之后,得到第一加密文件;
若模值m小于2,则将模值m加10,将第一加密文件设置为m+10个碎片文件,对m+10个碎片文件进行依次排序,并将第1个碎片文件移动至第m+10个碎片文件之后,得到第一加密文件。
步骤S405,根据密钥单元中的NVRAM存储的第一文件标识信息、第一密钥信息和第二密钥信息,对第一加密文件进行解密,得到原文件。
可选的,步骤S405,包括:
第一文件标识信息包括:原文件的长度、预置的采样率n和第二MD5值;
根据密钥单元中的NVRAM存储的第一文件标识信息中的原文件的长度和预置的采样率n,得到原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将密钥单元中的NVRAM存储的第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过第i个采样点的基准地址basei和第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
通过提取出第一加密文件中的每个加密地址中的第二密钥信息,对第一加密文件进行解密,得到原文件;
其中,第i个加密地址为posti+((basei+1)-(basei))/3。
本发明第四实施例所述的一种文件解密方法,能够有效的根据密钥单元的硬件识别信息对文件进行解密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
本发明第五实施例,一种文件解密方法,如图5所示,包括以下具体步骤:
步骤S501,当应用程序读取设定文件时,判断设定文件是否为第二加密文件。
步骤S502,在判定设定文件为第二加密文件的情况下,根据密钥单元中的NVRAM存储的授权信息,判断应用程序是否被授权。
步骤S503,在判定应用程序被授权的情况下,判断密钥单元中的NVRAM是否存储第二文件标识信息;
在判定应用程序未被授权的情况下,提示第二加密文件读取失败,并将第一读取失败信息存储至预置的安全隐患信息日志。
通过安全隐患信息日志能够有效的对非法读取加密文件的行为进行记录,并对对非法读取加密文件的行为进行追溯,进一步的提高了文件的安全性。
步骤S504,在判定密钥单元中的NVRAM存储有第二文件标识信息的情况下,根据密钥单元中的NVRAM存储的第一密钥信息,将第二加密文件设置为多个碎片文件,并基于预置的第二碎片文件重组模型,对多个碎片文件进行重组,得到第一加密文件;
在判定密钥单元中的NVRAM未存储有第二文件标识信息的情况下,提示第二加密文件读取失败,并将第二读取失败信息存储至安全隐患信息日志。
可选的,步骤S304,包括:
在判定密钥单元中的NVRAM存储有第二文件标识信息的情况下,将第一密钥信息的所有位的和与10取模,得到第一密钥信息的模值m;
判断模值m是否大于或等于2;若判定模值m大于或等于2,则将第二加密文件设置为m个碎片文件,对m个碎片文件进行依次排序,并将第1个碎片文件移动至第m个碎片文件之后,得到第一加密文件;
若模值m小于2,则将模值m加10,将第一加密文件设置为m+10个碎片文件,对m+10个碎片文件进行依次排序,并将第1个碎片文件移动至第m+10个碎片文件之后,得到第一加密文件;
在判定密钥单元中的NVRAM未存储有第二文件标识信息的情况下,提示第二加密文件读取失败,并将第二读取失败信息存储至安全隐患信息日志。
通过安全隐患信息日志能够有效的对非法读取加密文件的行为进行记录,并对对非法读取加密文件的行为进行追溯,进一步的提高了文件的安全性。
步骤S505,根据密钥单元中的NVRAM存储的第一文件标识信息、第一密钥信息和第二密钥信息,对第一加密文件进行解密,得到原文件。
可选的,步骤S505,包括:
第一文件标识信息包括:原文件的长度、预置的采样率n和第二MD5值;
根据密钥单元中的NVRAM存储的第一文件标识信息中的原文件的长度和预置的采样率n,得到原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将密钥单元中的NVRAM存储的第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过第i个采样点的基准地址basei和第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
通过提取出第一加密文件中的每个加密地址中的第二密钥信息,对第一加密文件进行解密,得到原文件;
其中,第i个加密地址为posti+((basei+1)-(basei))/3。
本发明第五实施例所述的一种文件解密方法,能够有效的根据密钥单元的硬件识别信息对文件进行解密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
本发明第六实施例,一种文件解密设备,如图6所示,包括以下组成部分:
处理器210、存储器209、密钥单元202。在本发明的一些实施例中,这些部件可通过总线或者其它方式连接。
处理器210可以是通用处理器,例如中央处理器(Central Processing Unit,CPU),还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(英文:Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。其中,存储器用于存储处理器的可执行指令;
存储器209,用于存储程序代码,并将该程序代码传输给处理器210。存储器209可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器209也可以包括非易失性存储器(Non-Volatile Memory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器209还可以包括上述种类的存储器的组合。
其中,处理器210用于调用存储器209存储的程序代码管理代码,执行本发明第四实施例和本发明第五实施例中部分或全部步骤。
本发明第六实施例所述的一种文件解密设备,能够有效的根据密钥单元的硬件识别信息对文件进行解密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
本发明第七实施例,一种计算机可读存储介质。
计算机存储介质可以是RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域已知的任何其他形式的存储介质。
计算机可读存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现本发明第一实施例、本发明第一实施例、本发明第四实施例和本发明第五实施例中任一实施例中部分或全部步骤。
本发明第七实施例的一种计算机可读存储介质,存储有一个或者多个程序,该一个或者多个程序能够实现根据密钥单元的硬件识别信息对文件进行加密或解密,有效的提高了文件的安全性,有效的降低了文件被非法查阅的概率,即使文件被非法获取,也不能对文件进行解密获取文件中的内容,极大的提高了文件的安全性。
通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。

Claims (16)

1.一种文件加密方法,其特征在于,包括:
提取密钥单元中的硬件标识信息,根据所述硬件标识信息,生成第一密钥信息和第二密钥信息;
基于预置的密钥信息设置模型,将所述第二密钥信息设置到原文件中设定位置中,得到第一加密文件;
根据所述第一密钥信息,将所述第一加密文件设置为多个碎片文件,并基于预置的第一碎片文件重组模型,对所述多个碎片文件进行重组,得到第二加密文件。
2.根据权利要求1所述的方法,其特征在于,在所述基于预置的密钥信息设置模型,将所述第二密钥信息设置到原文件中设定位置中,得到第一加密文件之后,所述方法还包括:
根据所述第一密钥信息,提取所述原文件的第一文件标识信息,并将所述第一文件标识信息和所述第一密钥信息存储至所述密钥单元中的非易失性随机访问存储器NVRAM,以供根据所述第一文件标识信息和所述第一密钥信息,对所述第一加密文件进行解密。
3.根据权利要求2所述的方法,其特征在于,在所述基于预置的第一碎片文件重组模型,对所述多个碎片文件进行重组,得到第二加密文件之后,所述方法还包括:
根据消息摘要算法MD5计算所述第二加密文件的第二文件标识信息,并将所述第二文件标识信息保存至所述密钥单元中的NVRAM,以供根据所述第二文件标识信息,对所述第二加密文件进行解密。
4.根据权利要求3所述的方法,其特征在于,在所述将所述第二文件标识信息保存至所述密钥单元中的NVRAM之后,所述方法还包括:
根据所述第二文件标识信息对所述原文件对应的应用程序进行授权,得到授权信息,并将所述授权信息保存至所述密钥模块中的NVRAM,以供根据所述授权信息,判断能否对所述第二加密文件进行解密。
5.根据权利要求2所述的方法,其特征在于,所述根据所述第一密钥信息,提取所述原文件的第一文件标识信息,包括:
计算所述原文件的长度,并根据预置的采样率n,得到所述原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将所述第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过所述第i个采样点的基准地址basei和所述第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
对各采样点的采样区间分别通过MD5计算,得到第一MD5值;并对所述第一MD5值与对应阶的范德蒙德矩阵进行内积运算,得到第二MD5值;
获取所述原文件的第一文件标识信息;所述第一文件标识信息包括:所述原文件的长度、所述预置的采样率n和所述第二MD5值。
6.根据权利要求5所述的方法,其特征在于,所述将所述第一密钥信息分解为n个元素,包括:
将所述第一密钥信息的字符串长度除以n,将截取到的第i个字符串设置为第i个元素。
7.根据权利要求5所述的方法,其特征在于,所述基于预置的密钥信息设置模型,将所述第二密钥信息设置到原文件中设定位置中,得到第一加密文件,包括:
将所述第二密钥信息分别设置到所述原文件中的每个加密地址,得到所述第一加密文件;
其中,第i个加密地址为posti+((basei+1)-(basei))/3。
8.根据权利要求1所述的方法,其特征在于,所述根据所述第一密钥信息,将所述第一加密文件设置为多个碎片文件,并基于预置的第一碎片文件重组模型,对所述多个碎片文件进行重组,得到第二加密文件,包括:
将所述第一密钥信息的所有位的和与10取模,得到所述第一密钥信息的模值m;
判断所述模值m是否大于或等于2;若判定所述模值m大于或等于2,则将所述第一加密文件设置为m个碎片文件,对所述m个碎片文件进行依次排序,并将第m个碎片文件移动至第1个碎片文件之前,得到所述第二加密文件;
若所述模值m小于2,则将所述模值m加10,将所述第一加密文件设置为m+10个碎片文件,对所述m+10个碎片文件进行依次排序,并将第m+10个碎片文件移动至第1个碎片文件之前,得到所述第二加密文件。
9.一种文件加密设备,其特征在于,所述文件加密设备包括处理器、存储器和密钥单元;
所述处理器用于执行存储器中存储的文件加密程序,以实现权利要求1~8中任一项所述的文件加密方法的步骤。
10.一种文件解密方法,其特征在于,包括:
当应用程序读取设定文件时,判断所述设定文件是否为第二加密文件;
在判定所述设定文件为第二加密文件的情况下,根据密钥单元中的NVRAM存储的授权信息,判断所述应用程序是否被授权;
在判定所述应用程序被授权的情况下,判断所述密钥单元中的NVRAM是否存储第二文件标识信息;
在判定所述密钥单元中的NVRAM存储有所述第二文件标识信息的情况下,根据所述密钥单元中的NVRAM存储的第一密钥信息,将所述第二加密文件设置为多个碎片文件,并基于预置的第二碎片文件重组模型,对所述多个碎片文件进行重组,得到第一加密文件;
根据所述密钥单元中的NVRAM存储的第一文件标识信息、第一密钥信息和第二密钥信息,对所述第一加密文件进行解密,得到原文件。
11.根据权利要求10所述的方法,其特征在于,所述根据所述密钥单元中的NVRAM存储的第一密钥信息,将所述第二加密文件设置为多个碎片文件,并基于预置的第二碎片文件重组模型,对所述多个碎片文件进行重组,得到第一加密文件,包括:
将所述第一密钥信息的所有位的和与10取模,得到所述第一密钥信息的模值m;
判断所述模值m是否大于或等于2;若判定所述模值m大于或等于2,则将所述第二加密文件设置为m个碎片文件,对所述m个碎片文件进行依次排序,并将第1个碎片文件移动至第m个碎片文件之后,得到所述第一加密文件;
若所述模值m小于2,则将所述模值m加10,将所述第一加密文件设置为m+10个碎片文件,对所述m+10个碎片文件进行依次排序,并将第1个碎片文件移动至第m+10个碎片文件之后,得到所述第一加密文件。
12.根据权利要求10所述的方法,其特征在于,所述第一文件标识信息包括:原文件的长度、预置的采样率n和第二MD5值;
所述根据所述密钥单元中的NVRAM存储的第一文件标识信息、第一密钥信息和第二密钥信息,对所述第一加密文件进行解密,得到原文件,包括:
根据所述密钥单元中的NVRAM存储的第一文件标识信息中的所述原文件的长度和所述预置的采样率n,得到所述原文件的第i个采样点的基准地址basei;其中,第i个采样点的采样区间为((basei+1)-(basei))/3;i∈[1,n];
将所述密钥单元中的NVRAM存储的第一密钥信息分解为n个元素,通过第i个元素对采样区间进行取模,得到第i个偏移地址offseti
通过所述第i个采样点的基准地址basei和所述第i个偏移地址offseti相加,得到第i个采样点的采样地址posti
通过提取出所述第一加密文件中的每个加密地址中的第二密钥信息,对所述第一加密文件进行解密,得到所述原文件其中,第i个加密地址为posti+((basei+1)-(basei))/3。
13.根据权利要求10所述的方法,其特征在于,在所述根据密钥单元中的NVRAM存储的授权信息,判断所述应用程序是否被授权之后,所述方法包括:
在判定应用程序未被授权的情况下,提示所述第二加密文件读取失败,并将第一读取失败信息存储至预置的安全隐患信息日志。
14.根据权利要求13所述的方法,其特征在于,在所述判断所述密钥单元中的NVRAM是否存储第二文件标识信息之后,所述方法还包括:
在判定所述密钥单元中的NVRAM未存储有所述第二文件标识信息的情况下,提示所述第二加密文件读取失败,并将第二读取失败信息存储至所述安全隐患信息日志。
15.一种文件解密设备,其特征在于,所述文件解密设备包括处理器、存储器和密钥单元;
所述处理器用于执行存储器中存储的文件解密程序,以实现权利要求10~14中任一项所述的文件解密方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1~9中任一项所述的文件加密方法的步骤,或者以实现权利要求10~14中任一项所述的文件解密方法的步骤。
CN201710462698.2A 2017-06-19 2017-06-19 文件加密方法、设备、文件解密方法、设备及存储介质 Active CN107330340B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710462698.2A CN107330340B (zh) 2017-06-19 2017-06-19 文件加密方法、设备、文件解密方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710462698.2A CN107330340B (zh) 2017-06-19 2017-06-19 文件加密方法、设备、文件解密方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN107330340A true CN107330340A (zh) 2017-11-07
CN107330340B CN107330340B (zh) 2020-09-11

Family

ID=60195857

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710462698.2A Active CN107330340B (zh) 2017-06-19 2017-06-19 文件加密方法、设备、文件解密方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN107330340B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038128A (zh) * 2017-11-08 2018-05-15 平安科技(深圳)有限公司 一种加密文件的检索方法、系统、终端设备及存储介质
CN109255245A (zh) * 2018-08-13 2019-01-22 海南新软软件有限公司 一种本地密钥保护方法、装置及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6957349B1 (en) * 1999-01-28 2005-10-18 Yutaka Yasukura Method for securing safety of electronic information
CN104281815A (zh) * 2013-07-05 2015-01-14 中国移动通信集团北京有限公司 文件加解密的方法和系统
CN105117635A (zh) * 2015-03-20 2015-12-02 北京凯锐立德科技有限公司 一种本地数据的安全保护系统和方法
CN106156653A (zh) * 2016-07-05 2016-11-23 浪潮(北京)电子信息产业有限公司 一种数据存储的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6957349B1 (en) * 1999-01-28 2005-10-18 Yutaka Yasukura Method for securing safety of electronic information
CN104281815A (zh) * 2013-07-05 2015-01-14 中国移动通信集团北京有限公司 文件加解密的方法和系统
CN105117635A (zh) * 2015-03-20 2015-12-02 北京凯锐立德科技有限公司 一种本地数据的安全保护系统和方法
CN106156653A (zh) * 2016-07-05 2016-11-23 浪潮(北京)电子信息产业有限公司 一种数据存储的方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038128A (zh) * 2017-11-08 2018-05-15 平安科技(深圳)有限公司 一种加密文件的检索方法、系统、终端设备及存储介质
CN108038128B (zh) * 2017-11-08 2020-02-14 平安科技(深圳)有限公司 一种加密文件的检索方法、系统、终端设备及存储介质
CN109255245A (zh) * 2018-08-13 2019-01-22 海南新软软件有限公司 一种本地密钥保护方法、装置及系统

Also Published As

Publication number Publication date
CN107330340B (zh) 2020-09-11

Similar Documents

Publication Publication Date Title
JP3810425B2 (ja) 改竄検出用データ生成方法、および改竄検出方法及び装置
US8204213B2 (en) System and method for performing a similarity measure of anonymized data
KR101473452B1 (ko) 기업 내부 정보 보안을 강화하기 위한 방법, 시스템 및 장치
Hargreaves et al. Recovery of encryption keys from memory using a linear scan
US8332655B2 (en) Method for order invariant correlated encrypting of data and SQL queries for maintaining data privacy and securely resolving customer defects
CN104239820B (zh) 一种安全存储设备
US11797296B2 (en) Hot updating method of script file package and hot updating device of script file package
CN106506159A (zh) 用于密钥安全的加密方法和设备
CN106610995B (zh) 一种创建密文索引的方法、装置及系统
CN105960775A (zh) 用于迁移密钥的方法和装置
CN102339370A (zh) 电子文档的保全方法、保全系统和验证系统
CN105740725A (zh) 一种文件保护方法与系统
CN112217835A (zh) 报文数据的处理方法、装置、服务器和终端设备
CN105871892A (zh) 文件的云存储安全解决方法及系统
US20090046848A1 (en) Encryption management system
CN113836558A (zh) 文件加密方法、装置及文件解密方法
CN111800387A (zh) 一种计算机信息资料智能化加密传输系统
Park et al. A methodology for the decryption of encrypted smartphone backup data on android platform: A case study on the latest samsung smartphone backup system
CN108133147A (zh) 可执行代码的保护方法、设备及可读存储介质
CN107330340A (zh) 文件加密方法、设备、文件解密方法、设备及存储介质
CN107196973A (zh) 一种数据加密、解密方法及装置
CN102289607A (zh) Usb装置验证系统及方法
JP2002135247A (ja) デジタル情報保管方法
KR20230127951A (ko) 데이터 보안 장치
CN108376212B (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
GR01 Patent grant
GR01 Patent grant