买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种文件系统加密方法及装置_杭州海康威视数字技术股份有限公司_201611097134.5 

申请/专利权人:杭州海康威视数字技术股份有限公司

申请日:2016-12-02

公开(公告)日:2020-07-03

公开(公告)号:CN108154042B

主分类号:G06F21/62(20130101)

分类号:G06F21/62(20130101)

优先权:

专利状态码:有效-授权

法律状态:2020.07.03#授权;2018.07.06#实质审查的生效;2018.06.12#公开

摘要:本发明实施例提供了一种文件系统加密方法及装置,所述方法包括:在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建所生成的元数据索引区所对应的第一随机数;其中,所述格式化操作用于在所述目标磁盘上安装目标文件系统;基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,得到第一加密数据;将所述第一加密数据存储在所述元数据索引区。应用本发明实施例,提高了文件系统中所存储的数据的安全性。

主权项:1.一种文件系统加密方法,其特征在于,包括:在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的第一随机数;其中,所述格式化操作用于在所述目标磁盘上安装目标文件系统;基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,得到第一加密数据;将所述第一加密数据存储在所述元数据索引区;基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,得到第一加密数据包括:利用所述第一随机数与所述元数据索引区所存储的数据进行异或运算;利用加密算法,对异或运算后所得到的数据进行加密,得到第一加密数据。

全文数据:一种文件系统加密方法及装置技术领域[0001]本发明涉及文件系统技术领域,特别是涉及一种文件系统加密方法及装置。背景技术[0002]目前,现有技术中存在多种文件系统,例如:FAT16FileAllocationTable,文件分配表和NTFSNewTechnologyFileSystem,新技术文件系统等文件系统。这些文件系统可以对磁盘和写入磁盘的数据进行管理。其中,所述数据可以是文本或者视频等任意类型的数据。[0003]通常,当需要在磁盘上安装文件系统时,可以通过格式化操作,在磁盘上创建包括元数据引导区、元数据索引区和数据区等区域的文件系统。其中,元数据引导区用于存储文件系统本身的信息,即文件系统信息,例如文件系统的版本信息、元数据索引区的位置信息、数据区中数据块的大小信息和数据块的位置信息等等。数据区包括多个数据块,数据块用于存储所要存储的数据本身。元数据索引区用于存储数据区中每个数据块所对应的索引数据,每条索引数据记录有对应的数据块中所存数据的数据属性信息,例如数据大小信息、数据所有者信息和数据占用的数据块的编号信息等。[0004]但是,由于目前文件系统的元数据引导区、元数据索引区和数据区存储的都是明文数据,因此攻击者可以通过对明文进行分析的方式,破解得到文件系统的存储结构,在破解得到文件系统的存储结构后,可以获得文件系统中存储的数据的存储位置信息,进而可以获得文件系统中所存储的数据,无法保证所存储的数据的安全。发明内容[0005]本发明实施例的目的在于提供一种文件系统加密方法及装置,以提高文件系统中所存储的数据的安全性。[0006]第一方面,本发明实施例提供了一种文件系统加密方法,所述方法可以包括:[0007]在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的第一随机数;其中,所述格式化操作用于在所述目标磁盘上安装目标文件系统;[0008]基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,得到第一加密数据;[0009]将所述第一加密数据存储在所述元数据索引区。[0010]可选地,在本发明的一个实施例中,所述方法还可以包括:[0011]在对所述目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据引导区所对应的第二随机数;[0012]基于所述第二随机数,对所述元数据引导区所存储的数据进行加密,得到第二加密数据;[0013]将所述第二加密数据存储在所述元数据引导区。[0014]可选地,在将所述第一加密数据存储在所述元数据索引区的步骤之前,还[0015]可以包括:[0016]加密所述第一随机数,获得第一随机数加密数据;[0017]相应地,将所述第一加密数据存储在所述元数据索引区的步骤可以包括:[0018]将所述第一加密数据和所述第一随机数加密数据,存储在所述元数据索引区。[0019]可选地,在将所述第二加密数据存储在所述元数据引导区的步骤之前,还可以包括:[0020]加密所述第二随机数,获得第二随机数加密数据;[0021]相应地,所述将所述第二加密数据存储在所述元数据引导区的步骤可以包括:[0022]将所述第二加密数据和所述第二随机数加密数据,存储在所述元数据引导区。[0023]可选地,所述在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的第一随机数的步骤,可以包括:[0024]在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的一个第一随机数;[0025]或者,[0026]在对目标磁盘进行格式化操作时,确定通过所述格式化操作所创建的元数据索引区中存在的索引数据条数,生成目标数量的第一随机数,所述目标数量与所述条数的数量相同。[0027]可选地,在本发明的又一个实施例中,所述方法还可以包括:[0028]当需要在所安装的目标文件系统中存储目标视频时,对所述目标视频中的I帧进行加密,得到第三加密数据;[0029]将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化操作所创建的数据区,所述剩余视频帧为所述目标视频中除所述I帧外的视频帧。[0030]可选地,在将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化操作所创建的数据区后,还包括:[0031]获得存储所述第三加密数据的数据块的第一编号,以及存储所述剩余视频帧的数据块的第二编号;[0032]基于所述第一随机数,对所述元数据索引区所存储的第一加密数据进行解密,获得第一解密数据;[0033]确定所述第一解密数据中所述第一编号所对应的第一目标数据,以及所述第二编号所对应的第二目标数据;[0034]利用所述I帧所对应的数据属性信息替换所述第一目标数据,并利用所述剩余视频帧的数据属性信息,替换所述第二目标数据,得到新的第一解密数据;[0035]生成所述新的第一解密数据所对应的第三随机数;[0036]基于所述第三随机数,对所述新的第一解密数据进行加密,获得新的第一加密数据。一一[0037]可选地,所述格式化操作在目标磁盘上还创建有备用元数据引导区和备用元数据索引区;[0038]所述方法还可以包括:_[0039]生成所述备用元数据引导区对应的第四随机数,以及所述备用元数据索引区对应的第五随机数;[0040]基于所述第四随机数,对备用元数据引导区所存储的数据进行加密,得到第四加密数据;将所述第四加密数据存储到所述备用元数据引导区;[0041]基于所述第五随机数,对备用元数据索引区所存储的数据进行加密,得到第五加密数据;将所述第五加密数据存储到所述备用元数据索引区。[0042]第二方面,本发明实施例提供了一种文件系统加密装置,所述装置可以包括:[0043]格式化模块,用于通过格式化操作创建元数据索引区;[0044]随机数生成模块,用于在对目标磁盘进行格式化操作时,生成通过所述格式化模块格式化操作所创建的元数据索引区所对应的第一随机数;其中,所述格式化操作用于在所述目标磁盘上安装目标文件系统;[0045]加密模块,用于基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,得到第一加密数据;[0046]存储模块,用于将所述第一加密数据存储在所述元数据索引区。[0047]可选地,所述随机数生成模块还用于:在对所述目标磁盘进行格式化操作时,生成通过所述格式化模块格式化操作所创建的元数据引导区所对应的第二随机数;[0048]相应地,所述加密模块还用于:基于所述第二随机数,对所述元数据引导区所存储的数据进行加密,得到第二加密数据;所述存储模块还用于:将所述第二加密数据存储在所述元数据引导区。[0049]可选地,所述加密模块还用于:加密所述第一随机数,获得第一随机数加密数据;[0050]相应地,所述存储模块用于:将所述第一加密数据和所述第一随机数加密数据,存储在所述元数据索引区。[0051]可选地,所述加密模块还用于:加密所述第二随机数,获得第二随机数加密数据;[0052]相应地,所述存储模块用于:将所述第二加密数据和所述第二随机数加密数据,存储在所述元数据引导区。[0053]可选地,所述随机数生成模块具体用于:在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的一个第一随机数;[0054]或者,[0055]在对目标磁盘进行格式化操作时,确定通过所述格式化操作所创建的元数据索引区中存在的索引数据条数,生成目标数量的第一随机数,所述目标数量与所述条数的数量相同。[0056]可选地,所述加密模块还用于:[0057]当需要在所安装的目标文件系统中存储目标视频时,对所述目标视频中的I帧进行加密,得到第三加密数据;[0058]相应地,所述存储模块还用于:将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化操作所创建的数据区,所述剩余视频帧为所述目标视频中除所述I帧外的视频帧。[0059]可选地,在本发明的一个实施例中,所述装置还可以包括:获得模块;[0060]所述获得模块用于:[0061]在所述存储模块将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化模块格式化操作所创建的数据区后,获得存储所述弟三加密数据的数据块的第一编号,以及所述剩余视频帧的数据块的第二编号;[0062]基于所述第一随机数,对所述元数据索引区所存储的第一加密数据进行解密,获得第一解密数据;[0063]确定所述第一解密数据中所述第一编号所对应的第一目标数据,以及所述第二编号所对应的第二目标数据;_[0064]利用所述I帧所对应的数据属性信息替换所述第一目标数据,并利用所述剩余视频帧的数据属性信息,替换所述第二目标数据,得到新的第一解密数据;[0065]生成所述新的第一解密数据所对应的第三随机数;[0066]基于所述第三随机数,对所述新的第一解密数据进行加密,获得新的第一加密数据。[0067]可选地,所述格式化模块还用于通过所述格式化操作在目标磁盘上创建备用元数据引导区和备用元数据索引区;[0068]相应地,所述随机数生成模块还用于:生成所述备用元数据引导区对应的第四随机数,以及所述备用元数据索引区对应的第五随机数;[0069]所述加密模块还用于:基于所述第四随机数,对备用元数据引导区所存储的数据进行加密,得到第四加密数据;基于所述第五随机数,对备用元数据索引区所存储的数据进行加密,得到第五加密数据;[0070]所述存储模块还用于:将所述第四加密数据存储到所述备用元数据引导区;将所述第五加密数据存储到所述备用元数据索引区。[0071]在本发明实施例中,在通过格式化操作创建目标文件系统的元数据索引区的过程中,生成所述元数据索引区所对应的第一随机数;并基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,获得第一加密数据;将所述第一加密数据存储在所述元数据索引区。这样,保证了所述元数据索引区存储的是密文数据,攻击者无法对所述密文数据所对应的索引数据进行解析,提高了目标文件系统数据区中所存储的数据的安全性。附图说明[0072]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。[0073]图1为本发明实施例提供的一种文件系统加密方法的流程图;[0074]图2为本发明实施例提供的一种文件系统的示意图;[0075]图3为本发明实施例中更新元数据索引区所存储的数据的方法流程图;[0076]图4为本发明实施例提供的一种文件系统加密装置的结构示意图。具体实施方式[0077]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0078]为了保证所存储的数据的安全,本发明实施例提供了一种文件系统加密方法及装置。[0079]下面首先对本发明实施例提供的一种文件系统加密方法进行说明。[0080]需要说明的是,执行本发明实施例提供的文件系统加密方法的执行主体为终端。终端包括但并不局限于电脑和手机等设备。另外,实现本发明实施例提供的文件系统加密方法的功能软件可以为:设置于终端中专门的文件系统加密软件,也可以为:设置于终端中的文件系统加密软件中的功能插件,这都是合理的。[0081]参见图1,本发明实施例提供的文件系统加密方法可以包括如下步骤:[0082]S101:在对目标磁盘进行格式化操作时,生成通过格式化操作所创建的元数据索引区所对应的第一随机数;其中,格式化操作用于在目标磁盘上安装目标文件系统;[0083]本领域技术人员可以理解的是,当需要在目标磁盘上安装目标文件系统时,通过格式化操作可以在目标磁盘上创建元数据引导区、元数据索引区和数据区。[0084]在通过格式化操作创建元数据索引区后,即可生成针对元数据索引区所对应的第一随机数。由于元数据索引区所存储的数据常常是由多条索引数据组成,因此在一种实现方式中,可以针对每条索引数据对应生成一个随机的第一随机数,该过程包括:在对目标磁盘进行格式化操作时,确定通过格式化操作所创建的元数据索引区中存在的索引数据条数,生成目标数量的第一随机数,目标数量与条数的数量相同,即所生成的第一随机数的数量与元数据索引区中存在的索引数据条数相同。在另一种实现方式中,可以针对所创建的元数据索引区生成一个第一随机数,即针对多条索引数据仅生成一个第一随机数,从而减少生成第一随机数的时间。[0085]其中,第一随机数可以由执行格式化操作的终端中的随机数发生器所生成,当然并不局限于此。另外,需要强调的是,当在不同的目标磁盘上安装同一个目标文件系统时,所生成的针对元数据索引区的第一随机数不相同。[0086]此外,需要说明的是,通过格式化操作所创建的元数据引导区用于存储所要安装的目标文件系统的基本信息,例如目标文件系统的版本信息、元数据索引区的位置信息、数据区中数据块的大小信息、数据块的位置信息等。所创建的元数据索引区用于存储数据区所存数据的数据属性信息,例如数据大小信息、数据所有者信息以及数据占用的数据块的编号信息等。所创建的数据区用于存储数据本身,数据本身可以是图片、视频和文本等,当然并不局限于此。[0087]S102:基于第一随机数,对元数据索引区所存储的数据进行加密,得到第一加密数据;[0088]S103:将第一加密数据存储在元数据索引区。[0089]由于当需要对目标磁盘进行格式化操作时,目标磁盘上常常已安装有文件系统,为了提高格式化速度,格式化操作只是将原有文件系统的元数据引导区中的数据进行擦除重写,而在格式化操作之前所写入的数据,以及该数据所对应的索引数据并没有被清除。[0090]因此,攻击者可以根据未被清除的索引数据,解析得到在格式化操作之前所写入数据的数据属性信息例如数据大小信息、数据所有者信息和数据占用的数据块的编号信息等),进而可以根据所获得的数据块的编号信息,准确地定位到数据的存储位置,从而获得该存储位置下的数据。[0091]为了保证所存储的数据的安全,在本发明实施例中,可以基于第一随机数,将元数据索引区所存储的数据进行加密,获得第一加密数据。并将第一加密数据存储至元数据索引区,使得攻击者在找到元数据索引区后,只能获得元数据索引区中所存储的密文数据,也就是说,攻击者在不知道解密密钥的情况下,无法获得密文数据所对应的明文数据。也就无法获得在目标文件系统中所存数据的数据属性信息,保证了所存储的数据的安全。[0092]而且,结合第一随机数,对元数据索引区中所存储的数据进行加密的方式,可以有效地防止第一加密数据被破解。这是由于第一随机数是在格式化过程中生成的,也就是说,每个格式化过程都会产生随机的第一随机数。当攻击者在其他磁盘上破解得到目标文件系统的第一加密数据所对应的明文数据后,无法利用唯密文攻击方式,获得目标磁盘上所安装的目标文件系统中的第一加密数据所对应的明文数据,保证了数据区中所存储的数据的安全。其中,唯密文攻击方式属于现有技术,在此不做详述。[0093]在本发明实施例中,在通过格式化操作创建目标文件系统的元数据索引区的过程中,生成元数据索引区所对应的第一随机数;并基于第一随机数,对元数据索引区所存储的数据进行加密,获得第一加密数据;将第一加密数据存储在元数据索引区。这样,保证了元数据索引区存储的是密文数据,攻击者无法对密文数据所对应的索引数据进行解析,提高了目标文件系统数据区中所存储的数据的安全性。[0094]下面对基于第一随机数,将元数据索引区所存储的数据进行加密的实现方式进行详细说明。[0095]当针对元数据索引区所存储的数据仅生成一个第一随机数时,在一种实现方式中,可以将第一随机数添加到元数据索引区所存储的数据的任意位置,然后利用加密算法,对添加第一随机数后的数据进行加密,获得第一加密数据。[0096]在另一种实现方式中,可以利用第一随机数与元数据索引区中所存储的数据进行异或运算,然后利用加密算法,对异或运算后所得到的数据进行加密,获得第一加密数据。[0097]举例而言,假设元数据索引区中所存储的数据为INDEX,所获得的第一随机数为RANDJM,则可以利用INDEX和RAND_IM进行异或运算:INDEX®RAND_IM,并对该异或运算结果进行加密,获得第一加密数据:EncINDEX®RANDJM。[0098]需要说明的是,上述两种实现方式中所涉及的加密算法可以采用现有技术中的对称加密算法或非对称加密算法。其中,对称加密算法包括但并不局限于DESDataEncryptionStandard,数据加密标准)算法、3DESTripleDataEncryption,三重数据加密算法和AESAdvancedEncryptionStandard,高级加密标准算法;非对称加密算法包括但并不局限于RSA算法和Elgamal算法。并且由于DES算法、3DES算法、AES算法、RSA算法和Elgamal算法均为现有算法,在此不对利用上述加密算法进行加密计算的过程进行详述。[00"]当针对元数据索引区所存储的数据生成多个随机的第一随机数时,可以采用上述方法对每一条索引数据进行加密,从而获得第一加密数据,在此不做详述。[0100]由于在对目标磁盘进行格式化操作时,格式化操作会在目标磁盘上创建元数据引导区,如果将所获得的目标文件系统的基本信息直接写入元数据引导区,则当攻击者在获得基本信息时,就可以知道数据区所对应的位置信息,进而可以从数据区所存储的所有数据中查找到攻击者想要的数据。其中,上文已对基本信息进行描述,在此不做赘述。[0101]因此,为了进一步保证所存储的数据的安全性,在本发明一个实施例中,可以在对目标磁盘进行格式化操作时,生成通过格式化操作所创建的元数据引导区所对应的第二随机数;基于第二随机数,对元数据引导区所存储的数据进行加密,得到第二加密数据;将第二加密数据存储在元数据引导区。[0102]可以理解的是,在利用所生成的第一随机数,对所创建的元数据索引区所存储的数据进行加密后,还可以针对元数据引导区的第二随机数,对所创建元数据引导区所存储的数据进行加密,使得攻击者在找到元数据引导区后,无法根据元数据引导区所存储的密文数据,获得目标文件系统的基本信息,进而进一步保证了所存储的数据的安全。[0103]需要说明的是,由于结合第二随机数,对元数据引导区所存储的数据进行加密,得到第二加密数据,使得第二加密数据同样可以有效地抵挡唯密文攻击方式的攻击,提高了所存储的数据的安全性。[0104]另外,基于第二随机数,对元数据引导区所存储的数据进行加密,得到第二加密数据的实现方式,可以采用获得第一加密数据的实现方式。举例而言,假设元数据引导区中所存储的数据为SUPER,所获得的第一随机数为RAND_MAIN,则可以利用SUPER和RAND_MAIN进行异或运算:SUPEReRAND_MAIN,并对该异或运算结果进行加密,获得第二加密数据:EncSUPER®RAND—MAIN〇[0105]在本发明又一实施例中,在对元数据索引区所存储的数据进行加密,获得第一加密数据后,为了解密方便,且为了避免第一随机数被攻击者获得,可以在将第一加密数据存储在元数据索引区的步骤之前,加密第一随机数,获得第一随机数加密数据;[0106]举例而言,假设第一加密数据为RAND_IM,对RAND_IM进行加密计算后,可获得第一加密数据:EncRAND_IM。[0107]相应地,将第一加密数据存储在元数据索引区的步骤可以包括:将第一加密数据和第一随机数加密数据,存储在元数据索引区。[0108]同理,在本发明又一实施例中,在对元数据引导区所存储的数据进行加密,获得第二加密数据后,为了解密方便,且为了避免第二随机数被攻击者获得,可以在将第二加密数据存储在元数据引导区的步骤之前,加密第二随机数,获得第二随机数加密数据;[0109]相应地,将第二加密数据存储在元数据引导区的步骤可以包括:将第二加密数据和第二随机数加密数据,存储在元数据引导区。[0110]另外,为了保证元数据(即元数据索引区和元数据引导区所存储的数据丢失的情况下,目标文件系统仍能够正常工作,在本发明的又一实施例中,还通过格式化操作在目标磁盘上创建备用元数据引导区和备用元数据索引区;[0111]并且,为了提高备用元数据引导区和备用元数据索引区中所存储的数据的安全性,方法还可以包括:[0112]生成备用元数据引导区对应的第四随机数,以及备用元数据索引区对应的第五随机数;[0113]基于第四随机数,对备用元数据引导区所存储的数据进行加密,得到第四加密数据;将第四加密数据存储到备用元数据引导区;[0114]基于第五随机数,对备用元数据索引区所存储的数据进行加密,得到第五加密数据;将第五加密数据存储到备用元数据索引区。[0115]需要说明的是,上述获得第四加密数据和第五加密数据的加密方式,可以采用获得第一加密数据的加密方式,在此不做赘述。[0116]下面结合图2对本发明实施例所创建的文件系统进行说明。[0117]如图2所不,通过格式化操作所安装的目标文件系统中可以包括:元数据索引区、元数据引导区、数据区、备用元数据索引区和备用元数据引导区。”[0118]其中,元数据索引区可以用于存储所要存储的数据所对应的第一加密数据,以及第一随机数加密数据。其中,当数据区被分为N个数据块时,由于每个数据块对应一条索引数据,所以如图2所示,元数据索引区所要存储的数据可以包括:索引数据1至索引数据N,第一随机数1至第一随机数N,从而可以基于第一随机对N条索引数据进行加密,从而获得第一加密数据,从而元数据索引区存储第一加密数据。[0119]元数据引导区可以用于存储所要存储的数据(即引导区数据所对应的第二加密数据,以及第二随机数加密数据。其中,如图2所示,元数据引导区所要存储的数据可以包括:引导区数据和第二随机数。因此可以基于第二随机数对引导区数据进行加密,获得第二加密数据,从而元数据引导区存储第二加密数据。本领域技术人员可以理解的是,元数据引导区可以用于存储目标文件系统的基本信息外,还可以用于存储块位图信息,块位图信息是指各个数据块的使用情况即数据块的空闲状态信息。也就是说,可以基于第二随机数,对基本信息和块位图信息进行加密,从而获得第二加密数据,这是合理的。[0120]需要说明的是,备用元数据索引区与元数据索引区所要存储的第一加密数据不相同,但是所存储的第一加密数据所对应的索引数据是相同的。这是由于第一随机数是随机产生的,即由于每次产生的第一随机数不相同,因此在索引数据相同的情况下,备份元数据索引区所存储的第一加密数据,与元数据索引区所存储的第一加密数据并不相同。同理,备用元数据引导区所存储的第二加密数据,与元数据引导区所存储的第二加密数据并不相同,在此不做详述。[0121]数据块用于存储所要存储的数据本身,数据块所存储的数据包括但并不局限于文本、图片和视频。当数据块所存储的数据是文本或者图片时,由于文本和图片的数据量较小,因此为了进一步保证所存储的文本和图片的安全,可以对文本或图片进行加密,再将加密后的数据存储到相应的数据块中。[0122]当数据块所存储的数据是视频时,由于一般情况下,视频的数据量较大,对视频数据进行加密的话,会花费较多的时间。因此为了在保证目标文件系统的存储性能的前提下,进一步提高所要存储的视频的安全性,在本发明又一实施例中,还可以包括:[0123]S1:当需要在所安装的目标文件系统中存储目标视频时,对目标视频中的I帧进行加密,得到第三加密数据;[0124]S2:将第三加密数据,以及目标视频中的剩余视频帧,存储至通过格式化操作所创建的数据区,剩余视频帧为目标视频中除I帧外的视频帧。[0125]举例而言,假设目标视频中的I帧为DATA,利用加密算法对DATA进行加密,获得第三加密数据:EncDATA,并将EncDATA存储至通过格式化操作所创建的数据区。[0126]本领域技术人员可以理解的是,目标视频中的I帧是指目标视频的关键帧。以H264码流的视频为例,即当需要在目标文件系统中存储H264码流的视频时,会将该目标视频分为I帧、B帧和P帧进行存储。由于这些帧都会包括特定的帧头信息,因此攻击者在获得视频的存储位置后,通过解析这些帧的帧头信息,即可确定哪些帧是关键帧,进而根据关键帧破解该目标视频。其中,H264码流为一种现有的视频编码格式,在此不做详述。[0127]而当无法获得关键帧时,就无法解析得到目标视频,因此可以仅对目标视频中的I帧进行加密,获得第三加密数据;并将第三加密数据,以及目标视频中除I帧外的剩余视频帧例如B帧和P帧存储到目标文件系统的数据区。[0128]需要说明的是,视频的I帧、B帧和P帧均为现有概念,且可以通过现有技术进行识另IJ,在此不做详述。[0129]在本发明的又一实施例中,在步骤S2将第三加密数据,以及目标视频中的剩余视频帧,存储至通过格式化操作所创建的数据区后,为了更新存储上述数据的数据块所对应的索引数据,如图3所示,方法还可以包括:[0130]S3:获得存储第三加密数据的数据块的第一编号,以及存储剩余视频帧的数据块的第二编号;[0131]S4:基于第一随机数,对元数据索引区所存储的第一加密数据进行解密,获得第一解密数据;[0132]S5:确定第一解密数据中第一编号所对应的第一目标数据,以及第二编号所对应的第二目标数据;[°133]S6:利用I帧所对应的数据属性信息替换第一目标数据,并利用剩余视频帧的数据属性信息,替换第二目标数据,得到新的第一解密数据;[0134]S7:生成新的第一解密数据所对应的第三随机数;[0135]S8:基于第三随机数,对新的第一解密数据进行加密,获得新的第一加密数据。[0136]可以理解的是,当在数据区中新写入数据,即写入目标视频时,元数据索引区中相应的索引数据也需要发生相应的变化。其中,改变相应索引数据的过程中,需要先对元数据索引区中的第一加密数据进行解密,获得第一解密数据;并将目标视频所对应的数据属性信息,替换第一解密数据中的相应信息;并对替换得到的数据(即新的第一解密数据进行加密。其中,为了保证所获得的新的第一解密数据的安全,需要用到第三随机数,对新的第一解密数据进行加密,再对加密后的数据进行存储。[0137]举例而言,对元数据索引区所存储的第一加密数据的解密操作可以包括:获得元数据索引区中所存储的第一加密数据:EncINDEX®RAND_IM,并根据该第一加密数据的加密算法对应的解密算法:Dec®ncINDEX®RAND_IM},解密得到第一解密数据:INDEXeRANDJM;获得第一随机数加密数据:EncRAND_IM,并根据第一随机数加密数据的加密算法对应的解密算法:Dec{EncRAND_IM,解密得到RAND_IM;从而可以对解密得到的INDEX㊉RAND_IM和RAND_IM进行异或逆运算,从而获得INDEX。[0138]需要说明的是,当通过第一加密数据所对应的加密方式,对数据进行加密时,即通过对数据与随机数进行异或运算,并将异或运算所得到的结果进行加密的方式,均可以采用上述解密操作对加密得到的加密数据进行解密,在此不做详述。[0139]下面对本发明实施例提供的文件系统加密方法具具体实例进行说明。[0140]当终端接收到格式化目标磁盘的指令时,开始执行格式化操作:首先判断目标磁盘是否正常,若不正常,在终端提示格式化操作失败信息;若正常,执行下列操作:[0141]获得格式化操作所要创建的目标文件系统的基本信息(即格式化参数,例如版本信息、数据块大小、加密算法和元数据存储位置等信息)。基于该格式化参数,在目标磁盘上创建元数据索引区、备用元数据索引区、元数据引导区、备用元数据引导区和数据区。[0142]利用终端的随机数发生器生成第一随机数、第二随机数、第四随机数和第五随机数。进而基于第一随机数对元数据索引区存储的数据进行加密、基于第二随机数对元数据引导区存储的数据进行加密、基于第四随机数对备用元数据索引区存储的数据进行加密,以及基于第五随机数对备用元数据引导区存储的数据进行加密,从而格式化操作完毕,得到目标文件系统。[0143]另外,当需要在目标文件系统中存储数据时,下面以所存储的数据为文本为例进行说明。[0144]当需要在目标文件系统中存储目标文本时,可以利用预设的加密算法对目标文本进行加密计算;并将加密后的数据存储在数据区中第N数据块中;解密元数据索引区中的第一加密数据,得到第一解密数据;利用目标文本的数据属性信息,替换第一解密数据中数据块N所对应的索引数据;替换完毕后,得到新的第一解密数据;并对新的第一解密数据进行加密,得到新的第一加密数据,完成索引数据的更新。[0145]需要说明的是,更新备用元数据索引区的索引数据的方式于上述方法类似,在此不做赘述。[0146]相应于上述方法实施例,本发明实施例还提供了一种文件系统加密装置,装置可以包括:[0147]格式化模块401,用于通过格式化操作创建元数据索引区;[0148]随机数生成模块402,用于在对目标磁盘进行格式化操作时,生成通过格式化模块401格式化操作所创建的元数据索引区所对应的第一随机数;其中,格式化操作用于在目标磁盘上安装目标文件系统;[0149]加密模块403,用于基于第一随机数,对元数据索引区所存储的数据进行加密,得到第一加密数据;[0150]存储模块404,用于将第一加密数据存储在元数据索引区。[0151]在本发明实施例中,在通过格式化操作创建目标文件系统的元数据索引区的过程中,生成元数据索引区所对应的第一随机数;并基于第一随机数,对元数据索引区所存储的数据进行加密,获得第一加密数据;将第一加密数据存储在元数据索引区。这样,保证了元数据索引区存储的是密文数据,攻击者无法对密文数据所对应的索引数据进行解析,提高了目标文件系统数据区中所存储的数据的安全性。[0152]可选地,随机数生成模块402还用于:在对目标磁盘进行格式化操作时,生成通过格式化模块401格式化操作所创建的元数据引导区所对应的第二随机数;[0153]相应地,加密模块403还用于:基于第二随机数,对元数据引导区所存储的数据进行加密,得到第二加密数据;存储模块304还用于:将第二加密数据存储在元数据引导区。[0154]可选地,加密模块403还用于:加密第一随机数,获得第一随机数加密数据;[0155]相应地,存储模块404具体用于:将第一加密数据和第一随机数加密数据,存储在元数据索引区。[0156]可选地,加密模块403还用于:加密第二随机数,获得第二随机数加密数据;[0157]相应地,存储模块404具体用于:将第二加密数据和第二随机数加密数据,存储在元数据引导区。[0158]可选地,随机数生成模块402具体用于:在对目标磁盘进行格式化操作时,生成通过格式化操作所创建的元数据索引区所对应的一个第一随机数;[0159]或者,在对目标磁盘进行格式化操作时,确定通过格式化操作所创建的元数据索引区中存在的索引数据条数,生成目标数量的第一随机数,目标数量与条数的数量相同。[0160]可选地,加密模块403还用于:[0161]当需要在所安装的目标文件系统中存储目标视频文件时,对目标视频文件中的I帧进行加密,得到第三加密数据;[0162]相应地,存储模块404还用于:将第三加密数据,以及目标视频中的剩余视频帧,存储至通过格式化操作所创建的数据区,剩余视频帧为目标视频中除I帧外的视频帧。_]可选地,还包括:获得模块;[0164]获得模块用于:在存储模块404将第三加密数据,以及目标视频中的剩余视频帧,存储至通过格式化模块401格式化操作所创建的数据区后,获得存储第三加密数据的数据块的第一编号,以及剩余视频帧的数据块的第二编号;[0165]基于第一随机数,对元数据索引区所存储的第一加密数据进行解密,获得第一解密数据;[0166]确定第一解密数据中第一编号所对应的第一目标数据,以及第二编号所对应的第二目标数据;[0167]利用I帧所对应的数据属性信息替换第一目标数据,并利用剩余视频帧的数据属性信息,替换第二目标数据,得到新的第一解密数据;[0168]生成新的第一解密数据所对应的第三随机数;[0169]基于第三随机数,对新的第一解密数据进行加密,获得新的第一加密数据。[0170]可选地,格式化模块401还用于通过格式化操作在目标磁盘上创建备用元数据引导区和备用元数据索引区;[0171]相应地,随机数生成模块402还用于:生成备用元数据引导区对应的第四随机数,以及备用元数据索引区对应的第五随机数;[0172]加密模块403还用于:基于第四随机数,对备用元数据引导区所存储的数据进行加密,得到第四加密数据;基于第五随机数,对备用元数据索引区所存储的数据进行加密,得到第五加密数据;[0173]存储模块404还用于:将第四加密数据存储到备用元数据引导区;将第五加密数据存储到备用元数据索引区。[0174]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。LJ半1^叨卞》甲的谷个买施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。[0176]以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

权利要求:1.一种文件系统加密方法,其特征在于,包括:在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的第一随机数;其中,所述格式化操作用于在所述目标磁盘上安装目标文件系统;基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,得到第一加密数据;将所述第一加密数据存储在所述元数据索引区。2.根据权利要求1所述的方法,其特征在于,还包括:在对所述目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据引导区所对应的第二随机数;基于所述第二随机数,对所述元数据引导区所存储的数据进行加密,得到第二加密数据;将所述第二加密数据存储在所述元数据引导区。3.根据权利要求1所述的方法,其特征在于,在将所述第一加密数据存储在所述元数据索引区的步骤之前,还包括:加密所述第一随机数,获得第一随机数加密数据;相应地,将所述第一加密数据存储在所述元数据索引区的步骤包括:将所述第一加密数据和所述第一随机数加密数据,存储在所述元数据索引区。4.根据权利要求2或3所述的方法,其特征在于,在将所述第二加密数据存储在所述元数据引导区的步骤之前,还包括:加密所述第二随机数,获得第二随机数加密数据;相应地,所述将所述第二加密数据存储在所述元数据引导区的步骤包括:将所述第二加密数据和所述第二随机数加密数据,存储在所述元数据引导区。5.根据权利要求1所述的方法,其特征在于,所述在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的第一随机数的步骤,包括:在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的一个第一随机数;或者,在对目标磁盘进行格式化操作时,确定通过所述格式化操作所创建的元数据索引区中存在的索引数据条数,生成目标数量的第一随机数,所述目标数量与所述条数的数量相同。6.根据权利要求1所述的方法,其特征在于,还包括:当需要在所安装的目标文件系统中存储目标视频时,对所述目标视频中的I帧进行加密,得到第三加密数据;将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化操作所创建的数据区,所述剩余视频帧为所述目标视频中除所述I帧外的视频帧。7.根据权利要求6所述的方法,其特征在于,在将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化操作所创建的数据区后,还包括:获得存储所述第三加密数据的数据块的第一编号,以及存储所述剩余视频帧的数据块的第二编号;基于所述第一随机数,对所述元数据索引区所存储的第一加密数据进行解密,获得第一解密数据;确定所述第一解密数据中所述第一编号所对应的第一目标数据,以及所述第二编号所对应的第二目标数据;利用所述I帧所对应的数据属性信息替换所述第一目标数据,并利用所述剩余视频帧的数据属性信息,替换所述第二目标数据,得到新的第一解密数据;生成所述新的第一解密数据所对应的第三随机数;基于所述第三随机数,对所述新的第一解密数据进行加密,获得新的第一加密数据。8.根据权利要求1所述的方法,其特征在于,所述格式化操作在目标磁盘上还创建有备用元数据引导区和备用元数据索引区;所述方法还包括:生成所述备用元数据引导区对应的第四随机数,以及所述备用元数据索引区对应的第五随机数;基于所述第四随机数,对备用元数据引导区所存储的数据进行加密,得到第四加密数据;将所述第四加密数据存储到所述备用元数据引导区;基于所述第五随机数,对备用元数据索引区所存储的数据进行加密,得到第五加密数据;将所述第五加密数据存储到所述备用元数据索引区。9.一种文件系统加密装置,其特征在于,包括:格式化模块,用于通过格式化操作创建元数据索引区;随机数生成模块,用于在对目标磁盘进行格式化操作时,生成通过所述格式化模块格式化操作所创建的元数据索引区所对应的第一随机数;其中,所述格式化操作用于在所述目标磁盘上安装目标文件系统;加密模块,用于基于所述第一随机数,对所述元数据索引区所存储的数据进行加密,得到第一加密数据;存储模块,用于将所述第一加密数据存储在所述元数据索引区。10.根据权利要求9所述的装置,其特征在于,所述随机数生成模块还用于:在对所述目标磁盘进行格式化操作时,生成通过所述格式化模块格式化操作所创建的元数据引导区所对应的第二随机数;相应地,所述加密模块还用于:基于所述第二随机数,对所述元数据引导区所存储的数据进行加密,得到第二加密数据;所述存储模块还用于:将所述第二加密数据存储在所述元数据引导区。11.根据权利要求9所述的装置,其特征在于,所述加密模块还用于:加密所述第一随机数,获得第一随机数加密数据;相应地,所述存储模块具体用于:将所述第一加密数据和所述第一随机数加密数据,存储在所述元数据索引区。12.根据权利要求10或11所述的装置,其特征在于,所述加密模块还用于:加密所述第二随机数,获得第二随机数加密数据;相应地,所述存储模块具体用于:将所述第二加密数据和所述第二随机数加密数据,存储在所述元数据引导区。13.根据权利要求9所述的装置,其特征在于,所述随机数生成模块具体用于:在对目标磁盘进行格式化操作时,生成通过所述格式化操作所创建的元数据索引区所对应的一个第一随机数;或者,在对目标磁盘进行格式化操作时,确定通过所述格式化操作所创建的元数据索引区中存在的索引数据条数,生成目标数量的第一随机数,所述目标数量与所述条数的数量相同。14.根据权利要求9所述的装置,其特征在于,所述加密模块还用于:当需要在所安装的目标文件系统中存储目标视频时,对所述目标视频中的I帧进行加密,得到第三加密数据;相应地,所述存储模块还用于:将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化操作所创建的数据区,所述剩余视频帧为所述目标视频中除所述I帧外的视频帧。15.根据权利要求14所述的装置,其特征在于,还包括:获得模块;所述获得模块用于:在所述存储模块将所述第三加密数据,以及所述目标视频中的剩余视频帧,存储至通过所述格式化模块格式化操作所创建的数据区后,获得存储所述第三加密数据的数据块的第一编号,以及所述剩余视频帧的数据块的第二编号;基于所述第一随机数,对所述元数据索引区所存储的第一加密数据进行解密,获得第一解密数据;确定所述第一解密数据中所述第一编号所对应的第一目标数据,以及所述第二编号所对应的第二目标数据;利用所述I帧所对应的数据属性信息替换所述第一目标数据,并利用所述剩余视频帧的数据属性信息,替换所述第二目标数据,得到新的第一解密数据;生成所述新的第一解密数据所对应的第三随机数;基于所述第三随机数,对所述新的第一解密数据进行加密,获得新的第一加密数据。16.根据权利要求9所述的装置,其特征在于,所述格式化模块还用于通过所述格式化操作在目标磁盘上创建备用元数据引导区和备用元数据索引区;相应地,所述随机数生成模块还用于:生成所述备用元数据引导区对应的第四随机数,以及所述备用元数据索引区对应的第五随机数;所述加密模块还用于:基于所述第四随机数,对备用元数据引导区所存储的数据进行加密,得到第四加密数据;基于所述第五随机数,对备用元数据索引区所存储的数据进行加密,得到第五加密数据;所述存储模块还用于:将所述第四加密数据存储到所述备用元数据引导区;将所述第五加密数据存储到所述备用元数据索引区。

百度查询: 杭州海康威视数字技术股份有限公司 一种文件系统加密方法及装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。