`
wangrl
  • 浏览: 154430 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

EJBCA简介

 
阅读更多

EJBCA是一个完整功能的证书认证程序,完全用 Java编写,使用J2EE(Java2 Enterprise Edition, Java2企业版)技术。它建造在J2EE平台之上,是一个开放的、健壮的、高性能的、平台独立的、灵活的和基于组件的CA,可以被单独使用或集成到其它J2EE应用程序中,并且它还提供了一个灵活强大的基于 Web的用户图形界面。由于它实现了WPKI中的几乎所有重要的部件,比如RA (Registration Authority,注册中心), CA(Certification Autohrity,认证中心)、CRL (Certification RemoveList,证书撤销列表)和证书存储数据库等,因此得到了广泛的应用 。

EJBCA系统模型包括注册机构RA,CA服务器、LDAP目录服务器和数据库服务器等。如图所示。


图中,安全服务器面向普通用户,用于提供证书申请、浏览、证书撤消列表以及证书下载等安全服务。安全服务器与用户的通信采取安全信道方式(如SSL的方式)。用户首先得到安全服务器的证书 (该证书可由EJBCA中的CA颁发),然后用户与服务器之间的所有通信,包括用户填写的申请信息以及浏览器生成的公钥均以安全服务器的密钥进行加密传输,只有安全服务器利用自己的私钥解密才能得到明文,这样可以防止其他人通过得到明文,从而保证了证书申请和传输过程中的信息安全性。

CA服务器:EJBCA的CA服务器是整个证书机构的核心,EJBCA的CA服务器可建立根CA密钥对、存储证书、发布证书列表、建立子CA、发送证书请求、负责证书的签发等功能。建立CA服务器首先产生自身的私钥和公钥 (密钥长度至少为1024位),然后生成数字证书,并且将数字证书传输给安全服务器。CA还负责为操作员、安全服务器、子 CA及注册机构服务器生成数字证书。安全服务器的数字证书和私钥也需要传输给安全服务器。CA服务器是整个结构中最为重要的部分。

注册机构RA:登记中心服务器面向登记中心操作员,在EJBCA体系中,用户注册操作简单,RA管理员可直接通过命令行注册,另外还通过浏览器方便地管理注册用户的添加、删除、显示、吊销等操作。RA在CA体系结构中起承上启下的作用,一方面向CA转发安全服务器传输过来的证书申请请求,另一方面向LDAP服务器和安全服务器转发CA颁发的数字证书和证书撤消列表。


LDAP服务器:LDAP服务器提供目录浏览服务,负责将注册机构服务器传输过来的用户信息以及数字证书加入到服务器上。这样其他用户通过访问LDAP服务器就能够得到其他用户的数字证书。 在EJBCA体系里,LDAP服务器的配置是可选的,通过在配置文件的修改可使证书、证书列表放在相匹配的LDAP服务器上。 数据库服务器:数据库服务器是认证机构中的核心部分,用于认证机构中数据 (如密钥和用户信息等)、日志合统计信息的存储和管理。

证书申请

当证书申请时,用户使用浏览器通过Internet访问安全服务器,下载CA的数字证书(又叫做根证书),然后用户通过浏览器访问注册机构服务器,注册机构服务器对用户进行身份审核,认可后便批准用户的证书申请,然后操作员对证书申请表进行数字签名,并将申请及其签名一起提交给CA服务器。CA操作员获得注册机构服务器操作员签发的证书申请,发行证书或者拒绝发行证书,然后将证书通过硬拷贝的方式传输给注册机构服务器。注册机构服务器得到用户的证书以后将用户的一些公开信息和证书放到LDAP服务器上提供目录浏览服务,并且通过电子邮件的方式通知用户从安全服务器上下载证书。用户根据邮件的提示到指定的网址下载 自己的数字证书,而其他用户可以通过 LDAP服务器获得他的公钥数字证书。

证书撤销

用户向注册机构操作员CRLManager发送一封签名加密的邮件,声明自己自愿撤消证书。 这册机构同意证书撤消,操作员键入用户的序列号,对请求进行数字签名。CA查询证书撤消请求列表,选出其中的一个 ,验证操作员的数字签名,如果正确的话,则同意用户的证书撤销 申请,同时更新 CRL列表,然后将 CRL以多种格式输出。 注册机构转发证书撤消列表。操作员导入CRL,以多种不同的格式将 CRL公布于众。 用户可通过浏览器浏览安全服务器或通过LDAP数据库查看、下载或浏览CRL。

密钥和证书的管理

密钥的产生:
密钥对的产生是证书申请过程中重要的一步,其中产生的私钥由用户保留,公钥和其他信息则交于 CA中心进行签名,从而产生证书。根据证书类型和应用的不同,密钥对的产生也有不同的形式和方法。对普通证书和测试证书,一般由浏览器或固定的终端调用相应的加密应用程序接口应用来产生,由于美国算法出口保护发的限制,这样产生的密钥强度较小,不适合应用于比较重要的安全网络交易。而对于比较重要的证书,如商家证书和服务器证书等,密钥对可由EMCA的CA中心直接产生,CA中心产生密钥对的算法是由BouncyCastte提供的,BouncyCastle Java加密应用程序接口(API)由BouncyCastle联盟开发,产生密钥的强度大,并且BoucyCastle是开源的,随着版本更新将产生密钥强度大的算法提供可能性。另外,根据密钥的应用不同,也可能会有不同的产生方式。比如签名密钥可能在客户端或 RA中心产生,而加密密钥则需要在 CA中心直接产生。

证书的产生:
EJBCA可以使用两种形式来生成证书,一种是从注册服务器传送过来的证书请求文件进行验证后,根据证书请求文件来生成。另一种是直接在 CA服务器本地生成 自签名的证书。由于bouncycastle作为JCE的一个安全提供者,同样继承了SUN提供的证书生成类,因此证书的生成也是用bouncyc-astle提供的算法来完成。

证书的更新:
证书更新是因为两种情况,一种是由于EMCA颁发的证书都有有效期,当有效期到了,证书要重新更新,还有一种是私钥泄漏,此时也需要密钥更新。当用户的私钥被泄漏或证书的有效期快到时,用户应该更新私钥。这时用户可以废除证书,产生新的密钥对,申请新的证书。根CA证书除了重新产生密钥对和证书外,还可以用原来的密钥对来重新产生证书。

EJBCA作为CA的安全性

EJBCA建立的CA安全性主要体现在两方面,一方面是EJBCA本身的体系结构,另一方面是JCE的安全服务提供者boubcycastle提供的加密应用程序接口。

EJBCA是一个开放源代码的项目,因此它具有公开性、开放性和灵活性,同样其对安全上的配置也很方便和灵活.,可以有多种方法来保证 EJBCA安全性,比如,可以设置对其内部Bean的访问设置权,使得仅有应用服务器上的管理员能访问到CA中心;另外还可以对运行 EMCA的服务器 MOSS进行配置,使得MOSS只用SSL层与外部建立安全连接,从而来保证 CA的安全性。

Boubcycastle是以Java实现的比较优秀加密算法接口,其提供的加密应用程序接口是 EJBCA安全的核心组件,因为它提供了密钥和证书的生成及证书发布等功能。boubcycastle提供的加密应用程序接口同样是开发源代码的,因此其算法也是公开的,bouncycastle集成了用于产生密钥对的RSA算法,多种消息摘要算法如MD算法、SHA-1算法、RIPEMD-160算法等,另外bouncycastle还将目前安全性较高的椭圆曲线加密算法(ECC)也作为其的一个 API,通过对其公开算法验证,可保证其理论上的安全性。

分享到:
评论

相关推荐

    ejbca3.10.1学习笔记

    #### 一、EJBca 简介 EJBca 是一个企业级的 Java 应用程序,用于管理数字证书,支持各种证书类型,包括 X.509 证书等。它提供了强大的功能来处理 PKI(Public Key Infrastructure)的需求,比如证书请求、颁发、...

    EJBCA的结构分析

    ##### 2.1 EJBCA简介 EJBCA是一个用Java编写的开源证书颁发机构系统,它支持多种加密算法和证书类型,能够为企业级应用提供安全可靠的证书管理服务。EJBCA的核心功能包括证书签发、撤销和管理等。 ##### 2.2 密码...

    开源ejbca 8.0 版本

    EJBCA是一款开源的企业级证书颁发机构(CA)系统,专为管理数字证书和PKI(公钥基础设施)设计。在"ejbca-ce-EJBCA_8_0_20230531"这个压缩包中,包含的是EJBCA 8.0版本的源代码及其相关组件。下面我们将详细探讨...

    基于EJBCA 搭建自己的CA认证中心之EJBCA安装配置指南

    ### 基于EJBCA 搭建自己的CA认证中心之EJBCA安装配置指南 #### 1. 概述 公钥基础设施(Public Key Infrastructure, PKI)是一种用于管理和验证数字证书的系统,它能有效地解决Web应用中的机密性、完整性、真实性和...

    ejbca的安装(ejbca_3_5_4 + jboss-4.2.2.GA)

    EJBCA是一款开源的PKI(Public Key Infrastructure,公共密钥基础设施)系统,用于创建、管理和分发数字证书。EJB(Enterprise JavaBeans)是Java EE(Java Platform, Enterprise Edition)规范的一部分,用于构建可...

    EJBCA安装与配置

    ### EJBCA安装与配置详解 #### 一、引言 EJBCA是开源的Java企业级证书颁发机构(Certificate Authority,简称CA),它提供了全面的企业级PKI(Public Key Infrastructure)解决方案,适用于各种规模的企业。本文将...

    ejbca 文档(研究生论生)

    本文档从 EJBCA 的概述、EJBCA 的主要功能、EJBCA 的研究发展历史、EJBCA 与其它一些类似软件比较、EJBCA 在校园网中的应用等几个方面对 EJBCA 进行了详细的介绍和分析,为读者提供了一个系统的 EJBCA 知识体系。...

    ejbca windows 安装教程

    ### EJBCA Windows安装教程知识点详解 #### 一、EJBCA概述 - **定义**: EJBCA是一款全面且开源的企业级证书颁发机构(CA)系统,基于J2EE技术构建,具备高性能与灵活性特点。 - **技术支持**: 支持J2EE 1.3 (EJB 2.0)...

    EJBCA 管理员使用指南

    ### EJBCA 管理员使用指南 #### 一、概述 EJBCA是一款开源的企业级证书颁发机构(Certificate Authority,简称 CA),它主要用于数字证书的管理与分发,支持各种类型的证书(包括但不限于X.509证书)。EJBCA能够为...

    傻瓜式ejbca安装过程

    ### 傻瓜式EJBCA安装过程详解 #### 一、背景介绍 本文将详细介绍如何在Windows XP环境下安装EJBCA 3.6.3系统,并配置其与MySQL及OpenLDAP协同工作。EJBCA是一款开源的企业级证书管理平台,广泛应用于数字证书的签发...

    ejbca_4_0_10.zip

    EJBCA是一个开源的企业级公共密钥基础设施(PKI)解决方案,用于管理和颁发数字证书。这个名为"ejbca_4_0_10.zip"的压缩包包含的是EJBCA 4.0.10版本的安装文件,它是针对JBoss应用服务器5.1.0 GA版本优化的。在本文...

    linux下jboss服务器ejbca安装成功教程

    ### Linux环境下JBoss服务器EJBCA安装指南 #### 概述 本文档将详细介绍如何在Linux环境下安装配置JBoss服务器及其上的EJBCA证书管理平台。此过程包括必要的软件下载、环境变量配置以及安装步骤等内容。通过遵循本...

    EJBCA创建证书图解

    **EJBCA创建证书图解** EJBCA是一个开源的企业级PKI(Public Key Infrastructure)系统,用于管理和分发数字证书。它基于Java开发,遵循X.509标准,提供了强大的证书颁发机构(CA)功能。在这个图解教程中,我们将...

    ejbca-ejb.jar

    是开源项目EJBCA所需的一个包,如果想要把EJBCA项目导入eclipse中进行查看,会发现缺少好多的类,但是哪里都找不到,那些类都是在EJBCA安装过程中编译到这个jar包里的,如果不想安装EJBCA,就从这里下这个包吧!

    EJBCA操作文档.docx

    EJBCA是一个基于J2EE技术的全功能证书颁发机构(CA)系统,它具有高度灵活、高性能和可扩展的特性。系统分为开源社区版和企业版,两者都支持多CA和多级CA结构,但企业版提供官方支持和更高级的功能。EJBCA的部署方式...

    EJBCA构建,要的速度下载啊

    ### EJBCA 3.6.3 构建与部署详细步骤 #### 一、概述 本文档详细记录了EJBCA 3.6.3版本在Windows XP操作系统上的构建过程。EJBCA是一款开源的企业级证书管理平台,用于支持X.509数字证书的全生命周期管理。本构建...

    EJBCA安装教程

    EJBCA是一款开源的企业级证书颁发机构(CA),用于管理公钥基础设施(PKI)。本教程将指导你完成EJBCA在Windows 7 64位系统上的安装过程。 首先,确保准备好所有必要的软件: 1. JDK 1.6.0_9:Java Development ...

    ejbca实例

    对EJBCA的简要的概述

    EJBCA+mysql+jboss安装布署

    ### EJBCA + MySQL + JBoss 安装部署详细指南 #### 一、概述 本文档旨在提供一套详尽的指南,帮助读者顺利安装和部署 EJBCA(Enterprise JavaBeans Certification Authority)证书管理系统、MySQL 数据库以及 ...

    EJBCA在校园网的应用研究.ppt

    EJBCA是一种开源的基于Java的企业级公钥基础设施(PKI)系统,适用于构建和管理数字证书。在校园网的应用研究中,EJBCA成为了一种解决方案,旨在为南华大学创建一个适应其特定环境的CA(证书权威)体系。 首先,...

Global site tag (gtag.js) - Google Analytics