3.9 - Given a scenario, implement public key infrastructure. Flashcards

1
Q

PKI

A

Public key infrastructure

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

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

Key management (lifecycle)

A

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”

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

CA

A

Certificate authority

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

Intermediate CA

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

RA

A

Registration authority

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

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

CRL

A

Certificate revocation list

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

Certificate attributes

A

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)

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

OCSP

A

Online Certificate Status Protocol

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

CSR

A

Certificate signing request

Create a key pair, send the public key to the CA
to be signed

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

CN

A

Common Name
– The FQDN (Fully Qualified
– Domain Name) for the certificate

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

Subject alternative name

A

– Extension to an X.509 certificate
– Lists additional identification information
– Allows a certificate to support many
different domains

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

Expiration

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

Wildcard

A

– Certificates are based on the name of the server
– A wildcard domain will apply to all server names
in a domain
– *.professormesser.com

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

Code signing

A

*
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

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

Self-signed (Types of certificates)

A

*
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

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

Machine/computer (Types of certificates)

A

*
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

17
Q

Email

A

*
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

18
Q

User (Types of certificates)

A

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

19
Q

Root (Types of certificates)

20
Q

Domain validation

21
Q

Extended validation

A

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

22
Q

DER

A

Distinguished encoding rules

*
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

23
Q

PEM

A

Privacy enhanced mail

*
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

24
Q

PFX

A

Personal information exchange

25
.cer
Certificate * 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
26
P12
PKCS #12 * 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
27
P7B
PKCS #7 * 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
28
Online vs. offline CA
* 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
29
Stapling (OCSP)
Online Certificate Status Protocol – Provides scalability for OCSP checks The CA is responsible for responding to all client OCSP requests – doesn't 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
30
Pinning
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
31
Trust model
32
Key escrow
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
33
Certificate chaining
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