3.9 Public Key Infrastructure Flashcards

1
Q

• Policies, procedures, hardware, software, people
– Digital certificates: create, distribute, manage,
store, revoke
• This is a big, big, endeavor
– Lots of planning
• Also refers to the binding of public keys to people
or devices
– The certificate authority
– It’s all about trust

A

Public Key Infrastructure (PKI)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q
• Key generation
– Create a key with the requested strength using
the proper cipher
• Certificate generation
– Allocate a key to a user
• Distribution
– Make the key available to the user
• Storage
– Securely store and protect against unauthorized use
• Revocation
– Manage keys that have been compromised
• Expiration
– A certificate may only have a certain “shelf life”
A

The key management lifecycle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

• A public key certificate
– Binds a public key with a digital signature
– And other details about the key holder
• A digital signature adds trust
– PKI uses Certificate Authority for additional trust
– Web of Trust adds other users for additional trust
• Certificate creation can be built into the OS
– Part of Windows Domain services
– 3rd-party Linux options

A

Digital certificates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

• Built-in to your browser
– Any browser
• Purchase your web site certificate
– It will be trusted by everyone’s browser
• Create a key pair, send the public key to the CA
to be signed
– A certificate signing request (CSR)
• May provide different levels of trust and
additional features
– Add a new “tag” to your web site

A

Commercial certificate authorities

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

• You are your own CA
– Build it in-house
– Your devices must trust the internal CA
• Needed for medium-to-large organizations
– Many web servers and privacy requirements
• Implement as part of your overall computing strategy
– Windows Certificate Services, OpenCA

A

Private certificate authorities

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

• Single CA
– Everyone receives their certificates from one authority
• Hierarchical
– Single CA issues certs to intermediate CAs
– Distributes the certificate management load
– Easier to deal with the revocation of an intermediate
CA than the root CA

A

PKI trust relationships

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

• The entity requesting the certificate needs to be verified
– The RA identifies and authenticates the requester
• Approval or rejection
– The foundation of trust in this model
• Also responsible for revocations
– Administratively revoked or by request
• Manages renewals and re-key requests
– Maintains certificates for current cert holders

A

Registration authority (RA)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q
• Common Name (CN)
– The FQDN (Fully Qualified
– Domain Name) for the certificate
• Subject alternative name
– Additional host names for the cert
– Common on web servers
– professormesser.com and www.professormesser.com
• Expiration
– Limit exposure to compromise
– 398 day browser limit (13 months)
A

Important certificate attributes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

• Certificate Revocation List (CRL)
– Maintained by the Certificate Authority (CA)
• Many different reasons
– Changes all the time
• April 2014 - CVE-2014-0160
– Heartbleed
– OpenSSL flaw put the private key of affected
web servers at risk
– OpenSSL was patched, every web server
certificate was replaced
– Older certificates were moved to the CRL

A

Key revocation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

• OCSP (Online Certificate Status Protocol)
– The browser can check certificate revocation
• Messages usually sent to an OCSP responder via HTTP
– Easy to support over Internet links
• Not all browsers/apps support OCSP
– Early Internet Explorer versions did not
support OCSP
– Some support OCSP, but don’t bother checking

A

Getting revocation details to the browser

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

• Domain validation certificate (DV)
– Owner of the certificate has some control over
a DNS domain
• Extended validation certificate (EV)
– Additional checks have verified the certificate
owner’s identity
– Browsers used to show a green name on the
address bar
– Promoting the use of SSL is now outdated
• Subject Alternative Name (SAN)
– Extension to an X.509 certificate
– Lists additional identification information
– Allows a certificate to support many
different domains
• Wildcard domain
– Certificates are based on the name of the server
– A wildcard domain will apply to all server names
in a domain
– *.professormesser.com

A

Web server SSL certificates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

• Developers can provide a level of trust
– Applications can be signed by the developer
• The user’s operating system will examine
the signature
– Checks the developer signature
– Validates that the software has not been modified
• Is it from a trusted entity?
– The user will have the opportunity to stop the
application execution

A

Code signing certificate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

• The public key certificate that identifies the root CA
(Certificate Authority)
– Everything starts with this certificate
• The root certificate issues other certificates
– Intermediate CA certificates
– Any other certificates
• This is a very important certificate
– Take all security precautions
– Access to the root certificate allows for the
creation of any trusted certificate

A

Root certificate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

• Internal certificates don’t need to be signed by
a public CA
– Your company is the only one going to use it
– No need to purchase trust for devices that already
trust you
• Build your own CA
– Issue your own certificates signed by your own CA
• Install the CA certificate/trusted chain on all devices
– They’ll now trust any certificates signed by
your internal CA
– Works exactly like a certificate you purchased

A

Self-signed certificates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

• You have to manage many devices
– Often devices that you’ll never physically see
• How can you truly authenticate a device?
– Put a certificate on the device that you signed
• Other business processes rely on the certificate
– Access to the remote access
– VPN from authorized devices
– Management software can validate the end device

A

Machine and computer certificates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q
• Use cryptography in an email platform
– You’ll need public key cryptography
• Encrypting emails
– Use a recipient’s public key to encrypt
• Receiving encrypted emails
– Use your private key to decrypt
• Digital signatures
– Use your private key to digitally sign an email
– Non-repudiation, integrity
A

Email certificates

17
Q

• Associate a certificate with a user
– A powerful electronic “id card”
• Use as an additional authentication factor
– Limit access without the certificate
• Integrate onto smart cards
– Use as both a physical and digital access card

A

User certificates

18
Q

• X.509 digital certificates
– The structure of the certification is standardized
– The format of the actual certificate file can take
many different forms
• There are many certificate file formats
– You can convert between many of the formats
– Use openssl or a similar application to view the
certificate contents

A

Certificate file formats

19
Q
• Format designed to transfer syntax for data structures
– A very specific encoding format
– Perfect for an X.509 certificate
• Binary format
– Not human-readable
• A common format
– Used across many platforms
– Often used with Java certificates
A

DER (Distinguished Encoding Rules)

20
Q
• A very common format
– BASE64 encoded DER certificate
– Generally the format provided by CAs
– Supported on many different platforms
• ASCII format
– Letters and numbers
– Easy to email, readable
A

PEM (Privacy-Enhanced Mail)

21
Q

• Public Key Cryptography Standards #12
– Personal Information Exchange Syntax Standard
– Developed by RSA Security, now an RFC standard
• Container format for many certificates
– Store many X.509 certificates in a single
.p12 or .pfx file
– Often used to transfer a private and public key pair
– The container can be password protected
• Extended from Microsoft’s .pfx format
– Personal Information Exchange (PFX)
– The two standards are very similar
– Often referenced interchangeably

22
Q

• Primarily a Windows X.509 file extension
– Can be encoded as binary DER format or as the
ASCII PEM format
• Usually contains a public key
– Private keys would be transferred in the
.pfx file format
• Common format for Windows certificates
– Look for the .cer extension

A

CER (Certificate)

23
Q
• Public Key Cryptography Standards #7
• Cryptographic Message Syntax Standard
– Associated with the .p7b file
• Stored in ASCII format
– Human-readable
• Contains certificates and chain certificates
– Private keys are not included in a .p7b file
• Wide platform support
– Microsoft Windows
– Java Tomcat
24
Q
• Use cryptography in an email platform
– You’ll need public key cryptography
• Encrypting emails
– Use a recipient’s public key to encrypt
• Receiving encrypted emails
– Use your private key to decrypt
• Digital signatures
– Use your private key to digitally sign an email
– Non-repudiation, integrity
A

Email certificates

25
• Associate a certificate with a user – A powerful electronic “id card” • Use as an additional authentication factor – Limit access without the certificate • Integrate onto smart cards – Use as both a physical and digital access card
User certificates
26
• A compromised certificate authority – A very, very bad thing – No certificates issued by that CA can be trusted • Distribute the load – Then take the root CA offline and protect it
Online and offline CAs
27
• Online Certificate Status Protocol – Provides scalability for OCSP checks • The CA is responsible for responding to all client OCSP requests – This does not scale well • Instead, have the certificate holder verify their own status – Status information is stored on the certificate holder’s server • OCSP status is “stapled” into the SSL/TLS handshake – Digitally signed by the CA
OCSP stapling
28
• You’re communicating over TLS/SSL to a server – How do you really know it’s a legitimate server? • “Pin” the expected certificate or public key to an application – Compiled in the app or added at first run • If the expected certificate or public key doesn’t match, the application can decide what to do – Shut down, show a message
Pinning
29
• Single CA – Everyone receives their certificates from one authority • Hierarchical – Single CA issues certs to intermediate CAs • Mesh – Cross-certifying CAs - Doesn’t scale well • Web-of-trust – Alternative to traditional PKI • Mutual Authentication – Server authenticates to the client and the client authenticates to the server
PKI trust relationships
30
• Someone else holds your decryption keys – Your private keys are in the hands of a 3rd-party • This can be a legitimate business arrangement – A business might need access to employee information – Government agencies may need to decrypt partner data
Key escrow
31
It’s all about the process • Need clear process and procedures – Keys are incredibly important pieces of information • You must be able to trust your 3rd-party – Access to the keys is at the control of the 3rd-party • Carefully controlled conditions – Legal proceedings and court orders
It’s all about the process
32
• Chain of trust – List all of the certs between the server and the root CA • The chain starts with the SSL certificate – And ends with the Root CA certificate • Any certificate between the SSL certificate and the root certificate is a chain certificate – Or intermediate certificate • The web server needs to be configured with the proper chain – Or the end user may receive an error
Certificate chaining