SSL certificates overview (original) (raw)

SSL/TLS is the most widely used cryptographic protocol on the internet. Technically, TLS is the successor to SSL, although the terms are sometimes used interchangeably, as they are in this document.

Transport Layer Security (TLS) is used to encrypt information while it is sent over a network, providing privacy between a client and a server or load balancer. An Application Load Balancer or proxy Network Load Balancer that uses SSL requires at least one private key and SSL certificate.

Certificate configuration methods

Google Cloud offers three certificate configuration methods for Application Load Balancers using target HTTPS proxies and proxy Network Load Balancers using target SSL proxies.

Load balancer support

The following table shows which certificate configuration methods each load balancer supports.

Load balancer Certificate configuration method
Compute Engine SSL certificates Certificate Manager (certificate map) Certificate Manager (individual certificates)
Application Load Balancers (target HTTPS proxies)
Global external Application Load Balancer Self-managed Google-managed Self-managed Google-managed
Classic Application Load Balancer Self-managed Google-managed Self-managed Google-managed
Regional external Application Load Balancer Self-managed Google-managed Self-managed Google-managed
Regional internal Application Load Balancer Self-managed Google-managed Self-managed Google-managed
Cross-region internal Application Load Balancer Self-managed Google-managed
Proxy Network Load Balancers (target SSL proxies)
Global external proxy Network Load Balancer Self-managed Google-managed Self-managed Google-managed
Classic proxy Network Load Balancer Self-managed Google-managed Self-managed Google-managed

Configuration method rules

Google Cloud enforces the following certificate configuration method rules:

Certificate types

Google Cloud supports both self-managed and Google-managed certificates.

Self-managed SSL certificates

Self-managed SSL certificates are certificates that you obtain, provision, and renew yourself. Self-managed certificates can be any of these Public key certificatetypes:

You can create self-managed SSL certificates using:

Google-managed SSL certificates

Google-managed SSL certificates are certificates that Google Cloud obtains, manages, and renews automatically. Google-managed certificates are always Domain Validation (DV) certificates. They don't demonstrate the identity of an organization or individual associated with the certificate.

Google-managed certificates using wildcards are only supported by Certificate Manager when using DNS authorization.

You can create Google-managed SSL certificates using:

Supported key types

Load balancers support certificates that use private keys of different key types. The following table shows the key type support depending on whether the certificates are global or regional, and whether they are self-managed or Google managed.

SSL certificate type arrow_forward Key type arrow_downward Compute Engine SSL certificates Certificate Manager SSL certificates
Global Regional Global and regional
Self-managed Publicly trusted Google-managed Self-managed Self-managed Publicly trusted Google-managed Privately trusted Google-managed
RSA-2048
RSA-3072
RSA-4096
ECDSA P-256
ECDSA P-384

To learn more about Certificate Manager certificates, see theCertificate Manager documentation.

Use certificates with ECDSA keys

This section examines why we recommend ECDSA over RSA as a best practice for certificate signing keys.

Which key type to use

ECDSA P-256 is the recommended choice of key type for most TLS certificates, offering strong cryptographic security along with excellent performance for signing operations and efficient use of network bandwidth.

Some of the possible reasons to use other certificate key types are as follows:

Why choose ECDSA over RSA

The primary advantage of ECDSA lies in its ability to provide an equivalent cryptographic security level with significantly smaller keys compared to RSA. This efficiency translates into tangible performance and resource benefits. A smaller key does not imply weaker security—ECDSA is based on the elliptic curve discrete logarithm problem, which provides stronger security per unit of key, and in some cases better computational efficiency compared to RSA.

For example:

Key benefits of ECDSA:

Multiple SSL certificates

An Application Load Balancer or proxy Network Load Balancer can host two or more SSL certificates simultaneously when its target proxy is configured using asupported certificate configuration method. As a best practice, use Certificate Manager when multiple SSL certificates are needed.

For more information, see:

Certificate selection process

The following certificate selection process applies to load balancers whose target proxies reference multiple Compute Engine SSL certificates or multiple Certificate Manager certificates.

The certificate selection process is different if a load balancer's target proxy references a Certificate Manager certificate map. For details about the certificate selection process of a certificate map, seeCertificate selection logic in the Certificate Manager documentation.

After a client connects to the load balancer, the client and load balancer negotiate a TLS session. During TLS session negotiation, the client sends the load balancer a list of TLS ciphers it supports (in the ClientHello). The load balancer selects a certificate whose public key algorithm is compatible with the client. The client can also send a server name indication (SNI) hostname to the load balancer as part of this negotiation. SNI hostname data is sometimes used to help the load balancer pick which certificate it should send to the client.

Pricing

For Compute Engine SSL certificate pricing and Cloud Load Balancing pricing, see Network pricing: Cloud Load Balancing.

For Certificate Manager pricing, see theCertificate Manager pricing page.

What's next

Try it for yourself

If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.

Get started for free