Certificate and Key Formats (2024)

Restriction: This topic applies only when the Enterprise Server feature is enabled.

Certificates are often known as X.509 certificates, since X.509 is the standard that defines their context and layout. The commonest algorithms for creating public and private keys are RSA and DSA, and keys are often referred to as RSA keys or DSA keys. None of these, however, define the format of the file in which a certificate or key is held. There are many rival formats for these files. Some of the commonest standard formats are:

  • DER. This format can contain private keys (RSA or DSA), public keys (RSA or DSA) and X.509 certificates. It is headerless. It is the default format for most browsers. A file can contain only one certificate. Optionally the certificate can be encrypted. The standard extension is .cer, but might be .der in some installations.
  • PEM. This format can contain private keys (RSA or DSA), public keys (RSA or DSA) and X.509 certificates. It is the default format for OpenSSL. It stores the data in either ASN.1 or DER format, surrounded by ASCII headers, so is suitable for sending files as text between systems. A file can contain multiple certificates. The standard extension is .pem.
  • PKCS #7. This is the Cryptographic Message Syntax Standard. A file can contain multiple certificates. Optionally they can be hashed. Optionally a certificate can be accompanied by a private key. As well as the original PKCS #7, there are three revisions: a, b, and c. The standard extensions for these four versions are .spc, .p7a, .p7b and .p7c respectively.
  • PKCS #8. This format can contain private keys and encrypted private key information. It stores the data in base64 encoded data, usually using a DER or PEM structure which is then encrypted. The standard extension is .p8.
  • PKCS #12. This is also known as PFX. This format can contain private keys (RSA or DSA), public keys (RSA or DSA) and X.509 certificates. It stores them in a binary format. The standard extension is .pfx or .p12.

As an expert in cybersecurity and encryption technologies, I have an in-depth understanding of X.509 certificates, encryption algorithms like RSA and DSA, and various file formats used to store certificates and keys. I've worked extensively with systems employing these technologies, facilitating secure communication and data protection.

X.509 certificates, governed by the standard defined in the X.509 specification, are fundamental in establishing secure communication over networks. These certificates validate the identity of entities involved in communication, utilizing asymmetric encryption with public and private key pairs.

RSA (Rivest-Shamir-Adleman) and DSA (Digital Signature Algorithm) are among the most prevalent asymmetric encryption algorithms used to generate public and private key pairs. RSA is widely adopted for its robustness in secure data transmission and encryption, while DSA is favored for digital signatures in certain applications.

Regarding the various file formats for storing certificates and keys:

  1. DER (Distinguished Encoding Rules):

    • This format accommodates private keys (RSA or DSA), public keys (RSA or DSA), and X.509 certificates. It lacks headers and is commonly used in browsers. Files typically have extensions .cer or .der.
  2. PEM (Privacy Enhanced Mail):

    • Another format that supports private keys, public keys, and X.509 certificates. It encodes data in ASCII with headers, suitable for text-based transfers between systems. Multiple certificates can be stored in a single file with the extension .pem.
  3. PKCS #7:

    • This standard, known as Cryptographic Message Syntax Standard, allows files to hold multiple certificates. It offers options for hashing and associating certificates with private keys. Different versions have extensions like .spc, .p7a, .p7b, and .p7c.
  4. PKCS #8:

    • Specifically designed for private key storage, it utilizes base64 encoding, often employing DER or PEM structures that can be encrypted. Files typically use the .p8 extension.
  5. PKCS #12 (also known as PFX):

    • This format is capable of storing private keys, public keys, and X.509 certificates in a binary format. The extensions used are .pfx or .p12.

Understanding these formats and their specific use cases is crucial in ensuring compatibility and secure transmission/storage of certificates and keys within systems that implement the Enterprise Server feature.

Certificate and Key Formats (2024)
Top Articles
Latest Posts
Article information

Author: Ray Christiansen

Last Updated:

Views: 5456

Rating: 4.9 / 5 (49 voted)

Reviews: 88% of readers found this page helpful

Author information

Name: Ray Christiansen

Birthday: 1998-05-04

Address: Apt. 814 34339 Sauer Islands, Hirtheville, GA 02446-8771

Phone: +337636892828

Job: Lead Hospitality Designer

Hobby: Urban exploration, Tai chi, Lockpicking, Fashion, Gunsmithing, Pottery, Geocaching

Introduction: My name is Ray Christiansen, I am a fair, good, cute, gentle, vast, glamorous, excited person who loves writing and wants to share my knowledge and understanding with you.