JIT应用ToolkitsAPI(Java版)程序员手册_第1页
JIT应用ToolkitsAPI(Java版)程序员手册_第2页
JIT应用ToolkitsAPI(Java版)程序员手册_第3页
JIT应用ToolkitsAPI(Java版)程序员手册_第4页
JIT应用ToolkitsAPI(Java版)程序员手册_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、JIT应用Toolkits API(Java版)程序员手册PAGE -PAGE 83- NUMPAGES 84JIT应用Toolkits API(Java版)程序员手册JIT版权所有(2001)吉 大 正 元 信 息 技 术 股 份 有 限 公 司Jilin University Information Technologies Co., Ltd.目 录 TOC o 1-3 h z HYPERLINK l _Toc70308604 1引言 PAGEREF _Toc70308604 h 4 HYPERLINK l _Toc70308605 1.1概述 PAGEREF _Toc70308605 h

2、 4 HYPERLINK l _Toc70308606 1.2开发平台及编程语言 PAGEREF _Toc70308606 h 4 HYPERLINK l _Toc70308607 1.3注意事项 PAGEREF _Toc70308607 h 4 HYPERLINK l _Toc70308608 1.4名词解释 PAGEREF _Toc70308608 h 4 HYPERLINK l _Toc70308609 2系统结构 PAGEREF _Toc70308609 h 4 HYPERLINK l _Toc70308610 2.1接口说明 PAGEREF _Toc70308610 h 4 HYPE

3、RLINK l _Toc70308611 2.2配置文件说明 PAGEREF _Toc70308611 h 4 HYPERLINK l _Toc70308612 3数据结构 PAGEREF _Toc70308612 h 5 HYPERLINK l _Toc70308613 3.1基于口令产生密钥的基本信息 PAGEREF _Toc70308613 h 5 HYPERLINK l _Toc70308614 3.2初始化CRL参数 PAGEREF _Toc70308614 h 5 HYPERLINK l _Toc70308615 3.3时间基本信息 PAGEREF _Toc70308615 h 6

4、 HYPERLINK l _Toc70308616 3.4证书有效期类 PAGEREF _Toc70308616 h 7 HYPERLINK l _Toc70308617 3.5初始化证书信息 PAGEREF _Toc70308617 h 7 HYPERLINK l _Toc70308618 4全局常量定义 PAGEREF _Toc70308618 h 8 HYPERLINK l _Toc70308619 4.1标识常量 PAGEREF _Toc70308619 h 8 HYPERLINK l _Toc70308620 4.1.1所用到的配置文件 PAGEREF _Toc70308620 h

5、8 HYPERLINK l _Toc70308621 4.1.2文件长度及密码长度 PAGEREF _Toc70308621 h 8 HYPERLINK l _Toc70308622 4.1.3数据类型定义; PAGEREF _Toc70308622 h 8 HYPERLINK l _Toc70308623 4.1.4信封类型定义 PAGEREF _Toc70308623 h 8 HYPERLINK l _Toc70308624 4.1.5证书扩展类型定义 PAGEREF _Toc70308624 h 9 HYPERLINK l _Toc70308625 4.1.6证书用户类型定义 PAGER

6、EF _Toc70308625 h 9 HYPERLINK l _Toc70308626 4.1.7证书状态定义 PAGEREF _Toc70308626 h 9 HYPERLINK l _Toc70308627 4.1.8CRL验证证书方式 PAGEREF _Toc70308627 h 9 HYPERLINK l _Toc70308628 4.1.9证书SN类型 PAGEREF _Toc70308628 h 9 HYPERLINK l _Toc70308629 4.1.10证书存储方式 PAGEREF _Toc70308629 h 10 HYPERLINK l _Toc70308630 4.

7、1.11加密、解密、签名 等算法 PAGEREF _Toc70308630 h 10 HYPERLINK l _Toc70308631 4.1.12标准扩展域 PAGEREF _Toc70308631 h 10 HYPERLINK l _Toc70308632 4.2错误代码 PAGEREF _Toc70308632 h 11 HYPERLINK l _Toc70308633 5函数说明 PAGEREF _Toc70308633 h 13 HYPERLINK l _Toc70308634 5.1类JIT_Engine PAGEREF _Toc70308634 h 13 HYPERLINK l

8、_Toc70308635 5.1.1构造函数 PAGEREF _Toc70308635 h 13 HYPERLINK l _Toc70308636 5.1.2获取错误信息 PAGEREF _Toc70308636 h 14 HYPERLINK l _Toc70308637 5.1.3释放引擎资源 PAGEREF _Toc70308637 h 14 HYPERLINK l _Toc70308638 5.2类JIT_OCSP PAGEREF _Toc70308638 h 14 HYPERLINK l _Toc70308639 5.2.1构造方法 PAGEREF _Toc70308639 h 14

9、HYPERLINK l _Toc70308640 5.2.2查询证书状态 PAGEREF _Toc70308640 h 15 HYPERLINK l _Toc70308641 5.2.3获取错误信息 PAGEREF _Toc70308641 h 16 HYPERLINK l _Toc70308642 5.2.4释放OCSP资源 PAGEREF _Toc70308642 h 16 HYPERLINK l _Toc70308643 5.3类JIT_CRL PAGEREF _Toc70308643 h 16 HYPERLINK l _Toc70308644 5.3.1构造方法 PAGEREF _To

10、c70308644 h 17 HYPERLINK l _Toc70308645 5.3.2获取CRL验证证书的方式getMode PAGEREF _Toc70308645 h 17 HYPERLINK l _Toc70308646 5.3.3CRL验证证书 PAGEREF _Toc70308646 h 18 HYPERLINK l _Toc70308647 5.3.4验证CRL签名 PAGEREF _Toc70308647 h 18 HYPERLINK l _Toc70308648 5.3.5获取错误信息 PAGEREF _Toc70308648 h 19 HYPERLINK l _Toc70

11、308649 5.3.6释放CRL资源 PAGEREF _Toc70308649 h 19 HYPERLINK l _Toc70308650 5.4类JIT_Certificate PAGEREF _Toc70308650 h 19 HYPERLINK l _Toc70308651 5.4.1构造方法 PAGEREF _Toc70308651 h 19 HYPERLINK l _Toc70308652 5.4.2获取证书中eMail PAGEREF _Toc70308652 h 21 HYPERLINK l _Toc70308653 5.4.3获取证书颁发者 PAGEREF _Toc70308

12、653 h 22 HYPERLINK l _Toc70308654 5.4.4获取证书序列号 PAGEREF _Toc70308654 h 22 HYPERLINK l _Toc70308655 5.4.5获取证书主题 PAGEREF _Toc70308655 h 22 HYPERLINK l _Toc70308656 5.4.6获取证书版本号 PAGEREF _Toc70308656 h 23 HYPERLINK l _Toc70308657 5.4.7获取证书有效期 PAGEREF _Toc70308657 h 23 HYPERLINK l _Toc70308658 5.4.8获取证书的应

13、用类型 PAGEREF _Toc70308658 h 23 HYPERLINK l _Toc70308659 5.4.9获取证书编码(二进制) PAGEREF _Toc70308659 h 24 HYPERLINK l _Toc70308660 5.4.10获取证书的个人身份标识码 PAGEREF _Toc70308660 h 24 HYPERLINK l _Toc70308661 5.4.11提取所需对象标识符对应的内容 PAGEREF _Toc70308661 h 25 HYPERLINK l _Toc70308662 5.4.12验证证书的有效性 PAGEREF _Toc70308662

14、 h 26 HYPERLINK l _Toc70308663 5.4.13验证证书的有效性(手工输入时间) PAGEREF _Toc70308663 h 26 HYPERLINK l _Toc70308664 5.4.14获取错误信息 PAGEREF _Toc70308664 h 27 HYPERLINK l _Toc70308665 5.4.15释放Certificate资源 PAGEREF _Toc70308665 h 27 HYPERLINK l _Toc70308666 5.4.16扩展接口 PAGEREF _Toc70308666 h 28 HYPERLINK l _Toc70308

15、667 5.5类JIT_Key PAGEREF _Toc70308667 h 29 HYPERLINK l _Toc70308668 5.5.1构造方法 PAGEREF _Toc70308668 h 29 HYPERLINK l _Toc70308669 5.5.2产生对称密钥 PAGEREF _Toc70308669 h 29 HYPERLINK l _Toc70308670 5.5.3基于口令产生对称密钥 PAGEREF _Toc70308670 h 30 HYPERLINK l _Toc70308671 5.5.4包装密钥 PAGEREF _Toc70308671 h 30 HYPERL

16、INK l _Toc70308672 5.5.5解包装密钥 PAGEREF _Toc70308672 h 31 HYPERLINK l _Toc70308673 5.5.6获取错误信息 PAGEREF _Toc70308673 h 31 HYPERLINK l _Toc70308674 5.5.7释放Key资源 PAGEREF _Toc70308674 h 32 HYPERLINK l _Toc70308675 5.6类JIT_Bin PAGEREF _Toc70308675 h 32 HYPERLINK l _Toc70308676 5.6.1构造方法 PAGEREF _Toc7030867

17、6 h 32 HYPERLINK l _Toc70308677 5.6.2数据数字签名 PAGEREF _Toc70308677 h 32 HYPERLINK l _Toc70308678 5.6.3验证数字签名 PAGEREF _Toc70308678 h 33 HYPERLINK l _Toc70308679 5.6.4数据非对称加密 PAGEREF _Toc70308679 h 34 HYPERLINK l _Toc70308680 5.6.5数据非对称解密 PAGEREF _Toc70308680 h 35 HYPERLINK l _Toc70308681 5.6.6产生数据的MAC

18、PAGEREF _Toc70308681 h 35 HYPERLINK l _Toc70308682 5.6.7验证数据的MAC PAGEREF _Toc70308682 h 36 HYPERLINK l _Toc70308683 5.6.8数据文摘 PAGEREF _Toc70308683 h 37 HYPERLINK l _Toc70308684 5.6.9数据对称加密 PAGEREF _Toc70308684 h 38 HYPERLINK l _Toc70308685 5.6.10数据对称解密 PAGEREF _Toc70308685 h 38 HYPERLINK l _Toc70308

19、686 5.6.11产生PKCS7数字信封 PAGEREF _Toc70308686 h 39 HYPERLINK l _Toc70308687 5.6.12验证PKCS7数字信封 PAGEREF _Toc70308687 h 42 HYPERLINK l _Toc70308688 5.6.13二进制数据转换成PEM编码 PAGEREF _Toc70308688 h 44 HYPERLINK l _Toc70308689 5.6.14获取错误信息 PAGEREF _Toc70308689 h 44 HYPERLINK l _Toc70308690 5.6.15释放bin资源 PAGEREF _

20、Toc70308690 h 45 HYPERLINK l _Toc70308691 5.7类JIT_Base64 PAGEREF _Toc70308691 h 45 HYPERLINK l _Toc70308692 5.7.1构造方法 PAGEREF _Toc70308692 h 45 HYPERLINK l _Toc70308693 5.7.2数据数字签名 PAGEREF _Toc70308693 h 45 HYPERLINK l _Toc70308694 5.7.3验证数字签名 PAGEREF _Toc70308694 h 46 HYPERLINK l _Toc70308695 5.7.4

21、数据非对称加密 PAGEREF _Toc70308695 h 47 HYPERLINK l _Toc70308696 5.7.5数据非对称解密 PAGEREF _Toc70308696 h 48 HYPERLINK l _Toc70308697 5.7.6数据产生MAC PAGEREF _Toc70308697 h 48 HYPERLINK l _Toc70308698 5.7.7验证数据的MAC PAGEREF _Toc70308698 h 49 HYPERLINK l _Toc70308699 5.7.8数据文摘 PAGEREF _Toc70308699 h 50 HYPERLINK l

22、_Toc70308700 5.7.9数据对称加密 PAGEREF _Toc70308700 h 51 HYPERLINK l _Toc70308701 5.7.10数据对称解密 PAGEREF _Toc70308701 h 51 HYPERLINK l _Toc70308702 5.7.11产生PKCS7数字信封 PAGEREF _Toc70308702 h 52 HYPERLINK l _Toc70308703 5.7.12验证PKCS7数字信封 PAGEREF _Toc70308703 h 54 HYPERLINK l _Toc70308704 5.7.13PEM编码转换成二进制 PAGE

23、REF _Toc70308704 h 57 HYPERLINK l _Toc70308705 5.7.14获取错误信息 PAGEREF _Toc70308705 h 57 HYPERLINK l _Toc70308706 5.7.15释放Base64资源 PAGEREF _Toc70308706 h 57 HYPERLINK l _Toc70308707 5.8类JIT_EnvFile PAGEREF _Toc70308707 h 58 HYPERLINK l _Toc70308708 5.8.1构造方法 PAGEREF _Toc70308708 h 58 HYPERLINK l _Toc70

24、308709 5.8.2产生PKCS7数字信封文件 PAGEREF _Toc70308709 h 58 HYPERLINK l _Toc70308710 5.8.3验证PKCS7数字信封文件 PAGEREF _Toc70308710 h 61 HYPERLINK l _Toc70308711 5.8.4获取错误信息 PAGEREF _Toc70308711 h 62 HYPERLINK l _Toc70308712 5.8.5释放EnvFile资源 PAGEREF _Toc70308712 h 62 HYPERLINK l _Toc70308713 5.9类JIT_LDAP PAGEREF _

25、Toc70308713 h 62 HYPERLINK l _Toc70308714 5.9.1构造方法 PAGEREF _Toc70308714 h 62 HYPERLINK l _Toc70308715 5.9.2获取用户证书 PAGEREF _Toc70308715 h 63 HYPERLINK l _Toc70308716 5.9.3释放获取的证书 PAGEREF _Toc70308716 h 64 HYPERLINK l _Toc70308717 5.9.4获取错误信息 PAGEREF _Toc70308717 h 64 HYPERLINK l _Toc70308718 5.9.5释放

26、Ldap资源 PAGEREF _Toc70308718 h 64 HYPERLINK l _Toc70308719 5.10类JIT_Random PAGEREF _Toc70308719 h 65 HYPERLINK l _Toc70308720 5.10.1创造随机数 PAGEREF _Toc70308720 h 65引言概述JIT Toolkit_API(Java版)是以吉大正元电子证书认证系统为基础,方便用户进行二次开发,整合先进的Java技术,提供的工具包。用户利用工具包中各种接口可以作电子证书系统客户化,电子证书应用等方面的开发工作。主要功能如下:对客户和服务器证书的操作(包括验证

27、和获取证书内容)对用户数据的操作(包括签名、加密、数字信封和他们相对应的校验工作)对用户文件的各种操作(包括封装数字信封和验证数字信封)各种辅助操作(包括对对称密钥的操作、产生随机数、)对Ldap、CRL、OCSP等各种辅助功能的操作开发平台及编程语言开发平台Windows 2000 Server编程语言JavaC+开发工具Java 2 SDK Standard Edition v1.3.1_09(Sun Microsystems, Inc.)Borland Jbuilder 7 EnterpriseMicrosoft Visual C+ 6.0 Enterprise Edition注意事项系

28、统中的错误码均为负数。本接口不支持加密机,除windwos外不支持key使用除windows外不支持OCSP名词解释无系统结构接口说明JIT应用Toolkits API(Java版)对用户提供10个类共70个接口:jit.toolkitsToolkits主要功能类。提供各对外接口。jit.parameters结构。用于存放程序中各种用到的结构体。配置文件说明JIT 应用Toolkits API(JNI版)共需要5个配置文件,说明如下:cryptodevice.ini加密设备配置文件。文件证书使用时修改DeviceCount对应软加密库ID,DeviceCount =1Key证书使用时修改Dev

29、iceCount对应Key的IDDeviceCount =2两种证书同时使用时修改DeviceCount对应Key的IDDeviceCount =2MultiDeviceFile.ini管理员证书介质使用JPF文件时使用此配置文件。(无论那种情况该文件必须存在)MultiDeviceCard.ini管理员证书介质使用USB Key时使用此文件。(无论那种情况该文件必须存在)card.iniUSB Key的配置文件,通常不需要用户改动。jitocsp.ini与OCSP服务器连接时需要的一些连接参数,用户可根据实际情况进行改动jcaapi.ini与Ldap服务器连接时需要的一些连接参数,用户可根据

30、实际情况进行改动数据结构基于口令产生密钥的基本信息类名称:JIT_PBE_PARAMS功能:存储PKCS5基于口令产生密钥的参数。声明:public class JIT_PBE_PARAMS public byte sPassword; public byte bSalt; public int lIteration;public JIT_PBE_PARAMS() 数据成员:pPassword 口令的内容。pSalt盐值的内容。(PKCS5基于口令产生密钥的协商好的附加信息)nIterationPKCS5基于口令密钥产生的循环叠代次数。初始化CRL参数类名称:JIT_CRLPARAM功能:存储

31、初始化CRL的参数。声明:public class JIT_CRLPARAM public byte szCRLFile; public int nMode; public JIT_CRLPARAM() 数据成员:szCRLFile 用户指定的CRL文件路径。这个路径必须是绝对路径。这个路径不能为NULL。在线方式验证,这个路径是下载的CRL存储在本地的CRL文件路径。离线方式验证,这个路径是验证证书时使用的CRL文件路径。nMode通过CRL验证证书的方式。包括在线方式验证和离线方式验证。在线方式验证设置为VERIFY_MODE_ONLINE离线方式验证设置为VERIFY_MODE_OFFL

32、INE时间基本信息类名称:JIT_Time功能:存储证书中时间的值声明: public class JIT_Timepublic 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:本地时间diffGMT 本地时间和格林威治时间的差值。本地时间比格林威治时间早用负数表

33、示。本地时间比格林威治时间晚用正数表示。0表示格林威治时间。year 本地时间年month本地时间月day 本地时间日hour本地时间时min 本地时间分second本地时间秒证书有效期类类名称:JIT_Valid功能:存储证书的有效期声明:public class JIT_Validpublic JIT_Time notBeforpublic JIT_Time notAfterpublic JIT_Valid() 数据成员:notBefor证书有效期开始的时间notAfter证书有效期结束的时间初始化证书信息类名称:JIT_CERTDEVPARAM(保留未用)功能:存储了从非数据流形式初始化

34、证书时所需要的信息声明: public class JIT_CERTDEVPARAM public byte szDevInfo; public byte szPWD; public JIT_CERTDEVPARAM() 数据成员:szDevInfo 描述证书存储的描述串。描述串由两部分组成。第一部分是存储介质描述符,第二部分是证书存储路径。存储介质描述符:“file:/”表示证书的存储介质是磁盘。“usb:/”表示证书的存储介质是USB接口设备。“com1:/”表示证书的存储介质是COM接口设备。证书存储路径:表示证书存储的位置和名字例如:“file:/d:mycert.jpf”表示D盘根目

35、录下的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 证书密码全局常量定义该类定义API 中的常量。在本文档中引用常量时直接引用常量名。标识常量所用到的配置文件 public static StringCRYPT_INI_FILE_NAME=cryptodevice.ini; public static StringOCSP_INI_FILE

36、_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 StringJCAAPI_INI_FILE_NAME =jcaapi.ini;文件长度及密码长度文件长度 public static intFILE_NAME_LEN=256;密码长度 p

37、ublic static intPWD_LEN=128;数据类型定义;Base64类型 public static intDATA_TYPE_BASE64=0;Bin类型 public static intDATA_TYPE_BIN=1;信封类型定义签名信封 public static intENVELOP_SIGN=0;加密信封 public static intENVELOP_ENC=1;既签名又加密信封 public static intENVELOP_SIGN_ENC=2;文摘信封 public static intENVELOP_DIGEST=3;MAC信封 public stati

38、c intENVELOP_MAC=4;证书扩展类型定义jpf管理员证书文件 public static intCERT_EXP_TYPE_JPF =0;pfx包含私钥证书文件 public static intCERT_EXP_TYPE_PFX=1;cer公钥证书文件 public static intCERT_EXP_TYPE_CER=2;证书用户类型定义个人单证书 public static intCERT_USE_TYPE_SINGLE =0;jpf双证书 public static intCERT_USE_TYPE_DOUBLE=1;电子邮件保护证书 public static int

39、CERT_USE_TYPE_MAIL =2;服务器证书 public static intCERT_USE_TYPE_SERVER=3;CA证书 public static intCERT_USE_TYPE_CA =4;证书状态定义正常状态 public static intCERT_STATUS_NOMAL =0;证书已注销 public static intCERT_STATUS_REVOKE =1;未知状态 public static intCERT_STATUS_UNKNOWN=2;CRL验证证书方式在线验证证书 public static intVERIFY_MODE_ONLINE

40、=0;离线验证证书 public static intVERIFY_MODE_OFFLINE =1;证书SN类型签名证书 public static intCERT_SN_TYPE_SIGN =1;加密证书 public static intCERT_SN_TYPE_ENC =2;签名加密证书 public static intCERT_SN_TYPE_SIGNENC =3;证书存储方式文件方式存储 public static int CERT_DEV_TYPE_FILE =0;USB Key中存储 public static int CERT_DEV_TYPE_USB =1;COM接口设备存

41、储 public static int CERT_DEV_TYPE_COM =2;加密、解密、签名 等算法 RSA加密解密; public static int CT_ALGO_RSA_PKCS =0 x00000001;MD2WithRSA 签名验证 public static int CT_ALGO_MD2_RSA_PKCS =0 x00000004;MD5WithRSA签名验证 public static int CT_ALGO_MD5_RSA_PKCS =0 x00000005;SHA1WithRSA签名验证 public static int CT_ALGO_SHA1_RSA_PKC

42、S =0 x00000006;MD2 文摘 public static int CT_ALGO_MD2 =0 x00000200;MD5 文摘 public static int CT_ALGO_MD5 =0 x00000210;SHA1文摘 public static int CT_ALGO_SHA_1 =0 x00000220;RC2 ECB方式加密解密 public static int CT_ALGO_RC2_ECB =0 x00000101;RC4加密解密 public static int CT_ALGO_RC4 =0 x00000111;DES ECB方式加密解密 public

43、static int CT_ALGO_DES_ECB =0 x00000121;3DES ECB方式加密解密 public static int CT_ALGO_DES3_ECB =0 x00000132;标准扩展域public static int CERT_EXT_OID_IDENTIFYCARD=12861171;/个人身份标识码:OID=1.7.1 public static int CERT_EXT_OID_INSURANCENUM=12861172;/个人社会保险号:OID=1.7.2 public static int CERT_EXT_OID_ORGANIZATIONCODE=

44、12861173;/企业组织机构代码:OID=1.7.3 public static int CERT_EXT_OID_ICREGNUM =12861174;/企业工商注册号:OID=1.7.4 public static int CERT_EXT_OID_TAXNUM =12861175; /企业税号:OID=1.7.5错误代码成功public static intCT_SUCCESS=0参数错误public static intCT_ERR_PARAM =-9000内存错误public static intCT_ERR_MEMORY=-9001内存分配少public static intC

45、T_ERR_BUFFER_TOO_SMALL=-9090加密库初始化错误public static intCT_ERR_CRYPTODEV_INIT=-9999不能打开加密库public static intCT_ERR_CRYPTO_SESSION =-9002不能访问加密设备public static intCT_ERR_CRYPTODEV_NO_ACCESS =-9003 OCS引擎未初始化public static intCT_ERR_OCSP_ENGINE_NOT_INIT = -9004证书不完整public static intCT_ERR_CERT_NOT_INTEGRITY

46、=-9005取证书状态失败public static intCT_ERR_GET_CERT_STATUS = -9006OCSP初始化错误public static intCT_ERR_OCSP_INIT =-9007 LDAP错误public static intCT_ERR_ACCESS_LDAP =-9008 CRL不完整public static intCT_ERR_CRL_NOT_INTEGRITY =-9009证书颁发者或主题错误public static intCT_ERR_ISSUER_OR_SUBJECT = -9010 CRL引擎未初始化public static intC

47、T_ERR_CRL_ENGINE_NOT_INIT = -9011证书链不完整public static intCT_ERR_CERT_CHAIN_NOT_INTEGRITY=-9012证书过期public static intCT_ERR_CERT_OVER = -9013根证书无效public static intCT_ERR_ROOT_CERT_INVALID = -9014 CRL初始化错误public static intCT_ERR_CRL_INIT =-9015口令错误public static intCT_ERR_PWD =-9016打开文件错误public static in

48、tCT_ERR_FILE_OPEN =-9017文件不存在public static intCT_ERR_FILE_NO_EXIST =-9018证书不存在public static intCT_ERR_CERT_NOT_EXIST =-9019证书不匹配public static intCT_ERR_CERT_NO_MATCH =-9020私钥不存在public static intCT_ERR_PRIVATEKEY_NO_EXIST =-9021算法和密钥不匹配public static intCT_ERR_KEY_AND_ALGO_NO_MATCH =-9022密钥不存在 public

49、static intCT_ERR_KEY_NO_EXIST =-9023不支持的算法public static intCT_ERR_ALGO_NOT_SUPPORT =-9024数据长度不匹配public static intCT_ERR_DATA_LENGTH_NO_MATCH =-9025证书和算法不匹配public static intCT_ERR_CERT_AND_ALGO_NO_MATCH =-9026 签名失败public static intCT_ERR_SIGNATURE =-9027 验证签名失败public static intCT_ERR_VERIFY_SIGNATURE

50、 =-9028加密失败public static intCT_ERR_ENCRYPT =-9029 解密失败public static intCT_ERR_DECRYPT =-9030产生MAC失败public static intCT_ERR_MAC =-9031 验证MAC失败public static intCT_ERR_VERIFY_MAC =-9032产生密钥失败public static intCT_ERR_GENERATEKEY =-9033 产生摘要失败public static intCT_ERR_DIGEST =-9034数据格式错误public static intCT_

51、ERR_DATA_FORMAT =-9040验证模式错误public static intCT_ERR_VERIFY_MODE =-9041Email地址不存在public static intCT_ERR_NO_EMAIL_ADDRESS =-9042/cryptodevice.ini文件不存在public static intCT_ERR_NO_CRYPT_INI =-9043jitocsp.ini文件不存在public static intCT_ERR_NO_OCSP_INI =-9044jcaapi.ini文件不存在public static intCT_ERR_NO_JCAAPI_I

52、NI =-9045card.ini文件不存在public static intCT_ERR_NO_CARD_INI =-9046MultiDeviceCard.ini文件不存在public static intCT_ERR_NO_MULCARD_INI =-9047MultiDeviceFile.ini文件不存在public static intCT_ERR_NO_MULFILE_INI =-9048初始化LDAP错误public static intCT_ERR_LDAP_INIT =-9049LDAP引擎未初始化public static intCT_ERR_LDAP_ENGINE_NOT

53、_INIT =-9050产生随机数失败public static intCT_ERR_GEN_RANDOM =-9051 没有匹配的OIDpublic static intCT_ERR_OID_NO_MATCH =-9053 证书初始化错误 public static intCT_ERR_CERT_INIT =-9081引擎初始化错误 public static intCT_ERR_ENGINE_INIT =-9080函数说明类JIT_Engine这个类提供初始化JIT_CA30应用API引擎的功能。用户在使用JIT_CA30应用API的其它功能前,必须初始化引擎。该引擎在一个程序中只能初始化

54、一次。它提供以下功能初始化方法。构造函数JIT_Engine声明:public JIT_Engine(byte bWorkpath)参数:insWorkPathJIT_CA30应用API的工作路径。该路径下存放需要的配置文件和CRL根证书等。这个路径必须是绝对路径。这个路径不能为NULL。返回值:由于构造方法无返回值,所以用户在初始化引擎后,调用getErrcode()方法返回引擎是否初始化成功。示例:byte bWorkPath = null;bWorkPath =”配置文件路径”JIT_Engine Engine = null;Engine = new JIT_Engine(bWorkPa

55、th); iRet = Engine.getErrcode();if(iRet =0)/*引擎初始化成功*/else/*引擎初始化失败,返回相应的错误码*/Engine.delete();相关主题GetLastErrDelete获取错误信息 getErrcode声明:public int getErrcode()参数:无返回值:函数成功时返回0,失败时返回错误码示例:见5.1.1示例释放引擎资源 delete声明:public void delete();参数:无返回值:无示例:见5.1.1示例类JIT_OCSP这个类提供通过OCSP在线查询证书状态的功能。构造方法JIT_OCSP声明: pu

56、blic int JIT_OCSP( JIT_Engine pEng, JIT_Certificate pRootCert, JIT_Certificate pServerCert)参数:in pEngJIT_CA30应用API引擎。用户先构造一个JIT_Engine的实例,然后将对象传递给方法。in pRootCertCA的证书对象,必须先初始化CA证书。此参数必须非空。pServerCertOCSP服务器证书,此参数保留(置为null)。返回值:由于构造方法无返回值,调用getErrcode()方法返回错误码。注释:在参数pRootCert中指明CA的证书,是用来验证用户要在线查询的证书是

57、否是由pRootCert参数指定的CA签发的。示例: 初始化引擎JIT_OCSP OCSP = null;JIT_Certificate cerRootCert = null; 初始化CA根证书OCSP = new JIT_OCSP(Engine, cerRootCert, null); iRet = OCSP.getErrCode(); if (0 != iRet) 初始化引擎失败 else 初始化引擎成功 OCSP.delete();相关主题:GetLastErrJIT_CertificateDelete查询证书状态getCertStatus声明:public int (JIT_Certi

58、ficate pCert, int iCertType)参数:in pCert输入用户要在线查询的证书对象,必须先初始化该证书。此参数必须非空。in iCertType输入用户要在线查询的证书的类型。如果参数pCert中指定的证书是双证书。则在参数nCertType中指明要查询的证书。nCertType证书类型数值CERT_SN_TYPE_SIGN签名证书1CERT_SN_TYPE_ENC加密证书2返回值:证书状态或者错误代码常量定义证书状态数值CERT_STATUS_NOMAL表示证书有效0CERT_STATUS_REVOKE表示证书被注销1CERT_STATUS_UNKNOWN表示证书状态

59、未知2其他错误代码示例:JIT_Certificate cerEncCert = null;初始化证书iRet = OCSP.getCertStatus(cerEncCert, cerEncCert.getCertType(); if (0 iRet) 查询证书状态失败 else 返回证书状态 相关主题:JIT_Certificate获取错误信息 getErrcode声明:public int getErrcode()参数:无返回值:函数成功时返回0,失败时返回错误码示例:见5.2.1示例释放OCSP资源 delete声明:public void delete();参数:无返回值:无示例:见5

60、.2.1示例类JIT_CRL这个类提供通过CRL验证证书状态的功能。可以通过在线或离线方式验证构造方法 JIT_CRL声明:public JIT_CRL(JIT_Engine pEng, JIT_CRLPARAM stCRLInfo)参数:inpEngJIT_CA30应用API引擎。用户先构造一个JIT_Engine的实例,然后将对象传递给方法。instCRLInfoJIT_CRLPARAM类的引用。详见JIT_CRLPARAM类的定义。返回值:由于构造方法无返回值,调用getErrcode()方法返回错误码。注释:此方法初始化通过CRL验证证书的功能和方式(在线或离线)。示例: JIT_CR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论