星期一, 八月 28, 2006

OpenSSL中调用MS CAPI私钥签名运算

Windows平台下由CertStore中的私钥无法导出, 不能直接采用直接通过OpenSSL来实现基于私钥的签名运算, M$中提供了OpenSSL进行私钥操作的桥梁,这就是CryptAPI,目前CryptAPI以C API与COM接口的方式提供。与OpenSSL结合的过程中自然用CAPI是较好的选择了。

在SSL协议(协议介绍)中只有一个地方会用到私钥的签名运算,出现在verify的过程中,所以可以通过替换用CAPI来替换私钥签名操作来解决这一问题。

OpenSSL提供了Engine引擎接口,把CAPI当作引擎来看,可以通过实现CAPI的引擎来完美解决OpenSSL与M$的融合问题。

没有评论: