12. Public Key Infrastructure and Certificates

Public Key Infrastructure (PKI)

NIST: “… key management environment for public key information of a public key cryptographic system”

Must consider:

Digital Certificates

How do you confirm the relationship between the public key and the claimed owner of that key? Through the use of digital certificates:

Certificates are signed by a certification authority (that should be trusted by the certificate verifier).

Certification Authority

A CA creates, issues and revokes certificates for subscribers and other CAs.

A CA has a certification practice statement (CPS) which covers processes such as checks before issuing certificates, physical/procedural security controls, revocation processes.

X.509 Certificate

Now RFC 5280, currently on version 3.

Important fields:

Verification:

Certification paths: CAs can issue certificates to other CAs. Hence, as long as there is a chain of CAs leading to a trusted root CA, the last CA can be trusted and hence the certificate can be validated.

Phishing: attacker can make URL and interface similar to a genuine site

Extended validation certificates: certificate issued by only some CAs after they have validated the entity’s legal identity. Different icon in browsers, but mostly ignored by users.

Revocation:

Public Key Pinning:

PKI Examples

Hierarchical PKI:

   R           Root
  / \
 /   Y Intermediate
A     \         CAs
       Z
      / \
      B  C    Users

CA certifies public key of entity below. If non-hierarchical, certification can be done between any CAs.

Browser PKI:

OpenPGP PKI: