服务器端组件SecurityEngineDeal接口说明.docx
- 文档编号:30713690
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:9
- 大小:16.92KB
服务器端组件SecurityEngineDeal接口说明.docx
《服务器端组件SecurityEngineDeal接口说明.docx》由会员分享,可在线阅读,更多相关《服务器端组件SecurityEngineDeal接口说明.docx(9页珍藏版)》请在冰豆网上搜索。
服务器端组件SecurityEngineDeal接口说明
BJCASecX服务器端组件
SecurityEngineDeal接口说明
(中国移动版)
北京数字证书认证中心
2008年9月
版权信息
BJCA是北京数字证书认证中心有限公司的商标和缩写。
本文的版权属于北京数字证书认证中心有限公司,未经许可,任何个人和团体不得转载、粘贴或发布本文,也不得部分的转载、粘贴或发布本文,更不得更改本文的部分词汇进行转贴。
未经许可不得拷贝,影印。
Copyright@2007北京数字证书认证中心有限公司
1、组件包说明
BJCASecX服务端Java组件用来提供常见密码运算以及证书应用的中间件产品。
类命名空间为:
“cn.org.bjca.security.SecurityEngineDeal”。
2、方法说明
1)、初始化环境getInstance
功能:
获得一个对象实例,初始化对象。
函数定义:
publicstaticSecurityEngineDealgetInstance();
参数:
无
返回:
对象实例
抛出:
2)、释放环境finalize
功能:
释放环境。
函数定义:
publicbooleanfinalize();
参数:
无
返回:
成功:
true,失败:
false
3)、获得服务器证书getServerCertificate
功能:
读取当前应用的服务器的签名证书。
如果有签名证书则得到签名证书,否则得到交换证书。
函数定义:
java.lang.StringgetServerCertificate();
参数:
返回值:
Base64编码的服务器证书。
出错则返回null。
4)、产生随机数genRandom
功能:
产生随机数。
默认为10个字节的随机数,然后base64编码输出。
函数定义:
java.lang.StringgenRandom();
参数:
返回:
Base64编码的随机数。
功能:
产生指定长度的随机数。
函数定义:
java.lang.StringgenRandom(intlen);
参数:
❑输入参数:
intlen:
待产生的随机数长度(bytes,字节长度)
返回:
随机数值(Base64编码后的)
5)、获得证书信息getCertInfo
功能:
获取证书信息
函数定义:
java.lang.StringgetCertInfo(java.lang.Stringbase64EncodeCert,inttype);
参数:
❑输入参数:
java.lang.Stringbase64EncodeCert:
Base64编码的X.509数字证书
❑输入参数:
inttype:
获取证书信息的类型。
根据type获得证书信息
type的值主要有:
type
意义
1
证书版本
2
证书序列号
4
证书发放者国家名
5
证书发放者组织名
6
证书发放者部门名
7
证书发放者省州名
8
证书发放者通用名
9
证书发放者城市名
10
证书发放者EMAIL地址
11
证书有效期起始
12
证书有效期截止
13
用户国家名
14
用户组织名
15
用户部门名
16
用户省州名
17
用户通用名
18
用户城市名
19
用户EMAIL地址
23
用户备用主题国家名
24
用户备用主题组织名
25
用户备用主题部门名
26
用户备用主题省州名
27
用户备用主题通用名
28
用户备用主题城市名
29
用户备用主题EMAIL地址
返回:
java.lang.Stringret证书信息。
出错返回空值。
6)、获得证书扩展信息getCertInfoByOid
功能:
根据OID获取证书私有扩展项信息
函数定义:
java.lang.StringgetCertInfoByOid(java.lang.Stringbase64EncodeCert,java.lang.Stringoid);
参数:
❑输入参数:
java.lang.Stringbase64EncodeCert:
Base64编码的证书
❑输入参数:
java.lang.Stringoid:
私有扩展对象ID,比如“1.2.18.21.88.2”
返回:
java.lang.Stringret:
:
证书OID对应的值。
出错返回空值。
7)、验证证书有效性validateCert
功能:
根据应用的策略根据验证证书有效性。
函数定义:
booleanvalidateCert(java.lang.Stringbase64EncodeCert)
参数:
❑base64EncodeCert:
[IN]待验证的base64编码证书。
返回值:
true:
验证成功。
false:
验证失败。
8)、检查证书剩余有效期天数Certificate_CheckValidaty
功能:
检查证书剩余有效期天数。
函数定义:
publicintCertificate_CheckValidaty(java.lang.Stringbase64EncodeCert,
java.lang.StringsDate)
参数:
❑base64EncodeCert:
[IN]待检查的base64编码证书。
❑sDate-需检查的目标日期,格式YYYY/MM/DD(缺省为当前时间)
返回值:
剩余有效期天数。
9)、数据签名signData
功能:
对字符串数据进行数字签名,签名格式为Pkcs1。
函数定义:
java.lang.StringSignData(java.lang.StringinData);
参数:
❑inData:
[IN]待签名的数据原文。
返回值:
成功返回pkcs1格式的签名值的base64编码。
10)、验证签名verifySignedData
功能:
验证数字签名
函数定义:
booleanverifySignedData(java.lang.Stringbase64EncodeCert,java.lang.StringinData,java.lang.StringsignValue);
参数:
❑base64EncodeCert:
[IN]base64编码的签名证书。
❑inData:
[IN]待验证的原文。
❑signValue:
[IN]签名值。
返回值:
true:
验证成功。
false:
验证失败。
11)、对称算法加密数据encryptData
功能:
使用对称算法加密数据.
函数定义:
java.lang.StringencryptData(java.lang.Stringkey,java.lang.StringinData);
参数:
❑输入参数:
java.lang.Stringkey,加密密钥
❑输入参数:
java.lang.StringinData,待加密的明文。
返回值:
成功返回加密后的密文(Base64编码后的)。
出错返回空值。
12)、解密数据decryptData
功能:
使用对称算法解密数据。
函数定义:
java.lang.StringdecryptData(java.lang.Stringkey,java.lang.StringinData);
参数:
❑输入参数:
java.lang.Stringkey,解密密钥
❑输入参数:
java.lang.StringInData,待解密的密文
返回值:
解密后的明文。
出错返回空值。
13)、公钥加密pubKeyEncrypt
功能:
使用证书对数据加密。
(Pkcs1格式)
函数定义:
java.lang.StringpubKeyEncrypt(java.lang.Stringbase64EncodeCert,java.lang.StringinData);
参数:
❑输入参数:
java.lang.Stringbase64EncodeCert,证书
❑输入参数:
java.lang.StringinData,待加密的数据。
因为是pkcs1格式,故此数据长度要小于证书的位数。
比如1024位的证书,InData长度必须小于128。
返回值:
成功返回加密后的密文(base64编码后的)。
否则返回空。
14)、私钥解密priKeyDecrypt
功能:
私钥解密(Pkcs1格式)
函数定义:
java.lang.StringpriKeyDecrypt(java.lang.StringInData);
参数:
❑输入参数:
java.lang.StringInData,待解密的数据。
返回值:
成功返回解密后的明文。
否则返回空。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 服务器端 组件 SecurityEngineDeal 接口 说明