可独立部署的CA系统技术方案

转载 2007年10月16日 09:46:00
 源自:http://www.eetrust.com/products/wall_project15.htm

CA系统技术方案

一:需求

1 :总体描述

•  系统名称

CA 证书安全认证系统

•  系统适用范围

•  专用的第三方安全认证系统

•  企事业内部的安全认证系统

2 :功能

CA 的功能包括证书管理、密钥管理、 CRL 管理和系统管理四个部分:

•  证书管理

主要包括证书签发 、证书验证、证书作废、 证书更新、 证书在线查询、证书下载、证书存储介质制作和 证书格式转换等。

•  CRL 管理

主要包括证书撤消列表签发、证书撤消列表验证、证书撤消列表更新、证书撤消列表下载和证书撤消列表查找等。

•  密钥管理

主要包括密钥生成、密钥存储介质制作、 密钥备份、密钥更新、密钥恢复和密钥历史等。

•  系统管理

主要包括系统日志、系统配置、策略管理、操作员管理、系统统计分析、 交叉认证等。

 

 

3 :系统要求

•  如图 1 所示,系统必须支持一个完整的 PKI 操作。

图 1 :完整的 PKI 操作

•  要实现系统结构的可配置

•  要实现对不同硬件和软件的适应性

•  要实现系统操作流程的可配置

 

三: 开发环境

1 、硬件和网络环境

•  主机配置(略)

•  外设配置(略)

•  网络配置(略)

2 、软件环境

•  操作系统

•  服务器: AIX 、 SUN 、 LINUX 、 NT 、 WIN2000SERVER

•  客户端: WIN98 、 WIN2000 、 NT 、 WIN2000WORKSTATION

•  数据库系统

IBM DB2 、 ORACLE 、 SQL

•  编程语言

C 、 C++ 、 DB2 、 HTML 、 CGI

•  开发工具

Visual C++ 、 C++ Builder 、 CC 、

•  支撑软件

•  得安加密机接口

•  得安 PKCS#11 接口

 

四: 总体结构

1 :物理结构图

如图 2 所示, CA 从物理上可以分为六个部分: EndUser 、 RA 、 RAO 、 CAInfo 、 CA 、 CAO 。各自的功能如下:

•  EndUser :客户端软件,集成了个人安全环境保护工具和一些方便用户的工具。

•  RA :

•  RA : 注册中心,负责审核用户的资料的准确性

•  WebRA 提供 RA 的一个完全基于 WEB 的实现

•  RAO : RA 的客户端, 负责 RA 系统本身业务操作和管理维护,提供日志分析统计等。

•  CAInfo

•  Web : CA 系统的门户网站,提供系统简介、操作说明、策略政策陈述等。

•  LDAP :目录服务器,提供证书和 CRL 等信息的存储。

•  OCSP :证书在线查询服务器,提供证书状态的在线查询。

•  CA

•  CAInterface : CA 的接口服务器,负责 RA 、 EndUser 、 CAO 等部件和 CA 的通信。

•  CASigner : CA 的签发服务器,负责证书和 CRL 的签发。

•  PM PriviledgeManager ):特权管理中心,提供属性权限的分发和验证。

•  KMC KeyManageCenter ):提供密钥备份、密钥恢复、密钥历史。

•  TimeStamp 提供时间戳的签发和验证。

•  CAO : 负责 CA 系统本身业务操作和管理维护,提供日志分析统计、策略设定等;提供

相应权限内的用户证书的管理工作,主要包括用户的证书作废、事件审计等。

图 2 : CA 系统的物理结构示意图

 

2 :层次结构图

 

图 3 : CA 系统的层次结构图

上图中的一些组件功能如下:

•  SecurityProtocol ( Tcpmessage ):

提供安全的通信协议(本系统中提供基于 TCP 的通信协议,具体描述见“通信协议概要设计方案 .doc ”)

•  SystemService ( Key Management 、 Cert Management 、 Crl Management ):

提供证书管理、密钥管理和 CRL 管理三种服务

•  ProtocolSecurityService ( rfc2510 、 rfc2511 、 pkcs#10 、 pkcs#7 ):

提保证安全通信所需要的服务。

•  CryproService :

对上层应用提供与加密设备无关的加密服务。

•  VerifyPrilivelidge

验证每一个操作是否拥有相应的权限,包括数据完整性和保密性的验证、操作者的权限验证等。

•  DataStore

对上层应用提供与具体实现无关的数据存储服务,包括本地数据的存储和 CA 系统的数据仓库的维护。

•  TrustUnit :

处理 CA 内部的信任关系 , 包括树型信任模型、 WEB 信任模型、交叉认证等。

•  PolicyConfig

实现系统的灵活的配置控制和策略控制。

 

3 :功能结构图:

 

图 4 : CA 系统的功能结构图

 

五:设计细节

1 :系统运行过程和逻辑流程

系统各个物理模块间的流程如图 5 所示,详细的通信协议描述见“通信协议概要设计 方案 .doc ”;详细的操作流程描述见“ CA 中具体流程概要设计 方案 .doc ”;

图 5 : CA 系统的通信流程图

2 :底层支持子模块说明

2.1 : CryptoService

CryptoService 通过一种高层次的与具体算法和实现无关的界面向 上层应用提供加解密服务:数据签名、数据签名验证、数据摘要、数据加密、数据解密、产生密钥对、产生随机数、包裹密钥、解包密钥、产生 MAC 、验证 MAC 。 CryptoService 实现以上功能的具体方式对应用程序是透明的。 CryptoService 可以实现以下的一种或多种加密算法: DES 、 Triple DES 、 IDEA 、 RC2 、 RC4 、 RC5 、 CAST 、 RSA 、 DSS 、 Diffie Helman 、 MD4 、 MD5 、 SHA 等。

此外 CryptoService 还要负责密钥管理功能:

•  用户私钥的安全。用户其它的安全对象如证书等,可以存放到数据存储库中,但私有密钥必须由 CryptoService 负责保存。

•  用户密钥的输入输出。为了保证用户能在不同机器上使用,必须提供密钥的输入输出功能,并要保证输出密钥的安全,这要求对输出密钥提供某种类型的加密处理。

2.2 : CertificationControl

CertificationControl 负责处理各种格式不同的证书和证书废止表。可完成创建新的证书和证书废止表并进行签名,验证证书和证书废止表的完整性,从证书和证书废止表中提取数据,从 证书废止表中搜索证书等功能。 CertificationControl 只是处理证书语法方面的内容,对其不作语义上的解释,这方面的工作由 PolicyConfig 模块负责。本系统中采用基于 X.509 格式的证书和 CRL 。给模块主要包括以下一些功能:创建证书模版、证书签名、证书签名验证、得到公钥信息、得到 NAME 信息、写公钥信息、写 NAME 信息、得到扩展信息、写扩展信息、创建 CRL 模版、 CRL 签名、 CRL 签名验证、增加证书信息、删除证书信息、查询 CRL 。

2.3 : DataStore

DataStore 提供对所有安全对象的稳定的存储,如证书、证书废止表、安全政策等。 DataStore 提供了统一的接口去处理这些安全对象的存储检索等,底层如何实现可由 DataStore 的实现者自己选择。该组件主要包括以下一些功能:打开数据源、关闭数据源、创建数据源、删除数据源、数据插入、数据删除、数据修改、数据查询。

2.3 : VerifyPriviledge

VerifyPriviledge 提供对于操作权限的验证,一般仅有一个函数来完成,该函数应该输入以下一些项:自我标识、要求的操作、要求操作的时间、附加的证明等;输出仅有两项:可以还是不可以。

2.4 : TrustUnit

通过采用不同的 TrustUnit ,能够实现不同信任关系,如 X.509 采用的树形信任模型。 PGP 采用的介绍人模型等。 { 本系统中暂时不考虑该组件)

2.5 : PolicyConfig

提供灵活的配置和策略管理。主要包括以下一些功能:装载策略、释放策略、修改策略项、添加策略项、删除策略项、装载配置、释放配置、修改配置项、添加配置项、删除配置项。

3 :高层模块说明

•  RA 、 CAInterface 、 CASigner

遵循统一的服务器框架,详细描述见“服务器框架概要设计方案 .doc ”。

•  OCSP

提供在线的证书状态查询。主要包括 OCSP 客户端和 OCSP 服务器,前者提交用户的证书序列号给 OCSP 服务器,得到证书状态信息的回复;后者得到客户端的证书查询请求,查询数据库,得到证书状态,发送回客户端。

•  LDAP

遵循 DataStore 设计思路,接口一致。

•  通信协议

见 “通信协议概要设计 方案 .doc ”。

•  客户端

见 “客户端概要设计 方案 .doc ”

4 :系统数据

见“数据库概要设计方案 .doc ”。

 

关于一个大型web系统架构设计和技术选型的讨论摘录

一、 1、数据库压力问题  所有的压力最终都会反映到数据库方面,一定要对数据库有一个整体的规划。  可以按照业务、区域等等特性对数据库进行配置,可以考虑分库、使用rac、分区、分表等等策略,...
  • zhang_yingliang
  • zhang_yingliang
  • 2016年01月26日 09:52
  • 1596

自动执行和管理 Windows 操作系统部署

自动执行和管理 Windows 操作系统部署   本指南将如何帮助你?作为计算机和移动设备管理员和企业 IT 专业人员,你可以使用此解决方案指南来了解 Microsoft 推荐的创建和部署 W...
  • csnewdn
  • csnewdn
  • 2016年12月21日 09:46
  • 1894

基于Java技术的大型网站架构设计方案

基于Java技术的大型网站架构设计方案 笑游江湖 发表于 2014-03-16 16:56:00 | 分类标签: 网站架构 JAVA 高并发 1、Web层 主体架构可以基于 Struts 1...
  • JackieLiuLixi
  • JackieLiuLixi
  • 2014年05月23日 17:24
  • 15222

CA系统安装和部署手册v2.0

  • 2010年01月11日 09:51
  • 191KB
  • 下载

财务系统的CA身份认证和电子签名解决方案

  • 2010年12月08日 11:30
  • 31KB
  • 下载

OA系统CA身份认证和电子签名解决方案

  • 2010年12月08日 11:25
  • 30KB
  • 下载

(港务局)CA系统身份认证和电子签名解决方案

  • 2010年12月08日 11:22
  • 35KB
  • 下载

CA系统应用安全解决方案

  • 2013年08月22日 15:35
  • 1.77MB
  • 下载

地税网上开票系统CA身份认证解决方案

  • 2010年12月08日 11:32
  • 45KB
  • 下载

水利局PB应用系统的CA身份认证和数字签名的解决方案

  • 2010年12月08日 11:57
  • 62KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:可独立部署的CA系统技术方案
举报原因:
原因补充:

(最多只允许输入30个字)