(1)建立CA证书服务器、证书发卡与管理中心。
(2)由于外交部分内外两套网络,内外之间都部署物理隔离、防火墙、防病毒网关等设备,这些设备只开放80、389和443这三个端口,就需要CA软件遵循标准的协议,完全符合业界的规范。
(3)保证现有网络系统的稳定性,不作大的改动(避免修改现有网络设备配置)。
(4)建立跨系统的统一的身份认证和访问控制机制,具体包括:WIN32平台系统、电子邮件系统、SQL SERVER和ORACLE数据库系统、建立业务系统用户身份认证和资源管理与授权统一安全平台,改造目前已有的系统(B/S模式、C/S模式),实现现有系统的统一的用户身份认证和授权。
(5)建立SQL SERVER和ORACLE等数据库系统统一的身份认证中心,实现数据库用户在建立数据库连接中,用户身份的安全登录。
(6)建立业务系统(C/S和B/S模式)统一身份认证机制,根据需求,可以建立跨地域的统一的身份认证系统。本身份认证和第三方授权系统结合在一起。
(7)建立各系统的用户身份认证和访问控制独立的审计总中心。
一、PKI体系概述
1、什么是PKI?
公开密钥体系(Public Key Infrastructure:PKI)是一种遵循既定标准的密钥管理平台,是为网络应用提供加密和数字签名等密码服务及所需密钥和证书的管理体系。PKI由公开密钥密码技术、数字证书、认证机构(CA)和有关公开密钥的安全策略等基本部分组成。
为解决网络的安全问题,世界各国对其进行了多年的研究,已形成一套完整的网络安全解决方案,即目前被广泛采用的公钥基础设施---PKI。PKI是一种遵循标准的利用公钥加密技术为电子商务的开展提供一套安全基础平台的技术和规范。用户可利用PKI平台提供的服务进行安全通信。
2、目前国内PKI体系现状及存在的问题
现在每个行业系统甚至更小的单位都有各自的信任机制,并且与国家的信任机制并存。PKI并不是一种产品,也不仅仅是一张证书,而是一套安全机制。虽然国家在大力倡导开放的PKI架构,但单独谈论PKI毫无意义,它只有深入到应用的骨髓,与应用连为一体,才能产生真正的价值。而目前国内在PKI的应用领域中,存在许多应用系统与信任体系难以结合的问题。
3、如何构建一套完整的PKI体系?
典型的PKI系统由五个基本部分组成:证书申请者(Subscriber)、注册机构(Registration Authority,RA)、认证中心 (Certificate Authority,CA)、证书库(Certificate Repository,CR) 和证书信任方(Relying Party)。其中,认证中心、注册机构和证书库三部分是PKI的核心,证书申请者和证书信任方则是利用PKI进行网上交易的参与者。在具体应用中,各部分的功能是有弹性的,有些功能并不在所有的应用中出现,PKI的许多详细功能要根据业务的操作规程确定。
二、实现方案
本项目采用的都是时代亿信公司自主知识产权的产品。产品的核心为:CA认证系统,围绕CA认证系统的应用,提供SecureKey等产品,实现了操作系统、数据库和各种业务系统统一的身份认证,改造了外交部办公系统相关的几个业务系统的身份认证,为未来的办公及业务系统提供安全的认证平台标准。
数据库用户登录还是业务系统的用户身份认证,在认证用户身份中,采用了数字证书技术。在整个系统中,根据不同的环境,提供不同的认证模型,C/S应用模型、B/S的应用等模型,各模型的认证和授权采用标准的统一的标准接口,实现跨系统的统一的身份认证和授权。
外交部身份认证和访问控制平台建设没有对现有网络系统进行大的变动,基本保证了整个业务系统的无缝运行,并根据外交部办公系统的一些特殊需求进行了定制开发,使整个系统更好地为办公系统服务。
时代亿信PKI体系的建立可以保证网络安全的四大要素得以解决,即信息传输的保密性、数据交换的完整性、发送信息的不可否认性、交易者身份的确定性。而CA数字证书认证系统恰好能够解决这些问题,他就象通行证一样时刻伴随在对应用系统访问的全过程。数字证书和PKI结合进一步解决了信息系统中的安全问题。在传统的安全解决方案中,密码服务与应用紧密地结合在一起,每一种网络应用都有自己的一套密钥管理,功能大量冗余,管理维护工作复杂,费用高,而且这种分散的、插件式的安全解决方案存在安全隐患,互操作性也得不到保证。而时代亿信CA认证系统以统一的方式来解决所有应用的共同问题,提供通用的管理,无疑是一种更为合理的安全解决方案。
1、系统组成
CA身份认证系统基于PKI理论体系构建,由认证服务器、管理服务器、客户端安全认证组件和SecurSecureKey(USB智能卡)组成,支持B/S结构和C/S结构的应用系统。
SecurSecureKey(USB智能卡):负责客户端的数字签名和加解密,也是用户数字证书和私钥的载体,同时私钥不出卡,不可复制。
客户端安全认证组件:负责提供客户端应用程序接口,完成对SecurSecureKey的驱动和访问,从而产生客户端用户认证请求。对于B/S结构的应用系统,提供浏览器安全插件,与浏览器无缝结合;对于C/S结构的应用系统,提供COM组件。
认证服务器:负责提供服务器端应用程序接口,并对客户端提交的用户认证请求进行认证,鉴别用户身份,控制用户对应用系统的访问。
管理服务器:包括用户管理、证书管理和SecurSecureKey管理等模块,完成用户授权、证书申请和SecureKey制作,并提供全面的系统管理和审计功能。
2、系统基本原理
每一个用户发一个SecurSecureKey,其中存储有代表用户身份的数字证书和私钥文件,用户在登录系统时,插上SecurSecureKey,通过安全加密通讯信道与远程身份认证服务器通讯,由认证服务器完成对用户身份的认证,并得到当前用户的身份以及系统的授权信息。
1.用户在计算机USB接口上插入包含自己证书和私钥的SecurSecureKey,访问系统登录页面
2.服务器接受登录请求,并产生一个临时随机数,发送到客户端。
3.用户输入SecurSecureKey访问口令,点击“登录”按钮。
4.客户端对服务器发来的随机数以及用户的身份信息利用SecurSecureKey硬件进行加密,并对加密结果做数字签名,将结果发送到服务器。
5.应用服务器接收到客户端发来的数据后,执行如下验证过程:
a)验证用户的数字证书的有效性,包括签发者证书链、时间期限等。
b)证书验证通过后,调用认证服务器验证接收数据的数字签名信息。
c)再调用认证服务器加解密功能模块对接收的数据进行解密,得到随机数和用户身份信息。
d)验证用户身份信息,并比较随机数是否与开始发送时相同。
e)根据以上验证步骤,决定是否验证成功。
6.应用服务器根据认证服务器的返回结果决定登录是否成功。
3、系统功能特点
◎ 安全有效的身份认证
采用数字证书和USB智能卡相结合的身份认证方式,使用数字签名和加密等技术,增强了身份认证过程的安全性,有效地消除了“用户名+口令”的传统认证方式所带来的各种安全问题。
◎ 易于操作和使用
用户数字证书和私钥存储在USB智能卡中,可随身携带,同时私钥不出卡,保证了私钥的唯一性;用户使用时只需要插上USB智能卡,输入其硬件保护口令,其余操作均由客户端安全组件自动完成。因此,系统具有很强的安全性和易操作性。
◎ 易于与现有应用系统相结合,提升系统安全性能
对于使用传统口令认证方式的应用系统,只需在服务器端增加身份认证服务器即可轻松替换传统的“用户名+口令”认证方式,实现SecureKey身份认证,提升系统的安全性能。
◎ 自动检测并加密指定关键信息
客户端安全认证组件,尤其是浏览器安全插件与浏览器无缝结合,在用户访问应用系统时,可自动检测服务器端指定的关键信息,并由SecureKey完成加密签名等操作,即保证了关键信息的安全性,又避免了对全部信息都加密所带来的性能问题。