API(Java版)程序员手册.docx
《API(Java版)程序员手册.docx》由会员分享,可在线阅读,更多相关《API(Java版)程序员手册.docx(74页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、推举JIT 应用 Toolkits APIJava 版程序员手册JIT 版权全部(2023)吉 大 正 元 信 息 技 术 股 份 有 限 公 司Jilin University Information Technologies Co., Ltd.0推举目录101 引言41.1 概述41.2 开发平台及编程语言41.3 留意事项41.4 名词解释42 系统构造42.1 接口说明42.2 配置文件说明43 数据构造53.1 基于口令产生密钥的根本信息53.2 初始化 CRL 参数53.3 时间根本信息63.4 证书有效期类73.5 初始化证书信息74 全局常量定义84.1 标识常量84.1.1
2、所用到的配置文件84.1.2 文件长度及密码长度84.1.3 数据类型定义;84.1.4 信封类型定义84.1.5 证书扩展类型定义94.1.6 证书用户类型定义94.1.7 证书状态定义94.1.8 CRL 验证证书方式94.1.9 证书SN 类型94.1.10 证书存储方式104.1.11 加密、解密、签名等算法104.1.12 标准扩展域104.2 错误代码115 函数说明135.1 类 JIT_ENGINE135.1.1 构造函数135.1.2 猎取错误信息145.1.3 释放引擎资源145.2 类 JIT_OCSP145.2.1 构造方法145.2.2 查询证书状态155.2.3 猎
3、取错误信息165.2.4 释放OCSP 资源165.3 类 JIT_CRL165.3.1 构造方法175.3.2 猎取CRL 验证证书的方式getMode175.3.3 CRL 验证证书185.3.4 验证CRL 签名185.3.5 猎取错误信息195.3.6 释放CRL 资源195.4 类 JIT_CERTIFICATE195.4.1 构造方法195.4.2 猎取证书中eMail215.4.3 猎取证书颁发者225.4.4 猎取证书序列号225.4.5 猎取证书主题225.4.6 猎取证书版本号235.4.7 猎取证书有效期235.4.8 猎取证书的应用类型235.4.9 猎取证书编码(二进
4、制)245.4.10 猎取证书的个人身份标识码245.4.11 提取所需对象标识符对应的内容255.4.12 验证证书的有效性265.4.13 验证证书的有效性手工输入时间265.4.14 猎取错误信息275.4.15 释放Certificate 资源275.4.16 扩展接口285.5 类 JIT_KEY295.5.1 构造方法295.5.2 产生对称密钥295.5.3 基于口令产生对称密钥305.5.4 包装密钥305.5.5 解包装密钥315.5.6 猎取错误信息315.5.7 释放Key 资源325.6 类 JIT_BIN325.6.1 构造方法325.6.2 数据数字签名325.6.
5、3 验证数字签名335.6.4 数据非对称加密345.6.5 数据非对称解密355.6.6 产生数据的MAC355.6.7 验证数据的MAC365.6.8 数据文摘375.6.9 数据对称加密385.6.10 数据对称解密385.6.11 产生PKCS7 数字信封395.6.12 验证PKCS7 数字信封425.6.13 二进制数据转换成PEM 编码445.6.14 猎取错误信息445.6.15 释放bin 资源455.7 类 JIT_BASE64455.7.1 构造方法455.7.2 数据数字签名455.7.3 验证数字签名465.7.4 数据非对称加密475.7.5 数据非对称解密485.
6、7.6 数据产生MAC485.7.7 验证数据的MAC495.7.8 数据文摘505.7.9 数据对称加密515.7.10 数据对称解密515.7.11 产生PKCS7 数字信封525.7.12 验证PKCS7 数字信封545.7.13 PEM 编码转换成二进制575.7.14 猎取错误信息575.7.15 释放Base64 资源575.8 类 JIT_ENVFILE585.8.1 构造方法585.8.2 产生PKCS7 数字信封文件585.8.3 验证PKCS7 数字信封文件615.8.4 猎取错误信息625.8.5 释放EnvFile 资源625.9 类 JIT_LDAP625.9.1 构
7、造方法625.9.2 猎取用户证书635.9.3 释放猎取的证书645.9.4 猎取错误信息645.9.5 释放Ldap 资源645.10 类 JIT_RANDOM655.10.1 制造随机数651 引言1.1 概述 JIT Toolkit_APIJava 版是以吉大正元电子证书认证系统为根底,便利用户进展二次开发,整合先进的 Java 技术,供给的工具包。用户利用工具包中各种接口可以作电子证书系统客户化,电子证书应用等方面的开发工作。主要功能如下:u 对客户和效劳器证书的操作包括验证和猎取证书内容u 对用户数据的操作包括签名、加密、数字信封和他们相对应的校验工作u 对用户文件的各种操作包括封
8、装数字信封和验证数字信封u 各种关心操作包括对对称密钥的操作、产生随机数、u 对 Ldap、CRL、OCSP 等各种关心功能的操作1.2 开发平台及编程语言n 开发平台Windows 2023 Servern 编程语言Java C+n 开发工具Java 2 SDK Standard Edition v1.3.1_09Sun Microsystems, Inc. Borland Jbuilder 7 EnterpriseMicrosoft Visual C+ 6.0 Enterprise Edition1.3 留意事项n 系统中的错误码均为负数。n 本接口不支持加密机,除windwos 外不支持
9、key 使用n 除 windows 外不支持OCSP1.4 名词解释无2 系统构造2.1 接口说明JIT 应用Toolkits APIJava 版对用户供给 10 个类共 70 个接口:n jit.toolkitsToolkits 主要功能类。供给各对外接口。n jit.parameters构造。用于存放程序中各种用到的构造体。2.2 配置文件说明JIT 应用Toolkits APIJNI 版共需要 5 个配置文件,说明如下:n cryptodevice.ini加密设备配置文件。文件证书使用时修改DeviceCount 对应软加密库ID, DeviceCount =1Key 证书使用时修改De
10、viceCount 对应 Key 的 ID DeviceCount =2两种证书同时使用时修改DeviceCount 对应Key 的 ID DeviceCount =2n MultiDeviceFile.ini治理员证书介质使用JPF 文件时使用此配置文件。无论那种状况该文件必需存在n MultiDeviceCard.ini治理员证书介质使用USB Key 时使用此文件。无论那种状况该文件必需存在n card.iniUSB Key 的配置文件,通常不需要用户改动。n jitocsp.ini与 OCSP 效劳器连接时需要的一些连接参数,用户可依据实际状况进展改动n jcaapi.ini与 Lda
11、p 效劳器连接时需要的一些连接参数,用户可依据实际状况进展改动3 数据构造3.1 基于口令产生密钥的根本信息类名称:JIT_PBE_PARAMS功能: 声明:存储PKCS5 基于口令产生密钥的参数。public class JIT_PBE_PARAMS public byte sPassword; public byte bSalt; public int lIteration;public JIT_PBE_PARAMS 数据成员:pPassword pSalt nIteration口令的内容。盐值的内容。PKCS5 基于口令产生密钥的协商好的附加信息PKCS5 基于口令密钥产生的循环叠代次数
12、。3.2 初始化 CRL 参数类名称:JIT_CRLPARAM功能:存储初始化CRL 的参数。声明:public class JIT_CRLPARAMpublic byte szCRLFile; public int nMode;public JIT_CRLPARAM 数据成员:szCRLFile用户指定的CRL 文件路径。这个路径必需是确定路径。这个路径不能为NULL。在线方式验证,这个路径是下载的CRL 存储在本地的CRL 文件路径。离线方式验证,这个路径是验证证书时使用的CRL 文件路径。nMode通过CRL 验证证书的方式。包括在线方式验证和离线方式验证。在线方式验证设置为VERIFY
13、_MODE_ONLINE离线方式验证设置为VERIFY_MODE_OFFLINE3.3 时间根本信息类名称:JIT_Time 功能:存储证书中时间的值声明:public class JIT_Time public long lType; public long diffGMT; public long year; public long month; public long day; public long hour; public long min; public long second;public JIT_Time 数据成员:lType证书中时间的编码类型。1:格林威治时间2:本地时间d
14、iffGMT本地时间和格林威治时间的差值。本地时间比格林威治时间早用负数表示。本地时间比格林威治时间晚用正数表示。0 表示格林威治时间。year本地时间年month本地时间月day本地时间日hour本地时间时min本地时间分second本地时间秒3.4 证书有效期类类名称:JIT_Valid功能:存储证书的有效期声明:public class JIT_Validpublic JIT_Time notBefor public JIT_Time notAfterpublic JIT_Valid 数据成员:notBefor notAfter证书有效期开头的时间证书有效期完毕的时间3.5 初始化证书信
15、息类名称:JIT_CERTDEVPARAM保存未用功能:声明:存储了从非数据流形式初始化证书时所需要的信息public class JIT_CERTDEVPARAM public byte szDevInfo;public byte szPWD;public JIT_CERTDEVPARAM 数据成员:szDevInfo描述证书存储的描述串。描述串由两局部组成。第一局部是存储介质描述符,其次局部是证书存储路径。存储介质描述符: “file:/”表示证书的存储介质是磁盘。 “usb:/”表示证书的存储介质是USB 接口设备。“com1:/”表示证书的存储介质是COM 接口设备。证书存储路径:表示
16、证书存储的位置和名字例如:“file:/d:mycert.jpf”表示 D 盘根名目下的mycert.jpf 文件“file:/d:mycert.pfx”表示D 盘根名目下的mycert.pfx 文件“file:/d:mycert.cer”表示D 盘根名目下的mycert.cer 文件“usb:/.jpf”表示USB 接口中的.jpf 文件“usb:/.jpf”表示USB 接口中的.jpf 文件szPWD证书密码4 全局常量定义该类定义API 中的常量。在本文档中引用常量时直接引用常量名。4.1 标识常量4.1.1 所用到的配置文件public static StringCRYPT_INI_F
17、ILE_NAME=“cryptodevice.ini“;public static StringOCSP_INI_FILE_NAME=“jitocsp.ini“;public static StringCARD_INI_FILE_NAME=“card.ini“;public static StringMULITYCARD_FILE_NAME=“MultiDeviceCard.ini“;public static StringMULITYFILE_FILE_NAME=“MultiDeviceFile.ini“;public static String4.1.2 文件长度及密码长度JCAAPI_I
18、NI_FILE_NAME=“jcaapi.ini“;文件长度public static int密码长度public static intFILE_NAME_LEN PWD_LEN=256;=128;4.1.3 数据类型定义;Base64 类型public static intDATA_TYPE_BASE64 =0;Bin 类型public static intDATA_TYPE_BIN=1;4.1.4 信封类型定义签名信封public static int加密信封public static intENVELOP_SIGN ENVELOP_ENC=0;=1;既签名又加密信封public stat
19、ic int文摘信封public static int MAC 信封public static intENVELOP_SIGN_ENC=2;ENVELOP_DIGEST=3;ENVELOP_MAC=4;4.1.5 证书扩展类型定义jpf 治理员证书文件public static int pfx 包含私钥证书文件public static intcer 公钥证书文件public static int4.1.6 证书用户类型定义个人单证书public static int jpf 双证书public static int电子邮件保护证书public static int效劳器证书public st
20、atic intCERT_EXP_TYPE_JPF = CERT_EXP_TYPE_PFX = CERT_EXP_TYPE_CER =CERT_USE_TYPE_SINGLE CERT_USE_TYPE_DOUBLE CERT_USE_TYPE_MAILCERT_USE_TYPE_SERVER0;1;2;=0;=1;=2;=3;CA 证书public static intCERT_USE_TYPE_CA=4;4.1.7 证书状态定义正常状态public static int证书已注销public static int未知状态public static int4.1.8 CRL 验证证书方式在线
21、验证证书public static int离线验证证书public static int4.1.9 证书 SN 类型签名证书public static intCERT_STATUS_NOMAL CERT_STATUS_REVOKE CERT_STATUS_UNKNOWNVERIFY_MODE_ONLINE VERIFY_MODE_OFFLINECERT_SN_TYPE_SIGN=0;=1;=2;=0;=1;=1;加密证书public static int签名加密证书public static int4.1.10 证书存储方式文件方式存储CERT_SN_TYPE_ENC=2;CERT_SN_TY
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- API Java 程序员 手册
限制150内