Digital certificates
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 authorities 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. Many 3rd party options.
What’s in a digital certificate? (See video example).
X.509. Standard format.
Certificate details. Serial number, version, signature algorithm, issuer, name of the cert holder, public key, extensions, and more.
Root of trust
Everything associated with It security requires trust. A foundational characteristic.
How to build trust from something unknown? Someone/something trustworthy provides their approval.
Refer to the root of trust. An inherently trusted component. Hardware, software, firmware, or other component, Hardware security module (HSM), Secure enclave, certificate authority.
Certificate authorities
You connect to a website do you trust it?
Needa good way to trust an unknown entity. Use a trusted third party, an authority.
Certificate Authority (CA) has digitally signed the website certificate. You trust the CA; therefore, you trust the website. Real time verification.
Third party certificate authorities
Built into your browser. Any browser.
Purchase your web certificate. It will be trusted by everyone’s browser.
CA is responsible for vetting the request. They will confirm the certificate owner. Additional verification information may be required by the CA.
Certificate signing requests
Create a key pair, then send the public key to the CA to be signed. A certificate signing request (CSR).
The CA validates the request. Confirms DNS emails and website ownership.
CA digitally signs the cert. Returns to the applicant.
(See video example).
Private certificate authorities
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.
Self-Signed certificate
Internal certificates don’t need to 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.
Wildcard certificates
Subject alternative name (SAN). Extension to a X.509 certificate. List 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.
Key revocation
Certification Revocation List (CRL). Maintained by the certificate Authority (CA). Can contain many revocations in a large file.
Many different reasons it occurs. Changes all the time.
April 2014-CVE-2014-0160. Heartbleed, OpenSSL flaw put the private key pf affected web servers at risk. OpenSSL was patched; every web server certificate was replaced. Older certificates were moved to the CRL.
(see video example)
OCSP Stapling
Online certificate Status Protocol. Provides Scalability for OCSP Checks.
The CA is responsible for responding to all client OCSP requests. May not Scale well.
Instead have the certificate holder verify their own status. Status information is stored on the certificate holders server.
OCSP status is “stapled” into the SSL/TLS handshake. Digitally signed by the CA.
Getting revocation details to the browser
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. More efficient than downloading a CRL.
Not all browser/apps support OCSP. Early internet explorer versions did not support OCSP. Some support OCSP, but don’t bother checking.