PKCS11

From Wikipedia, the free encyclopedia

PKCS#11 is an API, designed to be platform independent, defining a generic interface to cryptographic tokens, such as Hardware Security Modules and smart cards.

Since there isn't a real standard for cryptographic tokens, this API has been developed to be an abstraction layer for the generic cryptographic token. The PKCS#11 API defines most commonly used cryptographic object types (RSA keys, X.509 Certificates, DES/TripleDES keys, etc.) and all the functions needed to use, create/generate, modify and delete those objects.

PKCS#11 is largely adopted to access smart cards and HSMs. Most commercial Certification Authority software uses PKCS#11 to access the CA signing key or to enroll user certificates. Cross platform software that needs to use smart cards uses PKCS#11, such as Mozilla Firefox and OpenSSL (using an extension).

[edit] PKCS#11 wrappers

Since PKCS#11 is a complex C API many wrappers exist that let the developer use the API from various languages.

[edit] References

[edit] External Links