Les Public Key Cryptography Standards définissent une suite
de spécifications standards de modules cryptographiques, définie
en juin 1991 par Apple, DEC, Lotus, Microsoft, le MIT, RSA
et Sun.
PCKS regroupe les composants suivants :
- PKCS#1 : Cryptage RSA
- PKCS#2 : Incorporé dans PKCS#1.
- PKCS#3 : Agrément de clés Diffie-Hellman
- PKCS#4 : Incorporé dans PKCS#1.
- PKCS#5 : Cryptage basé sur un mot de passe (PBE)
- PKCS#6 : Format d'extension des certificats
- PKCS#7 : Spécification du format de différents messages cryptographiques
(SignedData.certificats, ContentInfo par exemple... utilisés par Netscape
Navigator lors du téléchargement de certificats). Voir la
RFC 2315
- PKCS#8 : Format des clés privées
- PKCS#9 : Selected Attributes Types ?
- PKCS#10 : Format des requêtes de certification (CSR).
Voir RFC 2314.
- PKCS#11 : Interface de cryptographie par token.
- PKCS#12 : Echange d'informations personnelles.
- PKCS#13 : Techniques à clé publique utilisant la cryptographie
par courbe elliptique.
- PKCS#15 : Format des fichiers de cartes à puce (draft).
PKCS est aujourd'hui supporté dans de nombreux produits, dont :
- Netscape Communicator (support de PKCS#11 permettant l'utilisation de cartes
à puce et de tokens)
La dernière version spécifiée par RSA est PKCS#15.