Getting Started
This guide takes you through a complete key ceremony end to end: install rite,
run a real ceremony, and verify its transcript. It uses only the OpenSSL backend,
so no hardware is required to follow along.
Install
brew tap rite-ly/tap
brew install riteConfirm the install:
rite versionGet a ceremony
Download the example ceremony used in the demo. It generates an offline root signing key, issues its self-signed certificate, and records a witness attestation.
curl -O https://raw.githubusercontent.com/rite-ly/rite/main/examples/showcase/demo.rite.yamlThe file is plain YAML. Roles, sections, steps, and attestations are all readable at a glance, and every run-specific value is declared explicitly.
Validate
Before running anything, check that the ceremony is well formed. rite check
catches missing references, undefined roles, and schema errors.
rite check demo.rite.yamlPrepare the printed script
rite script produces a printable HTML protocol that participants complete by
hand during the ceremony, archived alongside the digital transcript.
rite script demo.rite.yaml # writes demo.htmlExecute
rite run walks the operator and witness through each step in an interactive
terminal, recording every action in an append-only transcript.
rite run demo.rite.yamlAdvance through the steps as prompted. The runtime generates the keypair, builds the certificate signing request, issues the certificate, and collects the attestations from each role. On completion it prints the transcript fingerprint and writes a timestamped output directory:
root-signing-key-ceremony-20260705T142200
├── artifacts
│ ├── root_cert.pem
│ └── root_public_key.pem
└── transcript.jsonlArtifacts are written as they are produced. The transcript records every step, role, attestation, and artifact hash.
Verify
This is what separates a ceremony from a checklist. rite verify confirms the
transcript is internally consistent and has not been altered since the ceremony
ran.
rite verify root-signing-key-ceremony-*rite verify recomputes every
recorded hash and checks the chain, so any edit after the fact is detectable.
This is the auditable record a ceremony exists to produce.Want to try it without running the ceremony yourself? Download the
sample transcript from a completed run and
verify it: rite verify demo-transcript.jsonl.
Generate a human-readable audit document for stakeholders:
rite report root-signing-key-ceremony-* # writes report.htmlNext steps
- See the CLI reference for every command and its options.
- Explore more ceremonies in the
examples/directory, including an air-gapped offline backup and a dice-based entropy ceremony. - Read Security Ceremonies: Why Secure Systems Are More Than Math for the reasoning behind the model.
- Author your own ceremony with editor support from the VS Code and IntelliJ extensions.