Digital Signatures and Certificates
Understand how digital signatures prove authenticity and how X.509 certificates bind identity to keys.
Digital Signatures and Certificates is a free Cyber Security Academy lesson on CoddyKit — lesson 4 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Cyber Security Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
What are Digital Signatures?
A digital signature proves that a document or message was created by a specific private key holder and has not been modified. Unlike a handwritten signature, it is mathematically bound to the content — any change invalidates the signature.
How Signing Works
Signing process:
- Hash the document:
H = SHA256(document) - Encrypt the hash with the private key:
sig = RSA_encrypt(H, private_key) - Attach the signature to the document
Verification: decrypt sig with public key, recompute hash, compare.
ECDSA and EdDSA
Modern signature algorithms:
- ECDSA (with P-256) — used in TLS certificates and Bitcoin
- Ed25519 (EdDSA) — faster, simpler, no per-signature randomness vulnerability, used in SSH, Signal
Prefer Ed25519 for new applications.
What is a Certificate?
A digital certificate (X.509) binds a public key to an identity. It contains: subject name, public key, validity period, issuer, and the CA's digital signature. When you visit HTTPS sites, the server presents its certificate to prove its identity.
Certificate Authorities (CAs)
A Certificate Authority (CA) is a trusted entity that signs certificates after verifying the applicant's identity. Browsers and OS trust stores contain root CA certificates. Trust chains: root CA → intermediate CA → end-entity certificate.
Let's Encrypt and Free Certificates
Let's Encrypt is a free, automated CA. It issues Domain Validated (DV) certificates valid for 90 days, automatically renewable via the ACME protocol. It has dramatically increased HTTPS adoption since 2015.
certbot --nginx -d example.com -d www.example.com
# Auto-renewal via cron or systemd timerCertificate Types
Certificate validation levels:
- DV (Domain Validated) — proves domain control only
- OV (Organization Validated) — verifies organization exists
- EV (Extended Validation) — rigorous identity verification (green bar, now deprecated in browsers)
Certificate Revocation
Compromised certificates must be revoked:
- CRL (Certificate Revocation List) — downloadable list of revoked serial numbers
- OCSP (Online Certificate Status Protocol) — real-time single-certificate check
- OCSP Stapling — server attaches CA-signed OCSP response to TLS handshake
Certificate Transparency (CT)
Certificate Transparency logs are public, append-only records of every issued certificate. Browsers require CT proof in certificates. This enables detection of mis-issued certificates within hours. Search: crt.sh
curl "https://crt.sh/?q=example.com&output=json" | python3 -m json.toolCode Signing
Software publishers sign executables with code signing certificates. The OS verifies signatures before execution. This prevents tampered binaries from running silently. macOS Gatekeeper and Windows SmartScreen enforce code signing policies.
Certificate Pinning
Certificate pinning hardcodes expected certificates or public keys in applications. Even if a rogue CA issues a fraudulent certificate, pinned apps reject it. Used in mobile apps and high-security services. Difficult to update — use with care.
Quick Check: Certificates
Which mechanism allows browsers to check in real-time whether a specific certificate has been revoked?
Lesson Recap
Digital signatures prove authenticity and integrity using private keys. Certificates bind public keys to identities, signed by Certificate Authorities. Let's Encrypt provides free DV certificates. Revocation uses CRL or OCSP. Certificate Transparency logs detect mis-issuance. Ed25519 is the modern signature algorithm of choice.
Frequently asked questions
Is the “Digital Signatures and Certificates” lesson free?
Yes — the full text of “Digital Signatures and Certificates” is free to read here on the web, and the Cyber Security Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Cyber Security Academy course, upgrade to CoddyKit PRO.
What will I learn in “Digital Signatures and Certificates”?
Understand how digital signatures prove authenticity and how X.509 certificates bind identity to keys. You practise Cyber Security Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Cyber Security Academy?
No prior experience is required. Cyber Security Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 4 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Digital Signatures and Certificates” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Cyber Security Academy lesson?
Yes. Every Cyber Security Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Symmetric Encryption: AES and Stream Ciphers
- Asymmetric Encryption: RSA and Elliptic Curves
- Hash Functions: SHA-256 and Beyond
- Digital Signatures and Certificates