OpenCyber Academy
Bachelor's · Chapter 17 · English
Course code: OCA-102Chapter 17: OCA-102-C017

Chapter 17 — Cryptography concepts

Open, free learning for anyone who wants to protect people and technology. No account is required to read this text or its worked answers.

Lesson map

Lesson 17 published. Map, example, EX049.

flowchart TD
  N0["Learning outcomes"]
  N1["17.1 Hashing passwords"]
  N2["17.2 Signatures in passkeys"]
  N3["17.3 Certificates"]
  N4["Synthesis"]
  N0 --> N1 --> N2 --> N3 --> N4
  N4 --> EX["Worked example"]
  EX --> Q["Exercise EX049"]

Logical drawing

flowchart LR
  N0["Learning outcomes"]
  N1["17.1 Hashing passwords"]
  N2["17.2 Signatures in passkeys"]
  N3["17.3 Certificates"]
  N4["Synthesis"]
  N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX049"]
[Learning outcomes]
    |
    v
[17.1 Hashing passwords]
    |
    v
[17.2 Signatures in passkeys]
    |
    v
[17.3 Certificates]
    |
    v
[Synthesis]
    |
    v
[Worked example] --> [Exercise EX049]

Learning outcomes

You will (1) explain hashing and why passwords are stored hashed; (2) describe public-key signatures in passkeys; (3) understand certificates in sign-in.

17.1 Hashing passwords

Systems should never store passwords as plain text. Instead they store a hash, the output of a one-way function, often with a random salt and a deliberately slow algorithm. When someone signs in, the system hashes what they typed and compares. If the stored hashes leak, attackers cannot simply read the passwords, though weak passwords may still be guessed. Elena asks Greenhill's finance system supplier how passwords are stored and records the answer, because older systems sometimes fall short. Answers are kept in the system inventory.

17.2 Signatures in passkeys

Passkeys use public-key cryptography. When a passkey is created, the device makes a pair of keys: a private key that stays on the device and a public key given to the website. To sign in, the website sends a challenge and the device signs it with the private key. The website checks the signature with the public key. No secret travels that a fake site could reuse, and the website stores nothing that would let an attacker sign in if it leaked.

17.3 Certificates

When a browser connects to a sign-in page over HTTPS, the site presents a certificate showing that a trusted authority has confirmed it controls that name. The browser checks it automatically. Certificates also sign the messages identity providers send to connected systems. Each certificate expires, and an expired signing certificate can stop single sign-on for every connected system at once. Elena adds certificate expiry dates for Greenhill's single sign-on connections to the IT team's calendar. A named person owns each renewal, and a colleague is listed as backup.

Worked example

Elena records how each system stores passwords and adds three single sign-on certificate expiry dates to the IT calendar with reminders thirty days ahead.

Synthetic case. Systems and dates are synthetic.

Errors and limits

Assuming every supplier hashes passwords properly without asking leaves older systems unchecked.

Exercises

Synthesis

Hashing, public-key signatures and managed certificates are the cryptographic foundations of safe sign-in.

Continue studying — chapter 17 of 40

← Chapter 16 (draft) · Course chapter index · Chapter 18 (draft) →

Worked answers

EX049. The output of a one-way function, stored instead of the password itself.

EX050. On the user's device.

EX051. Sign-in failure for every connected system at once.