Stands for Public Key Cryptography Standards, a set of standards developed by an industry consortium headed by RSA Laboratories and including Microsoft that specifies how a public key cryptography system should be implemented and operated. The following table shows the standards that are important to public key cryptography.
Standard | Description |
PKCS #1 | Specifies how to encrypt and sign data using RSA encryption |
PKCS #2 | Now included in PKCS #1 |
PKCS #3 | Describes the Diffie-Hellman key exchange protocol |
PKCS #4 | Now included in PKCS #1 |
PKCS #5 | Specifies how to encrypt data using a secret key derived from a user’s password |
PKCS #6 | Specifies the syntax standard for extended certificates |
PKCS #7 | Specifies the general syntax of messages that include cryptographic enhancements such as encryption and digital signatures |
PKCS #8 | Specifies the format for private key information |
PKCS #9 | Specifies various attribute types that are used in other PKCS standards |
PKCS #10 | Specifies the syntax for requesting digital certificates |
PKCS #11 | Specification for the Cryptoki application programming interface (API), which is used in smart cards |
PKCS #12 | Specifies a portable format for storing and transporting certificates, private keys, and so forth |
PKCS #13 | Specifies standards for elliptic curve cryptography (under development at the time of this writing) |
PKCS #14 | Specifies standards for generating pseudo-random numbers (under development at the time of this writing) |
PKCS #15 | Specifies the standard format for cryptographic token information (under development at the time of this writing) |