Repository navigation
[3.9] Extensibility & profile composition #9
Description
Activity
- addedaspect:extensibility3.9 Extensibility & profile composition3.9 Extensibility & profile compositionstatus:deliberatingOpen argument — options being exploredOpen argument — options being exploredtype:decisionA concrete choice to be resolvedA concrete choice to be resolvedneeds:ownerNo aspect owner assigned yetNo aspect owner assigned yet
on Jun 17, 2026 On draft decision 0022 (#52) and the PQC migration use case, one gap in
pqc-migration-extended#I9, raised here ahead of the rules-file PR.Disclosure. I work at Qrypt, which sells entropy products. The proposal names no product or vendor.
pqc-migration-extended#I9asks for the services an interface's cryptography depends on at run time, and the list includes a time source. No one migrates a time source to post-quantum algorithms. It is there because the interface's cryptography fails without it and it has to be checked before the change goes in. The random bit generator a product draws from is the same kind of dependency, and the Keycloak example shows why it belongs on the list.- FIPS 203 and FIPS 204 set a minimum RBG security strength for each parameter set, 192 bits for ML-KEM-768 and for ML-DSA-65 key generation. Once JEP 527 lands, the hybrid groups depend on the provider's generator meeting that strength, and so would any ML-DSA realm key the Admin API eventually generates. A generator's default configuration is not always the strength the parameter set needs, so the operator has to confirm it.
int-cachegenerates and rotates its own RSA-2048 key inside the product. If the image runs on VMs that are snapshotted or cloned, or the JVM is checkpointed and restored, generator state can be duplicated unless something reseeds it.
None of this is about source quality. A correctly seeded DRBG at adequate strength is enough. The operator still has to confirm the strength, which module's generator is in use, and how clones and restores are handled before new keys are generated. All three sit outside the interface in the same way the time source does.
It is also declarable at the boundary. The vendor can state that the product draws from the platform's generator, which is a property of the image as shipped. Which platform generator feeds it is a fact about a deployment and belongs in a separate document, as the ZIP distribution's runtime does.
The proposal is small. Add
random-bit-generatorto the I9 value list, with the row reading "certificate authority, revocation responder, directory, identity provider, HSM, key vault, time source, random bit generator, ornone." For Keycloak,mgmt-adminandint-cachewould list it, since both generate long-term keys inside the product. The TLS interfaces draw through the JDK provider, so the dependency would be stated once on the provider and inherited rather than repeated on seven interfaces. Where an HSM generates the key,hsmalready covers it.Two things I'm unsure of. Whether 0022's inheritance of implementation facts applies to I9 or only to algorithm facts, and whether
entropy-sourcewould be the better name for matchingtime-source, thoughrandom-bit-generatoris the more accurate SP 800-90 term.This asks for the dependency only, with no quality claim, source type or validation reference. It also stands apart from decision 0010. An interface that generates keys depends on a random bit generator at run time however randomness is classified, and I9 is where run-time dependencies go.
Aspect
Section: 3.9 Extensibility and profile composition
Orientation relevance: both
The general method has to let specific industries add their own extra items without breaking the shared approach, and let profiles build on one another rather than starting from a blank page. This issue is about how those add-ons and combinations work.
Example
Telecoms uses cryptography that other industries don't — for example, special mobile-network algorithms. Rather than copy and fork the whole method, telecoms should be able to add those as an "extension" on top of a base profile, much like bolting a specialist module onto a standard course. That makes "procurement profile + telecom extension" a valid, tidy combination.
Objective
Decide how sectors and organisations extend the methodology without forking it, and whether
profiles can derive from or compose with one another.
Background & links
Scoping document §3.9. The telecommunications case (air-interface algorithms, interface
"reference points") is the worked example of a sector extension; see the GSMA telecom CBOM work
for a concrete instance. Namespacing ties back to identity (3.2).
Options under consideration
with extensions (e.g. procurement profile + telecom extension). (Trade-off: powerful; needs
clear precedence/merge rules.)
referenced overlay profiles. (Trade-off: simpler; more duplication.)
Open questions
Dependencies
Depends on attribute model (3.3 #1) and identity/namespacing (3.2 #5).
Decision
Not yet decided.
Impact on the specification
Spec section "Extensibility and profile composition."