Die Public-Key Cryptography Standards (PKCS), deutsch Standards für asymmetrische Kryptographie, bezeichnen eine Sammlung von Spezifikationen für asymmetrische Kryptosysteme. Diese Standards wurden von RSA Security zusammen mit anderen ab 1991 entwickelt, um die Verbreitung asymmetrischer Kryptosysteme zu beschleunigen. Einige der Dokumente flossen in Standardisierungsverfahren von IETF und PKIX ein.
Die nachfolgende Tabelle zeigt die fünfzehn Teile von RSA Laboratories. Ab der zweiten Spalte finden sich Hinweise zum Nachfolgedokument und Versionsnummer.
Version | Name | Kommentar | |
---|---|---|---|
PKCS#1 | 2.2 | RSA Cryptography Specifications | Definiert das Format der RSA-Verschlüsselung. Beschrieben in RFC 8017.[1] |
PKCS#2 | — | zurückgezogen | Nicht mehr aktiv. Enthielt die Verschlüsselung von RSA message digests, wurde mit PKCS#1 zusammengeführt. |
PKCS#3 | 1.4 | Diffie-Hellman Key Agreement Standard | Standardisierung Diffie-Hellman-Schlüsselaustausch. |
PKCS#4 | — | zurückgezogen | nicht mehr aktiv, wurde mit PKCS#1 zusammengeführt |
PKCS#5 | 2.0 | Password-based Encryption Standard | Beschrieben in RFC 2898.[2] |
PKCS#6 | 1.5 | Extended-Certificate Syntax Standard | Definiert Erweiterungen zur alten v1-X.509-Zertifikatspezifikation. Ist durch v3 obsolet geworden. |
PKCS#7 | 1.5 | Cryptographic Message Syntax (CMS) | Bildet die Basis für S/MIME und wird zum Signieren und/oder Verschlüsseln von Nachrichten einer PKI genutzt. Beschrieben in RFC 5652.[3] |
PKCS#8 | 1.2 | Private-Key Information Syntax Standard | Beschrieben in RFC 5208.[4] |
PKCS#9 | 2.0 | Selected Attribute Types | RFC 2985[5] (PKCS #9: Selected Object Classes and Attribute Types Version 2.0) |
PKCS#10 | 1.7 | Certification Request Standard | Beschrieben in RFC 2986.[6] Format der Nachrichten, die zu einer Zertifizierungsstelle (certification authority) gesendet werden, um die Zertifizierung eines Schlüsselpaares zu erfragen. |
PKCS#11 | 2.40 | Cryptographic Token Interface (Cryptoki) | Ursprünglich beschrieben auf der PKCS#11-Seite der RSA Labs.[7] 2013 übernahm die Organization for the Advancement of Structured Information Standards (OASIS) die Standardisierung.[8] Eine API, die eine generische Schnittstelle zu kryptografischen Token spezifiziert. |
PKCS#12 | 1.1 | Personal Information Exchange Syntax Standard | Beschrieben in RFC 7292.[9] Definiert ein Dateiformat, das dazu benutzt wird, private Schlüssel mit dem zugehörigen Zertifikat passwortgeschützt zu speichern. |
PKCS#13 | — | Elliptic Curve Cryptography Standard | Behandelt ein neues Verfahren der Verschlüsselung, das auch bei kleineren Schlüsseln sicherer ist. |
PKCS#14 | — | Pseudo Random Number Generation (PRNG) | (noch in Entwicklung) |
PKCS#15 | 1.1 | Cryptographic Token Information Format Standard | veraltet – wird abgelöst von ISO/IEC 7816-15 |
Es gibt folgende übliche Dateiendungen:
*.p7b und *.p7c | PKCS#7-Zertifikat |
*.p7m | PKCS#7-MIME-Nachricht (oft mit eingebettetem Original-Dokument) |
*.p7s und *.pkcs7[10] | PKCS#7-Signatur |
*.p12 und *.pfx | PKCS#12-Dateien |