Barvna shema: Temna
Trenutno dejavna stran: start » en » Documentation » Post-Quantum Cryptography » WKL TrustBridge – Overview » Architecture derivation

Architecture derivation

Summary. This page derives the architecture of WKL TrustBridge from its requirements, in four steps: requirements with their origin, the security goals that follow from them, the design principles that follow from the goals, and finally the individual architecture decisions with the alternatives that were weighed and their consequences. Where a decision has a weakness from an auditor's point of view, it is stated explicitly, together with how it is compensated.

graph TD
  R[Frameworks<br/>and scenarios] --> A[Requirements<br/>A-01 to A-24]
  A --> Z[Security goals<br/>Z-1 to Z-9]
  Z --> G[Design principles<br/>G-1 to G-11]
  G --> E[Decisions<br/>E-01 to E-21]
  E --> K[Components and flows]
  E --> N[Evidence]
  classDef s fill:#deecf9,stroke:#0078d4,color:#201f1e
  class R,A,Z,G,E,K,N s

Terms

TermMeaning
Requirement (A-nn)An obligation from law, technical recommendation, or scenario, with its origin
Security goal (Z-n)A property of TrustBridge that satisfies one or more requirements
Design principle (G-n)A rule that applies to all decisions and follows from the goals
Decision (E-nn)A single architecture choice with the alternatives weighed and its consequences
CoverageThe mapping of each security goal to the decisions that carry it

Requirements

Origin: L = law, T = technical recommendation or standard, S = scenario or protection need of the supply chain. The frameworks are explained on Foundations and requirements.

IDRequirementOrigin
A-01A system may only appear under its own partner's identity; no partner may be able to create another partner's identityS; NIS2 Art. 21(2)(d)
A-02Every issuance must trace back to a verifiable authorizationS; ETSI EN 319 411-1; NIS2 Art. 21(2)(i)
A-03CA keys must be protected against extraction and misuse, including by administratorsTR-02102; IT-Grundschutz CON.1; ETSI EN 319 411-1
A-04Revocation status must be reliably available to relying parties, including during disruptionsRFC 5280; KRITIS customer requirement; NIS2 Art. 21(2)©
A-05Revocation must remain possible when central components failNIS2 Art. 21(2)(b), ©
A-06Cryptographic mechanisms must reflect the state of the artSection 30 BSIG; TR-02102
A-07TrustBridge must enable the move to post-quantum algorithms without locking out classical relying partiesEU PQC roadmap; TR-02102 (hybrid)
A-08Long-lived trust anchors must be quantum-safe before the PQ roadmap deadlinesEU PQC roadmap
A-09Data of different customers must be kept apartGDPR Art. 32; C5:2026; S
A-10Access to the management interface requires strong authenticationNIS2 Art. 21(2)(j); ISO/IEC 27001 A.8.5
A-11Security-relevant events must be logged in a tamper-evident wayIT-Grundschutz OPS.1.1.5; ISO/IEC 27001 A.8.15; ETSI EN 319 401
A-12Significant incidents, in particular a compromise of CA keys, must be detectable and manageableSection 32 BSIG; NIS2 Art. 21(2)(b)
A-13Partner systems must be able to connect through standard protocolsS; RFC 8555, RFC 7030
A-14Ordinary HTTPS clients must not need a proprietary componentS
A-15TrustBridge must not generate or store requesters' private keysS; data minimization
A-16Personal data in certificates and logs must be minimizedGDPR Art. 5
A-17The software must be developed traceably; dependencies must have verified provenanceNIS2 Art. 21(2)(e); CRA
A-18Recovery after a failure must neither lose issuances nor execute them twiceS; IT-Grundschutz CON.3
A-19The root of the hierarchy must be out of reach of any online attackETSI EN 319 411-1; S
A-20Management and automation must go through the same rulesS
A-21Trust between organizations must be agreed by both sides, defined per direction, not transferable through third parties, and revocable by either side aloneS; NIS2 Art. 21(2)(d)
A-22Connections between partners must be protected against recording and later decryption, even if one of the mechanisms used is brokenEU PQC roadmap; TR-02102-2; S
A-23A valid identity must not establish an authorization; the target application authorizes every operation separatelyNIST SP 800-207; S
A-24Operation by a third party must include neither approval rights nor control over private keys; changing operators must be possible without handing over private keysNIS2 Art. 21(2)(d); C5:2026; S

Security goals

GoalStatementRequirements
Z-1 AuthenticityA valid certificate only results from an authorized order within the namespace of the entitled partnerA-01, A-02, A-15, A-24
Z-2 Key protectionNo CA key is available outside an HSM; every use can be tracedA-03, A-12, A-19
Z-3 Status availabilityA valid, current CRL remains available for a defined time even if the database, the management interface, or the worker failsA-04, A-05
Z-4 ProvabilityEvery issuance and revocation can be proven to third parties, including against a database administratorA-02, A-11
Z-5 Tenant separationNo customer sees or affects another's data or identitiesA-09, A-16
Z-6 Future readinessThe move to PQ algorithms is planned and possible without breaking classical relying partiesA-06, A-07, A-08, A-14
Z-7 Operational safetyFailures lead neither to duplicate issuance nor to loss; recovery is rehearsedA-18, A-05
Z-8 Relationship boundaryAn organization reaches only what the other has allowed in its direction of a relationship, and only until revocation; the target application authorizes every operationA-21, A-23
Z-9 Connection protectionTraffic between partners stays confidential as long as either the key agents' additional secret or the hybrid key agreement remains unbrokenA-22, A-06

Design principles

PrincipleContentRationale
G-1 Small trusted computing baseOnly components without which unauthorized issuance is impossible belong to the trusted computing baseEvery component in the trusted computing base must be protected and reviewed with maximum effort; the fewer there are, the more credible the whole
G-2 The database is input, not authorityWhatever a service reads from the database is unverified inputMany people administer, back up, restore, and migrate databases; their content is not trustworthy enough for issuance decisions
G-3 Authorization is cryptographicAn approval is a signature that the signer verifiesAnyone with write access can set a flag in a table
G-4 Signing without inbound accessThe signing service has no inbound connection and fetches its workAn attacker cannot reach it directly, only through orders it checks itself
G-5 Status before functionStatus information is designed to be more robust than issuanceA missing issuance causes delay; a missing revocation causes harm
G-6 Identity from the chainSecurity-relevant identity comes from the certificate chain and name constraints, never from descriptive fieldsRelying parties evaluate descriptive fields inconsistently; RFC 5280 path validation is standardized
G-7 Standards toward the outsideExternal interfaces follow standards unchanged; proprietary interfaces only where no standard existsInteroperability, auditability, no dependency on our own clients
G-8 No silent fallbackEvery fallback to a weaker mechanism is a deliberate, logged decisionA silent fallback to classical algorithms renders PQ protection worthless without anyone noticing
G-9 Trust is bilateralEach organization decides for itself whom it trusts for what; recognition applies only within the relationship in which it was grantedTrust that propagates along chains escapes the control of those who carry it
G-10 Identity is not authorizationTrustBridge delivers verified identity; the target application grants permissionsA certificate says who is speaking, not what is allowed
G-11 Secrets stay at the endpointSession secrets are created and end on the two hosts involved; no central service knows themA service holding every secret would be the most rewarding target there is

Decisions

Every decision names the alternatives weighed and the consequences. „Assessment“ records where a decision has weaknesses from an auditor's point of view.

E-01 Signing in a dedicated CA worker without inbound connections

Decision. Only the CA worker signs. It never runs in the same process or under the same operating system account as a service with HTTP input, and it has no inbound network connection. It reads orders, checks them against a local rule set, and signs in the HSM.

AlternativeWhy not
Signing in the web service that accepts the requestEvery vulnerability in the web service turns into the ability to issue
Signing service with an inbound interface (such as REST)Attack surface directly at the trusted computing base; authenticating the caller would itself become security-critical
Embedding off-the-shelf CA softwareIts rule set is not TrustBridge's; the guarantees would depend on someone else's configuration

Consequences. Issuance is asynchronous: a request creates an order, and the certificate is produced later. Interfaces must never wait for the signature. Satisfies: Z-1, Z-2 (G-1, G-4).

E-02 Database outside the trusted computing base; local rule set and ledger

Decision. What may be issued is defined in the worker's local rule set (a file on its host): allowed CAs per profile class, approvers with their public keys, lifetimes, permitted extensions. What has been issued and revoked is recorded in its local, append-only ledger. The database holds orders and projections.

AlternativeWhy not
Database as authority with signed recordsShifts the problem: who signs the records, and who verifies them?
Rules in the database, trusted by the workerA database administrator could make themselves an approver

Consequences. Changes to the rule set are an operational procedure on the worker host, not a click in the management application. The ledger must be backed up and reconciled with the database after a restore. Assessment: The ledger becomes the single source of truth about issuance and revocation; losing it would be serious. Hence backups with an RPO close to zero and an external anchor for the head of the chain (see E-14). Satisfies: Z-1, Z-4 (G-2).

E-03 Approval as a person's signature

Decision. A manual order is approved when a person listed in the rule set signs the order's hash with their personal key. By default that is one person who is not the requester; security-relevant profile classes require two different people. Automatic profile classes instead require an attestation from enrollment with its service key.

AlternativeWhy not
Approval as a status change in the databaseAnyone with write access could approve
Approval after signing in to the management interfaceThe management interface would become part of the trusted computing base

Assessment. With a single approval, the rule „the requester is not the approver“ rests on information the worker cannot verify: someone who controls the management interface or the database and is also an approver can file a request under someone else's name and approve it. Separation of duties only becomes cryptographically robust with two approver signatures. For automatic classes, enrollment with its service key belongs to the trusted computing base, which is why those classes are limited to short lifetimes and the partner's namespace. Satisfies: Z-1, Z-4 (G-3).

E-04 Immutable issuance order

Decision. An order is a fully resolved snapshot of all security-relevant content of the future certificate, created once as UTF-8 JSON and from then on stored, transmitted, and signed byte for byte. Its identifier is the SHA-256 of those bytes. The worker generates the serial number (at least 64 bits of randomness).

AlternativeWhy not
The order references a profile and the worker derives the restThe profile could change between approval and issuance; what was approved would not be what gets issued
Re-serialization at every stationDifferent serializers produce different bytes and therefore different hashes

Consequences. What a person approves is, bit for bit, what gets issued. The management application must display the order from exactly the signed bytes. Satisfies: Z-1.

E-05 Partner = issuing CA with a name constraint

Decision. Every partner has at least one issuing CA of its own whose certificate fixes the partner's DNS namespace through a critical nameConstraints extension. A system is exactly one dNSName within it. Subject, CN, O, and custom OIDs are never security-relevant; other SAN types can only be issued if the CA certificate constrains them as well.

AlternativeWhy not
Partner in the O field or in a custom extensionRelying parties evaluate it inconsistently; there is no standardized enforcement mechanism
One shared CA for all partnersEvery misissuance hits everyone; no separation in the chain

Consequences. The last line of defense is the relying party: it must enforce nameConstraints. Hence the relying-party contract. Assessment: Not every TLS library fully enforces name constraints; the relying-party contract has to become part of partner contracts and be testable with test certificates. Satisfies: Z-1, Z-5 (G-6).

E-06 Pre-generated revocation lists instead of OCSP

Decision. Status is published through CRLs that the worker generates ahead of time: valid for 72 hours, regenerated every 6 hours and immediately after every revocation; CRL numbers strictly increasing from the ledger. Delta CRLs and OCSP are not offered.

AlternativeWhy not
OCSP with signing in the request pathSigning key at the most exposed point; contradicts G-4
OCSP with pre-generated responsesAn additional delegated key per CA with no gain over a CRL that the TLS adapter fetches on a schedule anyway
Short lifetimes without revocationNot enough for systems with lifetimes of months

Consequences. Up to six hours (the fetch interval) pass between revocation and the relying party learning of it. The 66-hour buffer (validity minus interval) is the time operations have to restore a failed worker. Satisfies: Z-3 (G-4, G-5).

E-07 Two publication paths; distribution verifies signatures

Decision. CRLs reach distribution through the database and through a second path that bypasses it. Distribution holds no key, verifies every signature, and serves the highest valid CRL number. Revocation is also possible at the console of the worker host.

Alternative: a single path through the database, rejected because a database outage would then make every validation fail after 72 hours at the latest, and nobody could revoke. Satisfies: Z-3 (G-5).

E-08 Hybrid as an alternative signature in the same certificate

Decision. A hybrid certificate carries a classical subject key and an ML-DSA key (subjectAltPublicKeyInfo, 2.5.29.72); the CA signs with ML-DSA in altSignatureValue (2.5.29.74) and then classically over the entire signed part. The extensions are non-critical.

AlternativeAssessment
Parallel chains (one classical and one PQ certificate per system)Double management; relying parties must link two chains
Composite signatures per IETF draftInseparable binding of both signatures, but classical verifiers do not know the algorithm and reject it
ML-DSA onlyLocks out classical relying parties; contradicts the BSI's hybrid recommendation

Assessment. The alternative signature is separable: anyone able to forge the classical signature in the future can produce a certificate without the PQ extensions. Protection therefore exists only if the relying party requires the alternative signature and treats a missing link as invalid (item 9 of the relying-party contract, no silent fallback per G-8). Satisfies: Z-6.

E-09 CA keys only in the HSM, ML-DSA included

Decision. CA keys are created in the HSM and stay there, non-exportable, classical and ML-DSA alike. There is no software key for a CA, not even temporarily. An HSM without non-exportable ML-DSA is not acceptable. At startup the worker checks fingerprint and non-exportability; one key belongs to exactly one CA.

Alternative: ML-DSA in software for the time being, rejected because a key that was once exportable cannot become trustworthy after the fact. Satisfies: Z-2.

E-10 Offline root with ceremony

Decision. The root CA is permanently offline. It signs issuing CAs only in a ceremony with named roles. Nothing it signs comes from the online system: keys and namespace are confirmed over a second channel, and only an exhaustively listed set of artifacts crosses the boundary. Satisfies: Z-2 (A-19).

E-11 Cryptographic foundation

Decision. In the certificate authority, post-quantum algorithms come from a shared .NET component built on OpenSSL (3.5 or later); classical algorithms (RSA, ECDSA, AES, hashes, ASN.1, X.509 types) stay with the .NET framework's cryptography. The endpoint components are standalone native programs with a TLS library that supports RFC 9973.

AlternativeAssessment
The PQ types in .NET 10Would force legacy applications into a rewrite; the shared component offers the same signatures as the framework cryptography and makes existing applications PQ-capable step by step
Everything through OpenSSL, classical includedNo security gain: on Linux, .NET already computes classical algorithms through OpenSSL, on Windows through CNG
The same foundation for the endpoint components tooThe certificate authority's cryptography offers no external PSKs per RFC 9973; a runtime on every partner host would add installation and maintenance effort

Satisfies: Z-6, A-06.

E-12 Management as an Access application without a database connection

Decision. An organization's staff and its operating partner's staff use an Access application that talks exclusively to the management API over HTTPS: lists as OData v4 entity sets through an ODBC driver that speaks only HTTP, commands through a VBA class. A database connection from the client is ruled out.

AlternativeWhy not
Access with a direct database connectionAuthorization and checks would sit in the client; the audit could be bypassed
A web front end as the management interfaceTwo management interfaces double the review effort. Partners with a partner CA use the partner portal, which uses the same API with one visibility scope per partner

Satisfies: Z-5, A-10, A-20.

E-13 Shared business API and protocol adapters

Decision. Partner systems speak standard protocols (ACME, EST), whose adapters implement the protocol completely and delegate business decisions to a shared core. Management and automation use the same business API (OData v4 with actions) and the same permissions.

Satisfies: A-13, A-20 (G-7).

E-14 Three logging levels with an external anchor

Decision. An operations log (no evidentiary value), a security audit log in the database (chained per tenant, copied externally on an ongoing basis), and the tamper-evident ledger of the worker and the root. Chain heads go periodically to append-only storage outside the database and the worker host.

Alternative: chain heads signed with a dedicated key, rejected because append-only external storage achieves the same without an additional key. Satisfies: Z-4.

E-15 Tenant separation along two lines

Decision. Business foreign keys carry the tenant; in addition, row-level security filters on read. People receive named visibility scopes (all tenants, a group, one tenant), so that both support with logged access and a supply chain's internal permission model can be represented. Satisfies: Z-5.

E-16 Product boundary

Decision. WKL TrustBridge comprises each organization's certificate authority, the bilateral trust relationships, the key agents with their local key broker, the TLS adapter, and the integration with target applications such as the Database Gateway. It does not include authorization inside target applications, SPIFFE workload identities, or sign-in services for people.

Rationale. A certificate authority alone supplies identities but no cooperation: between organizations you need the relationship, enforcement at the connection, and protection of the traffic. The certificate authority's security rules stay unchanged: it generates no keys for others and knows no session secret (G-11). SPIFFE identities are URI names, which the identity model (exactly one DNS name per system) does not provide for. Satisfies: Z-8, Z-9.

E-17 Bilateral federation through signed trust bundles

Decision. Organizations recognize the other side's trust anchors per relationship. The approved relationship reaches the TLS adapters and key agents as a trust bundle signed by the organization's CA worker, with an increasing sequence number and a limited lifetime.

AlternativeWhy not
A shared root for all participantsWhoever operates the root controls everyone; leaving depends on them
Cross-certificates between rootsTrust propagates along chains; A trusts C as soon as B issues a cross-certificate for C
Bridge CALike cross-certificates, plus a central authority
List of trusted anchors in the databaseWhoever controls the database can slip anchors in

Consequences. Each organization maintains its own relationships; new partners need an agreement with every organization they work with. Satisfies: Z-8 (G-2, G-9).

E-18 Additional secret as an external PSK per RFC 9973

Decision. Key agents agree on one secret per relationship and pair of hosts through ML-KEM, authenticated with ML-DSA agent certificates. The TLS adapter feeds it into the TLS 1.3 handshake as an external PSK with the tls_cert_with_extern_psk extension (RFC 9973), in psk_dhe_ke mode with a hybrid group and mutual certificate authentication.

AlternativeWhy not
Hybrid group in TLS onlyOne protocol, one implementation, no tie to the relationship; remains part of the solution, but not on its own
A separate encrypted tunnel next to TLSA second transport path with its own configuration and its own network rules; existing TLS applications gain nothing
IPsec with post-quantum preshared keys (RFC 9867)Protection at the network layer with no tie to the service's identity; requires network changes at both organizations
A proprietary change to the TLS protocolNot interoperable and not verifiable against a standard

Assessment. RFC 9973 explicitly does not count the PSK as authentication. Authentication remains with the hybrid certificates (E-08); the additional secret strengthens confidentiality and binds the connection to the relationship. Satisfies: Z-9 (G-8, G-11).

E-19 Local key broker

Decision. The secret travels from the key agent to the TLS adapter through a key broker on the same host. It never leaves the host and is never written to storage.

Alternative: a central key service that distributes secrets to endpoints, rejected because it would know every connection and thus extend the trusted computing base by an online target of the highest value. Satisfies: Z-9 (G-1, G-11).

E-20 Renewal through connection rotation

Decision. TLS 1.3 takes in a new external secret only when a connection is established. The TLS adapter therefore replaces connections once they reach the relationship's maximum lifetime, opening new ones with the current secret before the old ones end. Session resumption is disabled for relationship connections.

AlternativeWhy not
KeyUpdate within the existing connectionDerives only from the previous traffic secret and brings in no fresh material
Renewing key shares within the connection per the IETF Extended Key Update draftNot a standard; does not take in an external PSK
Connections of unlimited durationOne secret would then protect any amount of traffic for any length of time

Satisfies: Z-9.

E-21 Operation without key ownership

Decision. In the Managed model, an operating partner runs an organization's installation. Approvers and custodians are exclusively the organization's own people; CA keys live in an HSM or a partition assigned to that organization alone. A change of operator runs through a new CA generation, not through a key export.

Alternative: the operating partner as approver on the organization's behalf, rejected because it could then issue in the organization's namespace without the organization taking part. Satisfies: Z-1, Z-2.

Coverage

GoalDecisions
Z-1 AuthenticityE-01, E-02, E-03, E-04, E-05, E-21
Z-2 Key protectionE-01, E-09, E-10, E-21
Z-3 Status availabilityE-06, E-07
Z-4 ProvabilityE-02, E-03, E-14
Z-5 Tenant separationE-05, E-12, E-15
Z-6 Future readinessE-08, E-09, E-11
Z-7 Operational safetyE-02, E-07
Z-8 Relationship boundaryE-16, E-17
Z-9 Connection protectionE-16, E-18, E-19, E-20

What this page does not prove

  • Effectiveness. Whether a decision achieves its goal is shown by the verification procedure of the corresponding commitment on Security commitments.
  • Completeness of the requirements. The requirements come from the frameworks and scenarios on Foundations and requirements, not from every conceivable obligation of a customer.
en/wiki/pqcrypt/trustbridge/architecture-derivation.txt · Zadnja sprememba: uporabnika Claude Test Contributor