- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EasyCA通用编程接口
EasyCA 用编程接口 作者:王志海 中国OpenSSL 专业论坛
EasyCA 通用编程接口说明书
王志海
中国OpenSSL 专业论坛
1. EasyCA 的功能概述
OpenSSL 提供了丰富的基于 X.509 标准的证书开发接口和管理接口。但是,由于
OpenSSL 本身代码的复杂性以及CA 开发知识需要的特殊性,使得普 程序员开发CA 具有
一定的难度。EasyCA 用编程接口的目的就是提供相对简单的函数接口,使得用户可以轻
松实现CA 的基本功能。使用EasyCA,你会发现,实现一个CA 原来就是如此简单!
EasyCA 用编程接口可以完成以下功能:
l RSA 密钥 成功能。可以 成可变指定长度的RSA 密钥,可以是512 位、1024 位、
2048 位、4096 位或者其它2n 的长度。可以使用DES3-CBC 方式对私钥文件进行加
密。
l 成符合PKCS# 10 标准的证书请求。
l 签发符合X.509 标准证书。
l 执行吊销证书的操作。
l 成标准的证书吊销列表(CRL )。
EasyCA 用编程接口具有以下特点:
l 所有输入输出接口都采用BIO 形式,对象可以是内存、I/O 设备或者其它存储体。
使得构建的CA 界面灵活而且可以很丰富,比如图形界面的CA 等。
l 接口简单易用,只有三个对外的接口函数,输入和输出参数简单明了,提供详细的
使用手册,并可以提供全部源代码。
l 具有夸平台性,即可以是Windows 系统,也可以是Linux 系统。
l 已经有成功的图形界面 CA 开发案例(BlueEyesCA ),开发工具是 VC++6.0。随
API 提供使用例程。
l 提供开发和其它相关技术的咨询服务。
2. EasyCA 的通用结构
EasyCA 包含两个重要的参数结构,都是用于作 函数参数输入的。首先是用于EasyCA
证书管理函数的参数EasyCA_Struct ,其定义如下:
typedef struct
{
输入证书请求的 接口,签发证书的时候使用不用的时候应该设置
/* BIO , NULL*/
BIO* reqBio;
/**********************************************************************
―1―
EasyCA 用编程接口 作者:王志海 中国OpenSSL 专业论坛
*输出信息的BIO 接口,一般在签发证书的时候使用,不用的时候应该设置 NULL
*在 成CRL 时,也作为新 成CRL 的输出BIO 接口,在吊销证书的时候,不使用
*该接口
**********************************************************************/
BIO* certBio;
//CA 证书文件路径
char* CASignCert;
//CA 的私钥
char* CASignKey;
//证书 效日期,签发证书的时候使用该参数
time_t* StartDate;
//证书到期日期,签发证书的时候使用该参数
time_t* EndDate;
//证书有效的时间,以天 单位
int Days;
//信息摘要算法,签发证书时候使用的信息摘要算法
文档评论(0)