CN104506486A - 一种高安全级别的软件服务接口调用方法和系统 - Google Patents

一种高安全级别的软件服务接口调用方法和系统 Download PDF

Info

Publication number
CN104506486A
CN104506486A CN201410650775.3A CN201410650775A CN104506486A CN 104506486 A CN104506486 A CN 104506486A CN 201410650775 A CN201410650775 A CN 201410650775A CN 104506486 A CN104506486 A CN 104506486A
Authority
CN
China
Prior art keywords
service
bus
uniform
interface
call
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410650775.3A
Other languages
English (en)
Other versions
CN104506486B (zh
Inventor
王德淳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Ruian Technology Co Ltd
Original Assignee
Beijing Ruian Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Ruian Technology Co Ltd filed Critical Beijing Ruian Technology Co Ltd
Priority to CN201410650775.3A priority Critical patent/CN104506486B/zh
Publication of CN104506486A publication Critical patent/CN104506486A/zh
Application granted granted Critical
Publication of CN104506486B publication Critical patent/CN104506486B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明涉及一种高安全级别的软件服务接口调用方法和系统。该方案主要内容包括服务管理、服务发布以及服务调用,能够以如下形式确保信息传输的安全可靠:接口以文件传输层实现,单向传输,异步应答;文件传输过程中以双向二次加密,更能确保数据的安全性,以避免一方密钥被破解造成的安全漏洞;服务调度中心有效地隔离了各个应用与服务的链路,所有调用都经过服务总线;审计功能确保事后有追溯的依据。本发明适用于高安全性软件制造行业,能够支持不同平台或不同开发语言间的软件服务接口。

Description

一种高安全级别的软件服务接口调用方法和系统
技术领域
本发明涉及计算机软件编程应用领域,具体来说是一种跨平台、跨语言间不同软件的服务接口的调用方法和系统,能够满足服务接口对安全性、实效性的更高要求,且遵循面向服务架构(SOA,Service-Oriented Architecture),以统一服务总线形式,便于监管、发布、审计各类服务的使用情况。
背景技术
对于在跨平台、跨语言的不同软件程序间,常存在接口调用的需求,用于不同软件模块间的数据交互。现在市面上常用的服务接口技术有:WebService,JSON(JavaScript Object Notation),Hessian等,这些服务接口框架都能够实现跨平台、跨语言的服务发布与调用。
WebService接口是一个基于web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序,基于TCP/IP网络通讯协议,运用HTTP技术实现分布式不同应用程序间通过XML文件的接口调用过程。JSON(JavaScript Object Notation)接口是一种轻量级数据传输接口,是JavaScript语法的子集,基于JavaScript语法,使用独立的数据文本格式,采用键值对的传输形式。Hessian接口是轻量级的remoting onhttp工具,基于二进制RPC协议,相比其他接口格式更加快捷、方便。
但是针对一些涉密软件研发,经常需要去考虑数据传输的安全性和实效性。比较上述常用服务接口,都无法满足高密级软件的传输规范。
发明内容
本发明的目的是提供一种跨平台、跨语言的高安全级别的软件服务接口组件,适用于常用的C、C#、Java、.NET、Php等多种语言,文件传输加密方式可配,能够实现消息摘要加密、公钥私钥加密以及常用的数字签名和数字证书,不同平台(不同的程序,不同的编程语言)间传输以OSI传输层为基准,并将传输接口参数和数据加密。
为实现上述目的,本发明采用如下技术方案:
一种高安全级别的软件服务接口调用方法,其步骤包括:
1)建立基于SOA(service-oriented architecture,面向服务体系结构)的辐条/集线器式的 统一服务总线,该统一服务总线通过一交换中心负责各应用系统间的连接工作;
2)通过统一服务总线向各个应用提供注册接口,由服务提供方提供服务信息,并选择加密方式和算法,并结合服务调用方标识(地址、端口)进行注册;
3)服务提供方将注册成功的服务发布在统一服务总线上,供服务调用方识别或调用;统一服务总线为不同平台和不同语言的应用系统分别提供库(lib)文件,以实现服务调用方调用总线服务;
4)在文件传输过程中,服务调用方自动对服务传输的参数或数据进行加密处理,加密规则和本地服务调用方默认的加密方式一致;传输到达统一服务总线后,统一服务总线根据秘钥进行解密,解密后再以服务提供方注册时选择的加密方式进行加密,然后中转调用服务提供方;返回过程同理,通过服务总线,进行二次加密解密过程,实现双向加密。
进一步地,在服务提供方将服务成功发布在统一服务总线上之后,在系统数据库后台会自动生成该服务的基本信息,统一服务总线能够将其与之前注册的服务进行比对,符合之前注册的服务即发布成功。
进一步地,对每一个接口调用做审计,保证接口调用过程追溯可查。服务调用兼容同步、异步两种方式,且能够在服务调用过程中,通过统一服务总线进行审计,以达到调用后的事后审计保障。
进一步地,步骤4)中服务接口调用以文本格式进行传输,文本中以key-value键值对形式对参数和结果进行封装。
进一步地,步骤4)中服务调用方采用的加密算法是MD5、DES、AES、RSA等。
一种采用上述方法的高安全级别的软件服务系统,其包括:
统一服务总线,包括一交换中心和若干应用系统,每个应用系统与交换中心连接;所述交换中心负责应用系统间的连接工作;该统一服务总线为不同平台和不同语言的应用系统分别提供库(lib)文件,以实现服务调用方调用总线服务,并对传输的文件进行加密和解密;
服务提供方,对外提供服务实现的应用或程序,按照服务接口API和要求提供服务接口,将注册成功的服务发布在统一服务总线上,供服务调用方识别或调用;
服务调用方,按照接口API调用服务提供方提供的服务,并将服务的调用结果展现给用户。
本发明基于OSI的传输层(Transport Layer)和常用的接口API方式,实现了跨平台、跨语言的服务接口组件,其中OSI的传输层相比常用的Http协议更加安全可靠,并且API接口满足了服务框架的功能与性能特征。在具备传统服务功能的调用与实现基础上,本发明以如下形式确保信息传输的安全可靠:
1)接口以文件传输层实现,单向传输,异步应答;
2)文件传输过程中以双向二次加密,更能确保数据的安全性,以避免一方密钥被破解造成的安全漏洞;
3)服务调度中心有效地隔离了各个应用与服务的链路,所有调用都经过服务总线;
4)审计功能确保事后有追溯的依据。
本发明提供了一种高安全级别的软件服务接口组件的主要内容包括服务管理、服务发布以及服务调用,其中对于高安全性的加密算法和数字签名均有特殊处理过程。整体服务调用基于底层FTP文件传输协议。本发明适用于高安全性软件制造行业,能够支持不同平台或不同开发语言间的软件服务接口。由于服务能够实现跨网、跨平台,并对服务的安全性、实效性有高度要求,大大降低了软件制造过程中的安全成本,适用于高度涉密行业的软件开发。
附图说明
图1为服务应用集成模型,其中图(a)是点对点应用集成模式,图(b)是SPOKE/HUB应用集成模式。
图2为服务注册操作流程图。
图3为服务发布操作流程图。
图4为服务调用操作流程图。
图5为服务接口传输格式规范示意图。
图6为服务传输中的加密解密流程图。
图7为系统整体框架示意图。
具体实施方式
下面通过实施例和附图,对本发明做进一步说明。
本发明的主要贡献在于:
1)提供基于SOA(service-oriented architecture,面向服务体系结构)的总线型服务;
2)实现基于服务总线的服务注册、发布以及调用框架;
3)为不同平台和不同语言的系统分别提供lib包,以实现服务调用方调用总线服务;
上述步骤在市面主流框架中都具有相应的解决方案,本发明除此之外,还包括如下步骤:
4)创建单独的文件传输加密解密模块,将市面上主流的密码学算法集成到步骤2);
5)对每一个接口调用做审计,保证接口调用过程追溯可查。
下面详细说明上述各步骤。
步骤1)基于SOA(service-oriented architecture,面向服务体系)本发明使用标准总线型服务结构。如图1中(a)图和(b)图所示,每一个圆形都是一个应用,其中的连线是应用之间的接口服务,其中(a)图的点对点的直接连接关系,是早期的应用集成方式。直连的2个应用系统间要事先约定接口方式并严格遵守,任何一方变化都会影响到另一方,这就形成了紧耦合的接口关系。
如图1所示,随着应用系统数量增加,连接数量和接口方式成倍增长,使得系统间的接口关系错综复杂,如果某一个系统要发生改变,如升级改造,不仅会造成与其相连系统的出现问题,而且还会发生连锁反应,形成牵一发而动全身的局面;而1-2的SPOKE/HUB“辐条和集线器”架构方式(图2),特点就是建立一个交换中心,由它全权负责解决应用系统间的连接工作。大致过程是,应用系统通过适配器把信息转变成交换中心规定的格式,交换中心负责选择目标应用系统(路由),完成数据传输,再由适配器转换成目的应用系统认可的格式。且在交换中心中做数据传输的加密解密,大大的提高了代码的高内聚,松耦合模式,符合IT类项目的常用规则。
步骤2)通过步骤1)提供的统一服务总线,向各个应用提供注册接口,在注册阶段,服务提供方需要将服务的内容、描述、以及参数形式进行描述,并需要选择加密方式和算法,由于接口调用以文件加密形式传输,所以需要提供服务调用方标识(地址、端口),以便服务总线能够识别服务调用方,用于服务审计和异步返回数据,请见图2。注册成功后,需要服务提供方将接口服务发布在统一服务总线上,发布过程见图3,发布成功后,在系统数据库后台会自动生成该服务的基本信息,总线能够将其与之前注册的服务进行比对,符合之前注册的服务即发布成功;发布成功后的服务,能够被服务调用方识别或调用,服务调用过程如图4所示,服务调用兼容同步、异步两种方式,且能够在服务调用过程中,通过统一服务总线进行审计,以达到调用后的事后审计保障。
步骤3)主要是针对跨平台、跨语言的特殊要求处理。由于本发明的安全接口以文件传输层实现,所以需要提供统一的库(lib)文件,支持各种开发语言。抽象出通用的调用服务方法封装在库文件中,如C语言的dll文件,Java的jar文件等。并且提供通用的脚本语言用于测试(.bat和.sh脚本文件)。
步骤4)服务接口调用以文本格式进行传输,文本中以key-value键值对形式对参数和结果进行封装,这样的好处是:符合结构化数据的格式,通过多层嵌套描述参数/数据间的逻辑关系。具体的服务参数规范(简要版)见图5。在传输过程中,服务调用方会自动对服务传输的参数或数据进行加密处理,加密规则和本地服务调用方默认的加密方式一致。系统中可配置市面上的加密算法,如MD5、DES、AES、RSA等,传输到达服务总线后,服务总线会 根据秘钥进行解密,解密后再以步骤2)中服务提供方注册时选择的加密方式进行加密,中转调用服务提供方。返回过程同理,通过服务总线,进行二次加密解密过程,实现双向加密。具体调用阶段的加密解密处理逻辑如图6所示。
步骤5)在服务调度中心处(即图6的“服务调度中心”模块),每一次查询的请求与应答都会以“消息”形式记录在服务总线中,消息保存周期半年,以便第三方安全机构的日志审计。
综上所述,本发明分步骤地将各个模块进行梳理,将各个模块整合,总体架构如图7所示,包括服务发布、服务调用、服务管理、加密方式选择、加密安全机制等。本发明为服务请求方和服务提供方提供统一平台进行管理,同时提供加密安全机制和方式。
尽管为说明目的公开了本发明的具体实施例和附图,其目的在于帮助理解本发明的内容并据以实施,但是本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。本发明不应局限于本说明书最佳实施例和附图所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。

Claims (10)

1.一种高安全级别的软件服务接口调用方法,其步骤包括:
1)建立基于面向服务体系结构的辐条/集线器式的统一服务总线,该统一服务总线通过一交换中心负责各应用系统间的连接工作;
2)通过统一服务总线向各个应用提供注册接口,由服务提供方提供服务信息,并选择加密方式和算法,并结合服务调用方标识进行注册;
3)服务提供方将注册成功的服务发布在统一服务总线上,供服务调用方识别或调用;统一服务总线为不同平台和不同语言的应用系统分别提供库文件,以实现服务调用方调用总线服务;
4)在文件传输过程中,服务调用方自动对服务传输的参数或数据进行加密处理,加密规则和本地服务调用方默认的加密方式一致;传输到达统一服务总线后,统一服务总线根据秘钥进行解密,解密后再以服务提供方注册时选择的加密方式进行加密,然后中转调用服务提供方;返回过程同理,通过服务总线,进行二次加密解密过程,实现双向加密。
2.如权利要求1所述的方法,其特征在于:所述统一服务总线中,应用系统通过适配器把信息转变成交换中心规定的格式,交换中心负责选择目标应用系统,完成数据传输,再由适配器转换成目的应用系统认可的格式。
3.如权利要求1所述的方法,其特征在于:所述服务提供方将服务成功发布在统一服务总线上之后,系统数据库后台自动生成该服务的基本信息,统一服务总线将其与之前注册的服务进行比对,符合之前注册的服务即发布成功。
4.如权利要求1所述的方法,其特征在于:所述统一服务总线还为不同平台和不同语言的应用系统分别提供通用的脚本语言用于测试。
5.如权利要求1所述的方法,其特征在于:步骤4)中服务接口调用以文本格式进行传输,文本中以key-value键值对形式对参数和结果进行封装。
6.如权利要求1所述的方法,其特征在于:步骤4)中服务调用方采用的加密算法为下列中的一种:MD5、DES、AES、RSA。
7.如权利要求1所述的方法,其特征在于:所述服务调用方调用服务的过程兼容同步、异步两种方式。
8.如权利要求1所述的方法,其特征在于:所述统一服务总线对接口调用过程进行审计,以达到调用后的事后审计保障。
9.一种采用权利要求1所述方法的高安全级别的软件服务系统,其特征在于,包括:
统一服务总线,包括一交换中心和若干应用系统,每个应用系统与交换中心连接;所述交换中心负责应用系统间的连接工作,该统一服务总线为不同平台和不同语言的应用系统分别提供库文件,以实现服务调用方调用总线服务,并对传输的文件进行加密和解密;
服务提供方,对外提供服务实现的应用或程序,按照服务接口API和要求提供服务接口,将注册成功的服务发布在统一服务总线上,供服务调用方识别或调用;
服务调用方,按照接口API调用服务提供方提供的服务,并将服务的调用结果展现给用户。
10.如权利要求9所述的系统,其特征在于:所述统一服务总线对接口调用过程进行审计,以达到调用后的事后审计保障。
CN201410650775.3A 2014-11-15 2014-11-15 一种跨平台、跨语言的高安全级别的软件服务接口调用方法和系统 Active CN104506486B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410650775.3A CN104506486B (zh) 2014-11-15 2014-11-15 一种跨平台、跨语言的高安全级别的软件服务接口调用方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410650775.3A CN104506486B (zh) 2014-11-15 2014-11-15 一种跨平台、跨语言的高安全级别的软件服务接口调用方法和系统

Publications (2)

Publication Number Publication Date
CN104506486A true CN104506486A (zh) 2015-04-08
CN104506486B CN104506486B (zh) 2018-04-27

Family

ID=52948201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410650775.3A Active CN104506486B (zh) 2014-11-15 2014-11-15 一种跨平台、跨语言的高安全级别的软件服务接口调用方法和系统

Country Status (1)

Country Link
CN (1) CN104506486B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516322A (zh) * 2015-12-16 2016-04-20 方正宽带网络服务有限公司 一种基于http协议的接口测试方法及装置
CN105824926A (zh) * 2016-03-17 2016-08-03 浪潮通用软件有限公司 一种动态选择调用外部系统接口的方法
CN105959385A (zh) * 2016-06-06 2016-09-21 浪潮软件集团有限公司 一种信息通信方法、装置及系统
CN106686094A (zh) * 2016-12-30 2017-05-17 郑州云海信息技术有限公司 一种微服务架构
CN108959962A (zh) * 2018-06-27 2018-12-07 杭州安恒信息技术股份有限公司 一种动态库的api安全调用方法
CN110198235A (zh) * 2019-05-16 2019-09-03 成都品果科技有限公司 一种应用于多系统服务端接口调用的中转系统及方法
WO2019232961A1 (zh) * 2018-06-05 2019-12-12 平安科技(深圳)有限公司 接口自动化方法、系统、计算机设备和存储介质
CN112329035A (zh) * 2020-11-02 2021-02-05 成都中科大旗软件股份有限公司 一种基于jar程序解析加密解密的方法、系统及存储介质
CN117234628A (zh) * 2023-11-16 2023-12-15 企家有道网络技术(北京)有限公司 接口调用系统、方法和服务器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1741525A (zh) * 2005-08-23 2006-03-01 北京无限新锐网络科技有限公司 一种媒体发布系统及方法
CN101197674A (zh) * 2007-12-10 2008-06-11 华为技术有限公司 加密通信方法、服务器及加密通信系统
CN102082771A (zh) * 2009-11-30 2011-06-01 中国移动通信集团福建有限公司 一种基于esb技术的服务管理中间件
CN102088441A (zh) * 2009-12-08 2011-06-08 北京大学 消息中间件的数据加密传输方法和系统
CN103873332A (zh) * 2014-03-28 2014-06-18 浪潮软件集团有限公司 一种税务系统提供统一服务环境的企业服务总线的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1741525A (zh) * 2005-08-23 2006-03-01 北京无限新锐网络科技有限公司 一种媒体发布系统及方法
CN101197674A (zh) * 2007-12-10 2008-06-11 华为技术有限公司 加密通信方法、服务器及加密通信系统
CN102082771A (zh) * 2009-11-30 2011-06-01 中国移动通信集团福建有限公司 一种基于esb技术的服务管理中间件
CN102088441A (zh) * 2009-12-08 2011-06-08 北京大学 消息中间件的数据加密传输方法和系统
CN103873332A (zh) * 2014-03-28 2014-06-18 浪潮软件集团有限公司 一种税务系统提供统一服务环境的企业服务总线的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王晓洁等: "基于XML/web服务的分布式电子商务系统的研究", 《计算机技术与发展》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516322A (zh) * 2015-12-16 2016-04-20 方正宽带网络服务有限公司 一种基于http协议的接口测试方法及装置
CN105516322B (zh) * 2015-12-16 2019-03-05 方正宽带网络服务有限公司 一种基于http协议的接口测试方法及装置
CN105824926A (zh) * 2016-03-17 2016-08-03 浪潮通用软件有限公司 一种动态选择调用外部系统接口的方法
CN105959385A (zh) * 2016-06-06 2016-09-21 浪潮软件集团有限公司 一种信息通信方法、装置及系统
CN106686094A (zh) * 2016-12-30 2017-05-17 郑州云海信息技术有限公司 一种微服务架构
WO2019232961A1 (zh) * 2018-06-05 2019-12-12 平安科技(深圳)有限公司 接口自动化方法、系统、计算机设备和存储介质
CN108959962A (zh) * 2018-06-27 2018-12-07 杭州安恒信息技术股份有限公司 一种动态库的api安全调用方法
CN110198235A (zh) * 2019-05-16 2019-09-03 成都品果科技有限公司 一种应用于多系统服务端接口调用的中转系统及方法
CN112329035A (zh) * 2020-11-02 2021-02-05 成都中科大旗软件股份有限公司 一种基于jar程序解析加密解密的方法、系统及存储介质
CN112329035B (zh) * 2020-11-02 2022-12-27 成都中科大旗软件股份有限公司 一种基于jar程序解析加密解密的方法、系统及存储介质
CN117234628A (zh) * 2023-11-16 2023-12-15 企家有道网络技术(北京)有限公司 接口调用系统、方法和服务器

Also Published As

Publication number Publication date
CN104506486B (zh) 2018-04-27

Similar Documents

Publication Publication Date Title
CN104506486A (zh) 一种高安全级别的软件服务接口调用方法和系统
WO2022042301A1 (zh) 一种数据处理方法、装置、智能设备及存储介质
CN112583802B (zh) 基于区块链的数据共享平台系统、设备以及数据共享方法
CN103729942B (zh) 将传输密钥从终端服务器传输到密钥服务器的方法及系统
US8417640B2 (en) Secure license key method and system
Celesti et al. An approach for the secure management of hybrid cloud–edge environments
CN109547488B (zh) 一种基于联盟区块链的可信数据计算及交换系统
US20090136042A1 (en) Application layer authorization token and method
US20090077371A1 (en) Systems and methods for a template-based encryption management system
JP2016512374A5 (zh)
JP2023545895A (ja) 信頼できる実行環境マルチノード認証方法
CN104331329A (zh) 支持域管理的移动办公安全系统及方法
CN104021335B (zh) 基于可扩展密码服务框架的密码服务方法
CN113779607A (zh) 一种工业数据资产管理方法、系统和设备
CN100488199C (zh) 一种媒体发布系统及方法
CN106603636A (zh) 一种差错交易的标准化方法及装置
CA2565508C (en) Secure license key method and system
CN104580081A (zh) 一种集成式单点登录系统
CN112333009A (zh) 一种基于配置的网关系统
CN114462047B (zh) 一种基于sgx技术的云外包计算安全方法
WO2021170049A1 (zh) 一种访问行为的记录方法、装置
CN112910858B (zh) 确定联盟链交易统计信息和交易处理的方法及节点
CN105281901A (zh) 一种云租户关键信息的加密方法
CN102970134B (zh) 将硬件密码设备的算法用于pkcs#7数据封装的方法及系统
CN115906125A (zh) 一种基于二次加密的系统间数据交换方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant