Tips & Good Practice
Every domain B.1-B.8 ships Good Practice blocks (32+ total) and Examples. They are collected here in three lenses: recommended practices by domain, common pitfalls (including auto-FAIL flags), and how to prepare by role.
Every domain B.1-B.8 ships Good Practice blocks (32+ total) and Examples. They are collected here in three lenses: recommended practices by domain, common pitfalls (including auto-FAIL flags), and how to prepare by role.
Good Practice by domain
B.1 — Inventory & Classification
B.1 — Inventory & Classification
Keep the CCM inventory in a CMDB or DevSecOps tool, not an unmanaged spreadsheet; each entry under version control with a mandatory security reviewer on change.
For L2/L3, add automated CCM discovery in production via code scanning and runtime introspection — a manual inventory does not scale.
Maintain CME diagrams as code (PlantUML, Mermaid, Structurizr) with automated validation against the real network topology; update the data flow in the same pull request as the code change.
Run the quarterly inventory review as a cross-functional workshop with security, ops and development — it surfaces undocumented changes more reliably than a single owner's task.
B.2 — Generation
Use an entropy pool from several independent sources (hardware TRNG + OS DRBG + jitter entropy) even at Level 1 — defense-in-depth.
Run continuous health monitoring of RNG output in production (NIST SP 800-90B health tests) with alerting on failure modes; mandatory for L2+.
Run the ceremony 'two-keyboard' style, with commands entered alternately by two independent participants so no one can execute the script unilaterally.
Document a pre-ceremony rehearsal on a test environment within 7 days of the production ceremony, and explicit kill-switch conditions for halting it.
B.3 — Storage
Use envelope encryption: the HSM holds the MEK, which encrypts the DEK, which encrypts the CCM — so you can rotate the MEK without re-encrypting all CCM.
Use high-level AEAD libraries (libsodium, AWS Encryption SDK, Google Tink), not low-level APIs; document the tamper-response if AEAD tag verification fails.
Use WORM (Write-Once-Read-Many) backup storage for tamper-evidence; review tier ratios quarterly as AUM grows.
Back up not just the CCM but the metadata — derivation paths, multi-sig configuration, ceremony records — so recovery is self-contained.
B.4 — Usage
Use an HSM whose PKCS#11 interface cannot export the private key by design (only signing, decrypt, verify).
Make the approval UI a separate application from the initiation UI — this reduces UI-spoofing risk; add a mandatory destination-address preview with a diff against the whitelist.
Prefer OAuth 2.0 + DPoP (RFC 9449) over bearer tokens; add anomaly detection on session patterns (geo-velocity, device change, time of day).
For PAM, support break-glass with mandatory post-event review; record cause, expected outcome and justification in the session metadata.
B.5 — Lifecycle
Use envelope encryption (B.3.2) for efficient MEK rotation without re-encrypting all CCM; add a 'defensive rotation' after ambiguous events.
Document post-rotation reconciliation: confirm watch-only monitoring, accounting and backups have switched to the new key.
Pre-generate emergency-transfer backup addresses in the ceremony and store them apart from the primary; keep communication templates in several languages.
For recovery use Shamir's Secret Sharing with m-of-n shares across locations and jurisdictions; verify physical accessibility of recovery materials annually.
B.6 — Wallet Architecture
For chains without native m-of-n use threshold schemes (MPC-CMP, GG18/20); for native multi-sig (Bitcoin, GnosisSafe) use only audited, battle-tested implementations.
Include pre-defined backup keyholders in the keyholder list, activated via a documented procedure (B.5.3).
Use independent blockchain nodes for watch-only monitoring (not shared with the signing infrastructure) and cross-check multiple nodes to detect a reorg.
Isolate tiers into separate cloud accounts (AWS Organizations SCPs); run cold-to-warm transitions at a fixed scheduled time so watchers can tell normal from anomalous.
B.7 — Compromise Detection
Use a SIEM with native hash-chaining (Splunk, Elastic with a frozen tier); run integrity verification of the whole log chain monthly.
For L3, anchor the log-chain hash to a public blockchain (e.g. via OpenTimestamps).
Use independent blockchain nodes for reconciliation; set a propagation-delay tolerance (e.g. +/-2 minutes) but no larger, so detection is not diluted.
Pre-position bilingual incident-communication templates and an explicit 'do not' list (no public statement before coordinated disclosure, no media contact without legal approval).
B.8 — Personnel & Access
Use licensed background-check vendors with a public methodology; for L3 consider a psychological assessment for those with access to the largest cold-storage holdings.
Use identity management with built-in SoD analysis; make the quarterly access review test explicit conflict scenarios, not a rubber-stamp.
Document business-justified exceptions with time-bounded validity, not permanent access.
Include realistic simulation scenarios in training (phishing, social engineering); use spaced repetition (re-train at 3 and 6 months) and a mentor during the probationary period.
Common pitfalls
Common pitfall
auto-FAILCommon pitfall- B.1auto-FAIL
A stale CCM inventory not updated on change violates B.1.1 — a fully-forbidden Critical Requirement: no compensating control allowed, automatic fail.
- B.3auto-FAIL
Trying to close a Critical Requirement with a compensating control where it is forbidden: for B.1.1, B.1.2, B.5.2, B.7.3 a CC is never allowed; for B.2.1, B.3.1, B.4.1, B.8.1 only at L1 with Council approval.
- B.4auto-FAIL
Shared privileged accounts without individual attribution and without PAM for L2+ violate B.4.4; every privileged action must be tied to a specific person.
- B.8auto-FAIL
No separation of duties or conflict detection violates B.8.1 — a restricted Critical Requirement: one person must not both initiate and approve CCM operations.
- B.3auto-FAIL
Plaintext CCM in env vars, config, repos, logs or localStorage, and a private key leaving its trusted boundary for signing, directly violate B.3.1 / B.4.1.
- B.5auto-FAIL
No key-revocation procedure violates B.5.2 — a fully-forbidden Critical Requirement: without revocation, CCM protection is impossible.
- B.7auto-FAIL
No watch-only monitoring or reconciliation of on-chain activity violates B.7.3 — a fully-forbidden Critical Requirement and the primary compromise-detection mechanism.
- B.1Common pitfall
Relying on carry-over for Critical Requirements: no baseline (PCI DSS, ГОСТ 57580, CCSS, SOC 2, MiCA) waives full Defined-Approach testing of the eight Critical Requirements.
- Common pitfall
A narrative ROC without sample sizes and Examine / Interview / Observe / Trace notes per requirement will not pass the Council QA review.
- Common pitfall
Showing a 'generic' badge without segment, level and validity is misleading: the published LVCS summary always records the C.1-C.4 segment, the L1-L3 level and the validity period.
How to prepare
Start with the Front Matter (scope, CCM definition, methodology §0.7), then read your segment in Section C and Section D for the target level and required In-Place ratios.
Run SAQ-C1 (Annex 4, §A4.8) for self-assessment before inviting an auditor — it surfaces Not-in-Place requirements and auto-FAIL flags early.
Gather baseline certificates (PCI DSS, ГОСТ 57580, SOC 2) in advance: carry-over accelerates the audit of shared-infrastructure requirements but never covers the eight Critical Requirements.
Read the whole standard, then use Annex 3 (ROC Template) — especially the Requirement Assessment Worksheet §A3.7 and the Carry-Over Validation §A3.6.
Apply the auditor cryptography checklist (Annex 2 §A2.8, 9 items) during the technical review and record sample sizes per §0.14.2.
Confirm the CCSAC accreditation scope by segment (C.1-C.4) and level (L1-L3) before accepting an engagement; for L2 a CC requires peer review by another CCSAC.
Keep document retention: ROC and CC worksheets — 7 years at the CCSAC; AOC — 7 years; working papers — 7 years.
Read the Front Matter and Section D (methodology and levels), the Purpose paragraphs of the B domains, and Annex 5 (AOC) — its public summary is what lands in the LVCS registry.
Section B — Good Practice blocks + common pitfalls
How to prepare
Every domain B.1-B.8 ships Good Practice blocks (32+ total) and Examples. They are collected here in three lenses: recommended practices by domain, common pitfalls (including auto-FAIL flags), and how to prepare by role.