在前面章节上介绍过,Windows操作系统为我们提供了先进的加密体系模型CryptAPI。CryptAPI提供了丰富的函数供我们完成签名、验证等操作,但是它是相当复杂的,也不适合在Web上直接调用。所以,微软同时提供了CAPICOM组件,封装了上述复杂的操作,只需要调用一两个函数就能满足指定的功能。CAPICOM是一个COM模型的组件,可以在Windows环境下各种语言中使用,而且,CAPICOM中的大多数接口都是“脚本安全”的,这意味着我们可以在浏览器网页脚本中安全地使用这些接口所提供的功能。
目前,CAPICOM共有两个版本:1.0版和 2.0版。其中,后者在前者的基础上,提供了一些额外的功能。
CAPICOM v1.0提供如下功能:
1、产生和验证PKCS#7格式的数字签名;
2、使用证书加密/解密数据;
3、使用口令加密/解密数据;
CAPICOM v2.0额外提供如下功能:
1、产生和验证代码签名;
2、支持文件形式的证书;
3、快速证书搜索;
4、产生任意数据的哈希值;
5、支持AES算法(需要Windows .NET Server 2003 或 Windows XP支持);
6、支持高级证书属性,例如:政策、模板。