Skip to main content
banner image
venafi logo

What Are Delegated Credentials?

What Are Delegated Credentials?

December 28, 2020 | Anastasios Arampatzis

Although Public Key Infrastructure (PKI) is securing our online transactions, it can be very fragile too. From fraudulent Certification Authorities (CAs) to implementation errors that expose private keys, managing machine identities securely can present technical challenges.

CAs are responsible for the creation of machine identities and they dictate the lifetime of an issued certificate. Traditionally, end-entity certificates are long-lived, with lifetimes of more than one year. For multi-server operators and Content Delivery Networks (CDNs) such as Cloudflare, this can be problematic because of the potential trust placed in sensitive private key material. To limit exposure, a short-lived certificate would be preferable. However, constant communication with an external CA to obtain short-lived certificates could result in poor performance or even worse, lack of access to a service entirely.

Building the case for delegated credentials

To address these challenges, Facebook, Cloudflare and Mozilla have been working together to develop an extension to the TLS protocol, called delegated credentials. Delegated credentials are an extremely effective method for securing certificates and this extension is in the process of being adopted as a standard by IETF.

The reason why Facebook, Cloudflare and Mozilla teamed up is that they are all facing a common problem: SSL/TLS security on multiple web servers. In modern server deployments, a certificate could be deployed to thousands of servers, which could be distributed all over the world. It is important to ensure the security of the certificate to prevent potential attackers from gaining control of a certificate, which would enable them to perform a man-in-the-middle (MITM) attack on traffic to the server.

If a certificate becomes compromised before it expires, the only option currently available to server operators is to revoke the certificate. However, certificate revocation does not work well for modern browsers. Revocation checking mechanisms such as Online Certificate Status Protocol (OCSP) may require browsers to speak to a certificate authority and can thus be blocked. They can also add latency to the establishment of the connection.

The other approach to minimizing the effects of certificate compromise is to reduce the validity of the certificates—this frees users from relying solely on revocation. The shorter the certificate lifetime, the less likely a certificate will need to be revoked before it expires. This boosts security by reducing the period during which a potential attacker could use a compromised certificate.

However, shortening certificate lifetimes is not always very practical. If we shorten the expiration time of a certificate, PKI teams will have to request and replace certificates from a CA much more frequently. If this process is not fully automated, it increases the possibility of failures. And you could be in real trouble if the certificate authority issuance process is offline for whatever reason. Reducing the certificate lifespan isn’t a solution that’s easy to implement in the real world.

How delegated credentials work

Delegated credentials allow a server to better balance this trade-off between security and reliability. A web server can be configured to generate a new delegated credential structure containing a public key and an expiration time, which can be as little as a few hours. It can then use its signed certificate (also known as a leaf certificate) obtained from a CA to sign the delegated credential. Since this delegated credential is generated and signed by the web server, it is not required to contact the CA every time a new delegated credential needs to be created.

Figure 1: How delegated credentials work. Image courtesy of Facebook.

Clients would tell the server that they support delegated credentials and verify that the delegated credential is correctly signed by the server’s leaf certificate. The public key of the delegated credential is then used as the key for the TLS connection.

Delegated credentials provide greater flexibility to server operators. Operators can issue each of their servers a separate delegated credential with a short validity time, instead of the real certificate private key, to add defense in depth. Since the delegated credential has its own public key, a server can also experiment with new public key algorithms for TLS even before CAs support it. For example, delegated credentials could work as a bridge for the public key infrastructure to transition into post-quantum cryptography.

You can try it by implementing the following steps:

  1. Download the latest version of Mozilla Firefox.
  2. Type about:config in the address bar and go to security.tls.enable_delegated_credentials.
  3. Now change its default value to true (you need to double-click on false).
  4. Go to this website.

Once you complete all the steps, you should see this in your browser window:


Figure 2: A browser supporting delegated credentials. Image source: Hashed Out by The SSL Store

A step towards enhancing privacy

Even though the delegated credentials protocol is about to be adopted by the IETF, its full implementation will take time as it must be supported by all browsers, and users must be using updated browsers to take benefit from it. Since a good percentage of users browse through older browsers, it will take time for the web to fully benefit from this innovation. However, the introduction of delegated credentials is undoubtedly a step forward as far as security and privacy are concerned as it reduces the possibility of issues such as Heartbleed. Although delegated certificates are mostly useful for multi-server websites and CDNs, they are going to add an additional safeguard to privacy for millions of end-users.

How well are you managing your machine identities to protect your enterprise?

Related posts

Like this blog? We think you will love this.
image representing big data
Featured Blog

Le chiffrement homomorphe : Définition et utilisation

Qu'est-ce que le chiffrement homomorphe ? Le

Read More
Subscribe to our Weekly Blog Updates!

Join thousands of other security professionals

Get top blogs delivered to your inbox every week

See Popular Tags

You might also like

TLS Machine Identity Management for Dummies

TLS Machine Identity Management for Dummies

Certificate-Related Outages Continue to Plague Organizations
White Paper

CIO Study: Certificate-Related Outages Continue to Plague Organizations

About the author

Anastasios Arampatzis
Anastasios Arampatzis

Anastasios Arampatzis is a retired Hellenic Air Force officer with over 20 years of experience in evaluating cybersecurity and managing IT projects. He works as an informatics instructor at AKMI Educational Institute, while his interests include exploring the human side of cybersecurity.

Read Posts by Author
get-started-overlay close-overlay cross icon
get-started-overlay close-overlay cross icon
Venafi Risk assessment Form Image

Sign up for Venafi Cloud

Venafi Cloud manages and protects certificates

* Please fill in this field Please enter valid email address
* Please fill in this field Password must be
At least 8 characters long
At least one digit
At last one lowercase letter
At least one uppercase letter
At least one special character
* Please fill in this field
* Please fill in this field
* Please fill in this field

End User License Agreement needs to be viewed and accepted

Already have an account? Login Here

get-started-overlay close-overlay cross icon

How can we help you?

Thank you!

Venafi will reach out to you within 24 hours. If you need an immediate answer please use our chat to get a live person.

In the meantime, please explore more of our solutions

Explore Solutions

learn more

Email Us a Question

learn more

Chat With Us

learn more