一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种信息系统数据安全加固方法与流程

2022-06-08 18:13:31 来源:中国专利 TAG:


1.本发明涉及信息安全技术领域,尤其涉及一种信息系统数据安全加固方法。


背景技术:

2.当前,由于交管业务部门的信息系统能够提供动车、驾驶证、违法、事故、剧毒品运输、重点对象管理等窗口服务业务的办理功能,其存储着机动车、驾驶证、违法等各类核心业务数据,因此,交管业务部门的信息系统对数据安全性要求极高。但由于信息系统的软件采用部、省、市三级部署架构,软件由部局统一组织研发,各地负责部署及维护,数据与应用的分散部署对数据安全构成极大威胁。同时,各地系统运维水平不一,网络安全防护能力不足,甚至维护工作都由第三方公司负责,增加了数据被攻击的安全隐患。信息系统推广应用以来,陆续出现了一些数据攻击事件。
3.为了维护交管业务部门的数据安全,部局定期通报各地应用服务器弱口令、数据库弱口令、网络访问、恶意访问调用等隐患,督促地方加强信息安全管理,一定程度上推动了系统安全运行,防范了潜在安全隐患。但对于更高层面的系统安全仍无法杜绝,诸如数据的恶意篡改、删除,程序代码反编译后恶意修改等方面。
4.另外,由于传统的安全加固技术主要用于防御外部攻击,如通过非对称加密通讯协议解决数据可信问题,通过防火墙防范外部网络攻击等,而当卫星式的系统部署架构,其部署所在地本身就不安全,存在来自内部的攻击时,普遍防御能力不佳。


技术实现要素:

5.本发明提供了一种信息系统数据安全加固方法,解决相关技术中存在的交管数据不安全的问题。
6.作为本发明的一个方面,提供一种信息系统数据安全加固方法,其中,包括:校验应用程序的合法性;当所述应用程序校验合格后,接收所述应用程序发送的数据加固调用指令;根据所述数据加固调用指令向java应用层发出业务数据加密服务申请;当所述java应用层对所述业务数据加密服务申请验签通过后,根据所述业务数据加密服务申请中的业务场景类型生成动态密文数据,并将所述动态密文数据发送至数据库代码层;当所述数据库代码层对所述动态密文数据进行校验并解析所述业务场景类型后,接收待处理数据;对所述待处理数据进行处理得到处理结果,将所述处理结果反馈至所述应用程序。
7.进一步地,所述根据所述数据加固调用指令向java应用层发出业务数据加密服务申请,包括:根据所述数据加固调用指令向java应用层中的数据加解密与签名验签服务申请接口发起业务数据加密请求,其中所述java应用层包括面向业务调用的数据加解密与签名验签
服务申请接口、访问权限控制器、数据封装器和数据库加密算法包;接收所述应用程序发送的与业务场景类型对应的握手码,并将所述握手码发送至java应用层中的数据加解密与签名验签服务申请接口。
8.进一步地,所述数据加解密与签名验签服务申请接口包括:数据加密、数据解密、签名和验签四类应用场景。
9.进一步地,所述当所述java应用层对所述业务数据加密服务申请验签通过后,根据所述业务数据加密服务申请中的业务场景类型生成动态密文数据,并将所述动态密文数据发送至数据库代码层,包括:当所述java应用层对所述业务数据加密服务申请验签通过后,对所述握手码进行解析,得到解析结果;根据所述解析结果判断所述业务数据加密请求是否合法,并得到所述业务场景类型以及所述业务数据加密请求的有效期;当判定所述业务数据加密请求合法后,根据所述业务场景类型以及所述业务数据加密请求的有效期获取与所述业务场景类型对应的加密密钥片段;根据当前时间对所述加密密钥片段进行加密,得到动态密文数据;将所述动态密文数据发送至所述数据库代码层。
10.进一步地,所述数据库代码层包括数据库plsql代码包和数据库嵌入java算法包,所述数据库plsql代码包包括算法框架包和业务逻辑包,所述业务逻辑包包括所有涉及到安全算法的业务程序。
11.进一步地,所述当所述数据库代码层对所述动态密文数据进行校验并解析所述业务场景类型后,接收待处理数据,包括:当所述业务逻辑包通过所述算法框架包将所述动态密文数据调用到所述数据库嵌入java算法包后,接收待处理数据。
12.进一步地,所述信息系统数据安全加固方法包括在所述对所述待处理数据进行处理得到处理结果的步骤前进行的:所述数据库嵌入java算法包对所述动态密文数据进行解析得到与所述业务场景类型对应的密钥片段,并校验所述业务数据加密请求是否过期;将所述密钥片段与所述数据库嵌入java算法包中内置与所述业务场景类型对应的密钥片段组合,生成加解密,签名验签所需完整密钥。
13.本发明提供的信息系统数据安全加固方法,通过上端java应用层与数据库嵌入式算法相结合,解决单一层级安全算法易被攻破的问题;通过将上层应用与数据库plsql包等加密、混淆及验签与上下端动态密文通讯技术相结合,形成全链条安全加固,防范各类攻击。
附图说明
14.附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
15.图1为本发明提供的信息系统数据安全加固方法的流程图。
具体实施方式
16.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互结合。下面将参考附图并结合实施例来详细说明本发明。
17.为了使本领域技术人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
18.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包括,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
19.在本实施例中提供了一种信息系统数据安全加固方法,图1是根据本发明实施例提供的信息系统数据安全加固方法的流程图,如图1所示,包括:s110、校验应用程序的合法性;应当理解的是,业务系统在启动时,首先对应用程序进行合法性校验,确保应用程序代码为未被非法篡改。
20.s120、当所述应用程序校验合格后,接收所述应用程序发送的数据加固调用指令;具体地,当应用程序校验合格后,可以进行数据加固调用,此处应用程序作为调用者可以发出数据加固调用指令。
21.s130、根据所述数据加固调用指令向java应用层发出业务数据加密服务申请;具体地,根据所述数据加固调用指令向java应用层中的数据加解密与签名验签服务申请接口发起业务数据加密请求,其中所述java应用层包括面向业务调用的数据加解密与签名验签服务申请接口、访问权限控制器、数据封装器和数据库加密算法包;接收所述应用程序发送的与业务场景类型对应的握手码,并将所述握手码发送至java应用层中的数据加解密与签名验签服务申请接口。
22.需要说明的是,所述数据加解密与签名验签服务申请接口包括:数据加密、数据解密、签名和验签四类应用场景。
23.在本发明实施例中,通过二层加密框架,将加密算法及密钥拆分为java应用层与数据库代码层,解决单一算法框架易被攻破的的问题。
24.具体地,所述二层加密框架包括java应用层与数据库代码层。java应用层包括面向业务调用方的数据加解密与签名验签服务申请接口、访问权限控制器、数据封装器、数据库加密算法包,其中数据加解密与签名验签服务申请接口具体分为,数据加密、解密、签名、验签四类应用场景,业务调用方需配备握手码,不同业务,不同调用时限的握手码各不相同;访问权限控制器用于对握手码进行校验,并根据握手码指定对应的加密通道,配备相应的密钥体系,明确通讯密钥的有效时长;数据封装器,负责组装上端通讯密钥,向下端下发密钥调用请求;数据库加密算法包从上层应用获取密钥调用请求后,对请求信息进行解析,判定信息合法性、请求的时效性,并获取部分加密密钥信息,并在数据库层提供待加密数据
写入接口,将密钥与待加密数据结合后,算法包统一提供数据加密实现。数据库层代码又分为数据库plsql代码包及数据库嵌入java算法包,数据库plsql代码又包括算法框架包及业务逻辑包,业务逻辑包是指所有涉及到安全算法的业务程序。
25.s140、当所述java应用层对所述业务数据加密服务申请验签通过后,根据所述业务数据加密服务申请中的业务场景类型生成动态密文数据,并将所述动态密文数据发送至数据库代码层;具体地,当所述java应用层对所述业务数据加密服务申请验签通过后,对所述握手码进行解析,得到解析结果;根据所述解析结果判断所述业务数据加密请求是否合法,并得到所述业务场景类型以及所述业务数据加密请求的有效期;当判定所述业务数据加密请求合法后,根据所述业务场景类型以及所述业务数据加密请求的有效期获取与所述业务场景类型对应的加密密钥片段;根据当前时间对所述加密密钥片段进行加密,得到动态密文数据;将所述动态密文数据发送至所述数据库代码层。
26.由前文所述可知,所述数据库代码层包括数据库plsql代码包和数据库嵌入java算法包,所述数据库plsql代码包包括算法框架包和业务逻辑包,所述业务逻辑包包括所有涉及到安全算法的业务程序。
27.数据库plsql代码wrap及验签具体包括,数据代码warp与代码签名、验签,warp组件负责将数据库plsql代码从源码生成为加密程序包,加密组件负责将warp后的数据库代码生成签名信息,验签组件整合在上层java应用中,在调用加密算法前,都需要通过验签程序校验数据库代码是否合法,不合法时禁止调用。
28.需要说明的是,动态加密算法用于上层java应用与下层数据库加密算法包之间的安全通讯,每次通讯时生成基于时间序列的动态验证码,并通过非对称算法确保传输数据安全,下层数据库加密算法包对其进行解析,并取得相应数据。
29.s150、当所述数据库代码层对所述动态密文数据进行校验并解析所述业务场景类型后,接收待处理数据;具体地,所述当所述数据库代码层对所述动态密文数据进行校验并解析所述业务场景类型后,接收待处理数据,包括:当所述业务逻辑包通过所述算法框架包将所述动态密文数据调用到所述数据库嵌入java算法包后,接收待处理数据。
30.当接收完待处理数据后,所述数据库嵌入java算法包对所述动态密文数据进行解析得到与所述业务场景类型对应的密钥片段,并校验所述业务数据加密请求是否过期;将所述密钥片段与所述数据库嵌入java算法包中内置与所述业务场景类型对应的密钥片段组合,生成加解密,签名验签所需完整密钥。
31.s160、对所述待处理数据进行处理得到处理结果,将所述处理结果反馈至所述应用程序。
32.下面对本发明实施例提供的信息系统数据安全加固方法进行详细说明。
33.业务系统在启动时,首先对应用程序进行合法性校验,确保程序代码为未被非法篡改。业务系统涉及到数据加固调用时,首先向数据加解密与签名验签服务申请接口发起
请求,请求时需要传输与具体业务场景对应的握手码,java应用从数据库视图中读取所有涉及到安全算法的数据库plsql程序代码进行校验,确保程序不被非法篡改,核心逻辑不被绕过,通过验签后,系统对握手码进行解析,分别判定是否合法请求,需要处理的业务场景类型,申请的有效期,根据以上信息,获取对应业务场景的加密密钥片段,并根据当前时间生成动态密文数据,下发至数据库plsql代码会话变量中,该变量在同一数据库事务中可以读取,并确保会话间隔离,事务结束后变量失效。需要调用安全算法时,由业务逻辑包调用数据库层的安全算法框架包,再调用到数据库嵌入java算法包,输入待处理数据及数据处理模式(加密、解密、签名、验签),java算法包会解析上层java应用传入的动态密文数据,校验请求是否过期,解析涉及的业务场景,从动态密文中取与业务场景对应的密钥片段,并与算法包中内置对应业务场景的密钥片段组合,生成加解密,签名验签所需完整密钥,再对待处理数据进行处理,生成结果信息,反馈给调用者。
34.本发明实施例提供的信息系统数据安全加固方法,通过应用自动化部署功能,实现分散应用节点的自动化部署,服务器节点黑盒管理,避免应用程序暴露;通过java应用混淆及加密验签技术,解决应用包被破译,被非法篡改问题;通过二层加密框架,将加密算法及密钥拆分为java应用层与数据库代码层,解决单一算法框架易被攻破的的问题;通过数据库plsql代码wrap及验签技术,确保数据库层代码不被非法攻击,采用动态通讯加密算法,二层架构下数据通讯间的安全问题。
35.此处需要说明的是,自动化部署用于将全国下发的代码自动部署至各地应用节点,其特征是对所有节点服务器设备码、mac、ip等信息进行备案登记,对白名单库进行统一管理,根据中心节点指令,实现所有节点应用程序、数据库代码的自动部署及升级。
36.java应用混淆及加密验签技术,包含对所有java发行代码的混淆,以及通过jvmti定制类加载器,对发行包代码进行加密处理。
37.因此,本发明实施例能够实现通过上端java应用层与数据库嵌入式算法相结合,解决单一层级安全算法易被攻破的问题;通过将上层应用与数据库plsql包等加密、混淆及验签与上下端动态密文通讯技术相结合,形成全链条安全加固,防范各类攻击。
38.可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献