Every CSP of type PROV_RSA_FULL or PROV_RSA_SIG must provide implementations of both the MD5 and the SHA hash functions. In addition, having your CSP support the MD2 algorithm might be a good idea, if compatibility is important to you. To be interoperable with the Microsoft Cryptographic Service Providers, the SSL3 Client Authentication algorithm must be supported as well (For additional information see Microsoft Cryptographic Service Providers and SSL3 Client Authentication Algorithm).