CSP,全名为“加密服务提供者(Cryptographic Service Provider)”,是微软定义的一套密码服务API。目前常用的密码规范或者标准有3套:CSP,PKCS#11和国密标准。前两者主要是为RSA算法提供服务,当然PKCS#11最新的扩展也开始支持ECC算法。而国家密码管理制定的国密标准,主要提供SM2(实际上也是ECC)服务,当然国密标准同时支持RSA,不过大多数情况下RSA的应用还是使用CSP和PKCS#11来实现。
一、CSP为一个独立的密钥服务模块
CSP可以是软件,比如Windows自带的“Microsoft Base Cryptographic Provider v1.0”和“Microsoft Enhanced Cryptographic Provider v1.0”。
CSP也可以是硬件设备,通常是USBKey,比如飞天诚信等厂商生产的。
二、一个CSP对应一个密钥容器
CSP没有设备(Key)的概念,这点和PKC