SafeEngine Java接口说明v122Word格式文档下载.docx
- 文档编号:18999033
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:31
- 大小:26.27KB
SafeEngine Java接口说明v122Word格式文档下载.docx
《SafeEngine Java接口说明v122Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《SafeEngine Java接口说明v122Word格式文档下载.docx(31页珍藏版)》请在冰豆网上搜索。
当前的JAVA版本所调用到的safeengine为2.2版本以上。
1.2较之1.1版新增6部份的函数:
●初始化扩展(1函数)
●数字信封扩展(2函数)
●对称加密(4函数)
●对称加密扩展(4函数)
●生成公私要对(4函数)
●生成随机数(2函数)
1.22较之1.2版新增部份:
●Sheca_login类,该类包含5个主要方法。
四.SafeEngineforJava方法定义:
获取出错代码
得到调用方法的返回值.调用返回值类型不是数字的方法后,请调用该方法判断
是否调用成功。
intgetErrorCode()
初始化环境
由三个方法可以完成初始化环境功能:
intshecaInitEnviroment(intintPrivateKeyType,StringstrPrivateKeyDeviceParameter,
StringstrPrivateKeyPassword,intintPrivateKeyTimeout,
intintRootCertDeviceType,StringstrRootCertDeviceParameter,
StringstrRootCertPassword)
intshecaInitEnviromentByte(intintPrivateKeyType,byte[]bytePrivateKeyDeviceParameter,
byte[]bytePrivateKeyPassword,intintPrivateKeyTimeout,
intintRootCertDeviceType,byte[]byteRootCertDeviceParameter,
byte[]byteRootCertPassword)
longshecaInitEnvironmentEx(StringstrPrivateKey,StringstrPrivateKeyPassword,
StringstrRootCert);
功能:
初始化环境.从设备中读取私钥,根证书。
在调用以下方法前必须先调用此三个方法之一初始化.
参数:
参数名
含义
In/out
参数选项
intPrivateKeyType
存储私钥的设备类型
In
2为文件
其他见设备类型编码表
strPrivateKeyDeviceParameter
bytePrivateKeyDeviceParameter
存储私钥设备的参数
如privatekeydevicetpe=2为文件名,
其他可为”com1”,“com2”
若不需要私钥,可设为空字符串“”,表示不取私钥
strPrivateKeyPassword
bytePrivateKeyPassword
私钥密码
intPrivateKeyTimeout
私钥超时时间.秒为单位
IntRootCertDeviceType
存储根证书的设备类型
strRootCertDeviceParameter
byteRootCertDeviceParameter
存储根证书设备的参数
若不需要根证书,可设为空字符串“”,表示不取根证书
strRootCertPassword
byteRootCertPassword
根证书密码
仅当rootcertdevicetype为IC卡时有效
strPrivateKey
私钥BASE64编码
IN
必须输入项
strRootCert
根证书BASE64编码
返回:
=0
正常返回,
0x82040000
装载动态库出错
0x82040002
读写私钥设备失败
0x82040003
私钥密码错误
0x82040004
读写根证书设备失败
0x82040005
根证书密码错误
0x8204000A
初始化错误
0x82040001
内存分配错误
其他错误
0xFFFFFFF4
没有正确安装Safeengine.dll
0xFFFFFFF3
分配系统内存异常
清除环境
intshecaClearEnviroment()
功能:
清除环境变量.
和初始化方法配对使用.
没有初始化
0x8204000B
清除环境错误
PEM编码/解码
PEM编码
byte[]shecaPEMEncode(byte[]indata)
将二进制字符串转成可见字符串。
输入?
输出
indata
待编码的数据
in
返回值:
正常返回
0x82040024
编码错误
PEM解码
byte[]shecaPEMDecode(byte[]pemdata)
pemdata
待解码的数据
0x82040025
解码错误
PKCS12接口
从PKCS12中获取证书
StringshecaGetCertFromPKCS12(StringstrPKCS12,StringstrPKCS12Password);
strPKCS12
PKCS12数据块
strPKCS12Password
PKCS12数据密码
getErrorCode()方法返回值:
0x8204000C
签名错误
0x82040008
超时,私钥密码错误.
-5
PEM编码出错
数字签名
签名
由两个方法可以实现签名
StringshecaSignData(StringstrOriginData,intintSignmethod)
byte[]shecaSignData(byte[]byteOriginData,intintSignmethod)
strOriginData
byteOriginData
原始数据块
intSignmethod
签名类型
1:
MD2
2:
MD5
3:
SHA1
PEM解码出错
0x82040029
公私钥不匹配
0x8204002B
非法的P12值
0x8204002C
P12解码错误
摘要
由两个方法可以实现摘要
StringshecaDigest(StringstrOrigindata,intintMethod)
byte[]shecaDigestByte(byte[]byteOrigindata,intintMethod)
strOrigindata
byteOrigindata
intMethod
摘要方法
0x8204000E
摘要错误
-4
验证签名
由两个方法可以实现验证签名
intshecaVerifySignData(StringstrOriginData,intintSignmethod,StringstrSignedData,
StringstrCeritificate)
intshecaVerifySignDataByte(byte[]byteOriginData,intintSignmethod,byte[]byteSignedData,
byte[]byteCeritificate)
IntSignmethod
strSignedData
byteSignedData
签名数据块
strCertificate
byteCertificate
证书内容
0x8204000D
验证错误
0x8204000F
证书错误
证书PEM解码出错
-6
签名数据PEM解码出错
数字信封
由两个方法可以实现数字信封加密
StringshecaEnvelope(intintEnvelopetype,StringstrIndata,StringstrCertificate);
byte[]shecaEnvelope(intintEnvelopetype,byte[]byteIndata,byte[]byteCertificate);
数字信封打包或拆解
IntEnvelopetype
信封类型
1组成数字信封
2拆解数字信封
strIndata
byteIndata
在解数字信封时不起作用
0x82040010
数字信封错误
证书无效.
-7
信封PEM编码出错
-8
信封PEM解码出错
解数字信封时,若私钥超时,先重读私钥,若密码错误,返回–3,此时需重新初始化.
数字信封扩展
由两个方法可以实现数字信封加解密扩展
StringshecaEnvelopeEx(intintEnvelopetype,StringstrIndata,StringstrCertificate);
byte[]shecaEnvelopeExBytes(intintEnvelopetype,byte[]byteIndata,byte[]byteCertificate);
对称加密
由两个方法可以实现对称加密
StringshecaEncryptData(byte[]byteIndata,StringstrKey);
byte[]shecaEncryptDataBytes(byte[]byteIndata,byte[]byteKey);
数据对称加密
strKey,
byteKey
对称密钥
0x8XXXXX
请查看SafeEngine的说明
-1,-2,-4
分配内存错
-3
密码长度错
对称解密
由两个方法可以实现对称解密
StringshecaDecryptData(StringstrIndata,StringstrKey);
byte[]shecaDecryptDataBytes(byte[]byteIndata,byte[]byteKey);
数据对称解密
加密数据块
-1,-2,-4,-5
对称加密扩展
由两个方法可以实现对称加密扩展
StringshecaEncryptDataEx(byte[]byteIndata,StringstrKey,intintAlgID);
nativebyte[]shecaEncryptDataExBytes(byte[]byteIndata,byte[]byteKey,intintAlgID);
数据对称加密扩展
AlgID
加密算法
-1,-2,-3,-4,-5
对称解密扩展
由两个方法可以实现对称解密扩展
StringshecaDecryptDataEx(StringstrIndata,StringstrKey,intintAlgID);
byte[]shecaDecryptDataExBytes(byte[]byteIndata,byte[]byteKey,intintAlgID);
数据对称解密扩展
证书
从介质中获取证书
由两个方法可以实现从介质中获取证书
StringshecaGetSelfCertificate(intintDevicetype,StringstrDeviceParameter,StringstrPassword)
byte[]shecaGetSelfCertificate(intintDevicetype,byte[]byteDeviceParam,byte[]bytePassword)
从设备中读取证书,证书的来源可以是IC卡,磁盘。
intDevicetype
设备类型
strDeviceParameter
byteDeviceParam
设备参数
strPassword
bytePassword
密码
0x82040006
读证书失败
0x82040009
缓冲区不够长
0x82040007
密码错误
证书PEM编码出错
从网络获取证书
由两个方法可以实现从网络获取证书
StringshecaGetCertificate(StringstrSerialNo,StringstrUrl);
byte[]shecaGetCertificate(byte[]byteSerialNo,byte[]byteUrl);
先读取本地缓冲库,然后检查CA证书库。
strSerialNo
byteSerialNo
证书序列号
strUrl
byteUrl
证书查询url
格式:
IP:
PORT
0x82040011
得证书失败
通过黑名单验证证书
由两个方法可以实现通过黑名单验证证书
intshecaVerifyCertificate(byte[]byteCertificate)
验证证书有效性,先验有效期,ca签发,根据配置决定是否验证本地黑名单,ca黑名单。
配置方式见SE_SetConfiguration说明。
证书有效
0x82040012
有效期外
0x82040015
非ca签发
0x82040016
黑名单中
0x82040017
黑名单文件错误
通过OCSP验证证书
由两个方法可以实现通过OCSP验证证书
intshecaVerifyCertificateOnline(StringstrCertificate)
intshecaVerifyCertificateOnline(byte[]byteCertificate)
在线验证证书有效性,先验有效期,ca签发,本地黑名单,然后ocsp
0x82040018
连接失败
0x8204001A
OCSP回包无效
0x8204001B
OCSP回包错误
0x8204001C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SafeEngine Java接口说明v122 Java 接口 说明 v122