Skip to content

Decide LT vs LTA now that the recognition cap is gone #293

Description

@LKSNDRTMLKV

SEAL_CONFORMANCE_LEVEL defaults to LT, documented as "the first level that stays verifiable after the signing certificate expires, which is what a passport needs, since its retention lock is permanent."

That reasoning is sound and it stops one level short of the question it raises. This issue is to decide LT vs LTA deliberately, because the decision recently changed and the artefact cannot be upgraded afterwards.

What changed

Commission Implementing Regulation (EU) 2026/248 (2 Feb 2026) replaced the act that listed the signature and seal formats public sector bodies must recognise. Its Annex I carries no conformance-level cap — it names the ETSI baseline standards outright. The predecessor capped recognition at "conformance level B, T or LT" and excluded the archival clause, which put LTA outside the recognised set.

Under 2026/248 that cap survives only in Annex II, which covers the superseded profiles and applies to seals created before 23 February 2028. So B-LTA is now a recognised format, and the one structural argument against it is gone.

Verified from the Regulation's own text: Annex I entries carry no level qualifier and no clause exception; every Annex II entry carries both.

Why it cannot wait for a caller to complain

A seal is bought once, per digest, and written onto a passport that is retention-locked. Buying too little is permanent for every passport sealed before the default changes. This is the same argument SealConformanceLevel's own documentation makes for why the level belongs on the request rather than being left to an adapter.

The part that makes this a decision rather than a free upgrade

LTA is not set-and-forget. An archival timestamp protects against the eventual weakening of the algorithms underneath the signature — and to keep doing so it must be renewed before those algorithms weaken. A seal bought once at LTA and never touched again degrades much as an LT one does, having cost more.

So the real question is not "which letter" but whether we intend to operate long-term preservation at all:

  • Yes → target LTA, and accept that a renewal job is part of the system. The architecture already permits it: seal is on the retention guard's mutable_keys, so the envelope is writable after publish without weakening immutability. That is the same allowance that lets the drain write a seal onto an already-published passport.
  • No → stay at LT, and say so plainly in the operator documentation rather than implying a durability we do not maintain.

What I would avoid is LTA-once: more expensive, and it buys a guarantee that quietly expires.

Recommendation

Target LTA with a renewal drain, for the same reason the level is on the request at all — the artefact outlives the decision and cannot be revisited. But this is worth an explicit call rather than a default change, because it commits the project to an ongoing operational process, not just a config value.

If LTA is chosen

  • The default moves, and the boot gate already refuses a level the backend does not advertise — so a provider not enabled for CAdES_BASELINE_LTA fails loudly at boot rather than silently sealing lower. That protection exists today.
  • The local development backend advertises BaselineB only and is unaffected.
  • A renewal drain needs: a way to find seals whose archival timestamp is approaching expiry, and a provider call to add a fresh one. Worth checking whether the provider exposes that as a distinct operation or only as a re-seal.
  • dpp_seal::cades::evidenced_level already reports BaselineLta when an archival timestamp is present, so the renewal drain has a readback for free.

If LT is chosen

Record the reasoning next to the default, including that LTA is available and was declined. The current comment reads as though LT were the ceiling, and after 2026/248 it is not.

Explicitly not the answer

ETSI EN 319 122-1 §6.1 NOTE 4 offers an alternative: B-LT plus external preservation techniques. Commission Implementing Regulation (EU) 2025/1946 now defines what a qualified preservation service must meet (ETSI TS 119 511).

That route means buying a second qualified trust service on subscription, with the preservation evidence held by the provider rather than inside the passport. For self-hosted, per-operator deployments holding decade-long records, an operator who stops paying silently destroys the long-term validity of every passport they issued. LTA keeps the proof inside the artefact.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions