安卓系统机密性完整性增强访问控制系统的制作方法
【专利摘要】本发明属于移动通信设备【技术领域】,具体为一种基于密码学和策略驱动的安卓机密性完整性增强访问控制系统。本发明对安卓系统进行改进,以提升系统机密性完整性保护目标,实现了基于现有安全机制的安卓系统增强访问控制系统。改进的安卓访问控制系统包括联系人管理模块、短信管理模块、感知来源控制模块、策略管理模块以及密钥管理模块,各个模块之间相互协作,最终实现安卓用户数据访问和感知模块访问的安全性。此外,本发明可用于安卓用户的操作系统,以实现在不同场景下对个人数据以及对感知来源进行不同的保护设置,有助于简化安全策略管理的复杂度。
【专利说明】安卓系统机密性完整性增强访问控制系统
【技术领域】
[0001]本发明属于移动通信设备【技术领域】,具体涉及一种基于密码学和策略驱动的安卓机密性完整性增强访问控制系统。
【背景技术】
[0002]近年来,移动互联网终端设备,如智能手机、平板电脑等,数量正呈现急剧的增长。用户在移动智能设备上存放了大量的隐私数据,比如:联系人、短信等。国内众多电信运营商、设备制造商、互联网企业等,均可基于安卓系统的开放性进行“二次加工”,搭建各自的应用商城,集聚移动互联网用户。但是,由于各个“应用商城”运营方缺乏有力的程序安全审查机制与检测手段,以获取用户隐私信息为目的的程序大量涌现,有可能导致大量用户隐私泄露。
[0003]安卓系统访问控制机制分为两大类,一类是继承自Linux内核的安全机制,另一类是安卓特有的安全机制。Linux内核安全机制包括POSIX用户机制和文件访问机制;安卓特有安全机制包括应用程序权限机制、组件封装机制、应用程序签名机制、Dalvik虚拟机机制。目前的安卓系统访问控制存在以下安全隐患:
威胁1:root权限的安全隐患:当安卓设备与计算机建立连接之后,计算机能以root身份登录安卓设备,会给设备的应用程序和用户数据造成安全隐患。
[0004]威胁2:物理接触存储卡情况下的敏感数据泄露:当用户手机无法正常操作时,需要送到维修部修理,修理员可以直接通过存储卡读取敏感数据。
[0005]威胁3:恶意应用程序盗取敏感数据:恶意应用程序通过API接口直接获取存储在设备中的数据,甚至通过传感器如麦克风获取用户周边数据,然后转发给其他应用或者网络服务。
[0006]为了应对这些威胁,我们需要在安卓原有访问控制机制的基础上,设计对应的高层安全策略,加强对安卓用户敏感数据的访问控制。
[0007]近年来,越来越多的人开始研究智能手机上的隐私数据保护和安全存储,但这些方案都存在一些问题。
[0008]已有的全磁盘加密技术,比如面向安卓的硬盘加密应用WhisperCore,加密耗费的计算开销较大,而移动设备的资源比较宝贵,计算能力较弱,导致效率比较低下。而我们的方案是轻量级的,带来的消耗很小。此外,全磁盘加密不能进行细粒度数据访问控制,在没有密钥的情况下,无法进行移动设备的正常操作,比如对未加密的联系人进行修改和访问
坐寸ο
[0009]目前大部分的系统都是基于安卓平台开发的第三方应用,权限级别较低,容易被属于同一级别的其他应用程序攻击。且加解密操作在系统上层进行,隐私数据容易被其他攻击者获取。由于需要额外的软件进行操作,增加了操作复杂性,并且没有考虑对安卓系统原本内置的短信、联系人相关功能的支持,比如,收到短信的提醒信息会出现两次,安卓系统提醒一次,第三方软件提醒一次,因此导致易用性下降,用户体验较差。[0010]现有的一些移动设备安全软件提供的隐私空间功能仅仅是通过加锁功能保证隐私数据不能被随意查看,但没有对系统底层的数据(比如数据库中的数据)进行加密保护。这些数据依然是完整地保存在设备上,且在数据库中是明文存储的,容易被窃取。
[0011]现有的很多方案都是粗粒度的管理,用户不能对对资源进行自定义的加密配置。t匕如,中国专利文献号CN 103106372 A,公开了一种《用于安卓系统的轻量级隐私数据加密方法及系统》,它针对敏感文件集,对短信、联系人等的整个数据库文件进行加密。首先,它是粗粒度的,只能针对全部短信集和全部联系人集进行加密。其次是没有对数据库中存储的数据进行加密。一旦被破解,就能很轻易地拿到所有明文数据。并且它采用库外加密,将整个数据库文件当作普通文件加密存储,使得数据库的读写都比较麻烦,每次写入读入都要对整个数据文件进行加解密的工作,导致程序编写和数据库读写的速率都会下降。
【发明内容】
[0012]本发明的目的是对安卓系统做改进,以提升系统中数据机密性与完整性,提供一种安卓系统机密性完整性增强访问控制系统。
[0013]本发明中,安卓系统机密性完整性增强访问控制系统利用了加密技术和细粒度策略实现了安卓系统中敏感数据和感知来源的细粒度保护。具体来说,本系统能够为用户提供敏感数据如联系人列表、短信等个人信息的机密性完整性机制,解决安全存储和备份问题,并实现细粒度感知来源控制。
[0014]本发明提出一种基于密码学和策略驱动的安卓机密性完整性增强访问控制系统。
[0015]在数据访问控制方面,设计基于密码学的数据访问控制机制,包括:
(1)采用对称加密算法加密敏感数据,如联系人列表,个人短信,从而解决其敏感数据的存储安全;
(2)设计并实现基于身份数据的密钥管理子系统,利用主密钥模式产生各种子密钥,分别对敏感数据进行加密。
[0016]与文件加密不同的是,在这里需要进行更加细粒度的数据库加解密操作,以实现对安卓敏感数据的机密性和完整性保护。
[0017]在感知模块访问控制方面,对敏感数据设备,如位置传感器、麦克风等进行分类,实施细粒度的基于策略的访问控制机制,在系统层实现基于访问控制策略执行下的数据设备隔尚。
[0018]本发明设计的安卓系统机密性完整性增强访问控制系统,包括如下五个模块,分别是联系人管理模块、短信管理模块、感知来源控制模块、策略管理模块和密钥管理模块。
[0019]本发明的安卓访问控制系统,旨在实现对安卓设备三个子模块的控制,即:联系人管理模块、短信管理模块和感知来源控制模块。系统还定义了两个管理模块来实现系统功能,分别是策略管理模块以及密钥管理模块。在策略管理模块中,用户可以指定联系人、短信的加解密策略以及对于感知来源的细粒度控制策略;在密钥管理模块中,初始化安卓设备时,用户可以获取联系人以及短信应用的初始化密钥。
[0020]下面对这五个模块的详细功能进行分析说明。
[0021]联系人管理模块:该模块用于查看联系人列表、添加联系人、删除联系人、分享联系人、搜索联系人、同步联系人以及编辑联系人。持有密钥的用户可以获得所有联系人的明文信息,并且可以对任意联系人的任意字段进行是否要加解密的设置;而没有持有密钥的用户可以且只能看到加密后的内容且不能进行加解密设置。
[0022]短信管理模块:该模块用于查看短信,以及短信进行发送、接收、删除、查询操作。用户对草稿箱中短信可以进行修改、发送、删除操作。持有密钥的用户可以获得所有短信的明文信息,并且动态设置短信是否加密;而没有持有密钥的用户可以且只能看到加密后的短信内容。
[0023]感知来源控制模块:该模块用于在框架层对安卓设备的感知来源包括麦克风、位置传感器、蓝牙、WIF1、移动网络、摄像头、喇叭、震动传感器进行权限设置,预置场景以及设定场景。权限开启的感知来源能被系统应用和第三方应用正常使用,权限关闭的感知来源会禁止被应用程序所调用。具体包括:
(1)设置感知权限,用户可以开启或者关闭安卓设备中的感知来源;
(2)预置场景,用户可以新建一些场景供自己在特殊情况下使用,场景中规定了感知来源的状态,用户可以修改场景中的感知来源状态,也可以将一个场景删除;
(3)设定场景,用户选择一个场景并且应用,感知来源根据场景中的设置呈开启或者关闭状态。
[0024]策略管理模块:该模块用于对联系人和短信的加解密策略以及感知来源的控制策略进行管理,联系人和短信应用根据各自的加解密策略选择加载明文或者密文信息,并根据策略对安卓设备上感知来源进行控制。具体包括:
(1)管理联系人加解密策略,用户设置需要加密的联系人字段,系统根据联系人加解密策略对联系人数据进行加解密操作;
(2)管理短信加解密策略,用户选择需要加解密处理的联系人,系统会将出现在短信加解密策略中的与联系人相关(包括作为收件人和发件人)的短信进行加解密操作;
(3)管理感知来源控制策略,用户设置开启或者关闭安卓设备中的感知来源。
[0025]密钥管理模块:该模块初始化时,提示用户输入初始口令,系统根据初始口令生成联系人和短信密钥,用户还可以进行密钥的修改。
[0026]在系统初始化中,需要对密钥进行初始化工作,系统利用密钥对联系人数据和短信数据进行加解密操作。具体包括:
(1)初始化密钥,在安卓设备启动时,根据用户输入的口令设置一个系统密钥,继而产生联系人密钥和短信密钥用于数据的加解密;
(2)修改密钥,用户可以选择对密钥进行修改。
[0027]综上所述,安卓访问控制系统主要通过各个模块之间的相互协作,即策略库中的策略规定了感知来源、联系人、短信的管理策略,通过策略管理模块调整策略库中的内容,密钥管理模块生成管理联系人以及短信应用所需要的密钥来实现安卓系统机密性完整性增强访问控制方法与系统。
[0028]技术效果
本发明提出的方案是轻量级的,只需对相关隐私数据和感知来源进行保护,带来的开销较小。
[0029]本发明是细粒度,通过对加解密和访问控制的策略管理,使用户能够针对不同短信、不同联系人的不同内容以及不同感知来源进行自行配置,支持动态加密解密,从而实现个性化设定,具有较好的易用性。
[0030]由于本发明是基于安卓系统做改进,加解密操作在系统底层进行,权限级别较高,可抵御上层应用程序攻击。
[0031]本发明中用到的数据库加密为库内加密,具体来说是,对于数据库中的数据,以字段为单位进行加密。这样每读写一条记录只需对该记录的字段进行加解密的操作,对于不需要访问到的记录,完全不需要进行任何操作,从而提高数据库读写的速度,具有较高的效率。
[0032]本发明在安卓原有系统上做改进,没有改变系统原有API的调用方式,并且功能完备,支持所有与联系人和短信相关的系统自带功能,即在安卓系统中嵌入加解密模块,同时不影响系统原来的功能的使用。从而保证操作方便,具有较好的用户体验,与安卓系统具有很高的契合度,具有良好的兼容性。
[0033]进一步来说,本发明中,安卓系统机密性完整性增强访问控制系统具有良好的用户界面以及交互性,尽可能减少用户的操作性,同时对用户的数据进行严格的保护。并且对项目进行了代码优化,确保其拥有较好的性能,尽可能减少用户交互的等待时间;还有多处采用了异常处理的机制,当遇到异常时不但能及时地处理,保证程序的安全性和稳定性,并且各种出错信息能通过弹出对话框的形式,及时地告诉用户出错的原因以及解决的办法,使得用户以后能减少出错的发生。
[0034]本发明所设计的安卓系统机密性完整性增强访问控制系统实现了基于场景的安全策略设置,降低了安卓用户敏感数据的访问控制策略设置的难度,因此拥有良好的应用前景。
【专利附图】
【附图说明】
[0035]图1为安卓系统机密性完整性增强访问控制系统总体架构图。
[0036]图2为联系人加密的数据流图。
[0037]图3为联系人解密的数据流图。
[0038]图4为管理联系人加解密策略流程图。
[0039]图5为策略模型的基本结构图。
[0040]图6为密钥生成原理图。
【具体实施方式】
[0041]下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0042]安卓系统机密性完整性增强访问控制方法与系统在安卓设备上的实现主要是面向安卓用户的操作系统,用户只需要在初始化密钥和控制策略后,使用设备进行联系人通讯录和个人短信数据的添加,更新,删除;对感知来源包括麦克风、位置传感器、蓝牙、WIF1、移动网络、摄像头、喇叭、震动传感器的控制。通过这些基本的安卓设备操作就可实现在不同场景下对个人数据的保护,并能在不同场景下对感知来源进行不同的设置。
[0043]在本发明实施例中,系统的总体架构图如图1所示。由图1可见,本系统分为五个子模块:联系人管理模块,短信管理模块,感知控制模块、策略管理模块以及密钥管理模块。
[0044]一、联系人管理模块设计
联系人管理主要实现了:查看联系人列表、添加联系人、删除联系人、分享联系人、搜索联系人、同步联系人以及编辑联系人。该模块在加解密策略的驱动下,对联系人数据进行加解密操作,以保护联系人数据的安全性。
[0045]联系人加密的数据流图如图2所示,具体过程是:用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中。当用户新建新的联系人后,保存新建联系人数据时,联系人应用触发对策略库的检索,获取联系人的加密规则,验证用户的联系人密钥成功后,依据加密规则加密联系人的数据,将加密后的密文联系人数据保存于联系人数据库中。
[0046]联系人解密的数据流图如图3所示。具体过程是:用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中。当用户试图查看联系人信息时,联系人应用触发对策略库的检索,获取联系人的加密规则,验证用户的联系人密钥成功后,解密联系人的数据,最终显示联系人的明文信息。
[0047]在添加联系人功能中,用户点击添加联系人按钮可以添加联系人信息。首先用户需要获取联系人密钥,然后在策略库中获取联系人加解密策略,当用户选择保存时,系统根据联系人加解密策略将联系人信息中需要加密的字段加密处理存储至本地数据库中。
[0048]在查看联系人功能中,用户可以选择某一个联系人查看其具体信息,由于联系人信息的部分字段是根据联系人加解密策略进行加密处理的,所以用户如果想要查看到完整的明文信息,首先需要获取联系人密钥,对联系人的加密信息进行解密操作。
[0049]在编辑联系人功能中,用户还可以在查看联系人信息界面中点击修改按钮,对联系人进行编辑,首先用户需要获取联系人密钥,若获取成功,则可以对联系人的所有字段进行修改,若没有获取成功,那么用户只能对联系人的明文字段进行修改,密文信息将是不可编辑状态。
[0050]二、短信管理模块设计
短信管理模块主要分为四个子模块:撰写短信子模块、短信箱子模块、草稿箱子模块和接收短信子模块。这四个模块主要实现了如下的功能,包括:接收短信,发送短信,删除短信,对草稿箱内的短信进行编辑、删除或者发送,搜索短信。
[0051]在短信管理模块中,安卓访问控制系统通过对短信的加解密来保证用户短信操作的安全性,短信的加密数据流图可参考联系人的加密数据流图(图2)。具体过程是:用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中。当安卓设备从另一台设备接收到一条短信时,或者需要发送撰写好的短信时,短信应用试图将短信存储于数据库中,触发对策略库的检索,获取相应联系人的短信加密规则,验证用户的短信密钥成功后,选择对该联系人的短信进行加密或者直接保存,最终存储于数据库中。
[0052]在读取短信时,首先进行短信解密,短信的解密数据流图可参考联系人的解密数据流图(图3)。具体过程是:用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中。当用户试图查看短信箱内的短信时,短信应用触发对策略库的检索,获取相应短信的加密规则,验证用户的短信密钥成功后,解密短信数据,最终显示短信的明文信肩、O[0053]在撰写短信子模块中,用户编辑短信内容后点击发送后,短信模块验证选择的收件人是否出现在短信加解密列表中,如果是,则需要先获取短信密钥,如果获取成功,则进入短信发送服务,网络正常时,短信发送成功。
[0054]在短信箱子模块中,可以查看、搜索以及删除短信。用户进入短信应用主菜单后,短信应用提示“是否验证密钥”,选择“是”后,如果密钥验证成功,用户可以查看到所有的短信,否则只能看到短信箱内的明文短信以及未解密的密文短信。
[0055]搜索短信功能中,用户在搜索框内输入关键词,提示“是否验证密钥”,选择“是”后,如果密钥验证成功,选择所有短信搜索结果,否则只显示数据库中明文短信搜索结果。
[0056]在接收短信子模块中,当安卓设备从另一个设备接收到一条短信时,屏幕高亮提示接收到短信,提示“是否验证密钥”,选择“是”后,如果密钥验证成功,此时若发件人在短信加解密列表中,则加密存储短信,保存至短信箱内,否则明文存储短信。
[0057]三、感知来源控制模块设计
在该模块中,手机用户可以在安卓框架层对安卓设别的感知来源包括麦克风、位置传感器、蓝牙、WIF1、移动网络、摄像头、喇叭、震动传感器进行权限设置,预置场景以及设定场
旦
-5^ O
[0058]在设置感知权限中,用户进入设置感知权限界面,可以选择将感知来源的状态设置为开启或者关闭,并且立即生效,完成设置后退出界面。
[0059]在预置场景中,用户可以新建、修改、删除场景。新建场景:用户点击新建按钮,在感知来源列表中设置感知来源的状态(开启或者关闭),用户选择保存该场景则提示输入场景名称,系统询问用户是否需要·马上应用该场景,选择是则系统根据场景设置感知来源状态并且提示用户设置成功;修改场景:用户点击修改按钮,在场景列表中选择需要修改的场景,在感知来源列表中设置感知来源的状态(开启或者关闭),用户选择保存该场景则提示输入场景名称,系统询问用户是否需要马上应用该场景,选择是则系统根据场景设置感知来源状态并且提示用户设置成功;删除场景:用户点击删除按钮,在场景列表中选择需要删除的场景,确认删除。
[0060]在设定场景中,用户点击设定场景按钮,在场景列表汇总选择需要设定的场景,并且确认使用该场景,系统提示设定成功,感知来源状态发生改变,退出设定界面。
[0061]四、策略管理模块设计
在策略管理模块中,用户需要对联系人和短信的加解密策略以及感知来源访问控制策略进行管理。联系人和短信应用根据各自的加解密策略选择加载明文或者密文信息,并根据策略对安卓设备上感知来源进行细粒度访问控制。
[0062]以管理联系人加解密策略为例,流程图如图4所示。具体过程是:用户进入管理界面后,用户需要获取短信密钥,获取成功后,用户选择需要加密的联系人,点击激活按钮,用户确认激活策略,系统加载原有的短信策略对本地数据库中的短信数据进行解密,再将短信数据依据新的加解密策略进行加密存储。若用户获取密钥失败,则提示获取密钥失败并退出。
[0063]策略模型的基本结构如图5所示。图中实线框代表必须存在、数量至少为一的元素,虚线框代表可能不存在的元素;若元素数量可为多个,则用下标I...(一至多个)或0...(O至多个)来表示。管理策略被组织成〈策略集 >、〈策略 >、〈规则 > 的三层结构,前者可包含一至多条的后者,同时〈策略集 > 可以内嵌零至多条的〈策略集>。
[0064]五、密钥管理模块设计
在系统初始化中,需要对密钥进行初始化工作,系统利用密钥对联系人数据和短信数据进行加解密操作。
[0065]密钥生成的原理图如图6所示。初始化安卓设备时,用户输入初始口令,密钥管理模块对初始口令采取SHA-256算法加密后保存,对初始口令+联系人特定字段+安卓设备号采取SHA-256算法加密后取前128位作为联系人应用的密钥;对初始口令+短信特定字段+安卓设备号采取SHA-256算法加密后取前128位作为短信应用的密钥。
[0066]初始化密钥过程:安卓设备启动后会提示用户是否使用安全模式,若用户选择是则系统判断该设备是否第一次使用,如果是初次使用则会提示用户设置口令,系统根据用户口令会生成一个系统密钥,在根据系统密钥生成联系人和短信密钥,并且使用这些密钥加密本地数据库中的联系人和短信数据;若设备不是第一次使用,那么将进入一个验证口令过程,提示用户输入口令,根据用户输入的口令验证系统密钥,若验证成功则进入生成密钥等过程;若用户选择不使用安全模式或者系统验证密钥失败,则联系人和短信中显示密文数据。
[0067]修改密钥过程:用户进入修改密钥界面,输入口令,系统根据口令验证系统密钥是否成功,若验证成功则获取联系人和短信的加解密策略,若获取加解密策略成功,提示用户设置新口令,系统根据新口令生成新的联系人密钥和短信密钥,系统使用旧的联系人和短信密钥根据加解密策略将本地数据库中的数据解密,再使用新生成的联系人和短信密钥将数据加密存储;若验证系统密钥失败,则提示用户口令输入错误;若获取加解密策略失败,则提示用户获取加解密策略失败。
【权利要求】
1.一种安卓系统机密性完整性增强访问控制系统,其特征在于包括如下五个模块,分别是联系人管理模块、短信管理模块、感知来源控制模块、策略管理模块和密钥管理模块;系统对三个模块即:联系人管理模块、短信管理模块和感知来源控制模块实施控制;系统定义两个管理模块来实现系统功能,分别是策略管理模块以及密钥管理模块;在策略管理模块上,用户可以指定联系人、短信的加解密策略以及对于感知来源的细粒度访问控制策略;在密钥管理模块上,初始化安卓设备时,用户可以设置联系人以及短信应用的初始化密钥,并可修改密钥;其中: 所述联系人管理模块,用于查看联系人列表、添加联系人、删除联系人、分享联系人、搜索联系人、同步联系人以及编辑联系人;持有密钥的用户可以获得所有联系人的明文信息,并且可以对任意联系人的任意字段进行是否要加解密的设置;而没有持有密钥的用户可以且只能看到加密后的内容且不能进行加解密策略设置; 所述短信管理模块,用于查看短信,以及对短信进行发送、接收、删除、查询操作;用户可以对草稿箱中短信进行修改、发送、删除操作;持有密钥的用户可以获得所有短信的明文信息,并且动态设置短信是否加密;而没有持有密钥的用户可以且只能看到加密后的短信内容; 所述感知来源控制模块,用于在框架层对安卓设备的感知来源包括麦克风、位置传感器、摄像头、喇叭、震动传感器进行细粒度权限设置,预置场景以及设定场景;权限开启的感知来源能被系统应用和第三方正常使用,权限关闭的感知来源会禁止被应用程序所调用,具体包括: (1)设置感知权限,用户可以开启或者关闭安卓设备中的感知来源; (2)预置场景,用户可以新建一些场景供自己在特殊情况下使用,场景中规定了感知来源的状态,用户可以修改场景中的感知来源状态,也可以将一个场景删除; (3)设定场景,用户选择一个场景并且应用,感知来源根据场景中的设置呈开启或者关闭状态; 所述策略管理模块用于对联系人和短信的加解密策略以及感知来源的控制策略进行管理,联系人和短信应用根据各自的加解密策略选择加载明文或者密文信息,并根据策略对安卓设备上感知来源进行细粒度访问控制,具体包括: (1)管理联系人加解密策略,用户设置需要加密的联系人字段,系统根据联系人加解密策略对联系人数据进行加解密操作; (2)管理短信加解密策略,用户选择需要加解密处理的联系人,系统会将出现在短信加解密策略中的与联系人相关的短信进行加解密操作; (3)管理感知来源控制策略,用户设置开启或者关闭安卓设备中的感知来源; 所述密钥管理模块,用于在系统初始化中,对密钥进行初始化工作,设置对联系人数据和短信数据进行加解密操作所需的密钥;并可修改密钥;具体包括: (1)初始化密钥,在安卓设备启动时,根据用户输入的口令设置一个系统密钥,继而产生联系人密钥和短信密钥用于数据的加解密; (2)修改密钥,用户可以选择对密钥进行修改。
2.根据权利要求1所述的安卓系统机密性完整性增强访问控制系统,其特征在于: 所述联系人管理模块在加解密策略的驱动下,对联系人数据进行加解密操作,以保护联系人数据的安全性,实现了:查看联系人列表、添加联系人、删除联系人、分享联系人、搜索联系人、同步联系人以及编辑联系人;其中: 联系人加密的数据流具体过程是:用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中;当用户新建新的联系人后,保存新建联系人数据时,联系人应用触发对策略库的检索,获取联系人的加密规则,验证用户的联系人密钥成功后,依据加密规则加密联系人的数据,将加密后的密文联系人数据保存于联系人数据库中; 联系人解密的数据流具体过程是:用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中;当用户试图查看联系人信息时,联系人应用触发对策略库的检索,获取联系人的加密规则,验证用户的联系人密钥成功后,解密联系人的数据,最终显示联系人的明文信息; 在添加联系人功能中,用户点击添加联系人按钮可以添加联系人信息;首先用户需要获取联系人密钥,然后在策略库中获取联系人加解密策略,当用户选择保存时,系统根据联系人加解密策略将联系人信息中需要加密的字段加密处理存储至本地数据库中; 在查看联系人功能中,用户可以选择某一个联系人查看其具体信息,由于联系人信息的部分字段是根据联系人加解密策略进行加密处理的,所以用户如果想要查看到完整的明文信息,首先需要获取联系人密钥,对联系人的加密信息进行解密操作; 在编辑联系人功能中,用户还可以在查看联系人信息界面中点击修改按钮,对联系人进行编辑,首先用户需要获取联系人密钥,若获取成功,则可以对联系人的所有字段进行修改,若没有获取成功 那么用户只能对联系人的明文字段进行修改,密文信息将是不可编辑状态。
3.根据权利要求1所述的安卓系统机密性完整性增强访问控制系统,其特征在于:所述短信管理模块分为四个子模块:撰写短信子模块、短信箱子模块、草稿箱子模块和接收短信子模块;这四个子模块在加解密策略的驱动下,通过对短信的加解密操作来保证用户短信操作的安全性,实现了:接收短信,发送短信,删除短信,对草稿箱内的短信进行编辑、删除或者发送,搜索短信;其中: 短信加密数据流具体过程是:用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中,当安卓设备从另一台设备接收到一条短信时,或者需要发送撰写好的短信时,系统试图将短信存储于数据库中,触发对策略库的检索,获取相应联系人的短信加密规则,验证用户的短信密钥成功后,选择对该联系人的短信进行加密或者直接保存,最终存储于数据库中; 短信解密数据流具体过程是:在读取短信时,首先进行短信解密;用户在策略管理模块制定联系人加解密策略后,安全管理策略存储在策略库中;当用户试图查看短信箱内的短信时,短信应用触发对策略库的检索,获取相应短信的加密规则,验证用户的短信密钥成功后,解密短信数据,最终显示短信的明文信息; 在撰写短信子模块中,用户编辑短信内容后点击发送后,短信模块验证选择的收件人是否出现在短信加解密列表中,如果是,则需要先获取短信密钥,如果获取成功,则进入短信发送服务,网络正常时,短信发送成功; 在短信箱子模块中,可以查看、搜索以及删除短信;用户进入短信应用主菜单后,短信应用提示“是否验证密钥”,选择“是”后,如果密钥验证成功,用户可以查看到所有的短信,否则只能看到短信箱内的明文短信以及未解密的密文短信; 搜索短信功能中,用户在搜索框内输入关键词,提示“是否验证密钥”,选择“是”后,如果密钥验证成功,选择所有短信搜索结果,否则只显示数据库中明文短信搜索结果; 在接收短信子模块中,当安卓设备从另一个设备接收到一条短信时,屏幕高亮提示接收到短信,提示“是否验证密钥”,选择“是”后,如果密钥验证成功,此时若发件人在短信加解密列表中,则加密存储短信,保存至短信箱内,否则明文存储短信。
4.根据权利要求1所述的安卓系统机密性完整性增强访问控制系统,其特征在于: 所述感知来源控制模块中,在设置感知权限时,用户进入设置感知权限界面,可以选择将感知来源的状态设置为开启或者关闭,并且立即生效,完成设置后退出界面; 在预置场景中,用户可以新建、修改、删除场景;其中,新建场景:用户点击新建按钮,在感知来源列表中设置感知来源的状态,用户选择保存该场景则提示输入场景名称,系统询问用户是否需要马上应用该场景,选择是则系统根据场景设置感知来源状态并且提示用户设置成功;修改场景:用户点击修改按钮,在场景列表中选择需要修改的场景,在感知来源列表中设置感知来源的状态,用户选择保存该场景则提示输入场景名称,系统询问用户是否需要马上应用该场景,选择是则系统根据场景设置感知来源状态并且提示用户设置成功;删除场景:用户点击删除按钮,在场景列表中选择需要删除的场景,确认删除; 在设定场景中,用户点击设定场景按钮,在场景列表选择需要设定的场景,并且确认使用该场景,系统提示设定成功,感知来源状态发生改变,退出设定界面。
5.根据权利要求1所述的安卓系统机密性完整性增强访问控制系统,其特征在于: 所述策略管理模块中,用户对联系人和短信的加解密策略进行管理,其中: 管理联系人加解密策略的具体过程是:用户进入管理界面后,用户需要获取短信密钥,获取成功后,用户选择需要 加密的联系人,点击激活按钮,用户确认激活策略,系统加载原有的短信策略对本地数据库中的短信数据进行解密,再将短信数据依据新的加解密策略进行加密存储;若用户获取密钥失败,则提示获取密钥失败并退出; 管理策略被组织成〈策略集 >、〈策略 >、〈规则 > 的三层结构,前者包含一至多条的后者,同时〈策略集 > 内嵌零至多条的〈策略集>。
6.根据权利要求1所述的安卓系统机密性完整性增强访问控制系统,其特征在于: 所述密钥管理模块中,在初始化安卓设备时,用户输入初始口令,密钥管理模块对初始口令采取SHA-256算法加密后保存,对初始口令+联系人特定字段+安卓设备号采取SHA-256算法加密后取前128位作为联系人应用的密钥;对初始口令+短信特定字段+安卓设备号采取SHA-256算法加密后取前128位作为短信应用的密钥; 初始化密钥过程:安卓设备启动后提示用户是否使用安全模式,若用户选择是则系统判断该设备是否第一次使用,如果是初次使用则提示用户设置口令,系统根据用户口令生成一个系统密钥,再根据系统密钥生成联系人和短信密钥,并且使用这些密钥加密本地数据库中的联系人和短信数据;若设备不是第一次使用,那么将进入一个验证口令过程,提示用户输入口令,根据用户输入的口令验证系统密钥,若验证成功则进入生成密钥等过程;若用户选择不使用安全模式或者系统验证密钥失败,则联系人和短信中显示密文数据; 修改密钥过程:用户进入修改密钥界面,输入口令,系统根据口令验证系统密钥是否成功,若验证成功则获取联系人和短信的加解密策略,若获取加解密策略成功,提示用户设置新口令,系统根据新口令生成新的联系人密钥和短信密钥,系统使用旧的联系人和短信密钥根据加解密策略将本地数据库中的数据解密,再使用新生成的联系人和短信密钥将数据加密存储;若验证系统密钥失败,则提示用户口令输入错误;若获取加解密策略失败,则提示用户获取加解密策略失败`。
【文档编号】H04W12/04GK103686716SQ201310703974
【公开日】2014年3月26日 申请日期:2013年12月19日 优先权日:2013年12月19日
【发明者】韩伟力, 方喆然, 周韬, 刘亮兴, 杜晓宁, 彭蔚蔚, 卜瑞琪 申请人:复旦大学