Android用户分区的快速加密方法、装置和终端设备的制造方法

文档序号:8299367阅读:416来源:国知局
Android用户分区的快速加密方法、装置和终端设备的制造方法
【技术领域】
[0001]本发明实施例涉及通信领域,并且更具体地,涉及Android用户分区的快速加密方法、装置和终端设备。
【背景技术】
[0002]随着智能手机的功能越来越多,用户在手机上存储的内容也变得越来越丰富,包括各种照片、聊天记录等个人信息。一旦手机不慎丢失,那么这些隐私信息都会直接落入他人之手,非常的不安全,因此,提供一种对手机上的个人数据提供保护的安全方案变得尤为重要。
[0003]现有的安卓(Android)终端设备,数据存储分区多是基于Linux的ext4文件系统,它是针对块设备开发的一种日志文件系统,本身并不提供加密的功能。但是,Linux内核本身还提供了针对块设备的加密层功能(dm-crypto),它是一层位于块设备之上的加密层。因此,现有的Android系统,提供了基于dm_crypto和针对块设备文件系统(相对于YAFFS)的文件系统加密框架,可以将整个用户数据分区都进行数据加密。
[0004]但是由于该加密方案是利用块设备层上构建的加密层来完成加密,所以加密时无法识别出设备上存储数据是否有效,必须对整个分区进行加密,导致整个加密的过程较长(约I小时)。

【发明内容】

[0005]本发明实施例提供一种Android用户分区的快速加密方法、装置和终端设备,能够提高对Android用户分区的加密速度。
[0006]第一方面,提供了一种Andro i d用户分区的快速加密方法,该方法包括:创建Android终端设备的用户分区的加密层;根据该Android终端设备的内核中的ext4文件系统为该用户分区建立以块Block为单元的数据分布位图,其中,该数据分布位图用于表示该用户分区中Block的使用状态;根据该数据分布位图读取该用户分区中已使用的Block的原始数据;对该Block的原始数据进行加密;将该Block加密后的数据写回该用户分区中,覆盖该Block的原始数据。
[0007]结合第一方面,在第一种可能的实现方式中,根据所述Android终端设备的内核中的文件系统为所述用户分区建立以Block为单元的数据分布位图具体实现为:按照所述Android终端设备的内存缓冲区的大小,从根据所述Android终端设备的内核中的ext4文件系统循环读取所述用户分区的Block的使用状态,为所述用户分区建立以Block为单元的数据分布位图。
[0008]结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,根据所述Android终端设备的内核中的文件系统为所述用户分区建立以块Block为单元的数据分布位图具体实现为:分配并初始化所述用户分区的位图,其中,所述用户分区的位图中的位图数组与所述用户分区的Block—一对应,一个所述位图数组用于表示一个Block的使用状态匹配;根据所述Android终端设备的内核中的ext4文件系统中的Superblock信息,获取所述用户分区中每个对应的Block的使用信息;将所述用户分区中每个对应的Block的使用信息记录到所述用户分区的位图对应的位图数组中。
[0009]第二方面,提供了一种Android用户分区的快速加密装置,该装置包括:加密层生成单元,用于创建Android终端设备的用户分区的加密层;数据分布位图生成单元,用于根据该Android终端设备的内核中的ext4文件系统为该用户分区建立以块Block为单元的数据分布位图,其中,该数据分布位图用于表示该用户分区中Block的使用状态;加密单元,用于根据该数据分布位图读取该用户分区中已使用的Block的原始数据,并对该Block的原始数据进行加密,再将该Block加密后的数据写回该用户分区中,覆盖该Block的原始数据。
[0010]结合第二方面,在第一种可能的实现方式中,该数据分布位图生成单元具体包括:初始化子单元,用于分配并初始化该用户分区的位图,其中,该用户分区的位图中的位图数组与该用户分区的block—一对应,一个该位图数组用于表示一个block的使用状态匹配;块信息获取子单元,用于根据该android终端设备的内核中的ext4文件系统中的超级块superblock信息,获取该用户分区中每个对应的block的使用信息;块信息写入子单元,用于将该用户分区中每个对应的block的使用信息记录到该用户分区的位图对应的位图数组中。
[0011]第三方面,提供了一种Android终端设备,该终端设备包括第二方面或第二方面的第一种可能的实现方式中的装置。
[0012]基于以上技术方案,本发明实施例的快速加密方法、装置和终端设备,通过利用Android终端设备的文件系统记录的已使用的数据块的信息对Android终端设备的用户分区进行加密,避免在用户数据加密时也对无效数据进行加密,从而达到了缩短分区加密时间的效果。
【附图说明】
[0013]为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0014]图1是本发明实施例中终端设备的系统架构的一实施例示意图。
[0015]图2是本发明实施例Android用户分区的快速加密方法流程图。
[0016]图3是本发明实施例对Android用户分区进行加密的具体流程图。
[0017]图4是本发明实施例快速加密位图、超级块与块的关系示意图。
[0018]图5是本发明实施例创建快速加密图的具体流程图。
[0019]图6是本发明实施例快速加密装置的结构示意图。
[0020]图7是本发明实施例快速加密装置的另一结构示意图。
[0021]图8是本发明实施例终端设备的结构示意图。
[0022]图9是本发明实施例终端设备的另一结构示意图。
【具体实施方式】
[0023]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0024]终端(Terminal),可以称之为用户设备(User Equipment,简称“UE”)、用户等,可以经无线接入网(例如,Rad1 Access Network,简称“RAN”)与一个或多个核心网进行通信,可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。
[0025]超级块(Superblock),位于硬盘分区的开头部分,包括文件系统的总体信息,比如文件系统类型、挂载点、块大小(Block size)等文件系统信息(其准确信息依赖文件系统)。根据Superblock,可以确定硬盘分区中Block的使用信息。
[0026]第四代扩展日志式文件系统(The fourth extended file system,Ext4)是一种针对ext3系统的扩展日志式文件系统,是专门为Linux开发的原始的扩展文件系统(ext或extfs)的第四版。Android操作系统所采用的文件系统即为ext4文件系统。
[0027]图1本发明实施例中一种终端设备的结构示意图。以图1为例介绍本发明实施例提供的应用场景的识别
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1