发布时间 : 星期日 文章格尔签名验证客户端(应用服务器)API_C_ActiveX接口说明更新完毕开始阅读957e30d4b7360b4c2f3f6452
1.12 对文件签名数据验证签名
函数:int VerifyFile(int nSignType,
int iSignAlgo, char *strFile, char *pB64Cert, char *pB64SignedData, int iVerifyFlag, int hContext)
* 对文件签名进行验证(签名结果不是PKCS7格式封装) *
* @param nSignType是数字签名前,原文摘要时所用的算法
-1 // 采用直接对原文数据进行签名的方式 0 // SHA1摘要算法 1 // MD5摘要算法
* @param iSignALgo 签名算法, 作为扩展使用,暂时无效 * @param strFile 待验证的文件名全路径
* @param pB64Cert 用户证书数据(b64编码) * @param pB64SignedData 签名数据
* @param iVerifyFlag 验证证书有效性方法(暂时无效,仅作扩展使用,不验证证书)
0 不验证证书有效性 1 CRL方式验证证书有效性 2 OCSP方式验证证书有效性 其他 只验证证书链
* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail
上海格尔软件股份有限公司
13
上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com
1.13 对文件解密数字信封
函数:int DecodeEnvelopeFile(char * strSrcFile,
char * strDstFile, int hContext)
* 使用服务器私钥解密数字信封 *
* @param strSrcFile 待解密的文件的文件名,如果不在当前目录下,需要带路径名
* @param strDstFile 解密后文件的文件名,如果不在当前目录下,需要带路径名
* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail
1.14 Detach方式的PKCS#7签名
函数:int PKCS7DetachDataSign(const unsigned char *pOriginData,
unsigned int nOriginDataLen, char *pSignedData, int hContext)
* Detach方式的PKCS#7数据签名 *
* @param pOriginData 待签名原文,原文长度没有限制 * @param nOriginLen 原文的长度
* @param pSignedData 签名后的P7格式数据,不包含原文 * @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail
1.15 验证Detach方式的PKCS#7数据签名
函数:int PKCS7DetachDataVerify(const char *pPKCS7B64Data,
上海格尔软件股份有限公司
上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com
14
const unsigned char *pOriginData, unsigned int nOriginLen, int hContext)
* Detach方式的PKCS#7数据签名验证 *
* @param pPKCS7B64Data P7数据B64编码(不包含原文) * @param pOriginData 签名数据的原文 * @param nOriginLen 原文的长度
* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail
1.16 验证签名(实时从LDAP下载证书并验证)
函数:int VerifyLdapCertSign(int nSignType,
int iSignAlgo,
unsigned char *strOriginData, int iOriginLength, char *strFilter,
char *strB64SignedData, int iVerifyFlag, int hContext)
*验证签名和证书的有效性(实时从LDAP下载证书并验证其有效性) *
* @param nSignType是数字签名前,原文摘要时所用的算法
-1 // 采用直接对原文数据进行签名的方式 0 // SHA1摘要算法 1 // MD5摘要算法
* @param iSignAlgo 0 SHA1; 1 MD5(此参数当前已经失效,只支持SHA1) * @param strOriginData
上海格尔软件股份有限公司
上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com
原文数据
15
* @param iOriginLength 原文数据长度 * @param strFilter 用户证书的证书序列号
* @param strB64SignedData 签名数据(b64编码) * @param iVerifyFlag 是否验证证书状态
0 不验证证书状态 1 验证证书状态
* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail
1.17 验证原文HASH签名
函数:int VerifyHashSign(char *pB64OriginHashData,
char *pB64Cert, int iVerifyFlag, int hContext)
* 验证原文数据HASH签名和证书有效性,用户为了保密/避免传输大数据需要,
* 将原文进行HASH,然后调用该接口,避免了原文数据外送 *
* @param pB64OriginHashData 原文数据SHA-1 HASH后的B64编码 * @param pB64Cert 待验证的证书B64编码(中间没有回车换行) * @param pB64SignedData * @param iVerifyFlag 验证
* @param hContext 连接句柄,通过InitialVerify接口获得 * @return 0 succeed; other fail
签名数据(b64编码)
char *pB64SignedData,
0,不验证证书;1,验证黑名单;2 ,使用OCSP
上海格尔软件股份有限公司
16
上海市余姚路288号7楼 Tel: (86-21) 62327010 Fax:62327015 URL: http://www.koal.com