K2 Components, split knowledge and dual control

Needs: Supporter

How custodians create, exchange and verify keys without anyone knowing the whole key.

This is a supporter feature. Create a free account, then try every supporter feature free for 7 days.

Sign in Create a free account See plans

What this module covers

Track K · Key management

You will be able to

  • Generate, combine and verify components
  • Run a key ceremony checklist
  • Explain why component order does not matter and a wrong component does

The lesson

  1. Why it matters
  2. The concept
  3. Step by step: a ZMK ceremony
  4. In the real world
  5. Common mistakes
  6. What to test

In the module

  • The lesson, with diagrams, common mistakes and what to test
  • A worked example you can change: A key ceremony in numbers
  • Practice: 2 kinds of generated exercise, each with a step-by-step solution
  • A quiz of 8 questions

Key terms

Dual control
A sensitive step needs at least two authorised people acting together, such as loading the components of a master key.
Key ceremony
A scripted, witnessed and logged session in which keys are generated, loaded or exchanged under dual control.
Key component
One of the parts that are XORed together to form a key. Each custodian holds one and none reveals anything about the key.
Key custodian
A named person entrusted with one key component, who keeps it in a sealed envelope or smart card and enters it in key ceremonies.
Key loading device (KLD)
A secure device that carries keys to terminals or HSMs and loads them.
Secure cryptographic device (SCD)
Any device approved to hold keys in the clear: HSMs, PIN pads, key loaders.
Split knowledge
No single person knows the whole key: each knows only a component.
Tamper-evident bag
A numbered bag that shows any attempt to open it, used to store key components and devices.

Tools for this module: Generate Key

Read the opening of the lesson →

The lesson, worked example, practice and quiz open with a supporter pass, which you can try free for 7 days.
An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.