基于PKI的移动办公网络信任体系研究与实现

2013-10-18 08:58郭仲勇
河南广播电视大学学报 2013年1期
关键词:数字证书服务器端应用程序

郭仲勇

(河南省数字证书有限责任公司,郑州 450046)

一、引言

由于移动办公网络的开放性,导致可能发生信息泄露或引入黑客攻击的问题。从CNCERT检测的数据看,2012年手机恶意代码已经呈现出增长速度快、传播范围广、造成经济损失大的趋势。本文提出基于PKI技术构建安全移动网络信任体系支撑平台,从移动终端安全设计、网络通信通道安全、数据加密传输、接入安全控制等方面进行综合防护,构建多层次、全方位的移动接入安全保障体系。最后给出基于PKI技术与WebService技术相结合的移动终端与服务器端通讯演示示例。该方案成功运用于移动办公系统,有效地解决了移动通信中的信息安全问题。

二、系统结构

系统由客户端(包括PC和移动智能终端)应用程序组件及接口和服务器端应用程序组件及接口、服务、CRL/OCSP服务及接口构成。系统总体结构如下:

客户端 (包括PC和移动智能终端)应用程序组件及接口:实现证书管理、接口管理、设备驱动、证书存储。

服务器端应用程序组件及接口、服务:主要包括证书应用组件、授权管理、证书年检、应用加速、日志审计、安全防护等。

CRL/OCSP服务及接口:定期更新注销列表和动态查询证书信息。

三、基于PKI的移动终端安全设计

1.数字证书与智能SD卡设备及驱动。

用户数字证书由CA颁发并提供认证服务。数字证书绑定用户身份信息,例如个人身份证、账户号、单位组织机构代码等,以智能SD卡为存储载体。

SD卡设备由硬件电路、固化在芯片里的芯片操作系统(Chip Operating System,COS)和设备驱动程序构成。

智能SD卡内嵌32位RISC结构的安全芯片,支持Micro-SD接口,可通过带有USB接口的适配器同PC连接,便于证书、私钥等关键数据的导入、更新等操作。此外,可提供2G的卡存储空间,便于用户存储个人数据文件。

智能SD卡运行专用的智能卡操作系统,主要功能是控制卡片和外界的信息交换,管理卡内的存储器并在内部完成各种命令的处理。

2.移动终端应用程序。

移动终端应用程序主要包括智能SD卡设备驱动、移动终端证书应用编程接口、安全通讯模块、智能SD卡安全管理模块及应用程序组件等。

(1)智能SD卡驱动负责完成对接入系统的智能SD卡设备的初始化、读、写、状态控制等操作,该驱动作为操作系统内核的组成部分,通过调用设备抽象层提供的原语操作。

(2)移动终端证书应用编程接口通过封装智能SD卡提供的密码算法功能,向上层应用提供安全访问接口。

下面以Windows Mobile为例详细说明,其基本结构如下图所示:

密码服务由加密服务提供层(CryptoSPI)、CryptoAPI接口层和应用层组成。应用程序通过CryptoAPI提供的接口函数来使用加密服务提供者CSP所提供的加密服务;CSP是一个独立的模块,完成所有加密、数字签名等操作,是执行密码工作的模块。CryptoAPI提供完善的应用开发接口,包括:基本密码函数、证书处理和证书存储函数、证书验证函数、消息函数以及其他辅助函数等。

CSP由智能SD卡硬件实现:将每个合法用户的私钥和证书存放在SD卡中,且不允许导出用户私钥;涉及私钥相关的操作(如散列、签名等),也都放在硬件中实现,以免被盗用或篡改;会话密钥相关的操作,对称加密算法的实现均由硬件部件完成。智能SD卡硬件完成的与CSP相关的操作,会向上层CSP函数应用提供一系列接口。CSP DLL必须包括CryptoSPI基本的函数,其中的一部分函数涉及硬件的操作,所以也包括了硬件设备的驱动程序和嵌入式代码。

这些函数中涉及用户私钥和证书的操作,都利用SD卡的API提供的接口来完成。例如,读取和设置用户密钥对的参数;从硬件中获得用户密钥的句柄,就是利用硬件存储的密钥ID号来完成;数字签名时,使用用户私钥,并且利用SD卡中的RSA引擎来加密散列数据。

(3)安全通讯模块为客户和服务器的通讯提供安全机制,可以使用多种方法:

*基于PKI的数据加解密、签名验证等;

*建立基于PKI支持的安全套接层SSL安全机制,在移动终端和服务器端的安全认证网关在建立连接时对通信双方进行身份认证,并对数据进行加解密、签名验证等,达到防窃听、防消息篡改及防消息伪造的安全通信;

*建立基于PKI支持的网络层IPSec VPN,实现虚拟专网、安全的外部网及远程用户访问。

(4)应用程序利用智能SD卡提供的安全保护机制,通过3G/GPRS/GSM/CDMA/其他移动公网等无线协议连接Internet,完成各项业务操作。

3.桌面平台证书管理。

智能SD卡不仅可以在移动平台使用,还可以通过MicroSD/SD读卡器连接到桌面平台,支持桌面平台的各种安全应用。

在PC机上通过证书应用管理工具进行管理,主要包括证书申请、导入、年检、更新、注销等功能模块。该模块集成CA现有数字证书管理的成熟技术和工具的相关功能。

四、基于PKI的服务器端安全设计

服务器端安全设计主要包括数字证书应用组件接口设计、授权管理设计、证书年检功能设计、应用加速设计、日志审计设计、安全防护配置、VPN设备证书配置、CRL/OCSP配置、单点登录系统部署。限于篇幅,本文只列出主要设计或配置项。

(1)数字证书应用组件接口设计:服务器端证书应用接口兼容CryptoAPI、PKCS#1l和CA开发的数字证书编程接口,主要包括加解密、数字签名、证书验证、数字信封等。

(2)授权管理设计:设计更细粒度的管理模块,实现更加灵活的管理,实现灵活授权、“一证多用”。通过SSL层身份认证的用户,在应用层通过授权管理,可以控制登录者是否具有登录具体的业务系统的权限。

(3)证书年检功能设计:证书机构定期通过审核证书持有者及单位相关资质,从而确保签发出去的证书安全有效。同时这也是出于技术安全的考虑,对到期后会重新签发新证书,而每张证书的密钥也是不尽相同的,这也降低了由于保管不善密钥丢失的风险。

(4)应用加速:SSL加速决定整个网络的吞吐量。采用的SSL加速硬件,提高了身份认证和加解密的响应速度。采用通过数据压缩技术,对所有的传输数据进行压缩后再进行传输,这样就提高了整个网络的运行效率和实用性。

(5)日志审计设计:记录访问内容请求,记录用户访问的时间、访问地址等信息,提供详细的系统信息,调试及错误日志,支持与第三方Syslog日志服务器同步。

(6)安全防护配置:安装和配置防火墙及安全审计等安全防护机制。

(7)VPN设备证书配置:配置VPN设备证书,用于标识VPN设备身份,确保网络数据传输的机密性、完整性和不可否认性。

(8)CRL/OCSP配置:配置 CRL/OCSP,实现在国家主管部门规定的时间内定期更新CRL,动态查询证书信息。

(9)单点登录系统部署:部署单点登录系统,支持C/S和B/S应用。

五、移动终端与安全认证网关安全通讯示例

移动终端与安全认证网关进行安全通讯,可以通过Socket网络编程接口,通讯双方通过套接口进行通讯;也可以通过基于WebService服务的认证接口,建立分布式互操作、轻量级的独立的通讯技术。

本文给出基于PKI与WebService技术相结合的移动终端与安全认证网关进行通讯的示例流程,展示移动证书使用方法和安全防护效果。移动终端的加解密数据主要通过智能SD卡内的硬件算法引擎进行运算,密钥传递通过数字信封方式进行保护。移动终端与安全认证网关安全通讯流程图如图三:

(1)移动终端调用智能SD卡中的加密API对业务数据进行加密;

(2)通过soap消息封装加密后的数据;

(3)调用webService提供的公共接口;

(4)通过webService提供的接口调用服务器端解密API函数进行解密;

(5)解密过程后的处理结果封装成soap消息传回客户端。

六、结束语

本文结合实际项目,对基于PKI的移动办公整体设计方案进行了详细阐述,最后通过移动终端与安全认证网关安全通讯示例,展示了数据跨平台安全传输过程。本设计方案可以应用于通用的移动办公应用,也可应用于移动政务、移动警务、移动工商、移动医疗、移动制造等行业性领域。

随着移动通信技术不断发展和移动应用不断普及,云计算、虚拟化、三网融合、无线物联网等技术与应用的发展、普及,对于未来的移动终端应用有一定的影响,对移动办公架构的设计也要不断改进;同时,安全接入方案的设计和数据传输标准,必须符合国家标准及相关法规、政策要求。

[1]参见 ISO/IEC 18028-3-2008 信息技术,安全技术,IT网络安全第3部分:使用安全网关的网络间的安全通信

[2]参见ISO/IEC 29179-2012信息技术——移动项目识别和管理——移动AIDC应用编程接口

[3]参见ISO/IEC 18031-2011信息技术——安全技术——随机位生成

[4]张千里,陈光英.网络安全新技术[M].北京:人民邮电出版社,2003.

[5]吕廷杰.移动电子商务[M].北京:电子工业出版社,2011.

猜你喜欢
数字证书服务器端应用程序
国家发改委:推动矿业权出让应用网络共享数字证书
Linux环境下基于Socket的数据传输软件设计
删除Win10中自带的应用程序
谷歌禁止加密货币应用程序
浅析异步通信层的架构在ASP.NET 程序中的应用
基于Qt的安全即时通讯软件服务器端设计
当心黑客利用数字证书的漏洞
基于数字证书的军事信息系统安全防护方案
以数字证书为核心的信息安全技术之研究
网页防篡改中分布式文件同步复制系统