格尔签名验证客户端(应用服务器)API_C_ActiveX接口说明 联系客服

发布时间 : 星期日 文章格尔签名验证客户端(应用服务器)API_C_ActiveX接口说明更新完毕开始阅读

* @param pOriginData 签名数据的原文 (Attach方式P7签名验证请置为NULL)

* @param nOriginLen 原文的长度(Attach方式P7签名验证请置为0) * @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail

1.6 验证Attach方式的PKCS7数据签名并获取原文

函数:int PKCS7DataVerifyGetOriData(const char *pPKCS7B64Data,

const unsigned char *pOriginData, unsigned int *pnOriginLen, int hContext)

* Attach方式的PKCS#7数据签名验证,并获取原文信息 *

* @param pPKCS7B64Data P7数据B64编码(包含原文) * @param pOriginData 返回的原文数据 * @param pnOriginLen

返回的原文数据长度

* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail

1.7 证书验证

函数:int VerifyCert(char *pB64Cert,

int iFlagOCSP, int iFlagCRL, int hContext)

* 验证证书有效性 *

* @param pB64Cert 待验证的证书B64编码(中间没有回车换行) * @param iFlagOCSP 使用OCSP方式验证标志,1 -- 使用OCSP方式验

上海格尔软件股份有限公司

上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com

9

证,0 -- 不使用OCSP

* @param iFlagCRL 是否验证黑名单标志,1 -- 验证黑名单,0 -- 不验证黑名单

* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 // 证书没有问题

1 // 证书尚未生效 2 // 证书已经过期 3 // 证书时间有问题 4

// 没有有效证书链

5 // 签名验证失败 6 // 上级证书未通过验证 7

// 已被废除

1.8 获取证书信息

函数:int GetCertInfo(char *pB64Cert,

int nType, char *pItemName, char *pCertInfo, int hContext)

* 取证书信息 *

* @param pB64Cert 待验证的证书B64编码(中间没有回车换行) * @param nType 证书项的类型

0 // 取证书用户信息基本项 1 // 取证书的发布者信息项 2 // 取证书扩展项

* @param pItemName 所要取得证书项名称,如\等 * @param pCertInfo 所要取得证书项的值

上海格尔软件股份有限公司

上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com

10

* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail

1.9 Attach方式PKCS7数据签名

函数:int PKCS7DataSign(const unsigned char *pOriginData,

unsigned int nOriginDataLen,

char *pSignedData, int hContext)

* Attach方式的PKCS#7数据签名 *

* @param pOriginData 待签名原文,数据长度不能超过40K * @param nOriginDataLen 原文长度

* @param pSignedData 签名后的P7数据B64编码(签名后的数据包含原文) * @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail

1.10 数据签名(普通签名数据)

函数:int SignData(int nSignType,

const unsigned char *pOriginData,

unsigned int nOriginDataLen, char *pSignedData, char *pB64Cert, int hContext)

* 普通格式的数据签名(不使用PKCS7格式封装签名结果) *

* @param nSignType是数字签名前,原文摘要时所用的算法

上海格尔软件股份有限公司

上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com

-1 // 采用直接对原文数据进行签名的方式 0 // MD2摘要算法

11

1 // MD5摘要算法 2 // SHA1摘要算法

* @param pOriginData 待签名原文 * @param nOriginDataLen 原文长度 * @param pSignedData 签名后的数据 * @param pB64Cert B64编码的签名证书

* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail

1.11 对文件签名

函数:int SignFile(int nSignType,

char *strFile, int iSignAlgo, char *strSignedData, char *pB64Cert, int hContext)

* 对文件进行签名(不使用PKCS7格式封装签名结果) *

* @param nSignType是数字签名前,原文摘要时所用的算法

-1 // 采用直接对原文数据进行签名的方式 0 // SHA1摘要算法 1 // MD5摘要算法

* @param strFile 待签名的文件名

* @param iSignALgo 签名算法, 作为扩展使用,暂时无效 * @param strSignedData 签名后的数据 * @param pB64Cert B64编码的签名证书

* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail

上海格尔软件股份有限公司

上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com

12