基于Android系统的目标文件保护方法及装置
技术领域
本发明涉及信息安全技术领域,具体来说,涉及一种基于Android系统的目标文件保护方法及装置。
背景技术
目前Android已经占据全球移动操作系统市场的统治地位,并且还有继续增长的态势;随着Android的“疯狂生长”,安全问题也日益突显,表现为移动类恶意软件也呈现“疯狂生长”的态势,而此类恶意软件大多非法收集用户的个人信息及隐私数据;同时,针对目前通用的TF卡都是明文存储数据,而丢失手机后,很多个人数据或隐私都会外泄,造成不必要的损失,如果内含公司重要数据或商业机密,损失更大。其中,Google公司也注意到Android上日益突出的安全问题,在最新的Android架构中添加了对安全的支持与增强框架-SeAndroid,此框架可根据用户的不同安全策略的配置而实现系统的安全增强。
本发明就是在基于安全TF卡和SeAndroid框架的基础上,进行修改并定制了一套安全应用与敏感数据的保护机制来增强系统的安全。
发明内容
本发明的目的是提供一种基于Android系统的目标文件保护方法及装置,以克服目前现有技术存在的上述不足。
本发明的目的是通过以下技术方案来实现:
一种基于Android系统的目标文件保护方法,所述目标文件包括应用软件和数据文件,并且,所述Android系统上安装有安全TF卡,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,其中,所述安全TF卡根据PIN码和/或口令与当前用户进行认证,并在认证通过的情况下,判断当前用户为授权用户;允许当前用户向所述安全TF卡内存储数据,并且,所述目标文件保护方法包括:
对将要安装的应用软件和/或将要存储的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,将所述应用软件安装于所述安全TF卡内和/或将所述数据文件存储于所述安全TF卡内,促使所述安全TF卡对所述应用软件和/或所述数据文件进行保护。
进一步的,所述Android系统还安装有非安全TF卡,并且,所述应用软件安装方法还包括:
在判断结果为所述应用软件和/或数据文件为非安全文件的情况下,将所述应用软件安装于所述非安全TF卡内和/或将所述数据文件存储于所述非安全TF卡内。
进一步的,还包括:
对所述非安全TF卡内的应用软件和/或数据文件进行分析,判断该应用软件和/或数据文件是否为安全文件;
在判断该应用软件和/或数据文件为安全文件情况下,调取所述安全策略,并根据所述安全策略,将该应用软件安装于所述安全TF卡内和/或将该数据文件存储于所述安全TF卡内,促使所述安全TF卡对该应用软件和/或数据文件进行保护。
一种基于Android系统的目标文件保护方法,所述目标文件包括应用软件和数据文件,并且,所述Android系统上安装有安全TF卡,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,允许当前用户从所述安全TF卡内读取数据,并且,所述目标文件保护方法包括:
对将要启用的应用软件和/或将要读取的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,在所述安全TF卡内启用所述应用软件和/或读取所述数据文件。
进一步的,所述Android系统还安装有非安全TF卡,并且,所述应用软件启用方法还包括:
在判断结果为所述应用软件和/或数据文件为非安全文件的情况下,在所述非安全TF卡内启用所述应用软件和/或读取所述数据文件。
一种基于Android系统的目标文件保护装置,所述目标文件包括应用软件和数据文件,并且,所述目标文件保护装置包括:
安全TF卡,安装于所述Android系统上,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,允许当前用户向所述安全TF卡内存储数据;
分析模块,用于对将要安装的应用软件和/或将要存储的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
安装模块,用于在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,将所述应用软件安装于所述安全TF卡内和/或将所述数据文件存储于所述安全TF卡内,促使所述安全TF卡对所述应用软件和/或所述数据文件进行保护。
进一步的,还包括非安全TF卡,安装于所述Android系统上;
安装模块,还用于判断结果为所述应用软件和/或数据文件为非安全文件的情况下,将所述应用软件安装于所述非安全TF卡内和/或将所述数据文件存储于所述非安全TF卡内。
进一步的,还包括分析模块,还对所述非安全TF卡内的应用软件和/或数据文件进行分析,判断该应用软件和/或数据文件是否为安全文件;
安装模块,用于在判断该应用软件和/或数据文件为安全文件情况下,调取所述安全策略,并根据所述安全策略,将该应用软件安装于所述安全TF卡内和/或将该数据文件存储于所述安全TF卡内,促使所述安全TF卡对该应用软件和/或数据文件进行保护。
一种基于Android系统的目标文件保护装置,所述目标文件包括应用软件和数据文件,并且,所述目标文件保护装置还包括:
安全TF卡,安装于所述Android系统上,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,允许当前用户从所述安全TF卡内读取数据;
分析模块,用于对将要启用的应用软件和/或将要读取的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
启用模块,在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,在所述安全TF卡内启用所述应用软件和/或读取所述数据文件。
进一步的,还包括非安全TF卡,安装于所述Android系统上;
启用模块,还用于在判断结果为所述应用软件和/或数据文件为非安全文件的情况下,在所述非安全TF卡内启用所述应用软件和/或读取所述数据文件。
本发明的有益效果为:可根据用户的不同安全策略的配置,实现不同的系统策略,增强了安全性,有效的增加了适用范围,并且对于安全应用与敏感数据的保护更加有效和全面,有利于市场的推广与应用。
具体实施方式
根据本发明实施例的一种基于Android系统的目标文件保护方法,所述目标文件包括应用软件和数据文件,并且,所述Android系统上安装有安全TF卡,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,其中,所述安全TF卡根据PIN码和/或口令与当前用户进行认证,并在认证通过的情况下,判断当前用户为授权用户;允许当前用户向所述安全TF卡内存储数据,并且,所述目标文件保护方法包括:
对将要安装的应用软件和/或将要存储的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,将所述应用软件安装于所述安全TF卡内和/或将所述数据文件存储于所述安全TF卡内,促使所述安全TF卡对所述应用软件和/或所述数据文件进行保护。
进一步的,所述Android系统还安装有非安全TF卡,并且,所述应用软件安装方法还包括:
在判断结果为所述应用软件和/或数据文件为非安全文件的情况下,将所述应用软件安装于所述非安全TF卡内和/或将所述数据文件存储于所述非安全TF卡内。
进一步的,还包括:
对所述非安全TF卡内的应用软件和/或数据文件进行分析,判断该应用软件和/或数据文件是否为安全文件;
在判断该应用软件和/或数据文件为安全文件情况下,调取所述安全策略,并根据所述安全策略,将该应用软件安装于所述安全TF卡内和/或将该数据文件存储于所述安全TF卡内,促使所述安全TF卡对该应用软件和/或数据文件进行保护。
一种基于Android系统的目标文件保护方法,所述目标文件包括应用软件和数据文件,并且,所述Android系统上安装有安全TF卡,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,允许当前用户从所述安全TF卡内读取数据,并且,所述目标文件保护方法包括:
对将要启用的应用软件和/或将要读取的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,在所述安全TF卡内启用所述应用软件和/或读取所述数据文件。
进一步的,所述Android系统还安装有非安全TF卡,并且,所述应用软件启用方法还包括:
在判断结果为所述应用软件和/或数据文件为非安全文件的情况下,在所述非安全TF卡内启用所述应用软件和/或读取所述数据文件。
一种基于Android系统的目标文件保护装置,所述目标文件包括应用软件和数据文件,并且,所述目标文件保护装置包括:
安全TF卡,安装于所述Android系统上,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,允许当前用户向所述安全TF卡内存储数据;
分析模块,用于对将要安装的应用软件和/或将要存储的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
安装模块,用于在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,将所述应用软件安装于所述安全TF卡内和/或将所述数据文件存储于所述安全TF卡内,促使所述安全TF卡对所述应用软件和/或所述数据文件进行保护。
进一步的,还包括非安全TF卡,安装于所述Android系统上;
安装模块,还用于判断结果为所述应用软件和/或数据文件为非安全文件的情况下,将所述应用软件安装于所述非安全TF卡内和/或将所述数据文件存储于所述非安全TF卡内。
进一步的,还包括分析模块,还对所述非安全TF卡内的应用软件和/或数据文件进行分析,判断该应用软件和/或数据文件是否为安全文件;
安装模块,用于在判断该应用软件和/或数据文件为安全文件情况下,调取所述安全策略,并根据所述安全策略,将该应用软件安装于所述安全TF卡内和/或将该数据文件存储于所述安全TF卡内,促使所述安全TF卡对该应用软件和/或数据文件进行保护。
一种基于Android系统的目标文件保护装置,所述目标文件包括应用软件和数据文件,并且,所述目标文件保护装置还包括:
安全TF卡,安装于所述Android系统上,并且所述Android系统内封装有安全TF卡的安全策略,所述安全策略用于在当前用户为授权用户的情况下,允许当前用户从所述安全TF卡内读取数据;
分析模块,用于对将要启用的应用软件和/或将要读取的数据文件进行分析,判断所述应用软件和/或数据文件是否为安全文件;
启用模块,在判断结果为所述应用软件和/或数据文件为安全文件的情况下,调取所述安全策略,并根据所述安全策略,在所述安全TF卡内启用所述应用软件和/或读取所述数据文件。
进一步的,还包括非安全TF卡,安装于所述Android系统上;
启用模块,还用于在判断结果为所述应用软件和/或数据文件为非安全文件的情况下,在所述非安全TF卡内启用所述应用软件和/或读取所述数据文件。
具体应用时,首先,将应用和数据从安全角度分为两类:安全应用和敏感数据与非安全应用和非敏感数据,而具体的定义者可为普通用户定义,也可为某一机构定义。如果为普通用户,其对安全应用和敏感数据与非安全应用和非敏感数据的定义完全取决于个人喜好;而对于机构而言,其对安全应用和敏感数据与非安全应用和非敏感数据的定义取决于机构对安全的规定与标准。
其次,基于对应用从安全方面的分类,实现安全的原则,在安装时,将安全应用安装于安全TF卡,非安全应用安装于非安全的TF卡或手机内部的存储空间上;在运行时,安全应用只可访问安全TF卡上的内容,不可访问通用TF卡上内容,而非安全应用只可访问通用TF卡上的内容;安全应用与非安全应用从运行时进行了完全的隔离;
再次,对于数据,存放于安全TF卡的为敏感数据,需要保护;存放于通用存储位置的数据为非敏感数据;对于存放于安全TF卡上的敏感数据,只可被系统和安全TF卡上的应用访问;其中,非安全应用无权访问敏感数据。
最后,所谓安全TF卡,封装了密码模块、SD卡控制器和Flash,接口形式为标准TF卡形式。
基于以上前提及原则,为了实现以上方案,为了支持安全TF卡,修改TF卡的驱动,使之能上报密码输入事件,并在Framework层实现相应的事件上报并弹出信息框,并接收用户的密码输入;如果安全TF卡为未使用过的新卡,需要为安全TF卡设置密码。
为了修改安全TF卡的密码,需要在系统菜单中添加一个子项,即修改安全TF卡密码;而此修改动作必须被手机PIN码保护,只有在输入正确手机PIN码及原TF卡的情况下,才允许设置新的安全TF卡密码;为了保证密码的安全性,要求密码的长度不少于8位数字与字母的组合。
为了实现安全应用安装到安全TF卡上,修改android的安装流程,使之能弹出菜单,让用户选择此APK的安装位置。而对于选择了要求安装于安全TF卡的应用,要检查安全TF卡的密码;同时配置此应用的访问权限,使其只能访问安全TF卡上的内容,而无法访问通用TF卡的内容。
为了实现安全应用与非安全应用的隔离,要修改Android系统中的安全策略,使安全TF卡与通用TF卡基于两种不同的安全策略来管理。同时在安装过程中,根据此APK为安全应用还是非安全应用而打开不同TF卡的使用权限。在external/sepolicy文件夹下新增两个安全配置文件:一个配置安全TF卡的权限; 一个配置安装在安全应用的权限。
为了实现敏感数据与安全应用的有权限访问,在开机过程中,只有输入正确的安全TF卡密码,才加载安全TF卡上的文件系统。
为了实现对敏感数据的操作,需要修改Android系统的文件浏览器,使其在开机安全TF卡密码输入正确的情况下加载安全TF卡上的文件系统及其中的内容。
其中,本发明例举以下实施例进行详细说明:
实施例1:安全应用和非安全应用的安装过程如下:
1)下载安装APK文件并触发安装;
2)Android终端的系统提示是否需要安装此APK到安全TF卡上, 即确认此APK为安全应用还是非安全应用;
3)根据用户选择做出不同选择:如果此APK为非安全应用,将此APK安装到普通存储区域,即为非安全TF卡,并设置相应的权限;如果此APK为安全应用,参照后续安装流程;
4)输入安全TF卡的预设密码,密码错误即终止安装;密码正确,继续后续安装过程。
5)安装安全应用到TF卡内,并设置相应的权限。
实施例2:安全应用和非安全应用的使用过程:
1)安全应用在使用时与非安全应用无差异,但用户无法感知调用安全TF卡的应用或访问其上面的数据;
2)安全应用在使用时,可根据需要设置是否输入TF卡的密码,如果需要,则在每次启动安全应用(安装在安全TF卡上的应用)时,都需要用户输入密码;否则无法使用安全TF卡上的应用与数据;
3)每次开机启动都需要输入安全TF卡的密码,密码输入不正确,则无法使用此安全TF卡的应用和访问其存储其上的数据。
实施例3:安全应用和非安全应用的删除过程:
1)非安全应用的删除与通常在Android手机上的删除操作无差异;
2)安全应用的删除强制要求每次输入安全TF卡的密码,防止无权限使用者或误操作删除安全应用和被保护的数据。
实施例4:敏感数据存储、更新和删除过程:
1)只有开机过程中,安全TF卡输入正确密码后,系统才会加载和显示其中的数据;而对其存储,更新和删除与存放于通用TF卡上内容无差;
2)但是对于安全TF卡上的敏感数据,不提供拷贝或移动到非安全TF卡上的接口,即敏感数据无法从安全TF卡向非安全存储区域(非安全TF卡)流动;但是非安全存储区域(非安全TF卡)的数据内容可被拷贝或移动到安全TF卡内,即通用数据被当作敏感数据来保护。
3)只有安全应用才可访问安全TF卡的敏感数据,非安全应用无权访问安全TF卡内的敏感数据。
本发明可根据用户的不同安全策略的配置,实现不同的系统策略,增强了安全性,有效的增加了适用范围,并且对于安全应用与敏感数据的保护更加有效和全面,有利于市场的推广与应用。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。