CN112532379A - 一种文件保护方法及装置 - Google Patents

一种文件保护方法及装置 Download PDF

Info

Publication number
CN112532379A
CN112532379A CN202011098906.3A CN202011098906A CN112532379A CN 112532379 A CN112532379 A CN 112532379A CN 202011098906 A CN202011098906 A CN 202011098906A CN 112532379 A CN112532379 A CN 112532379A
Authority
CN
China
Prior art keywords
file
encrypted
key sequence
sequence
encrypting
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
CN202011098906.3A
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.)
XIAMEN TIPRAY TECHNOLOGY CO LTD
Original Assignee
XIAMEN TIPRAY 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 XIAMEN TIPRAY TECHNOLOGY CO LTD filed Critical XIAMEN TIPRAY TECHNOLOGY CO LTD
Priority to CN202011098906.3A priority Critical patent/CN112532379A/zh
Publication of CN112532379A publication Critical patent/CN112532379A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/602Providing cryptographic facilities or services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • 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/0872Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities

Abstract

本申请实施例提供了一种文件保护方法及装置,该方法包括从预设的多个数字中随机选取出一个数字作为随机数,对用户设定的第一密码进行加密处理,得到加密后的第一密码,对加密日期和加密后的第一密码进行拼接处理,得到拼接后的第一序列,并对拼接后的第一序列和随机数进行加密处理,得到密钥序列,对密钥序列、随机数进行统计处理,确定出密钥序列的加密起始位置,基于加密起始位置,并使用密钥序列对待加密的文件进行加密处理,得到加密后的文件。由于该密钥序列不是固定的,是随机的,因此可以提高密钥序列的灵活性、不可预测性,从而可以大大提高加密文件的安全可靠性,并有助于降低文件数据被泄露的风险。

Description

一种文件保护方法及装置
技术领域
本申请实施例涉及数据保护技术领域,尤其涉及一种文件保护方法及装置。
背景技术
随着电子信息技术的发展,大部分信息都是通过电子文件的形式存储在永久存储介质上,通过永久存储介质或网络等方式进行传播。现有的对文件进行加密的方式大多是根据一些固定的内容来生成一串密钥,将密钥直接存在文件中,然后使用一种或多种加密算法配合密钥对明文文件进行加密;解密文件时从加密文件中提取出密钥,使用对应的算法对加密文件进行解密。然而这种方式虽然在一定程度上能够保障文件的安全性,但还是存在没有对密钥进行混淆处理,容易从加密文件中获取到密钥信息或获取到密钥后可以利用机器自动暴力破解加密文件等问题,从而导致文件存在安全风险。
综上,目前亟需一种文件保护方法,用以解决现有技术中存在没有对密钥进行混淆处理,容易从加密文件中获取到密钥信息或获取到密钥后可以利用机器自动暴力破解加密文件等问题,并提高加密文件的安全性。
发明内容
本申请实施例提供了一种文件保护方法,用以解决现有技术中存在没有对密钥进行混淆处理,容易从加密文件中获取到密钥信息或获取到密钥后可以利用机器自动暴力破解加密文件等问题,并提高加密文件的安全性。
第一方面,本申请实施例提供了一种文件保护方法,包括:
从预设的多个数字中随机选取出一个数字作为随机数;
对用户设定的第一密码进行加密处理,得到加密后的所述第一密码;
对加密日期和所述加密后的所述第一密码进行拼接处理,得到拼接后的第一序列;
对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列;
对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置;
基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件。
上述技术方案中,通过将加密日期以及加密后的第一密码进行拼接处理,得到拼接后的第一序列,并对拼接后的第一序列和随机数进行加密处理,得到密钥序列,如此可以提高密钥序列的随机性、灵活性、不可预测性,从而可以避免密钥序列被恶意破解。再基于随机数确定出密钥序列的加密初始位置,并根据该加密初始位置,并使用密钥序列对待加密的文件进行加密处理,如此可以使得密钥序列不是固定的,是随机的,并可以提高密钥序列的灵活性、不可预测性,并可以避免密钥序列被恶意破解,从而可以使得加密文件的安全性大大提高,并有助于降低文件数据被泄露的风险,进而可以解决现有技术中存在没有对密钥进行混淆处理,容易从加密文件中获取到密钥信息或获取到密钥后可以利用机器自动暴力破解加密文件等问题。
在一种可能的实现方式中,所述对用户设定的第一密码进行加密处理,得到加密后的所述第一密码,包括:
获取所述用户设定的第一密码;
使用预设的哈希算法对所述第一密码进行加密处理,得到加密后的所述第一密码。
上述技术方案中,通过使用预设的哈希算法对第一密码进行加密处理,可以有助于提高第一密码的安全性,防止第一密码存在泄露的风险,并为后续确定出密钥序列提供支持。
在一种可能的实现方式中,所述对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列,包括:
使用预设的哈希算法对所述拼接后的第一序列和所述随机数进行加密处理,得到所述密钥序列。
上述技术方案中,通过使用预设的哈希算法对拼接后的第一序列和随机数进行加密处理,可以有助于提高密钥序列的安全性,从而可以避免密钥序列被泄露。
在一种可能的实现方式中,所述对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置,包括:
将所述密钥序列的长度值与所述随机数进行模运算处理,得到第一数值;
将所述第一数值确定为所述密钥序列的加密起始位置。
上述技术方案中,通过将密钥序列的长度值与随机数进行模运算处理,确定出密钥序列的加密起始位置,如此可以提高加密起始位置的灵活性、不可预测性,有助于避免该加密起始位置被轻易预测,从而可以随机灵活地确定出密钥序列。
在一种可能的实现方式中,所述基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件,包括:
基于所述加密起始位置和所述密钥序列的总长度,对所述密钥序列进行选取处理,得到处理后的所述密钥序列;
使用所述处理后的所述密钥序列对所述待加密的文件进行加密。
上述技术方案中,通过基于加密起始位置,可以随机灵活地确定出安全随机的密钥序列,如此可以提高密钥序列选取的灵活性、不可预测性,并利用安全随机的密钥序列对待加密的文件进行加密,可以大大提高加密文件的安全性。
在一种可能的实现方式中,在所述得到加密后的文件之后,还包括:
获取待解密的文件、第一标识字符串和所述密钥序列;
根据所述第一标识字符串确定所述待解密的文件是否为加密文件;
若是,则使用所述密钥序列对所述待解密的文件进行解密处理,得到解密后的文件。
上述技术方案中,通过第一标识字符串可以快速准确地判断出待解密的文件是否为加密文件,并在确定待解密的文件为加密文件时才使用密钥序列对该待解密的文件进行解密处理,如此可以减少数据处理的工作量,并可以提高加密文件的安全性,有助于降低文件数据泄露的风险。同时在文件头将第一标识字符串和第一密码组成一起用来对密钥序列进行混淆处理,以便隐藏真实的密钥序列,如此可以提高加密文件的安全性,并有助于避免密钥序列被轻易获取。
在一种可能的实现方式中,所述获取第一标识字符串,包括:
将随机数与文件加密标识字符串进行拼接处理,得到拼接后的所述第一标识字符串;
使用预设的哈希算法对所述拼接后的所述第一标识字符串进行加密处理,得到加密后的所述第一标识字符串。
上述技术方案中,通过将随机数与文件加密标识字符串进行拼接处理,如此可以使得第一标识字符串不是固定的,是随机的,从而可以提高第一标识字符串的灵活性、不可预测性。
第二方面,本申请实施例还提供了一种文件保护装置,包括:
获取单元,用于从预设的多个数字中随机选取出一个数字作为随机数;
处理单元,用于对用户设定的第一密码进行加密处理,得到加密后的所述第一密码;对加密日期和所述加密后的所述第一密码进行拼接处理,得到拼接后的第一序列,对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列;对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置;基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件。
在一种可能的实现方式中,所述处理单元具体用于:
获取所述用户设定的第一密码;
使用预设的哈希算法对所述第一密码进行加密处理,得到加密后的所述第一密码。
在一种可能的实现方式中,所述处理单元具体用于:
使用预设的哈希算法对所述拼接后的第一序列和所述随机数进行加密处理,得到所述密钥序列。
在一种可能的实现方式中,所述处理单元具体用于:
将所述密钥序列的长度值与所述随机数进行模运算处理,得到第一数值;
将所述第一数值确定为所述密钥序列的加密起始位置。
在一种可能的实现方式中,所述处理单元具体用于:
基于所述加密起始位置和所述密钥序列的总长度,对所述密钥序列进行选取处理,得到处理后的所述密钥序列;
使用所述处理后的所述密钥序列对所述待加密的文件进行加密。
在一种可能的实现方式中,所述处理单元还用于:
获取待解密的文件、第一标识字符串和所述密钥序列;
根据所述第一标识字符串确定所述待解密的文件是否为加密文件;
若是,则使用所述密钥序列对所述待解密的文件进行解密处理,得到解密后的文件。
在一种可能的实现方式中,所述处理单元具体用于:
将随机数与文件加密标识字符串进行拼接处理,得到拼接后的所述第一标识字符串;
使用预设的哈希算法对所述拼接后的所述第一标识字符串进行加密处理,得到加密后的所述第一标识字符串。
第三方面,本申请实施例提供一种计算设备,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行文件保护方法的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行文件保护方法的步骤。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种文件保护方法的流程示意图;
图2为本申请实施例提供的一种文件头的结构示意图;
图3为本申请实施例提供的一种文件保护装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本申请的示意性实施例及其说明用于解释本申请,但并不作为对申请的限定。另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部分。
应当理解,本申请中所使用的“第一”、“第二”等,并非特别指先后次序或顺位的意思,也非用以限定本申请,在适当情况下可以互换,其仅为了区别以相同技术用语描述的元件或操作。
此外,本申请中所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。另外,本申请中所使用的“及/或”,包括所述事物的任一或全部组合。
图1示例性的示出了本申请实施例提供的一种文件保护方法的流程,该流程可以由文件保护装置执行。
如图1所示,该流程具体包括:
步骤101,从预设的多个数字中随机选取出一个数字作为随机数。
步骤102,对用户设定的第一密码进行加密处理,得到加密后的所述第一密码。
步骤103,对加密日期和所述加密后的所述第一密码进行拼接处理,得到拼接后的第一序列。
步骤104,对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列。
步骤105,对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置。
步骤106,基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件。
在上述步骤101中,在具体实施过程中,可以从预设的多个数字中随机选取出一个数字作为随机数,比如在0-255中随机选择一个数作为随机数X,以便后续根据该随机数构建第一标识字符串或构建密钥序列。
在上述步骤102中,首先获取用户设定的第一密码,并使用预设的哈希算法对用户设定的第一密码进行加密处理,得到加密后的第一密码。具体地,将用户设定的密码做MD5-16加密,即加密后的密码szPassWord=MD5-16(密码)。
在上述步骤103、步骤104和步骤105中,对加密日期以及加密后的第一密码进行拼接处理,得到拼接后的第一序列,并使用预设的哈希算法对拼接后的第一序列和随机数进行加密处理,得到密钥序列。再将密钥序列的长度值与随机数进行模运算处理,得到第一数值,并将第一数值确定为密钥序列的加密起始位置。然后基于加密起始位置和密钥序列的总长度,对密钥序列进行选取处理,得到处理后的密钥序列,并使用处理后的密钥序列对待加密的文件进行加密。具体地,首先获取加密日期“yyyy-MM-DD H:mm:ss”存入szDateTime,再向.tmp文件中依次写入szEncryIdent、szPassWord、版本号、随机数X、10位$0、szDateTime。szTemp=MD5-32(szPassWord+szDateTime),将szTemp作为被加密字符串,随机数X作为密钥,做RC4加密得到加密序列szKey。其中,加密序列szKey的起始位置iPos=Length(szKey)%X,并在确定出加密序列的起始位置后,再使用加密序列szKey对文件的明文内容进行加密。也即是,加密序列是使用1个固定因子(如加密日期)和2个随机因子(如用户设定的密码、随机数X)来生成的,使用16位MD5值和加密日期获取32位MD5值,最后通过RC4(32位MD5值,随机数)生成加密序列szKey。其中,由第一标识字符串生成16位MD5值,存入文件头中,并且该文件头中是将16位的加密标识符字符串和16位的密钥MD5值(用户设定的密码的MD5值)组成的32位字符串,用来对加密序列szKey进行混淆,以便隐藏真实的加密序列szKey,如此可以提高加密文件的安全性,并有助于避免密钥序列被轻易获取。此外,文件头的形式可以如图2所示,其中,文件头第01-16位为文件加密标识;第17-32位为密码;第33-34位为版本号;第35位为随机数;第36-44预留;第45-64位为文件加密时间。
在上述步骤106中,在确定出处理后的密钥序列后,就可以使用处理后的密钥序列对待加密的文件进行加密处理,得到加密后的文件。具体地,首先将要加密的文本内容存储到Byte数组byarrContent中,再使用加密序列szKey对要加密的文本内容进行加密,并将加密后的文本内容写入到临时文件,最后将源文件进行删除处理,并将临时文件重命名成源文件文件名,如此可以保障用户的个人加密文件的安全可靠性,降低数据被泄露的风险,保护用户自身利益,提高信息安全,并可以避免个人文件以明文形式在永久存储介质上存在而造成敏感信息泄露、非法篡改、无序传播等问题。其中,将加密后的文本内容写入到临时文件的代码过程可以为:
Figure BDA0002724688840000081
Figure BDA0002724688840000091
此外,在得到加密后的文件后,可以对该加密后的文件进行解密处理。具体地,首先获取待解密的文件、第一标识字符串和密钥序列,再根据第一标识字符串确定待解密的文件是否为加密文件,并在确定待解密的文件为加密文件时,使用密钥序列对待解密的文件进行解密处理,得到解密后的文件。其中,对于获取第一标识字符串的过程可以为:将随机数与文件加密标识字符串进行拼接处理,得到拼接后的第一标识字符串,并使用预设的哈希算法对拼接后的第一标识字符串进行加密处理,得到加密后的第一标识字符串。比如将随机数X追加到加密标识字符串尾部,然后将这个字符串做MD5-16加密得到加密后的第一标识字符串szEncryIdent。
进一步地,对待解密的文件进行解密处理的具体过程为:
a、从加密文件中获取解密文件要用的数据。
(1)、取第1到16位存入szEncryIdent。
(2)、取第17到32位存入szPassWord。
(3)、取第35位存入X。
(4)、取第45到64位存入szDateTime。
b、根据szEncryIdent来判断文件是否是加密文件,如果该文件是加密文件,则继续走解密流程;如果该文件不是加密文件,则确定该文件是明文文件,不需要解密。
c、获取加密序列szKey=RC4(MD5-32(szPassWord+szDateTime),X)。
d、将第65位到文件末尾的内容存储到Byte数组byarrContent。
e、对待解密的文件进行解密。
其中,对待解密的文本内容进行解密的代码过程可以为:
Figure BDA0002724688840000092
Figure BDA0002724688840000101
上述实施例表明,通过将加密日期以及加密后的第一密码进行拼接处理,得到拼接后的第一序列,并对拼接后的第一序列和随机数进行加密处理,得到密钥序列,如此可以提高密钥序列的随机性、灵活性、不可预测性,从而可以避免密钥序列被恶意破解。再基于随机数确定出密钥序列的加密初始位置,并根据该加密初始位置,并使用密钥序列对待加密的文件进行加密处理,如此可以使得密钥序列不是固定的,是随机的,并可以提高密钥序列的灵活性、不可预测性,并可以避免密钥序列被恶意破解,从而可以使得加密文件的安全性大大提高,并有助于降低文件数据被泄露的风险,进而可以解决现有技术中存在没有对密钥进行混淆处理,容易从加密文件中获取到密钥信息或获取到密钥后可以利用机器自动暴力破解加密文件等问题。
基于同样的技术构思,图3示例性的示出了本申请实施例提供的一种文件保护装置,该装置可以执行文件保护方法的流程。
如图3所示,该装置包括:
获取单元301,用于从预设的多个数字中随机选取出一个数字作为随机数;
处理单元302,用于对用户设定的第一密码进行加密处理,得到加密后的所述第一密码;对加密日期和所述加密后的所述第一密码进行拼接处理,得到拼接后的第一序列,对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列;对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置;基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件。
在一种可能的实现方式中,所述处理单元302具体用于:
获取所述用户设定的第一密码;
使用预设的哈希算法对所述第一密码进行加密处理,得到加密后的所述第一密码。
在一种可能的实现方式中,所述处理单元302具体用于:
使用预设的哈希算法对所述拼接后的第一序列和所述随机数进行加密处理,得到所述密钥序列。
在一种可能的实现方式中,所述处理单元302具体用于:
将所述密钥序列的长度值与所述随机数进行模运算处理,得到第一数值;
将所述第一数值确定为所述密钥序列的加密起始位置。
在一种可能的实现方式中,所述处理单元302具体用于:
基于所述加密起始位置和所述密钥序列的总长度,对所述密钥序列进行选取处理,得到处理后的所述密钥序列;
使用所述处理后的所述密钥序列对所述待加密的文件进行加密。
在一种可能的实现方式中,所述处理单元302还用于:
获取待解密的文件、第一标识字符串和所述密钥序列;
根据所述第一标识字符串确定所述待解密的文件是否为加密文件;
若是,则使用所述密钥序列对所述待解密的文件进行解密处理,得到解密后的文件。
在一种可能的实现方式中,所述处理单元302具体用于:
将随机数与文件加密标识字符串进行拼接处理,得到拼接后的所述第一标识字符串;
使用预设的哈希算法对所述拼接后的所述第一标识字符串进行加密处理,得到加密后的所述第一标识字符串。
基于同样的技术构思,本发明实施例提供一种计算设备,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行文件保护方法的步骤。
基于同样的技术构思,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行文件保护方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种文件保护方法,其特征在于,包括:
从预设的多个数字中随机选取出一个数字作为随机数;
对用户设定的第一密码进行加密处理,得到加密后的所述第一密码;
对加密日期和所述加密后的所述第一密码进行拼接处理,得到拼接后的第一序列;
对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列;
对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置;
基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件。
2.如权利要求1所述的方法,其特征在于,所述对用户设定的第一密码进行加密处理,得到加密后的所述第一密码,包括:
获取所述用户设定的第一密码;
使用预设的哈希算法对所述第一密码进行加密处理,得到加密后的所述第一密码。
3.如权利要求1所述的方法,其特征在于,所述对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列,包括:
使用预设的哈希算法对所述拼接后的第一序列和所述随机数进行加密处理,得到所述密钥序列。
4.如权利要求1所述的方法,其特征在于,所述对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置,包括:
将所述密钥序列的长度值与所述随机数进行模运算处理,得到第一数值;
将所述第一数值确定为所述密钥序列的加密起始位置。
5.如权利要求1所述的方法,其特征在于,所述基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件,包括:
基于所述加密起始位置和所述密钥序列的总长度,对所述密钥序列进行选取处理,得到处理后的所述密钥序列;
使用所述处理后的所述密钥序列对所述待加密的文件进行加密。
6.如权利要求1至5任一项所述的方法,其特征在于,在所述得到加密后的文件之后,还包括:
获取待解密的文件、第一标识字符串和所述密钥序列;
根据所述第一标识字符串确定所述待解密的文件是否为加密文件;
若是,则使用所述密钥序列对所述待解密的文件进行解密处理,得到解密后的文件。
7.如权利要求6所述的方法,其特征在于,所述获取第一标识字符串,包括:
将随机数与文件加密标识字符串进行拼接处理,得到拼接后的所述第一标识字符串;
使用预设的哈希算法对所述拼接后的所述第一标识字符串进行加密处理,得到加密后的所述第一标识字符串。
8.一种文件保护装置,其特征在于,包括:
获取单元,用于从预设的多个数字中随机选取出一个数字作为随机数;
处理单元,用于对用户设定的第一密码进行加密处理,得到加密后的所述第一密码;对加密日期和所述加密后的所述第一密码进行拼接处理,得到拼接后的第一序列,对所述拼接后的第一序列和所述随机数进行加密处理,得到密钥序列;对所述密钥序列、所述随机数进行统计处理,确定出所述密钥序列的加密起始位置;基于所述加密起始位置,使用所述密钥序列对待加密的文件进行加密处理,得到加密后的文件。
9.一种计算设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行权利要求1至7任一项所述的方法。
CN202011098906.3A 2020-10-14 2020-10-14 一种文件保护方法及装置 Pending CN112532379A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011098906.3A CN112532379A (zh) 2020-10-14 2020-10-14 一种文件保护方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011098906.3A CN112532379A (zh) 2020-10-14 2020-10-14 一种文件保护方法及装置

Publications (1)

Publication Number Publication Date
CN112532379A true CN112532379A (zh) 2021-03-19

Family

ID=74979545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011098906.3A Pending CN112532379A (zh) 2020-10-14 2020-10-14 一种文件保护方法及装置

Country Status (1)

Country Link
CN (1) CN112532379A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115017530A (zh) * 2022-08-08 2022-09-06 创云融达信息技术(天津)股份有限公司 一种数据安全存储设备及方法
CN115174253A (zh) * 2022-07-19 2022-10-11 北京计算机技术及应用研究所 一种ads_b系统数据加密方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115174253A (zh) * 2022-07-19 2022-10-11 北京计算机技术及应用研究所 一种ads_b系统数据加密方法
CN115017530A (zh) * 2022-08-08 2022-09-06 创云融达信息技术(天津)股份有限公司 一种数据安全存储设备及方法
CN115017530B (zh) * 2022-08-08 2022-12-16 创云融达信息技术(天津)股份有限公司 一种数据安全存储设备及方法

Similar Documents

Publication Publication Date Title
KR101324825B1 (ko) 메시지 인증 코드 사전 연산 방법 및 시스템
CN104298932B (zh) 一种so文件的调用方法及装置
CN106203128B (zh) 网页数据加解密方法、装置和系统
KR101447554B1 (ko) 암호화된 파일을 복호화하는 장치 및 그 방법
CN106027228B (zh) 一种网页标识的加解密方法及其加解密系统
CN110289946B (zh) 一种区块链钱包本地化文件的生成方法及区块链节点设备
CN106506159A (zh) 用于密钥安全的加密方法和设备
CN110457873B (zh) 一种水印嵌入与检测方法及装置
CN110941817B (zh) 一种密码加密及密文解密的方法和装置
EP2924953B1 (en) Method and system for encrypted data synchronization for secure data management
CN106599723A (zh) 一种文件加密方法及装置、文件解密方法及装置
CN107563176A (zh) 基于u盘的登录认证方法、系统、可读存储介质和计算机
CN110929291A (zh) 一种存取文本文件的方法、装置和计算机可读存储介质
CN112532379A (zh) 一种文件保护方法及装置
CN108431819B (zh) 保护客户端访问视频播放器的drm代理的服务的方法和系统
CN109510702A (zh) 一种基于计算机特征码的密钥存储及使用的方法
CN112492352A (zh) 一种视频加解密方法、装置、电子设备及存储介质
CN108898008A (zh) 应用程序的运行方法和装置
CN102135944A (zh) 一种在移动通讯设备中安全存储数据的方法
CN102480353A (zh) 口令认证和密钥保护的方法
CN112199730A (zh) 一种终端上应用数据的处理方法、装置及电子设备
CN116361774A (zh) 一种密码破解方法和装置
CN106650342B (zh) 一种Jar包加固方法及系统
CN105335666A (zh) 一种防止电子文档外泄的方法
CN114637985A (zh) 一种基于多环境参数的Android应用登录伪造识别方法

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