一种软件定义安全体系结构的制作方法

文档序号:6631578阅读:298来源:国知局
一种软件定义安全体系结构的制作方法
【专利摘要】本发明请求保护一种软件定义安全体系结构(Software Defined Security Architecture,SDSA),通过分层思想将安全软件设计体系分解为三层体系结构,分别为:安全基础层、控制层、应用层。其具体实现包括如下内容:将传统跨层安全组件与软件设计进行解耦;将跨层安全方法、加密算法组件化;构造集安全执行平台和开发环境于一体的中间件;将组件化的安全方法、加密算法通过中间件技术虚拟化成服务提供给软件设计。
【专利说明】一种软件定义安全体系结构

【技术领域】
[0001]本发明涉及属于计算机安全领域,涉及软件开发设计的中间件技术,具体涉及一种软件定义安全体系(Software Defined Security Architecture, SDSA)

【背景技术】
[0002]计算机信息安全领域涵盖的范围非常广泛并且随信息时代的发展逐渐扩大。信息安全学科可分为狭义安全与广义安全两个层次,狭义的安全是建立在以密码论为基础的计算机安全领域。广义的信息安全几乎涵盖了计算机应用学科的大部分科学与技术。
[0003]对于软件开发商来说,为了使软件能够应对目前的安全威胁,就必须开发出更加安全的软件产品。于是他们对于软件安全问题的关注焦点在于:“如何才能开发出安全的软件产品? ”遗憾的是,传统的软件工程中使用的瀑布模型、螺旋模型和增量模型等软件开发模型并未对软件安全进行过多的关注,这些模型的使用并不能使企业的软件产品得到安全性的保障。传统的软件开发模型需要进行安全方面的改造。
[0004]现有的安全方法包含密码论方法和结构性安全方法。其中密码论方法有:
[0005]DES(Data Encrypt1n Standard):对称算法,数据加密标准,速度较快,适用于加密大量数据的场合;3DES (Triple DES):是基于DES的对称算法,对一块数据用三个不同的密钥进行三次加密,强度更高;RC2和RC4:对称算法,用变长密钥对大量数据进行加密,比DES 快;IDEA (Internat1nal Data Encrypt1n Algorithm)国际数据加密算法,使用 128位密钥提供非常强的安全性;RSA:由RSA公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的,非对称算法;MD5摘要算法;PKCS(The Public-KeyCryptography Standards)公钥算法,等等。
[0006]现有的结构性安全方法包含硬件保全,网络安全、病毒检测、网站过滤,等等。但是网络安全日益更高的性能和灵活扩展需求,更需要从软件设计层面思考,这是因为一方面,不论密码论还是网络信息安全,其科学涵盖范围之大,技术层次之深都导致其难以为有限的专业普通软件工程开发人员所掌握和熟练应用;另一方面,现代网络的发展导致信息安全环境极度恶化,信息安全的需求逐渐广泛化、平民化,越来越多的软件设计需要进行安全模块设计。


【发明内容】

[0007]针对以上现有技术中的不足,本发明的目的在于提供一种软件设计者提供可供调用的安全组件、可供软件运行的安全运行环境的软件定义安全体系结构,本发明的技术方案如下:
[0008]—种软件定义安全体系结构,其特征在于:包括基础设施层、安全能力层、安全执行平台、安全开发环境模块及应用层模块:其中
[0009]基础设施层:包括若干分布式集群,通过分布式集群为安全能力层及以上层提供物理承载平台;
[0010]安全能力层:包括系统安全模块,用于封装对系统运行状态的接口,如CPU运行状态、内存状态、10、硬盘读写、网络状态,安全模块中不同接口排列组合构成中间件的安全引擎,系统安全模块包含所有与底层操作系统、网络有关的安全行为管控;算法安全模块用于安全算法的实现与封装,对数据进行处理,进行功能化实现,构成中间件的安全核心库用于将加密解密、认证、隔离功能转化为对算法模块的调用;
[0011]安全执行平台:包括安全运行环境、安全引擎、安全核心库、安全执行管控模块和弹性安全服务模块;系统安全执行管控模块运行时环境为安全引擎,在安全引擎之上包含安全状态监控、安全任务执行以及开发者管理模块,安全状态监控模块司职管控安全系统的运行状态,弹性安全服务模块运行时环境为安全核心库,底层将抽象加密解密算法封装为可供组合调用的核心库;
[0012]安全开发环境:用于为中间件系统提供安全软件开发环境,为软件开发者提供完整的安全软件组件和开发文档、软件开发示例;
[0013]安全服务接口:中间件向应用层提供安全应用程序编程接口的方式向应用软件,网络服务软件提供安全服务。
[0014]进一步的,所述基础设施层的分布式集群包括hadoop集群,spark集群,hama集群,关系数据库集群。
[0015]进一步的,所述体系结构安全模块的安全行为管控包括内存检测、进程隔离、网络管控及数据隔离。
[0016]进一步的,所述算法安全模块包括DES加密算法、AES加密算法、基于属性的加密算法、RSA加密算法、安全策略、PKI密钥体系。
[0017]进一步的,所述安全执行平台的安全执行管控模块在安全引擎上包括安全状态监控、安全任务执行以及开发者管理模块。
[0018]进一步的,所述弹性安全服务模块在安全核心库上运行时,在安全核心库的支持下包含属性服务、策略服务、安全令牌服务、安全上下文服务、安全审计服务。
[0019]进一步的,所述安全开发环境包含Mashup集成器、工作流集成器、数据抽取、转换、装载设计器、OLAP联机分析处理设计器、DM工具、报表设计器模块。
[0020]本发明的优点及有益效果如下:
[0021]本发明克服安全设计复杂化与安全需求普适性的矛盾,通过对传统安全功能及技术的抽象为虚拟化的服务,将安全控制和安全执行进行解耦,通过软件开发中间件提供安全接口,使服务可编程化。封装底层提供的专业安全引擎、专业安全算法,为软件设计者提供按需分配的安全组件、简洁高效的安全运行环境。
[0022]其优势对比传统高耦合系统具有简单、普适、稳定、可编程、层次间隔离的优势。对安全设计的大规模应用提出了创造性方案。

【专利附图】

【附图说明】
[0023]图1是本发明优选实施例划分的软件开发的层次图;
[0024]图2是本发明优选实施例一种软件定义安全的安全软件设计方法总体结构图。【具体实施方式】
[0025]下面结合附图给出一个非限定的实施例对本发明作进一步的阐述。但是应该理解,这些描述只是示例的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
[0026]如图1所示为本发明所划分的软件开发层次图,本发明定义安全软件开发逻辑层次为:安全基础层、控制层、应用层,其中:
[0027]安全基础层:软件定义安全三层结构的底层。由中间件的算法、底层调用提供者完成。提供弹性调用的系统安全监控接口(内存检测、进程检测、数据隔离、网络管控等流程化安全方法及网络跨层安全方法等)和弹性安全加密算法实现(DSA加密算法、AES加密算法、RSA加密算法、基于属性加密、安全策略、PKI密钥体系等数据加密算法和访问控制算法坐')
寸/ ο
[0028]控制层:软件定义安全三层结构的中层。由中间件的逻辑业务开发者完成。为底层和顶层接口提供统一接口,并向顶层提供开发平台和说明。提供逻辑处理,系统支持,算法调度,接口封装等控制结构,将基础层所提供接口封装为服务接口,提供调用。
[0029]应用层:软件定义安全的顶层。由中间件的使用者用——软件开发人员开发完成。提供应用程序功能模块。通过调用控制层所提供的安全接口,实现软件或WEB服务的数据、网络安全。
[0030]如图2所示为一种软件定义安全体系总体结构图,其包括如下层次及模块:
[0031]1.基础设施层:通过分布式集群为系统提供物理承载平台,包含构成基本计算单元的硬件以及基本的网络结构,软件框架包含现有数据处理、数据存储、业务支撑的开源项目,如hadoop集群,spark集群,hama集群,关系数据库集群等。
[0032]2、安全能力层:包括系统安全模块和算法安全模块,构成本发明中间件的安全引擎和算法核心库,安全引擎为动态监控提供系统级别的支持,算法核心库为安全算法模块提供开源接口调用;
[0033]2.1:系统安全模块包含所有与底层操作系统、网络有关的安全行为管控,包括但不仅限于内存检测、进程隔离、网络管控、数据隔离等。
[0034]2.2:安全算法模块包含所有需要算法支持的安全加密行为,包括但不仅限于DES加密算法、AES加密算法、基于属性的加密算法、RSA加密算法、安全策略、PKI密钥体系等。
[0035]3.安全执行平台:安全运行时环境,包括安全执行管控模块和弹性安全服务模块。
[0036]3.1:安全执行管控模块运行时环境为安全引擎,在安全引擎之上包含安全状态监控、安全任务执行以及开发者管理模块,安全状态监控模块司职管控安全系统的运行状态,如进程状态、内存堆栈运行状态、文件系统运行状态、系统资源调度状态等。
[0037]3.2:弹性安全服务模块运行时环境为安全核心库,底层安全算法人员将算法封装为可供组合调用的核心库,向上层提供算法安全类服务,在安全核心库的支持下包含属性服务(利用属性加密算法)、策略服务、安全令牌服务、安全上下文服务、安全审计服务等。
[0038]4.安全开发环境:安全开发环境为中间件系统提供的安全软件开发环境,为软件开发者提供完整的安全软件组件和开发文档、软件开发示例。
[0039]4.1:安全开发环境包含Mashup集成器(糅合集成器)、工作流集成器、ETL(Extract-Transform-Load、数据抽取、转换、装载)设计器、OLAP 设计器(On-LineAnalytical Processing联机分析处理)、DM工具(Design Management)、报表设计器模块。
[0040]4.2:软件开发者可使用拖放式工作流组件配置安全方案,或者使用SAPI (Security Applicat1n Programming Interface,安全应用程序编程接口)实现配置安全方案。包含以上模块的开发环境可以满足不同行业,不同能力的软件开发者使用其熟悉的软件开发平台,通过安装插件的方式在软件开发过程中引入底层提供的安全服务;对于非软件开发人员可以使用拖放式的开发工具制作简单的安全应用工具和报表。
[0041]5:软件定义安全体系总体结构图是软件定义安全体系发明的一项具体实现。软件定义安全体系具体解释为如结构图所示的一种将原有软件开发过程划分为安全模块开发、中间件开发、软件开发三个步骤的软件结构体系。
[0042]以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明方法权利要求所限定的范围。
【权利要求】
1.一种软件定义安全体系结构,其特征在于:包括基础设施层、安全能力层、安全执行平台、安全开发环境模块及应用层模块:其中 基础设施层:包括若干分布式集群,通过分布式集群为安全能力层及以上层提供物理承载平台; 安全能力层:包括系统安全模块,用于封装对系统运行状态的接口,如CPU运行状态、内存状态、10、硬盘读写、网络状态,安全模块中不同接口排列组合构成中间件的安全引擎,系统安全模块包含所有与底层操作系统、网络有关的安全行为管控;算法安全模块用于安全算法的实现与封装,对数据进行处理,进行功能化实现,构成中间件的安全核心库用于将加密解密、认证、隔离功能转化为对算法模块的调用; 安全执行平台:包括安全运行环境、安全引擎、安全核心库、安全执行管控模块和弹性安全服务模块;系统安全执行管控模块运行时环境为安全引擎,在安全引擎之上包含安全状态监控、安全任务执行以及开发者管理模块,安全状态监控模块司职管控安全系统的运行状态,弹性安全服务模块运行时环境为安全核心库,底层将抽象加密解密算法封装为可供组合调用的核心库; 安全开发环境:用于为中间件系统提供安全软件开发环境,为软件开发者提供完整的安全软件组件和开发文档、软件开发示例; 安全服务接口:中间件向应用层提供安全应用程序编程接口的方式向应用软件,网络服务软件提供安全服务。
2.根据权利要求1所述的一种软件定义安全体系结构,其特征在于:所述基础设施层的分布式集群包括hadoop集群,spark集群,hama集群,关系数据库集群。
3.根据权利要求1所述的一种软件定义安全系统,其特征在于:所述体系结构安全模块的安全行为管控包括内存检测、进程隔离、网络管控及数据隔离。
4.根据权利要求1所述的一种软件定义安全体系结构,其特征在于:所述算法安全模块包括DES加密算法、AES加密算法、基于属性的加密算法、RSA加密算法、安全策略、PKI密钥体系。
5.根据权利要求1所述的一种软件定义安全体系结构,其特征在于:所述安全执行平台的安全执行管控模块在安全引擎上包括虚拟机迁移、安全状态监控、安全任务执行以及开发者管理模块。
6.根据权利要求1所述的一种软件定义安全体系结构,其特征在于:所述弹性安全服务模块在安全核心库上运行时,在安全核心库的支持下包含属性服务、策略服务、安全令牌服务、安全上下文服务、安全审计服务。
7.根据权利要求1所述的一种软件定义安全体系结构,其特征在于:所述安全开发环境包含Mashup集成器、工作流集成器、数据抽取、转换、装载设计器、OLAP联机分析处理设计器、DM工具、报表设计器模块。
【文档编号】G06F21/57GK104346575SQ201410578729
【公开日】2015年2月11日 申请日期:2014年10月24日 优先权日:2014年10月24日
【发明者】刘宴兵, 卢星宇, 肖云鹏, 徐光侠, 刘亚, 冉欢, 蹇怡, 钟晓宇 申请人:重庆邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1