文件加密、解密方法、装置、设备和存储介质制造方法及图纸

技术编号:24889178 阅读:20 留言:0更新日期:2020-07-14 18:16
本发明专利技术公开了一种文件加密、解密方法、装置、设备和存储介质,其中,该方法包括:在待加密文件选择至少两个加密数据块;获取各所述加密数据块的加密位置和加密长度;根据所述加密位置和所述加密长度按照预设加密算法加密各所述加密数据块内文件数据。本发明专利技术实施例的技术方案,通过确定出待加密文件中的加密数据块,并依靠加密数据块的加密位置和加密长度对待加密文件进行加密,提高了大文件的加密速度,在保证文件安全性的前提下,提高用户的体验程度。

【技术实现步骤摘要】
文件加密、解密方法、装置、设备和存储介质
本专利技术实施例涉及数据安全
,尤其涉及一种文件加密、解密方法、装置、设备和存储介质。
技术介绍
移动设备的数据安全已经成为用户越来越关注的问题,当我们使用App的时候,App会将很多用户数据下载并存储在手机文件中。有的数据是隐私非常相关的,比如邮件,聊天记录,照片等等。数据文件一旦存在手机上,都有泄漏的危险。虽然iOS/Android平台都有App沙盒的概念,普通用户无法直接看到这些文件,但是黑客技术依然能够轻易获得这些数据。为了保证数据安全,越来越多的App会加密存在手机上的文件。App下载文件以后,先在内存中对其加密,再将加密后的文件存在手机上。读取文件的时候,App需要先将文件加载到内存,对其解密,然后才能进行使用。中间增加的加密-解密过程需要大量时间。举例来说,在常见Android手机上,用常见加密算法解密一个10M的图片大约需要1s。想象一个图片管理App首页上有30张图片,要完全显示这30张图片需要30s。再比如一个邮件App,一封邮件的大小也可能有数M。当用户从邮件列表点击一封邮件的时候,1s的卡顿是很差的用户体验。为了缩短文件的加密和解密时间,常采用较简单的加密算法或者压缩文件大小的方式,然而,简单的加密算法会降低文件的安全,文件破解变得更加容易,此外,压缩文件大小会牺牲文件的完整性,例如,图片文件以牺牲清晰度的方式将缩小图片大小。
技术实现思路
本专利技术提供一种文件加密、解密方法、装置、设备和存储介质,实现了大文件的快速加密解密,在文件安全性的前提下,提高文件加密解密过程的处理效率。第一方面,本专利技术实施例提供了一种文件加密方法,该方法包括:将待加密文件划分为至少两个加密数据块;获取各所述加密数据块的加密位置和加密长度;根据所述加密位置和所述加密长度按照预设加密算法加密各所述加密数据块内文件数据。第二方面,本专利技术实施例提供了一种文件解密方法,该方法包括:获取加密文件中的加密数据块的加密位置和加密长度;根据所述加密位置和加密长度解密所述加密文件。第三方面,本专利技术实施例提供了一种文件加密装置,该装置包括:数据块模块,用于将待加密文件划分为至少两个加密数据块;加密参数模块,用于获取各所述加密数据块的加密位置和加密长度;文件加密模块,用于根据所述加密位置和所述加密长度按照预设加密算法加密各所述加密数据块内文件数据。第四方面,本专利技术实施例提供了一种文件解密装置,该装置包括:解密参数模块,用于获取加密文件中的加密数据块的加密位置和加密长度;文件解密模块,用于根据所述加密位置和加密长度解密所述加密文件。第五方面,本专利技术实施例提供了一种设备,该设备包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术实施例中任一所述的文件加密方法和/或文件解密方法。第六方面,本专利技术实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术实施例中任一所述的文件加密方法和/或文件解密方法。本专利技术实施例的技术方案,通过将待加密文件中分割出加密数据块,获取到各加密数据块的加密位置和加密长度,根据加密位置和加密长度按照预设加密算法加密各加密数据块内文件数据,实现了数据文件的快速加密,提高了数据文件的处理速度,可在保证文件安全性的前提下,提高用户的体验程度。附图说明图1是本专利技术实施例一提供的一种文件加密方法的流程图;图2是本专利技术实施例二提供的一种文件加密方法的流程图;图3是本专利技术实施例二提供的一种文件特征数组的结构示意图;图4是本专利技术实施例二提供的一种加密特征生成的示例图;图5是本专利技术实施例二提供的一种文件加密过程的示例图;图6是本专利技术实施例三提供的一种文件解密方法的流程图;图7是本专利技术实施例三提供的一种文件解密方法的示例图;图8是本专利技术实施例四提供的一种文件加密装置的结构示意图;图9是本专利技术实施例五提供的一种文件解密装置的结构示意图;图10是本专利技术实施例六提供的一种设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。本专利技术实施例适用于移动设备上用户数据加密存储的情景,例如,用户数据出于隐私安全考虑需要在存储时加密,在使用时解密,当用户数据量大,访问加密的用户数据时,需要数据文件的加密过程进行优化提高加密速度。本专利技术实施例的技术方案,通过使用加密数据块减少加密和/或解密过程的时间消耗,在原有加密算法的算法复杂度的基础上,提供流式文件读取的能力,增强数据文件的读取效率。实施例一图1是本专利技术实施例一提供的一种文件加密方法的流程图,本实施例可适用于大文件数据加密的情况,该方法可以由文件加密装置来执行,该装置可以通过软件和/或硬件得方式实现,参见图1,本专利技术实施例提供的方法包括:步骤101、在待加密文件选择至少两个加密数据块。其中,待加密文件可以是需要进行隐私保护的数据,可以存储在智能终端中,待加密文件对应的数据量较高,在进行数据加密时可以花费较高时间。加密数据块可以是待加密文件中的文件数据,也可以是待加密文件中进行加密的部分。可以理解的是,在待加密文件中加密数据块的数量越多,待加密文件花费的加密时间可以越长。具体的,在待加密文件中选择出需要进行加密的加密数据块,可以根据待加密文件的数据量在待加密文件中选择加密数据块,待加密文件的数据量越大,可以在待加密文件中选择较少的加密数据块,可以理解的是,在待加密文件中选择加密数据块时,可以随机在待加密文件中选择,也可以按照固定数据量在待加密文件中选择加密数据块,例如,可以每隔1M数据在待加密文件中选择一个加密数据块。步骤102、获取各所述加密数据块的加密位置和加密长度。其中,加密位置可以是加密数据块的起始地址位置,具体可以包括物理地址和逻辑地址,例如,可以是加密位置在硬件存储中的物理存储地址,或者是加密数据块相对加密文件头的相对位置偏移量。加密长度可以表征加密数据块的数据量,具体可以是加密数据块占据存储位置的长度值或者是加密数据块结尾到加密数据块起始的距离值,进一步的,加密长度可以表征加密后的加密数据块的数据量。本专利技术实施例中,针对各加密数据块,可以获取各数据块的起始位置的加密位置以及数据块数量的加密长度,可以理解的是,加密数据块的加密长度可以不同,加密数据块的数据量可以各不相同。步骤103、根据所述加密位置和加密长度按照预设加密算法加密各所述加密数据块内文件数据。其中,预设加密算法可以预先约定的加密算法,可以包括对本文档来自技高网...

【技术保护点】
1.一种文件加密方法,其特征在于,包括:/n在待加密文件选择至少两个加密数据块;/n获取各所述加密数据块的加密位置和加密长度;/n根据所述加密位置和所述加密长度按照预设加密算法加密各所述加密数据块内文件数据。/n

【技术特征摘要】
1.一种文件加密方法,其特征在于,包括:
在待加密文件选择至少两个加密数据块;
获取各所述加密数据块的加密位置和加密长度;
根据所述加密位置和所述加密长度按照预设加密算法加密各所述加密数据块内文件数据。


2.根据权利要求1所述的方法,其特征在于,所述在待加密文件选择至少两个加密数据块,包括:
获取用于加密所述待加密文件的加密比例和加密块数量;
根据所述加密比例确定所述待加密文件中的部分加密文件;
将所述部分加密文件按照所述加密块数量拆分为加密数据块。


3.根据权利要求1或2所述的方法,其特征在于,所述获取各所述加密数据块的加密位置和加密长度,包括:
针对各所述加密数据块,确定所述加密数据块在所述待加密文件的数据位置作为加密位置;
确定各所述加密数据块的文件长度作为所述加密数据块对应的加密长度。


4.根据权利要求3所述的方法,所述根据所述加密位置和所述加密长度按照预设加密算法加密各所述加密数据块内文件数据,包括:
顺序获取所述待加密文件的文件数据;
根据所述加密位置和所述加密长度确定所述文件数据是否进行加密,若是,则对所述文件数据加密后存储到预设加密文件,若否,则将所述文件数据存储到所述预设加密文件。


5.根据权利要求4所述的方法,其特征在于,所述根据所述加密位置和所述加密长度确定所述文件数据是否进行加密,包括:
获取所述待加密数据在所述待加密文件的存储位置;
若所述存储位置位于所述加密位置到所述加密位置与所述加密长度的和之间,则确定所述待加密数据进行加密,否则,确定所述待加密数据不进行加密。


6.根据权利要求3所述的方法,其特征在于,还包括记录各所述所述加密数据块的加密位置和加密长度。


7.根据权利要求1所述的方法,其特征在于,还包括:确定各所述加密数据块加密后的已加密长度,并记录所述已加密长度。


8.根据权利要求6所述的方法,其特征在于,所述记录各所述所述加密数据块的加密位置和加密长度,包括:
将各所述加密数据块的加密位置和加密长度加密后记录在预设加密文件头部的文件特征数组中,其中,所述文件特征数组包括位置数组和长度数组,所述加密数据块的加密位置和加密长度存储的位置数组和长度数组关联存储。


9...

【专利技术属性】
技术研发人员:张世佳刘晓乐欧炼凯
申请(专利权)人:广州市百果园信息技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1