一种用于多应用间的安全共享动态内存系统和方法技术方案

技术编号:2821731 阅读:296 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种用于多应用间的安全共享动态内存系统和方法,属于信息安全技术领域,特别适用于实现多系统之间的安全交换信息。所述系统包括共享内存池、内存块、访问控制模块;所述的共享内存池为多矩阵共享内存池;共享内存池是一个虚拟的二维多矩阵内存空间,每一块内存空间能被动态分配大小、指定访问权限、采用不同的密钥算法保证内存中数据的完整性和保密性,达到多应用之间的数据共享。用于所述系统的方法,其程序包括:创建共享内存池、写数据、读数据、写数据到共享内存、解密数据。本发明专利技术的优点是:保证内存中数据的完整性和保密性,达到多应用之间的数据共享安全、方便、灵活,还可以作为一项基础设施实现多系统之间安全交换信息。

【技术实现步骤摘要】

本专利技术涉及,属于信 息安全
,特别适用于实现多系统之间的安全交换信息。
技术介绍
多应用间的数据共享是一种非常重要和实用的技术。大、中型软件的开 发设计多是由众多程序设计人员的合作完成,通常一个程序设计人员只负责 其中一个或几个模块的开发,这些模块可以是动态链接库,也可以是应用程 序或是其他形式的程序组件。这些独立开发出来的程序模块最终需要作为一 个整体来运行,即组成一个系统,在系统运行期间,这些模块往往需要频繁 地进行数据交换和数据共享,对于动态链接库同其主调应用程序之间的数据 交换是非常容易实现的,但是,在两个应用程序之间、或是动态链接库同其 主调应用程序之外的其他应用程序进行数据交换就比较困难了 。尤其是在交 换数据量过大、交换过于频繁的情况下更是难以实现。进程间通讯的方式有 很多,常用的有共享内存、命名管道和匿名管道、发送消息等几种方法来直接完成。另外,还可以通过socket 口、配置文件和注册表等来间接实现进程 间数据通讯任务。以上这几种方法各有优缺点,具体到在进程间进行大数据 量数据的快速交换问题上,则可以排除使用配置文件和注册表的方法;另夕卜, 由于管道和socket套接字的使用需要有网卡的支持,因此,也可以不予考虑。 这样,可供选择的通讯方式只剩下共享内存和发送消息两种。在交换数据量较大的情况下实现数据频繁而又快速的交换用发送消息的方法也是不合适 的,当数据传输过于频繁时,将有可能导致数据的丢失。现有的共享内存的 方法能够有效地解决数据交换,共享的问题,但是,却在没有对数据加密、 没有指定数据访问权限的情况下进行,从而降低了共享数据的安全性。其次, 不能动态分配内存,则在某种程度上降低了灵活性。
技术实现思路
本专利技术的一个目的在于,提供一种用于多应用间的安全共享动态内存系 统,该系统克服了现有共享内存系统有关安全性、灵活性不足的缺点,而本 专利技术的动态分配共享内存系统其内存大小、指定访问权限以及采用不同的密 钥算法保证内存中数据的完整性和保密性,达到多应用之间的数据共享安 全、方便、灵活。本专利技术的另一个目的在于,提供一种用于多应用间的安全共享动态内存 系统的方法,现有方法的缺点在于,安全性、灵活性不足,而本专利技术方法的 程序具有安全性强、灵活性好的特点。本专利技术所涉及的系统是一种用于多应用间的安全共享动态内存系统,其 技术方案是多应用间的安全共享动态内存建立在操作系统的内核中与用户 联通,包括共享内存池、内存块、访问控制模块;所述的共享内存池为多矩阵共享内存池;共享内存池是一个虚拟的二维多矩阵内存空间,每--块内存空间能被动态分配大小、指定访问权限、采用不同的密钥算法保证内存中数 据的完整性和保密性,达到多应用之间的数据共享。在上述用于多应用间的安全共享动态内存系统技术方案基础上具有附加技术特征的进一歩的方案是所述的共享内存池的每一块动态分配的内存空间小于或等于8GB。所述的指定访问权限是采用权限分级方式,限定指定权限的应用访问共 享内存指定的数据。所述的采用不同的密钥算法保证内存中数据的完整性和保密性是加密、 校验共享内存数据采用不同的密钥算法。所述的共享内存池每一块动态分配的内存空间小于或等于5GB。 所述的共享内存池每 一 块动态分配的内存空间为8 G B 所述的共享内存池每 一 块动态分配的内存空间为1G B 。 所述的共享内存池的内存块小于等于20块。 所述的共享内存池的内存块小于等于5块。上述本专利技术多应用间的安全共享动态内存系统的技术效果是用于支持 多应用之间的数据安全共享。该专利技术通过在操作系统内核中创建一个多矩阵 的共享内存池,构成多矩阵内存空间的每一块都可以被动态分配大小、指定 访问权限、采用不同的密钥算法保证内存中数据的完整性和保密性。这样, 不仅可以保证系统内多应用之间共享数据的方便性和安全性,还可以作为一 项基础设施实现多系统之间安全交换信息。因此本专利技术具有数据共享灵活, 安全的优点。本专利技术的另 一 项是 一 种用于多应用间的安全共享动态内存系统的方 法,该方法的程序是a、 创建共享内存池应用初始化时,首先通过驱动程序在操作系统核 心层创建一个多矩阵的共享内存池,共享内存池包括若干虚拟内存块;b、 写数据每一块内存块由访问控制模块设置以下信息内存标号,权限信息,加密算法,内存大小;共享内存在核心层的每一块内存对应应用层的一个逻辑结构,应用层程序通过读写逻辑结构与共享内存交换数据,來达到多应用间的数据共享;C、读数据应用程序通过逻辑结构访问共享内存时,按指定权限进行相应的操作;读写数据时采用不同的密钥算法,并且,共享内存按读写数据的 大小分配相应的存储空间;d、写数据到共享内存至少一个应用程序通过逻辑结构,将数据写入共享内存,指定访问权限,共享内存采用密钥算法加密数据;e、解密数据另外至少一个应用程序通过相应的逻辑结构,按照指定的权限解密数据,然后访问共享内存数据。在上述方法的程序的基础上,具有附加技术特征的进一歩技术方案为 所述的采用不同的密钥算法保证内存中数据的完整性和保密性是加密,校验共享内存数据,采用不同的密钥算法。上述本专利技术的方法不仅可以保证系统内多应用之间共享数据的方便性和安全性,还可以作为一项基础设施实现多系统之间安全交换信息,具有数据共享灵活、安全的效果。附图说明图1是本专利技术多应用间的安全共享动态内存系统结构、组成示意图。图 中用户层包括多种应用;核心层包括多个逻辑内存块。图2是一种用于多应用间的安全共享动态内存系统的方法程序简图。 图3是图2进一歩明细的方法程序框图具体实施方式结合附图和实施例对本专利技术作进一步说明如下如图l所示,是本专利技术的一种用于多应用间的安全共享动态内存系统的 - 一个实施例本专利技术系统建立在操作系统的内核中与用户联通,所述用户呈 现为用户层,操作系统的内核属于核心层;它有一个共享内存池1、内存块2、 访问控制模块3;所述的共享内存池1为多矩阵共享内存池,所述的共享内存池1的内存块2小于等于20块,本例选为5块,若为20块则容量更大;共享内存池1是一个虚拟的二维多矩阵内存空间,每一块内存空间能被动态 分配大小、指定访问权限、采用不同的密钥算法保证内存中数据的完整性和保密性,达到多应用之间的数据共享;所述的共享内存池1的每一块动态分配的内存空间小于或等于8GB,本实施例选为小于或等于5GB,具体选为4GB , 也可选为5GB,每一块动态分配的内存空间还可以为8GB,小的可选为1GB; 所述的指定访问权限是采用权限分级方式,限定指定权限的应用访问共享内 存指定的数据;所述的采用不同的密钥算法保证内存中数据的完整性和保密 性是加密、校验共享内存数据采用不同的密钥算法,采用的不同的密钥算法 选自DES, 3DES, RSA。如图2、图3所示是本专利技术多应用间的安全共享动态内存系统的方法实施例图2是方法程序简图首先,在操作系统内核中创建一个多矩阵的共享内存池;然后,应用程序动态分配内存空间大小,指定访问权限,加密数据; 最后,应用程序被指定的权限、空间大小解密数据,然后访问数据。图3是图2进一歩明细的方法程序框图,其程序为第l歩a所小为创建共享内存池应用初始化时,首先通过驱动程序在操作系统核心层创建一个多矩阵的共享内存池,共享内存本文档来自技高网
...

【技术保护点】
一种用于多应用间的安全共享动态内存系统,其特征在于,它建立在操作系统的内核中与用户联通,包括共享内存池(1)、内存块(2)、访问控制模块(3);所述的共享内存池(1)为多矩阵共享内存池;共享内存池(1)是一个虚拟的二维多矩阵内存空间,每一块内存空间能被动态分配大小、指定访问权限、采用不同的密钥算法保证内存中数据的完整性和保密性,达到多应用之间的数据共享。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘毅张大鹏余乔吴庆熊钢
申请(专利权)人:瑞达信息安全产业股份有限公司
类型:发明
国别省市:83[中国|武汉]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1