首页> 中国专利> 支持域管理的移动办公安全系统及方法

支持域管理的移动办公安全系统及方法

摘要

本发明提供一种支持域管理的移动办公安全系统及方法,该系统包括:支持域管理的系统内核,构建于智能终端平台提供的硬件普通模式下,实现对应用程序的域管理;程序执行域环境,构建于支持域管理的系统内核上,基于命名空间实现至少2个域;智能操作系统,构建于程序执行域环境中的第一个域中,通过支持域管理的系统内核开放的域管理接口对程序和域进行分配、及通信管理,实现进程间交互;应用程序域,由智能操作系统创建于程序执行域环境中不同于第一个域的域中,用于运行应用程序。本发明实现了办公应用的安全强隔离,实现了跨域的进程间通信,保证了操作系统、办公应用与个人应用三方应用执行环境的安全隔离,同时也支持三方进程的跨域通信。

著录项

  • 公开/公告号CN104331329A

    专利类型发明专利

  • 公开/公告日2015-02-04

    原文格式PDF

  • 申请/专利权人 上海斐讯数据通信技术有限公司;

    申请/专利号CN201410522491.6

  • 发明设计人 金果;余勤科;崔健;

    申请日2014-09-30

  • 分类号G06F9/50(20060101);G06F21/62(20060101);

  • 代理机构31219 上海光华专利事务所;

  • 代理人徐秋平

  • 地址 201616 上海市松江区思贤路3666号

  • 入库时间 2023-12-17 03:18:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-08-29

    专利权质押合同登记的注销 IPC(主分类):G06F 9/50 授权公告日:20171201 申请日:20140930 专利号:ZL2014105224916 登记号:Y2021330000755 出质人:湖州丰源农业装备制造有限公司 质权人:浙江泰隆商业银行股份有限公司湖州分行 解除日:20230811

    专利权质押合同登记的生效、变更及注销

  • 2017-12-01

    授权

    授权

  • 2015-09-02

    实质审查的生效 IPC(主分类):G06F9/50 申请日:20140930

    实质审查的生效

  • 2015-02-04

    公开

    公开

说明书

技术领域

本发明属于移动办公安全领域,涉及一种移动办公安全方法,特别是涉及一种支持域管理的移动办公安全系统及方法。

背景技术

在目前的基于LINUX内核的智能机领域,智能操作系统和应用程序(包括个人应用程序)都运行在单独的程序进程中。而业务的处理往往需要多个进程间通信。目前进程间通信有管道,信号量,报文队列,共享内存,套接字等方式,但是现有的这些进程间通信方式都有着自身特点,适应于不同的平台。现有的进程间通信以及LINUX智能机系统内核中,没有针对特殊化的定制操作,是一种比较通用的技术方案,基本是所有的应用程序都运行在操作系统域,由操作系统域统一管理分配内存,以及进程间调度。

随着移动办公安全领域的发展,其在系统内核空间利用命名空间可以划分不同的应用程序域,如有普通用户登陆下的个人应用域,以及用于办公需要的办公应用域。当应用程序不是运行在操作系统域,而是运行在单独划分出来的应用程序域时,因为必须要考虑不同应用域间的程序进程相互隔离的问题,原有的操作系统不支持域管理,所以无法统一管理不同应用域的分配内存,以及进程间调度。

发明内容

鉴于以上所述现有技术的缺点,本发明的目的在于提供一种支持域管理的移动办公安全系统及方法,用于解决现有操作系统不支持域管理,无法统一管理不同应用域的分配内存,以及进程间调度的问题。

为实现上述目的及其他相关目的,本发明提供一种支持域管理的移动办公安全系统,所述支持域管理的移动办公安全系统包括:支持域管理的系统内核,构建于智能终端平台提供的硬件普通模式下,用于实现对应用程序的域管理;程序执行域环境,构建于所述支持域管理的系统内核上,基于命名空间实现至少2个域,每个域中的程序均独立运行,不同域中的程序相互无干扰;智能操作系统,构建于所述程序执行域环境中的第一个域中,用于通过所述支持域管理的系统内核开放的域管理接口对程序和域进行分配、及通信管理;所述智能操作系统提取程序的域信息,并在程序进程交互过程中传播所述域信息,从而实现跨域和域内部的进程间交互;应用程序域,由所述智能操作系统创建于所述程序执行域环境中不同于所述第一个域的域中,用于运行应用程序。

可选地,所述应用程序域包括:办公应用域,由所述智能操作系统创建于所述程序执行域环境中不同于所述第一个域的第二个域中,用于运行企业授信的办公应用程序;个人应用域,由所述智能操作系统创建于所述程序执行域环境中不同于所述第一个域的第三个域中,用于运行用户自行安装的第三方应用程序。

可选地,所述智能操作系统包括支持跨域通信的Binder交互模组,所述Binder交互模组包括:第一记录模块,记录每一个域中运行的进程信息;Binder驱动模块,存储每一个Binder对象的创建进程的信息;第一监控模块,在程序执行过程中监控每一次进程间交互的目标对象所在的进程;第一交互判定模块,与所述第一记录模块、Binder驱动模块、第一监控模块分别相连,根据所述目标对象所在的进程的域信息判断是否允许这一次进程间交互。

可选地,所述智能操作系统包括支持跨域通信的匿名共享内存模组,所述匿名共享内存模组包括:第二记录模块,记录每一个域中运行的进程信息;匿名共享内存驱动模块,存储每一个共享内存对象的创建进程的信息;第二监控模块,在程序执行过程中监控每一次进程间交互的目标对象所在的进程;第二交互判定模块,与所述第二记录模块、匿名共享内存驱动模块、第二监控模块分别相连,根据所述目标对象所在的进程的域信息判断是否允许这一次进程间交互。

可选地,所述支持域管理的系统内核包括:进程孵化器创建模块,创建一个子进程作为一个所述域的进程孵化器;每个进程孵化器均运行于自身对应的一个域中;应用程序进程创建模块,与所述进程孵化器创建模块相连,使所述进程孵化器克隆自身创建新的应用程序进程;所述新的应用程序进程与对应的进程孵化器运行于同一个域中。

可选地,所述智能操作系统包括:域进程信息配置模块,与所述域管理接口相连,通过所述域管理接口配置新创建的应用程序进程需要具备的进程信息;域内存回收模块,与所述域管理接口相连,根据域的优先级选择性杀死各个域中不活跃的进程,释放内存空间;域管理接口保护模块,与所述域管理接口相连,限制只有位于所述智能操作系统所在域中的进程才能调用所述域管理接口。

可选地,所述支持域管理的移动办公安全系统还包括构建于所述支持域管理的系统内核上的可信存储文件系统和可信网络连接系统;所述可信存储文件系统包括:加密引擎模块,通过所述支持域管理的系统内核的加密接口对文件访问进行内核级加密,包括对整个文件进行密钥加密或/和计算文件的校验值;文件安全属性模块,与所述加密引擎模块相连,扩展文件的安全属性;所述安全属性包括标志域和数据域;所述标志域表示文件侧重的安全属性;所述数据域表示加密文件所使用的密钥或/和文件的校验值;密钥管理模块,与所述加密引擎模块和文件安全属性模块分别相连,采用链式加密的方法保护密钥和文件;所述可信网络连接系统包括:可信网络连接协议栈模块,提供加密连接支持;可信网络访问请求器,作为网络访问的入口,控制所有对本地进行的网络访问。

可选地,所述智能操作系统还包括:认证授权模块,用于验证用户的合法身份,接收用户设置的共享秘密数据,并在所述共享秘密数据正确时允许用户访问所述可信存储文件系统;完整性度量收集器,用于收集所述智能操作系统的运行平台的完整性度量值,以便传输至远程可信网络连接决策点进行验证;可信网络连接客户端,与所述完整性度量收集器相连,负责管理所述完整性度量收集器。

可选地,所述支持域管理的移动办公安全系统还包括构建于智能终端平台提供的硬件可信模式下的可信系统,所述可信系统通过受限通信与所述支持域管理的系统内核或智能操作系统交互,包括:信息加解密模块,与所述可信存储文件系统、所述可信网络连接系统或/和所述智能操作系统相连,为所述可信存储文件系统提供密钥生成、加密和安全存储,或/和为所述可信网络连接协议栈模块提供加密连接协议;签名验证模块,与所述认证授权模块或/和所述可信网络连接协议栈模块相连,对所述用户进行身份认证和授权,或/和对所述网络访问进行验证;组件可信性验证模块,与所述可信存储文件系统、所述可信网络连接系统、或/和所述完整性度量收集器相连,用于验证所述可信存储文件系统、所述可信网络连接系统、或/和所述完整性度量收集器的组件可信性。

本发明还提供一种支持域管理的移动办公安全方法,所述支持域管理的移动办公安全方法包括:在智能终端平台提供的硬件普通模式下构建支持域管理的系统内核,用于实现对应用程序的域管理;在所述支持域管理的系统内核上构建程序执行域环境;所述程序执行域环境基于命名空间实现至少2个域,每个域中的程序均独立运行,不同域中的程序相互无干扰;在所述程序执行域环境中的第一个域中构建智能操作系统,用于通过所述支持域管理的系统内核开放的域管理接口对程序和域进行分配、及通信管理;所述智能操作系统提取程序的域信息,并在程序进程交互过程中传播所述域信息,从而实现跨域和域内部的进程间交互;在所述程序执行域环境中不同于所述第一个域的域中,由所述智能操作系统创建应用程序域,用于运行应用程序。

可选地,所述应用程序域的一种具体创建过程包括:在所述程序执行域环境中不同于所述第一个域的第二个域中,由所述智能操作系统创建办公应用域,用于运行企业授信的办公应用程序;在所述程序执行域环境中不同于所述第一个域的第三个域中,由所述智能操作系统创建个人应用域,用于运行用户自行安装的第三方应用程序。

可选地,所述智能操作系统实现跨域和域内部的进程间交互的一种具体实现过程包括:记录每一个域中运行的进程信息;存储每一个Binder对象或/和共享内存对象的创建进程的信息;在程序执行过程中监控每一次进程间交互的目标对象所在的进程;根据所述目标对象所在的进程的域信息判断是否允许这一次进程间交互。

可选地,所述智能操作系统创建应用程序域的一种具体实现过程包括:创建一个子进程作为一个域的进程孵化器;每个进程孵化器均运行于自身对应的一个域中;所述进程孵化器克隆自身创建新的应用程序进程;所述新的应用程序进程与对应的进程孵化器运行于同一个域中。

可选地,所述智能操作系统通过域管理接口对程序和域进行分配、及通信管理的一种具体实现过程包括:通过所述域管理接口配置新创建的应用程序进程需要具备的进程信息;根据域的优先级选择性杀死各个域中不活跃的进程,释放内存空间;限制只有位于所述智能操作系统所在域中的进程才能调用所述域管理接口。

可选地,所述支持域管理的移动办公安全方法还包括在所述支持域管理的系统内核上构建可信存储文件系统,实现自动对程序的文件写或读行为的保密;所述可信存储文件系统的一种具体实现过程包括:通过所述支持域管理的系统内核的加密接口对文件访问进行内核级加密,包括对整个文件进行密钥加密或/和计算文件的校验值;扩展文件的安全属性;所述安全属性包括标志域和数据域;所述标志域表示文件侧重的安全属性;所述数据域表示加密文件所使用的密钥或/和文件的校验值;采用链式加密的方法保护密钥和文件。

可选地,所述智能操作系统支持所述可信存储文件系统的一种具体实现过程包括:验证用户的合法身份,接收用户设置的共享秘密数据,并在所述共享秘密数据正确时允许用户访问所述可信存储文件系统。

可选地,所述支持域管理的移动办公安全方法还包括在所述智能终端平台提供的硬件可信模式下构建可信系统,所述可信系统通过受限通信与所述支持域管理的系统内核或智能操作系统交互;所述可信系统的一种具体实现过程包括:为所述可信存储文件系统提供密钥生成、加密和安全存储;对所述用户进行身份认证和授权;验证所述可信存储文件系统的组件可信性。

可选地,所述支持域管理的移动办公安全方法还包括在所述支持域管理的系统内核上构建可信网络连接系统,实现为应用程序提供可信的网络支持;所述可信网络连接系统的一种具体实现过程包括:提供加密连接支持;设置网络访问的入口,控制所有对本地进行的网络访问。

可选地,所述智能操作系统支持所述可信网络连接系统的一种具体实现过程包括:收集所述智能操作系统的运行平台的完整性度量值,以便传输至远程可信网络连接决策点进行验证;负责管理完整性度量。

可选地,所述支持域管理的移动办公安全方法还包括在所述智能终端平台提供的硬件可信模式下构建可信系统,所述可信系统通过受限通信与所述支持域管理的系统内核或智能操作系统交互;所述可信系统的一种具体实现过程包括:为所述可信网络连接协议栈模块提供加密连接协议;对所述网络访问进行验证;验证所述可信网络连接系统的组件可信性。

如上所述,本发明所述的支持域管理的移动办公安全系统及方法,具有以下有益效果:

本发明为移动办公安全领域设定了支持域管理的系统内核,智能操作系统和应用程序均运行在单独的程序执行域中,实现了程序执行域之间的强隔离;此外,为了支持应用程序和智能操作系统之间的正常交互,本发明还提供了跨域的进程间通讯机制,支持现有应用程序能够正常的在独立程序域中执行以及一个执行域内部的进程间通讯。

附图说明

图1为本发明实施例所述的支持域管理的移动办公安全系统的结构示意图。

图2为本发明实施例所述的支持域管理的系统内核的一种结构示意图。

图3为本发明实施例所述的支持域管理的系统内核的第二种结构示意图。

图4为本发明实施例所述的支持域管理的系统内核的第三种结构示意图。

图5为本发明实施例所述的智能操作系统的一种结构示意图。

图6为本发明实施例所述的Binder交互模组的一种结构示意图。

图7为本发明实施例所述的匿名共享内存模组的一种结构示意图。

图8为本发明实施例所述的应用程序域的一种结构示意图。

图9为本发明实施例所述的可信系统的一种结构示意图。

图10为本发明实施例所述的支持域管理的移动办公安全方法的一种流程示意图。

图11为本发明实施例所述的智能操作系统的一种工作流程示意图。

图12为图11所述的智能操作系统的工作场景示意图。

图13为本发明实施例所述的智能操作系统的另一种工作流程示意图。

图14为图13所述的智能操作系统的工作场景示意图。

图15为本发明实施例所述的智能操作系统创建应用程序域的一种实现流程示意图。

图16为本发明实施例所述的支持域管理的移动办公安全方法的第二种实现流程示意图。

图17为本发明实施例所述的可信存储文件系统的一种具体工作方式示意图。

图18为本发明实施例所述的支持域管理的移动办公安全方法的第三种实现流程示意图。

图19为本发明实施例所述的可信网络连接系统的一种具体工作方式示意图。

图20为本发明实施例所述的支持域管理的移动办公安全方法的第四种实现流程示意图。

元件标号说明

100                    支持域管理的系统内核

110                    进程孵化器创建模块

120                    应用程序进程创建模块

130                    可信存储文件系统

131                    加密引擎模块

132                    文件安全属性模块

133                    密钥管理模块

140                    可信网络连接系统

141                    可信网络连接协议栈模块

142                    可信网络访问请求器

200                    程序执行域环境

210                    智能操作系统

211                    Binder交互模组

2111                   第一记录模块

2112                   Binder驱动模块

2113                   第一监控模块

2114                   第一交互判定模块

212                    匿名共享内存模组

2121                   第二记录模块

2122                   匿名共享内存驱动模块

2123                   第二监控模块

2124                   第二交互判定模块

213                    域进程信息配置模块

214                    域内存回收模块

215                    域管理接口保护模块

216                    认证授权模块

217                    完整性度量收集器

218                    可信网络连接客户端

220                    应用程序域

221                    办公应用域

222                    个人应用域

300                    可信系统

310                    信息加解密模块

320                    签名验证模块

330                    组件可信性验证模块

S101~S107             步骤

S111~S114             步骤

S131~S134             步骤

S151~S152             步骤

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。

请参阅附图。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

下面结合实施例和附图对本发明进行详细说明。

实施例

本实施例提供一种支持域管理的移动办公安全系统,如图1所示,所述支持域管理的移动办公安全系统包括:支持域管理的系统内核100,程序执行域环境200,智能操作系统210,应用程序域220,和可信系统300。

所述支持域管理的系统内核100构建于智能终端平台提供的硬件普通模式下,用于实现对应用程序的域管理。

进一步,如图2所示,所述支持域管理的系统内核100包括:进程孵化器创建模块110,应用程序进程创建模块120。所述进程孵化器创建模块110创建一个子进程作为一个所述域的进程孵化器;每个进程孵化器均运行于自身对应的一个域中。所述应用程序进程创建模块120与所述进程孵化器创建模块110相连,使所述进程孵化器克隆自身创建新的应用程序进程;所述新的应用程序进程与对应的进程孵化器运行于同一个域中。系统内核在引导完成后初始化智能操作系统,智能操作系统运行在默认的命名空间中。随后,系统内核创建两条子进程,作为各个应用域的进程孵化器(称为domain_zygote)。个人应用域和办公应用域中的程序进程分别从这两条进程孵化器进程中克隆得来。在创建进程孵化器时,内核使用CLONE_NEWPID、CLONE_NEWIPC、CLONE_NEWNS、CLONE_NEWNET等参数将进程孵化器运行在两个新的独立的命名空间中。每一个新的命名空间具有隔离的进程空间、网络资源、文件系统。

更进一步,操作系统为了支持办公应用等程序运行的安全性,本实施例对办公应用域中的程序存储和网络访问进行了安全性增强。与此同时,考虑到技术方案应该尽可能的兼容现有程序的执行,避免对现有程序进行修改,本实施例在内核中自动对文件访问和网络访问进行加密和解密操作。

如图3所示,所述支持域管理的系统内核100还包括可信存储文件系统130。所述可信存储文件系统130构建于所述支持域管理的系统内核100上,用于实现自动对程序的文件写或读行为的保密。所述可信存储文件系统130包括:加密引擎模块131,文件安全属性模块132,密钥管理模块133。所述加密引擎模块131通过所述支持域管理的系统内核的加密接口对文件访问进行内核级加密,包括对整个文件进行密钥加密或/和计算文件的校验值。例如:可信存储文件系统可以含有两类加密引擎:一部分文件采用对称加密算法(AES)完成整个文件的加密;另一部分则使用加密散列算法(SHA-1)计算文件的校验值。本实施例可以使用Linux内核中的Crypto接口来实现对文件访问进行内核级加密。所述文件安全属性模块132与所述加密引擎模块131相连,扩展文件的安全属性。所述安全属性包括标志域和数据域;所述标志域表示文件侧重的安全属性;所述数据域表示加密文件所使用的密钥或/和文件的校验值。例如:可信存储文件系统扩展文件的安全属性,扩展属性由标志域和数据域两部分组成。标志域长度为一个字节,表示该文件侧重的安全属性(C代表机密性,I代表完整性);数据域包含固定长度的字符串,代表该文件所使用的加密密钥或者该文件的校验和。这些属性保存时需要经过可信硬件支持的加密,防止攻击者对安全属性的窃取和篡改。所述密钥管理模块133与所述加密引擎模块131和文件安全属性模块132分别相连,采用链式加密的方法保护密钥和文件。密钥管理是加密系统的关键组成部分。可信存储文件系统可以采用链式加密的方法来保护密钥和文件。其思想是由可信根密钥开始,根密钥加密第一级密钥,第一级密钥作为可信密钥加密下一级密钥,直到加密原始文件数据为止。可信硬件支持的可信代码区提供密钥生成、加密和安全存储。本实施例通过可信存储文件系统来完成在内核中自动对程序的文件写行为进行加密,保证存储设备中的文件都是加密过的无法直接读取。对程序的文件读行为自动进行解密从而保证现有程序可以正常运行。同时,对文件存储的密钥通过可信硬件进行保护,防止了恶意程序访问和破坏。

如图4所示,所述支持域管理的系统内核100还包括可信网络连接系统140。所述可信网络连接系统140构建于所述支持域管理的系统内核100上,用于实现为应用程序提供可信的网络支持。所述可信网络连接系统140包括:可信网络连接协议栈模块141,可信网络访问请求器142。所述可信网络连接协议栈模块141提供加密连接支持,或进一步包含与远程网络连接决策点之间进行完整性验证的协议的实现。所述可信网络访问请求器142作为网络访问的入口,控制所有对本地进行的网络访问。可信网络连接系统140利用可信系统区提供的多项安全功能为上层应用提供了一个可信的网络连接基础,只有在平台状态正常的情况下才允许上层应用进行网路连接。同时,可信网络连接协议栈模块提供加密连接方式,上层应用可以选择采用加密连接进行数据传输,从而防止数据在传输过程中泄露。

所述程序执行域环境200构建于所述支持域管理的系统内核100上,基于命名空间实现至少2个域,每个域中的程序均独立运行,不同域中的程序相互无干扰。

所述智能操作系统210构建于所述程序执行域环境200中的第一个域中,又称智能操作系统域,用于通过所述支持域管理的系统内核开放的域管理接口对程序和域进行分配、及通信管理;所述智能操作系统提取程序的域信息,并在程序进程交互过程中传播所述域信息,从而实现跨域和域内部的进程间交互。

进一步,如图5所示,所述智能操作系统210包括支持跨域通信的Binder交互模组211,匿名共享内存模组212,域进程信息配置模块213,域内存回收模块214,域管理接口保护模块215,认证授权模块216,完整性度量收集器217,和可信网络连接客户端218。

交互系统的应用程序运行在隔离的程序执行域中时,需要与运行在智能系统域中的服务进程发生交互。通过这种交互,程序才能访问安卓框架层的资源、调用其他应用程序的接口等。在安卓系统中,程序主要使用两种进程间通讯方式:Binder机制、匿名共享内存。针对这两种进程间通讯方式,本实施例提供了支持跨域的进程间交互机制。由于每一个进程都运行在一个Linux内核的命名空间中,针对不同的进程交互方式,本实施例提取程序的域信息并在交互过程中传播,从而可以支持跨域和域内部的进程间交互。本实施例在内核层记录每一个命名空间中运行的进程信息,并且在Binder驱动和匿名共享内存驱动中,保存每一个Binder对象和共享内存对象的创建进程的信息。在程序实际执行过程中,监控每一次进程间交互的目标对象所在的进程,并根据该进程所在的程序域判断是否允许这一次进程间交互。具体地,本实施例对跨域的进程间通讯支持如下。

如图6所示,所述Binder交互模组211包括:第一记录模块2111,Binder驱动模块2112,第一监控模块2113,第一交互判定模块2114。所述第一记录模块2111记录每一个域中运行的进程信息。所述Binder驱动模块2112存储每一个Binder对象的创建进程的信息。所述第一监控模块2113在程序执行过程中监控每一次进程间交互的目标对象所在的进程。所述第一交互判定模块2114与所述第一记录模块2111、Binder驱动模块2112、第一监控模块2113分别相连,根据所述目标对象所在的进程的域信息判断是否允许这一次进程间交互。每一个域中的进程都可以调用自己域中进程创建的Binder对象的接口。通过判断Binder对象创建者进程的域信息,即可判断一次Binder交互属于跨域交互还是域内部的交互。为了支持程序调用系统的接口,每一个应用域(包括个人应用域和办公应用域)都可以调用智能操作系统域中创建的Binder对象。程序域之间的Binder对象是互相不可见的,系统内核在解析Binder对象时,只考虑当前进程所在域可见的Binder对象实例。操作系统域可以访问所有执行域中的Binder对象。

如图7所示,所述匿名共享内存模组212包括:第二记录模块2121,匿名共享内存驱动模块2122,第二监控模块2123,第二交互判定模块2124。所述第二记录模块2121记录每一个域中运行的进程信息。所述匿名共享内存驱动模块2122存储每一个共享内存对象的创建进程的信息。所述第二监控模块2123在程序执行过程中监控每一次进程间交互的目标对象所在的进程。所述第二交互判定模块2124与所述第二记录模块2121、匿名共享内存驱动模块2122、第二监控模块2123分别相连,根据所述目标对象所在的进程的域信息判断是否允许这一次进程间交互。在安卓系统中,每一个匿名共享内存都有一个创建者。每一个执行域中创建的匿名共享内存对象在域中所有进程中都是可见的。为了共享内存,智能操作系统域中创建的匿名共享内存对所有应用执行域也都是可见的。各个应用执行域之间无法共享内存,同时,每一个应用执行域中创建的匿名共享内存也可以被智能操作系统访问。本实施例通过在进程创建匿名共享内存时标记该对象的创建进程,进而在进程交互时根据交互对象的创建者进程获取其域信息,从而判断此次交互是否为跨域交互。

所述域进程信息配置模块213与所述域管理接口相连,通过所述域管理接口配置新创建的应用程序进程需要具备的进程信息。当智能操作系统需要创建个人应用程序进程或者办公应用程序进程时,系统内核通过与对应的进程孵化器通讯,使其克隆自身成为新的应用程序进程。新克隆出来的程序将运行在与进程孵化器同一个命名空间中。同时,系统内核允许智能操作系统通过接口配置新的应用程序进程具备的进程信息,例如进程用户ID、组ID。本实施例采用Linux内核的命名空间机制隔离个人应用程序和办公应用程序的同时,也将操作系统的执行和应用程序进行隔离。为了便于智能操作系统管理其他程序域的执行,本实施例在内核层次提供管理接口,即域管理接口。智能操作系统基于系统内核提供的域管理接口可以方便的实现对于程序域的管理。本实施例可以以开放源代码、使用范围最广的安卓系统作为基础系统,构建个人环境和办公环境隔离的智能终端办公环境。同时,本实施例提供的程序执行域技术也可服务于其他基于Linux内核的操作系统。

所述域内存回收模块214与所述域管理接口相连,根据域的优先级选择性杀死各个域中不活跃的进程,释放内存空间。当系统内存不够时,智能操作系统通过杀死不活跃的进程释放内存空间。本实施例提供的系统内核根据执行域进行内存回收。例如:在默认情况下,系统内核优先释放个人应用中的进程资源,其次是办公应用域中进程资源,最后是操作系统域中的进程资源。从一个执行域中选择合适的进程最后释放对象将取决于智能操作系统本身的资源。在安卓系统中,系统将优先释放那些运行在后台的程序进程。

所述域管理接口保护模块215与所述域管理接口相连,限制只有位于所述智能操作系统所在域中的进程才能调用所述域管理接口。通过系统内核提供的程序域管理接口,可以创建新的程序域,可以在任意域中创建新的进程,可以释放任意进程。为了保护程序域管理接口不被应用域中的程序调用,本实施例通过接口调用者所在的域信息对接口进行保护,限制只有位于操作系统域的进程才能够调用此类接口。

所述认证授权模块216用于验证用户的合法身份,接收用户设置的共享秘密数据,并在所述共享秘密数据正确时允许用户访问所述可信存储文件系统。本实施例沿用了底层操作系统对用户的管理方式,但是添加了用户身份认证和授权模块(即认证授权模块216,又可简称为AUTH模块)。AUTH模块将用户的认证和可信硬件支持的认证和授权结合在一起。AUTH模块首先验证用户的合法身份,然后接收用户设置的共享秘密数据,只有该数据正确时用户才能访问可信存储文件系统。AUTH模块在用户的一次会话期间不需要重新执行,只需在系统加载时或者用户切换时通过系统调用接口进行。与常用的口令认证机制相比,该过程实现了更安全、更可靠的认证。

所述完整性度量收集器217用于收集所述智能操作系统的运行平台的完整性度量值,以便传输至远程可信网络连接决策点进行验证。其中,所述完整性度量值包括平台相关的配置和一些安全参数等信息。

所述可信网络连接客户端218与所述完整性度量收集器217相连,负责管理所述完整性度量收集器。

所述应用程序域220由所述智能操作系统210创建于所述程序执行域环境200中不同于所述第一个域(即智能操作系统域)的域中,用于运行应用程序。

进一步,如图8所示,所述应用程序域220包括:办公应用域221,个人应用域222。所述办公应用域221由所述智能操作系统210创建于所述程序执行域环境200中不同于所述第一个域的第二个域中,用于运行企业授信的办公应用程序。所述个人应用域222由所述智能操作系统210创建于所述程序执行域环境200中不同于所述第一个域的第三个域中,用于运行用户自行安装的第三方应用程序。

所述可信系统300构建于智能终端平台提供的硬件可信(TrustZone)模式下,通过受限通信与所述支持域管理的系统内核100和智能操作系统210交互。本实施例利用基于TrustZone的可信系统提供的加解密、签名和验证功能、以及组件可信性验证等功能为上层应用提供可信的网络支持。不可信系统通过受限通信和可信系统交互。

进一步,如图9所示,所述可信系统300包括:信息加解密模块310,签名验证模块320,组件可信性验证模块330。所述信息加解密模块310与所述可信存储文件系统130、所述可信网络连接系统140或/和所述智能操作系统210相连,为所述可信存储文件系统提供密钥生成、加密和安全存储,或/和为所述可信网络连接协议栈模块提供加密连接协议。所述签名验证模块320与所述认证授权模块216或/和所述可信网络连接协议栈模块141相连,对所述用户进行身份认证和授权,或/和对所述网络访问进行验证。所述组件可信性验证模块330与所述可信存储文件系统130、所述可信网络连接系统140、或/和所述完整性度量收集器217相连,用于验证所述可信存储文件系统、所述可信网络连接系统、或/和所述完整性度量收集器的组件可信性。

本发明实现了办公应用的安全强隔离,实现了跨域的进程间通信,保证了操作系统、办公应用与个人应用三方应用执行环节的安全隔离,同时也支持三方进程的跨域通信。

本实施例还提供一种支持域管理的移动办公安全方法,该方法可以由本实施例所述的支持域管理的移动办公安全系统实现,但该方法的实现装置包括但不限于本实施例所述的支持域管理的移动办公安全系统。

如图10所示,所述支持域管理的移动办公安全方法包括:

S101,在智能终端平台提供的硬件普通模式下构建支持域管理的系统内核,用于实现对应用程序的域管理。

S102,在所述支持域管理的系统内核上构建程序执行域环境。所述程序执行域环境基于命名空间实现至少2个域,每个域中的程序均独立运行,不同域中的程序相互无干扰。

S103,在所述程序执行域环境中的第一个域中构建智能操作系统,用于通过所述支持域管理的系统内核开放的域管理接口对程序和域进行分配、及通信管理;所述智能操作系统提取程序的域信息,并在程序进程交互过程中传播所述域信息,从而实现跨域和域内部的进程间交互。

进一步,参见图11所示,所述智能操作系统通过域管理接口对程序和域进行分配、及通信管理的一种具体实现过程包括:

S111,通过所述域管理接口配置新创建的应用程序进程需要具备的进程信息。当智能操作系统需要创建个人应用程序进程或者办公应用程序进程时,系统内核通过与对应的进程孵化器通讯,使其克隆自身成为新的应用程序进程。新克隆出来的程序将运行在与进程孵化器同一个命名空间中。同时,系统内核允许智能操作系统通过接口配置新的应用程序进程具备的进程信息,例如进程用户ID、组ID。本实施例采用Linux内核的命名空间机制隔离个人应用程序和办公应用程序的同时,也将操作系统的执行和应用程序进行隔离。为了便于智能操作系统管理其他程序域的执行,本实施例在内核层次提供管理接口,即域管理接口。智能操作系统基于系统内核提供的域管理接口可以方便的实现对于程序域的管理。本实施例可以以开放源代码、使用范围最广的安卓系统作为基础系统,构建个人环境和办公环境隔离的智能终端办公环境。同时,本实施例提供的程序执行域技术也可服务于其他基于Linux内核的操作系统。

S112,根据域的优先级选择性杀死各个域中不活跃的进程,释放内存空间。当系统内存不够时,智能操作系统通过杀死不活跃的进程释放内存空间。本实施例提供的系统内核根据执行域进行内存回收。例如:在默认情况下,系统内核优先释放个人应用中的进程资源,其次是办公应用域中进程资源,最后是操作系统域中的进程资源。从一个执行域中选择合适的进程最后释放对象将取决于智能操作系统本身的资源。在安卓系统中,系统将优先释放那些运行在后台的程序进程。

S113,限制只有位于所述智能操作系统所在域中的进程才能调用所述域管理接口。通过系统内核提供的程序域管理接口,可以创建新的程序域,可以在任意域中创建新的进程,可以释放任意进程。为了保护程序域管理接口不被应用域中的程序调用,本实施例通过接口调用者所在的域信息对接口进行保护,限制只有位于操作系统域的进程才能够调用此类接口。

图12为图11所述的智能操作系统的工作方法的场景示意图。

参见图13所示,所述智能操作系统实现跨域和域内部的进程间交互的一种具体实现过程包括:

S131,记录每一个域中运行的进程信息。

S132,存储每一个Binder对象或/和共享内存对象的创建进程的信息。

S133,在程序执行过程中监控每一次进程间交互的目标对象所在的进程。

S134,根据所述目标对象所在的进程的域信息判断是否允许这一次进程间交互。

图14为图13所述的智能操作系统的工作方法的场景示意图。交互系统的应用程序运行在隔离的程序执行域中时,需要与运行在智能系统域中的服务进程发生交互。通过这种交互,程序才能访问安卓框架层的资源、调用其他应用程序的接口等。在安卓系统中,程序主要使用两种进程间通讯方式:Binder机制、匿名共享内存。针对这两种进程间通讯方式,本实施例提供了支持跨域的进程间交互机制。由于每一个进程都运行在一个Linux内核的命名空间中,针对不同的进程交互方式,本实施例提取程序的域信息并在交互过程中传播,从而可以支持跨域和域内部的进程间交互。本实施例在内核层记录每一个命名空间中运行的进程信息,并且在Binder驱动和匿名共享内存驱动中,保存每一个Binder对象和共享内存对象的创建进程的信息。在程序实际执行过程中,监控每一次进程间交互的目标对象所在的进程,并根据该进程所在的程序域判断是否允许这一次进程间交互。每一个域中的进程都可以调用自己域中进程创建的Binder对象的接口。通过判断Binder对象创建者进程的域信息,即可判断一次Binder交互属于跨域交互还是域内部的交互。为了支持程序调用系统的接口,每一个应用域(包括个人应用域和办公应用域)都可以调用智能操作系统域中创建的Binder对象。程序域之间的Binder对象是互相不可见的,系统内核在解析Binder对象时,只考虑当前进程所在域可见的Binder对象实例。操作系统域可以访问所有执行域中的Binder对象。为了共享内存,智能操作系统域中创建的匿名共享内存对所有应用执行域也都是可见的。各个应用执行域之间无法共享内存,同时,每一个应用执行域中创建的匿名共享内存也可以被智能操作系统访问。本实施例通过在进程创建匿名共享内存时标记该对象的创建进程,进而在进程交互时根据交互对象的创建者进程获取其域信息,从而判断此次交互是否为跨域交互。

S104,在所述程序执行域环境中不同于所述第一个域的域中,由所述智能操作系统创建应用程序域,用于运行应用程序。

进一步,参见图15所示,所述智能操作系统创建应用程序域的一种具体实现过程包括:

S151,创建一个子进程作为一个域的进程孵化器;每个进程孵化器均运行于自身对应的一个域中。

S152,所述进程孵化器克隆自身创建新的应用程序进程;所述新的应用程序进程与对应的进程孵化器运行于同一个域中。

系统内核在引导完成后初始化智能操作系统,智能操作系统运行在默认的命名空间中。随后,系统内核创建两条子进程,作为各个应用域的进程孵化器(称为domain_zygote)。个人应用域和办公应用域中的程序进程分别从这两条进程孵化器进程中克隆得来。在创建进程孵化器时,内核使用CLONE_NEWPID、CLONE_NEWIPC、CLONE_NEWNS、CLONE_NEWNET等参数将进程孵化器运行在两个新的独立的命名空间中。每一个新的命名空间具有隔离的进程空间、网络资源、文件系统。

参见图8所示,所述应用程序域的一种具体创建过程包括:在所述程序执行域环境中不同于所述第一个域的第二个域中,由所述智能操作系统创建办公应用域,用于运行企业授信的办公应用程序;在所述程序执行域环境中不同于所述第一个域的第三个域中,由所述智能操作系统创建个人应用域,用于运行用户自行安装的第三方应用程序。

如图16所示,所述支持域管理的移动办公安全方法还包括:

S105,在所述支持域管理的系统内核上构建可信存储文件系统,实现自动对程序的文件写或读行为的保密。

进一步,参见图17所示,所述可信存储文件系统的一种具体实现过程包括:通过所述支持域管理的系统内核的加密接口对文件访问进行内核级加密,包括对整个文件进行密钥加密或/和计算文件的校验值;扩展文件的安全属性;所述安全属性包括标志域和数据域;所述标志域表示文件侧重的安全属性;所述数据域表示加密文件所使用的密钥或/和文件的校验值;采用链式加密的方法保护密钥和文件。例如:可信存储文件系统可以含有两类加密引擎:一部分文件采用对称加密算法(AES)完成整个文件的加密;另一部分则使用加密散列算法(SHA-1)计算文件的校验值。本实施例可以使用Linux内核中的Crypto接口来实现对文件访问进行内核级加密。可信存储文件系统扩展文件的安全属性,扩展属性由标志域和数据域两部分组成。标志域长度为一个字节,表示该文件侧重的安全属性(C代表机密性,I代表完整性);数据域包含固定长度的字符串,代表该文件所使用的加密密钥或者该文件的校验和。这些属性保存时需要经过可信硬件支持的加密,防止攻击者对安全属性的窃取和篡改。密钥管理是加密系统的关键组成部分。可信存储文件系统可以采用链式加密的方法来保护密钥和文件。其思想是由可信根密钥开始,根密钥加密第一级密钥,第一级密钥作为可信密钥加密下一级密钥,直到加密原始文件数据为止。可信硬件支持的可信代码区提供密钥生成、加密和安全存储。本实施例通过可信存储文件系统来完成在内核中自动对程序的文件写行为进行加密,保证存储设备中的文件都是加密过的无法直接读取。对程序的文件读行为自动进行解密从而保证现有程序可以正常运行。同时,对文件存储的密钥通过可信硬件进行保护,防止了恶意程序访问和破坏。

所述智能操作系统支持所述可信存储文件系统的一种具体实现过程包括:验证用户的合法身份,接收用户设置的共享秘密数据,并在所述共享秘密数据正确时允许用户访问所述可信存储文件系统。本实施例沿用了底层操作系统对用户的管理方式,但是添加了用户身份认证和授权模块(简称为AUTH模块)。AUTH模块将用户的认证和可信硬件支持的认证和授权结合在一起。AUTH模块首先验证用户的合法身份,然后接收用户设置的共享秘密数据,只有该数据正确时用户才能访问可信存储文件系统。AUTH模块在用户的一次会话期间不需要重新执行,只需在系统加载时或者用户切换时通过系统调用接口进行。与常用的口令认证机制相比,该过程实现了更安全、更可靠的认证。

如图18所示,所述支持域管理的移动办公安全方法还包括:

S106,在所述支持域管理的系统内核上构建可信网络连接系统,实现为应用程序提供可信的网络支持。

进一步,参见图19所示,所述可信网络连接系统的一种具体实现过程包括:提供加密连接支持;或进一步包含与远程网络连接决策点之间进行完整性验证的协议的实现。设置网络访问的入口,控制所有对本地进行的网络访问。可信网络连接系统利用可信系统区提供的多项安全功能为上层应用提供了一个可信的网络连接基础,只有在平台状态正常的情况下才允许上层应用进行网路连接。同时,可信网络连接协议栈模块提供加密连接方式,上层应用可以选择采用加密连接进行数据传输,从而防止数据在传输过程中泄露。

所述智能操作系统支持所述可信网络连接系统的一种具体实现过程包括:收集所述智能操作系统的运行平台的完整性度量值,以便传输至远程可信网络连接决策点进行验证;负责管理完整性度量。其中,所述完整性度量值包括智能操作系统平台相关的配置和一些安全参数等信息。

如图20所示,所述支持域管理的移动办公安全方法还包括:

S107,在所述智能终端平台提供的硬件可信模式下构建可信系统,所述可信系统通过受限通信与所述支持域管理的系统内核或智能操作系统交互。本实施例利用基于TrustZone的可信系统提供的加解密、签名和验证功能、以及组件可信性验证等功能为上层应用提供可信的网络支持。不可信系统通过受限通信和可信系统交互。

进一步,参见图17和图19所示,所述可信系统的一种具体实现过程包括:为所述可信网络连接协议栈模块提供加密连接协议;对所述网络访问进行验证;验证所述可信网络连接系统的组件可信性;为所述可信存储文件系统提供密钥生成、加密和安全存储;对所述用户进行身份认证和授权;验证所述可信存储文件系统的组件可信性。

本发明基于LINUX内核提供命名空间机制实现了程序执行域之间的强隔离,在移动办公安全系统中创建隔离的程序执行环境;针对办公执行域中程序执行环境安全级别的要求,系统内核提供了可信的文件存储和网络访问功能;在对跨域的进程间通讯中,本发明支持跨域通讯的Binder交互,支持跨域通讯的匿名共享内存。而且,本发明采用Linux内核的命名空间机制隔离个人应用程序和办公应用程序的同时,也将操作系统的执行和应用程序进行了隔离,为了便于智能操作系统管理其他程序域的执行,本发明在内核层次提供域管理接口。智能操作系统基于系统内核提供的域管理接口可以方便的实现对于程序域的管理。此外,本发明提出的在支持移动办公应用安全性方面,提出了可信存储与网络安全连接。

与现有技术相比,本发明的优点在于为移动办公安全领域设定了支持域管理的系统内核,不同于一般LINUX共享内存等方式处理程序间的通讯。本发明为了创建隔离的程序执行环境,智能操作系统和应用程序(包括个人应用和办公应用)均运行在单独的程序执行域中,并且相对于传统的基于LINUX内核进程间通信方式有着显著的不同,其提供的命名空间机制实现了程序执行域之间的强隔离(包括文件系统、网络资源、进程空间等方面的隔离)。为了支持应用程序和智能操作系统之间的正常交互,本发明提供了跨域的进程间通讯机制,支持现有应用程序能够正常的在独立程序域中执行。同时这种跨域的通讯机制同样支持一个执行域内部的进程间通讯。

综上所述,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号