Tool 8 of 8

Digital certificates and PKI

A public key is just a number. A certificate says who it belongs to, and a Certificate Authority (CA) vouches for that with its signature. Your browser checks this every time you open an HTTPS site.

Your challengeGo through every scenario in the validation lab. For each one, find which check fails and explain what the browser warning means.
Visualise

The chain of trust

Educational certificates
Experiment

Validation lab: would the browser accept this certificate?

Genuine ECDSA signature checks Simulated certificates, clock and revocation

https://

Press Connect and validate.

Certificates sent by the server (click to inspect)

Browser checks

    Certificate inspector

    Click a certificate to see its fields.

    Browser trust store

    Real trust stores contain about 150 root CAs, installed with the operating system or browser.

    Experiment

    Read a certificate

    Use the inspector (valid scenario) to answer. Which field tells you…

    Explain

    Key ideas

    The problem

    Anyone can generate a key pair and claim "this is the public key of my-bank.lu". Without a way to check, Mallory could give you her key (see the attack in Tool 6).

    A certificate

    A small signed document that binds a subject (a domain name, a person, a company) to a public key, for a limited validity period, signed by an issuer.

    Certificate Authority

    A trusted organisation that checks the subject (for example that you control the domain) and then signs the certificate with its private key (Tool 7).

    Root and intermediate CAs

    Root CA keys are kept offline. Root CAs sign intermediate CAs, which sign website certificates. The root certificates come preinstalled in your OS or browser: the trust store.

    Expiry and revocation

    Certificates expire (public HTTPS certificates last at most about a year, and less in future). If a private key is stolen before then, the CA revokes the certificate (CRL or OCSP).

    Certificates and HTTPS

    The server sends its certificate chain; the browser validates it, then checks that the server holds the matching private key through a signature in the TLS handshake.

    Common misconceptions

    "The certificate encrypts the data."
    A certificate encrypts nothing. It authenticates a public key and an identity. Encryption is done with session keys (Tools 3 and 6).
    "The padlock means the website is safe."
    It means the connection is encrypted and you are talking to the owner of that domain name. A phishing site can have a valid certificate for its own look-alike domain.
    "The certificate contains the private key."
    It only contains the public key. The private key never leaves the server.
    "Clicking 'Continue anyway' is fine."
    A certificate warning may be exactly the man-in-the-middle attack the certificate is there to stop.

    Simulated The certificates in this tool are simplified educational data, not real X.509 files, and the checks are a simplified model of what browsers do. Real browsers and operating systems apply many more rules. Only the CA signatures are genuinely computed and verified (ECDSA P-256).

    Apply

    Where you meet certificates

    Check a real certificate

    Click the padlock (or site-settings icon) in your browser's address bar, then "Connection is secure" → "Certificate is valid". Find the subject, the issuer, the validity dates and the chain.

    Free certificates

    Let's Encrypt issues free, automated certificates. The server proves it controls the domain (ACME protocol) and renews every few weeks.

    Code signing and e-ID

    Software publishers and electronic identity cards use certificates too, so that a signature can be linked to a company or a person.

    Company networks

    Companies run their own internal CA for servers, Wi-Fi (802.1X) and VPN users, and install its root certificate on all company devices.

    Challenges

    1. Change the address

    In the valid scenario, change the host name in the address bar to www.examp1e-shop.test and validate again. What happens, and why does this protect you against phishing?

    Show answer
    The host-name check fails: the certificate is only valid for the names in its Subject Alternative Name field. A look-alike domain needs its own certificate, which the attacker can get for their domain, but never for the real one.
    2. Time travel

    Set the simulated date to a day after the website certificate's "Valid to" date. Then set it before its "Valid from" date. What does the browser say?

    Show answer
    Both fail the validity-period check. This is also why a computer with a wrong clock shows certificate errors on every site.
    3. The forged certificate

    In the "modified certificate" scenario, the attacker replaced the public key in a valid certificate with her own. Why can she not simply update the CA's signature too?

    Show answer
    The signature was made with the CA's private key over all the certificate's fields. Changing any field breaks it, and only the CA can produce a new valid signature.

    Continue the journey