AI Initiative logoAI Initiative
Reading room / Manthan

R-209 — Time-locked attestations: cryptographic backing for HERALD's temporal envelopes

Compares delay functions, time-lock puzzles, threshold release and notaries, separating cryptographic release conditions from signed promises.

Research report / proposal; not independently verified publication
This is the retained source text, not a new validation of its claims. Numerical results and comparative claims require the accompanying source review before public reuse.

Read the connected case study or article →

worker-opus-2026-05-05-R209-retry · Date not established

Provenance, authorship and editorial notes

R-209 — Time-locked attestations: cryptographic backing for HERALD's temporal envelopes

Id

manthan-herald-protocol-research-time-locked-attestations

Project

Manthan

Source path

manthan/herald-protocol/research/time-locked-attestations.md

Source sha256

89350b13c2c4ae5a25605b02239e52cf2104fc436a65a80b44b4cf0a62a83d16

Local copy sha256

89350b13c2c4ae5a25605b02239e52cf2104fc436a65a80b44b4cf0a62a83d16

Repo head

3a94084024a3434cef331fecac91c2c3b43f0313

Date
Not recorded
Date basis

Original publication date not established; Git revision date retained separately.

Author

worker-opus-2026-05-05-R209-retry

Author basis

Worker

Last source commit

8b75d1b0157c20a0a463f0e31008ef9f73099beb

Last source commit date

2026-06-08T07:40:14Z

Document status

Research report / proposal; not independently verified publication

Summary

Compares delay functions, time-lock puzzles, threshold release and notaries, separating cryptographic release conditions from signed promises.

Topics
  • Trust and collective intelligence research
  • 0. Executive summary
  • 1. Per-attestation threat-model decomposition
  • 1.1 `time_locked` — sealed pre-commitment
Theme

Trust and collective intelligence research

Priority

deep

Related ids
  • manthan-herald-protocol-research-confession-alignment
  • manthan-herald-protocol-research-dkim-analogy
  • manthan-herald-protocol-research-patina-formula
Evidence concerns
  • Recovered source text is preserved verbatim. Assertions, comparisons, commands and results belong to its original context; they were not re-executed or externally re-verified during this corpus review.
  • Research/design document, not proof of deployed capability, peer review, novelty or improved outcomes. External citations and dated maturity claims need independent verification before public reuse.
Word count

6234

Bytes

48535

Source relative

herald-protocol/research/time-locked-attestations.md

Remote mirror

manthan/herald-protocol/research/time-locked-attestations.md

Full text preserved

True

R-209 — Time-locked attestations: cryptographic backing for HERALD's temporal envelopes

Question. [CHARTER §3.2] (lines 244–303) introduces six temporal attestations — time_locked, dead_mans_switch, vow, oath, prophecy, anniversary — and [CHARTER §2.10] (line 142) and [§5.4] (line 613) point at "the Seal-Keeper" as the conduit that holds them. None of these documents specifies the cryptographic mechanism that makes "I will not say X until date Y" enforceable. This report surveys the candidate primitives — verifiable delay functions (VDFs), time-lock puzzles (TLPs), threshold time-release encryption (drand/tlock), and trusted-committee notaries — maps each to the per-attestation threat model, summarises 2026-current production maturity, and recommends what HERALD should specify, on what timeline, and what honest fallbacks remain available for v0.2-era deployment.

Why this matters. Without a specified cryptographic backing, "the Seal-Keeper" is a magic word. Some HERALD temporal attestations need cryptographic enforcement (time_locked, dead_mans_switch); others need only signed-promise semantics with reputation enforcement (vow, oath, prophecy, anniversary). Conflating the two — pretending all six attestations need the same backing — would either over-specify (locking HERALD to bleeding-edge VDF deployment) or under-specify (leaving sealed bids and dead-man's switches without a substrate). The report makes the per-attestation distinction precise.

Worker: worker-opus-2026-05-05-R209-retry

Note on a CHARTER section reference. The R-209 task brief and the prior BLOCKED.md cited "[CHARTER §3.3]" for temporal attestations. The actual section is §3.2 (lines 244–303); §3.3 (line 305) is Social attestations. This report uses the correct §3.2 reference throughout. Minor typo, flagged so a reviewer cross-checking the task brief is not confused.


0. Executive summary

The six temporal attestations split cleanly across two threat-model categories, each requiring a different cryptographic substrate:

AttestationCategoryWhat enforcement requires
time_lockedSealed-payloadCiphertext that is undecryptable until time Y, then publicly decryptable.
dead_mans_switchSealed-payload, conditionalCiphertext decryptable iff a liveness condition fails for duration D.
vowPromise-onlyA signed declaration of future restraint. The protocol does not prevent the lie; it makes the lie indelible (per [CHARTER §3.2] line 272).
oathPromise-only (standing)Same, but unbounded.
prophecyPromise-only, with verdict ritualSigned prediction; resolution is a separately-signed verdict envelope.
anniversarySelf-citationJust a citation pointing back to a prior envelope.

The four promise-only attestations need no cryptographic time mechanism; they are signed envelopes whose meaning is resolved socially and through reputation. The two sealed-payload attestations are where the substrate question is real.

For the sealed-payload attestations, four candidate substrates exist:

1. Threshold time-release encryption (drand / tlock). Mature; production-deployed since March 2023; audited by Kudelski 2023; multi-language libraries. Network-dependent: requires the League of Entropy (19 nodes, Feb 2025) to remain liable. Threat model is honest threshold of committee.
2. Verifiable delay functions (Wesolowski 2018, Pietrzak 2019). Non-interactive, no committee required. 2026 status: still bleeding-edge for production sealing. Used in Chia consensus (since 2021) but not as a sealing primitive — Chia's VDF certifies elapsed time, it does not encrypt-to-the-future. ASIC speedup risk. No widely-deployed VDF-based time-release encryption library.
3. Time-lock puzzles (Rivest-Shamir-Wagner 1996; homomorphic variants Malavolta 2019). Non-interactive. 2026 status: useful for short delays (seconds-to-hours) at puzzle-construction cost; brittle against ASIC adversaries and quantum factoring.
4. Trusted Seal-Keeper(s) — operational notaries. A sigil holds the plaintext, publishes on schedule. Honest, low-tech, defensible. Requires Seal-Keeper non-collusion. Maps directly to [CHARTER §2.10] §5.4 framing.

Recommendation. HERALD should specify a layered backing in [SPEC §4 / EXT extension] in the following order of preference:

1. Default for v0.2: Trusted Seal-Keeper(s) with m-of-n quorum, plus optional drand-tlock for short-horizon (≤ 60 day) seals. This is honest about 2026 production maturity, leverages [CHARTER §2.10] directly, and does not commit HERALD to research-grade primitives.
2. Recommended for v0.3+: drand-tlock as the wire-format standard sealed-payload encoding (analogue of how SPEC chose Ed25519+HPKE rather than inventing crypto), with a pluggable scheme tag in the envelope so other backings can co-exist.
3. Reserved for v0.4+ research: VDF-based and homomorphic-TLP-based backings. Not specified now. Reserved as scheme-tag space.
4. Honest residual: post-quantum sealed-payload encryption is an open problem in 2026. Any drand-tlock-based seal HERALD ships is a quantum-vulnerable seal. The spec must say this in the threats section (analogous to how [SPEC §0] makes other crypto-agility commitments).

Per-attestation mapping recommended:


1. Per-attestation threat-model decomposition

[CHARTER §3.2] gives six temporal attestations. The cryptographic-backing question pretends they are uniform; they are not. Each carries a different what-must-be-prevented obligation, and therefore a different substrate.

1.1 time_locked — sealed pre-commitment

Shape: { reveal_after: timestamp, sealed_payload_hash: hex }
Semantics: I will say X on date Y; here is the hash now; here is the plaintext later.
— [CHARTER §3.2] lines 248–251

What must be prevented. A third party (or the issuer) revealing the plaintext before reveal_after.

What is already prevented by HERALD's substrate. Nothing relevant — the envelope only commits to a hash. The hash binds the plaintext but the plaintext is held somewhere, and where is the unspecified part.

Substrate options ranked.

OptionSuitabilityWhy
drand-tlockHigh for ≤ 60d horizonsMature (2023+), audited, BLS12-381 production. The encryptor encrypts to a future round; the network publishes the BLS signature at round-time, which acts as the IBE key. No committee involvement until reveal.
Trusted Seal-Keeper (m-of-n)High for any horizonOperationally simple. Composes a CHARTER conduit (sigil:seal_keeper). Threshold-reveal prevents single-keeper malfeasance. The honest baseline.
VDF-based time-release encryptionLow for production nowNo widely-deployed library; bleeding-edge research. ASIC-speedup risk for adversaries means time bounds are economically rather than absolutely enforced ([Economic Security of VDF-Based Randomness Beacons, 2026]).
RSW/Malavolta TLPLow for HERALDPlaintext sealing requires solving a sequential puzzle — the recipient must spend computation. Brittle under ASIC adversary; brittle under quantum factoring. Useful for seconds-to-minutes delays only.

The natural HERALD wire-format encoding is:

{ "type": "time_locked",
  "value": {
    "reveal_after": 1746500000,
    "sealed_payload_hash": "0xa1b2c3...",
    "sealing_scheme": "drand-tlock-quicknet" | "seal_keeper-2of3" | ...,
    "scheme_params": { ... }
  } }

A scheme tag plus parameters keeps the wire format stable while letting the substrate evolve. This is the same crypto-agility pattern HERALD already adopted for envelope signatures.

1.2 dead_mans_switch — conditional reveal on absence

Shape: { publish_if_silent_for: duration, ciphertext: bytes, decryption_key_holder: sigil }
Semantics: If the sigil emits no envelope for the duration, a designated party reveals the key.
— [CHARTER §3.2] lines 257–260

What must be prevented.

1. The decryption-key-holder revealing prematurely (while the issuer is still alive).
2. The decryption-key-holder failing to reveal when the issuer falls silent.
3. The issuer regenerating the trigger after silencing has already begun.

What is already prevented by HERALD's substrate. Nothing — the spec gestures at "a designated party reveals" but does not say how the silence is established, how the key custody is structured, or whether the trigger is bilateral or quorate.

Substrate options ranked.

OptionSuitabilityWhy
Trusted committee with threshold reveal (t-of-n)HighLiveness signal observable to the committee, threshold reveals key. This is the natural fit; exactly mirrors Sarcophagus and similar Web3 dead-man-switch implementations. The single-sigil field in [CHARTER §3.2] should become a sigil-list with a t parameter.
drand-tlockWrong fitdrand publishes keys at absolute times, not on liveness conditions. You could approximate by tlocking to round T and re-tlocking to T+1 every period — but this is fragile (a single missed re-tlock leaks the secret) and consumes drand storage indefinitely.
VDF-based liveness proofsSpeculativeCould potentially encode "if I can produce a heartbeat envelope this proves I'm alive" as a refresher on a longer-running VDF. No deployed library does this in 2026.
Pure on-chain (Bitcoin OP_CSV / Ethereum smart contract)Operationally availableA blockchain-native dead-man's switch using time-based UTXO locks. Useful as a peer technology to learn from but not native to HERALD.

The wire-format clarification needed:

{ "type": "dead_mans_switch",
  "value": {
    "publish_if_silent_for": "P30D",
    "ciphertext": "...",
    "key_custody": {
      "scheme": "shamir-t-of-n",
      "holders": ["sigil:trustedwitness1...", "sigil:trustedwitness2...", "sigil:trustedwitness3..."],
      "threshold": 2
    },
    "liveness_attestation_kind": "envelope_published",
    "liveness_observers": ["sigil:auditor1...", ...]
  } }

The current single-sigil field is a footgun — a single committee member can either betray (reveal early) or fail (refuse to reveal). [CHARTER §3.2] line 266 should be amended to mandate t-of-n.

1.3 vow — temporally-bounded promise

Shape: { will_not: predicate, until: timestamp }
Semantics: I commit not to mention topic X until date Y. Any envelope from me about X before then is invalid.
— [CHARTER §3.2] lines 269–272

What must be prevented. Nothing cryptographically. [CHARTER §3.2] line 272 explicitly says: "The protocol does not prevent the lie; it makes it indelible."

Substrate. The signed envelope itself, plus the audit log [EXT §2]. The vow's enforcement is reputational and indelible: if the issuer breaks the vow, the broken-vow envelope and the original vow are both signed and timestamped, and any reader can detect the violation by linear scan.

No additional cryptographic substrate is needed. The temptation to over-engineer (e.g., "should we VDF-seal the vow text?") should be resisted. A vow that the issuer cannot break is no longer a vow; it is just a constraint. The literary primitive is the moral commitment that could be broken at cost.

The only protocol clarification needed: specify that will_not: predicate should be a structured-enough predicate that automated detectors can flag violations. A free-text predicate is acceptable per the CHARTER aesthetic but the SPEC should encourage machine-checkable predicates where possible.

1.4 oath — standing vow

Shape: { maintains: predicate, while_alive: true }
Semantics: A standing vow. The agent's Hippocratic clause.
— [CHARTER §3.2] lines 278–281

Same as vow, no time-mechanism. The relevant question is molting (does the oath survive a molt? See [EXT §1]). This is out-of-scope for R-209 but flagged as a follow-on note: molt and oath interact.

1.5 prophecy — self-graded prediction

Shape: { claim: string, resolves_at: timestamp }
Semantics: Self-graded prediction. After the date, the agent or a third party emits a verdict envelope linking back.
— [CHARTER §3.2] lines 287–290

What must be prevented. Nothing cryptographically. The integrity comes from: (a) the prophecy is timestamped at issuance; (b) the verdict envelope is timestamped after resolves_at; (c) Brier-score-type reputation systems compute calibration over time. This is exactly the same pattern as vow — moral commitment + reputational settlement + audit-log immutability.

Substrate. The signed envelope, plus the audit log, plus a verdict ritual that already needs spec'ing. R-209 should not invent the verdict envelope class — that is a separate spec task — but should note that the prophecy-substrate question is purely about ritual and ledger, not about time-release crypto.

1.6 anniversary — self-citation across time

Shape: { commemorates: env-id }
Semantics: Self-citation across time. I am restating this.
— [CHARTER §3.2] lines 296–299

This is a citation envelope with a temporal flavour. No time-release substrate is involved. The temporality is purely literary — the act of commemorating an old envelope on its anniversary date. Substrate: signature only.

1.7 Summary table

AttestationNeeds sealed-payload?Needs time-release crypto?Recommended substrate
time_lockedYesYesdrand-tlock OR Seal-Keeper(s) t-of-n
dead_mans_switchYesNo (liveness, not absolute time)Trusted committee t-of-n
vowNoNoSignature + audit log
oathNoNoSignature + audit log
prophecyNoNoSignature + audit log + verdict ritual
anniversaryNoNoSignature (a citation)

Two of six attestations need a sealed-payload substrate; only one of six (time_locked) needs absolute-time release. The temptation to specify VDFs as the universal temporal substrate would be over-engineering by a factor of three.


2. Cryptographic primitive survey

2.1 Verifiable Delay Functions (VDFs)

Definition. A VDF (Boneh, Bonneau, Bünz, Fisch 2018; Wesolowski 2018; Pietrzak 2019) is a function f(x) = y whose computation requires T sequential steps (parallelism does not help) but whose output y can be verified in time much less than T. The "verifiable" suffix is what distinguishes VDFs from time-lock puzzles — VDFs publish a short proof, TLPs do not.

Constructions. The two practical RSA-group constructions:

Class group constructions. The RSA-group constructions require trusted setup (RSA modulus generation), which is uncomfortable. Class groups of imaginary quadratic fields allow an analogous construction without trusted setup. This is what Chia uses in production. Chia VDF (chiavdf) is the only large-scale production deployment of class-group VDFs.

MinRoot. Khovratovich, Maller, Tyagi (2022) proposed MinRoot as a candidate Ethereum VDF — an iterative algebraic transformation over Pasta curves. Status as of 2026: not deployed. Per Vitalik Buterin's "Possible Futures of the Ethereum Protocol, part 6: The Splurge" (Oct 2024), there is "no active plan to implement [a VDF] in Ethereum at this time," and "recent results on the difficulty of constructing VDF functions suggesting that the prospect of an in-protocol VDF is receding." Public attacks against MinRoot have been published.

Lattice-based VDFs. Papercraft (eprint 2025/879) — a lattice-based VDF with implementation. Promising for post-quantum but very early in 2026.

Production deployments (2026):

HERALD-relevance verdict. VDFs are a research-grade primitive for absolute-time sealing in 2026. They are honest as a future substrate but not honest as a v0.2 substrate. Specify scheme-tag space; do not normatively require.

2.2 Time-lock puzzles (TLPs)

RSW 1996. Rivest, Shamir, Wagner 1996: a puzzle (α, t, N) with solution χ = α^(2^t) mod N. Solving requires t sequential squarings; the puzzle creator (knowing φ(N)) constructs in O(log t). Plaintext is encrypted under a key derived from χ.

Limitations.

1. No verifiability. The solver computes χ but has no proof to give a third party. (TLPs are "non-verifiable" — VDFs added the verifiability suffix.)
2. ASIC-speedup vulnerability. A well-funded adversary with custom squaring hardware can solve the puzzle faster than the intended deadline.
3. Quantum vulnerability. RSA factoring breaks RSW. The puzzle becomes computable in poly-time on a sufficiently capable quantum computer.
4. Solver burden. Every recipient must solve the puzzle independently. For sealed bids in an auction with N bidders, the auctioneer must solve N puzzles.

Homomorphic TLPs (Malavolta-Thyagarajan 2019). eprint 2019/635: allows evaluation of functions f(s_1, ..., s_n) over puzzle solutions without solving each puzzle individually. The result is a single output puzzle. This addresses the auction-batching problem. Subsequent work ([Time-Lock Puzzles with Efficient Batch Solving, Eurocrypt 2024, Dujmovic-Garg-Malavolta]) further reduces batch-decryption cost.

Production deployments (2026). None. TLPs remain a research primitive. There is no equivalent of tlock for TLPs — no widely-adopted library, no production audit, no chain integration. Reference implementations exist (e.g., drummerjolev/time-lock-puzzle) but as toys, not as deployed infrastructure.

HERALD-relevance verdict. TLPs are useful for short-horizon (seconds-to-hours) sealed-payload attestations where the recipient has spare CPU cycles. They are unfit for HERALD's time_locked use cases because (a) the recipient burden is too high, (b) the ASIC adversary problem is acute for short delays, (c) no audited library exists. Do not specify TLPs in v0.2.

2.3 Threshold time-release encryption (drand / tlock)

Construction. Drake-Riad-Mehta-Yakira 2023, "tlock: practical timelock encryption from threshold BLS": the drand randomness beacon publishes a BLS signature on each round number. Identity-Based Encryption (Boneh-Franklin 2001) is used, with the round number as the identity. A ciphertext encrypted to round R can be decrypted only when the network publishes the BLS signature for round R. The decryption key is the publicly-broadcast signature.

Network status (May 2026):

Audit status. The tlock scheme was audited by Kudelski Security in 2023 (report on IPFS). Findings were addressed; none of the issues put existing encrypted data at risk. The most notable was a parameter-validation bug where a reveal_after too far in the future would silently encrypt to round 1 (immediate decryption). This is a user-facing parameter validation lesson HERALD should learn from — see §4.

Library availability:

Production users (2026):

Threat model.

PropertyStatus
Confidentiality before reveal timeHolds iff fewer than t LoE nodes collude to broadcast their signature share early. With t = 12 of 22 (per Cloudflare/LoE 2024 figures, increasing as the league grows), this is a meaningful threshold.
Liveness at reveal timeHolds iff t of n LoE nodes are online and producing signatures. quicknet's 3-second round frequency means a single round failure costs seconds, not days.
Long-horizon sealing (years)Trust model degrades — the LoE membership might shift, the BLS curve might degrade, the threshold parameters might be altered. The cryptographic substrate is not immortal.
Quantum resistanceNone. BLS12-381 (and BN254) are vulnerable to a sufficiently capable quantum computer. Any sealed payload is forward-vulnerable.
Parameter-update attacksLoE is governed off-chain by consortium agreement. A coordinated change of beacon (e.g., quicknet → newnet) requires coordinated client updates. Stale clients sealing to deprecated chains is a deployment hazard.
Network-dependenceHeavy. drand is a network protocol; a HERALD operator using tlock must take a hard dependency on LoE liveness. There is no "local fallback."

HERALD-relevance verdict. drand-tlock is the most production-mature absolute-time sealing primitive available in 2026. It is the right wire-format default for time_locked. Its limitations (network-dependence, quantum-vulnerability, long-horizon trust) should be made explicit in [SPEC]/[THREATS].

2.4 Trusted Seal-Keeper(s) — operational notaries

Construction. A sigil (the sigil:seal_keeper, [CHARTER §2.10] line 140) holds the plaintext in escrow, watches the clock, and publishes the plaintext on schedule. A t-of-n quorum of Seal-Keepers protects against single-keeper malfeasance — t must collude to reveal early; n - t + 1 must fail to prevent reveal. Plaintext is split via Shamir secret sharing or stored encrypted with a quorum-reconstructable key.

Threat model.

PropertyStatus
Confidentiality before reveal timeHolds iff fewer than t Seal-Keepers collude.
Liveness at reveal timeHolds iff n - t + 1 Seal-Keepers are reachable.
Long-horizon sealing (years)Strong — Seal-Keepers can rotate, can use HSM-backed key custody, can be subject to legal SLA.
Quantum resistanceIndependent of crypto. As long as the Shamir-shared key is generated post-quantum, the seal is post-quantum. (This is a major advantage over drand-tlock.)
Parameter-update attacksSeal-Keeper rotation is a governed event. Operationally similar to CT log governance ([EXT §2]).
Network-dependenceLight — only at reveal time. Sealed payload can be stored anywhere (on-chain, IPFS, in the Seal-Keeper's archive).

Operational analogues.

HERALD-relevance verdict. Trusted Seal-Keeper(s) are the honest baseline that HERALD already gestures at via [CHARTER §2.10] (sigil:seal_keeper) and [§5.4]. Specifying them properly — with t-of-n quorum — costs nothing in research-grade crypto and gives HERALD a working sealed-payload primitive immediately, with arbitrary-horizon trust. The scheme should be the default for v0.2 and a permitted scheme thereafter.

2.5 Other candidates surveyed but rejected


3. Library and network maturity matrix

SubstrateTSPythonGoRustProduction usersAudit statusMaturity
drand-tlockdrand/tlock-jsnone first-partydrand/tlockthibmeu/tlock-rsFilecoin, Cloudflare, drand timevault, sealed-bid auctionsKudelski 2023Production
Chia class-group VDFn/achiavdf Python bindingsn/an/aChia consensusMultiple (Chia Audit-Reports repo)Production for consensus, not for sealing
Wesolowski/Pietrzak VDFn/an/apoanetwork/vdf (Rust)poanetwork/vdfResearchNone for sealingResearch
MinRoot VDFn/an/an/an/aNonePublic attacksResearch, contested
Lattice VDF (Papercraft)n/an/an/an/aNoneNoneBleeding-edge research
RSW TLPn/avarious toy implsvarious toy implsvarious toy implsNoneNoneToy/research
Homomorphic TLP (Malavolta)n/an/an/an/aNoneNoneResearch
Trusted Seal-Keeper(s)trivial — Shamir libstrivialtrivialtrivialSarcophagus, legal escrow, generic notary servicesn/a (operational)Production-equivalent if operationally sound

The matrix shows starkly: the only production-mature time-release crypto primitive in 2026 is drand-tlock, and the only horizon-flexible primitive is operational Seal-Keepers. Everything else is research.


4. Gotchas and lessons-from-deployment

4.1 drand-tlock parameter validation

The Kudelski 2023 audit uncovered a parameter-validation bug: a reveal_after timestamp far enough in the future computed to a drand round number that overflowed/wrapped to round 1 — making the ciphertext immediately decryptable. The lesson for HERALD: the spec must mandate parameter-range validation at envelope construction. A time_locked envelope whose reveal_after exceeds the drand chainhash's representable range MUST fail validation.

4.2 drand chainhash drift

drand has migrated through multiple chainhashes (fastnet → quicknet). A HERALD envelope sealed under fastnet is decryptable only as long as the fastnet chain is still being signed. drand has historically maintained deprecated chains for a transition window but this is operational policy, not a cryptographic guarantee.

Recommendation. [SPEC] should require that time_locked envelopes record the drand chainhash explicitly in scheme_params, and that HERALD implementations check chainhash liveness at decryption time. Long-horizon seals on a chainhash that has been deprecated by the LoE are forfeit.

4.3 Network-liveness dependency

drand is a high-availability service but not a contractual one. A HERALD deployment that depends on tlock for time_locked cannot offer better-than-drand SLAs. Operators should be honest: a HERALD time_locked sealing depends on (HERALD signing) AND (drand signing at the reveal round) — two independent failure modes.

For latency-sensitive use cases, the 3-second round frequency of quicknet is probably fine. For seconds-precision auctions, even quicknet is too slow.

4.4 LoE membership and parameter updates

The LoE consortium can — by majority vote — change parameters (threshold, curve, scheme). Such changes are coordinated with operator-side software updates. A stale client may seal to a deprecated chainhash without warning. The risk is mitigated by drand's strong communication norms but not eliminated. HERALD should pin chainhash versions and publish recommended updates analogous to TLS cipher-suite deprecation.

4.5 Trusted Seal-Keeper composition

If HERALD specifies t-of-n Seal-Keepers, the selection of n Seal-Keepers becomes a governance question. Bad compositions (n Seal-Keepers all hosted by the same provider, all using the same HSM vendor, all in the same jurisdiction) reduce the effective threshold. The same diversity-policy concerns that the threshold-attestation registry [R-204] (already done) treats apply here.

Recommendation. Reuse the [R-204] diversity-policy registry pattern for Seal-Keeper composition declaration. A time_locked envelope using Seal-Keeper sealing should reference a diversity-policy ID, exactly as a quorum attestation does.

4.6 ASIC-speedup adversary (VDF-only concern, but worth flagging)

If HERALD ever specifies a VDF-based scheme, the Economic Security of VDF-Based Randomness Beacons (arXiv:2604.04744) result applies: "many proposed VDF delays of a few seconds are economically insecure under plausible conditions." A 30-second VDF delay sealing a $1M sealed bid is a poor risk trade because an adversary can rent specialised hardware for less than $1M. Delays must be calibrated to the value at stake.

4.7 Quantum vulnerability of drand-tlock

drand-tlock relies on BLS12-381 (or BN254). A capable quantum computer breaks BLS. Any HERALD sealed payload encrypted with drand-tlock is forward-vulnerable to quantum computation. The seal is broken not at reveal_after but at whenever a CRQC arrives.

HERALD must say this in [THREATS]: long-horizon time_locked envelopes are quantum-vulnerable; for true forward-secrecy, a Seal-Keeper scheme with post-quantum key custody is the only currently-available path. Lattice-based VDFs are an aspirational future fix.

4.8 No first-party Python library for tlock

Python is the dominant language in the agent ecosystem (LangChain, autogen, crewAI, etc.). The lack of a first-party Python tlock library is a real friction. A HERALD reference implementation in Python ([T-004]) using time_locked will need to either (a) shell out to the Go tle CLI, (b) ship a Python binding for tlock-rs, or (c) implement the IBE-over-BLS scheme in pure Python (using py_ecc or similar). Each path has costs.

Recommendation. Add a follow-on TODO: Python tlock library survey or implementation (Tier 1 task).


5. Recommendations for HERALD

5.1 Per-attestation backing (normative)

Attestationv0.2 backingv0.3+ backingNotes
time_lockedTrusted Seal-Keeper(s) t-of-n (REQUIRED); drand-tlock (RECOMMENDED for ≤ 60d horizons)drand-tlock standard sealed-payload encodingScheme tag in envelope.
dead_mans_switchTrusted committee t-of-n with Shamir secret sharing; clarify spec to require list of holders(no change)drand-tlock NOT a fit.
vowSignature + audit log (no time-crypto)(no change)Reputational enforcement.
oathSignature + audit log (no time-crypto)(no change)Reputational enforcement; molt interaction TBD.
prophecySignature + audit log + verdict envelope(no change)Spec the verdict envelope class.
anniversarySignature only (citation flavour)(no change)No time-crypto needed.

5.2 Wire-format changes proposed

Add to [SPEC §4] (or a new EXT extension EXT §temporal-attestations) the canonical encoding:

{ "type": "time_locked",
  "value": {
    "reveal_after": <unix_timestamp>,
    "sealed_payload_hash": <hex>,
    "sealing": {
      "scheme": "seal-keeper-t-of-n" | "drand-tlock" | "<reserved-for-future>",
      "params": {
        // scheme-specific
      }
    }
  } }

For dead_mans_switch, replace the single decryption_key_holder: sigil with:

{ "type": "dead_mans_switch",
  "value": {
    "publish_if_silent_for": <duration>,
    "ciphertext": <bytes>,
    "key_custody": {
      "scheme": "shamir-t-of-n",
      "holders": [<sigil>, ...],
      "threshold": <int>
    },
    "liveness": {
      "kind": "envelope_published",
      "observers": [<sigil>, ...]
    }
  } }

The single-sigil field in [CHARTER §3.2] line 266 is a bug (single-point-of-failure). Recommend this be revised in the next CHARTER edit.

5.3 Reserved scheme-tag space

Reserve the following scheme tags in a HERALD scheme registry (similar to [registries/diversity-policies.md] from [R-204]):

Scheme tagStatusConstruction
seal-keeper-t-of-nActiveTrusted Seal-Keeper(s) with Shamir t-of-n reveal.
drand-tlock-quicknetActivedrand quicknet chainhash, BLS12-381.
drand-tlock-evmnetActivedrand evmnet chainhash, BN254 (for Ethereum compat).
vdf-wesolowski-rsa-2048ReservedFuture.
vdf-pietrzak-rsa-2048ReservedFuture.
vdf-classgroup-chiaReservedFuture.
tlp-rsw-1996ReservedFuture, short-horizon only.
tlp-malavolta-homomorphicReservedFuture.

5.4 Required threats-section additions

Add to [THREATS]:

1. Sealed-payload time-release is not immortal. A time_locked envelope's confidentiality depends on the chosen scheme's continued viability. drand-tlock seals are quantum-vulnerable. Seal-Keeper seals depend on Seal-Keeper survival.
2. Long-horizon seals are operational, not cryptographic. A 50-year time_locked envelope is a Seal-Keeper governance problem, not a crypto problem.
3. VDF seals do not exist in production-mature form (2026). HERALD's reserved scheme tags are placeholders, not implementations.
4. The Seal-Keeper is a real trust assumption. [CHARTER §2.10]'s framing is correct; HERALD should not pretend Seal-Keepers are "just a sigil." They are the trust anchor for the bulk of long-horizon seals.

5.5 Honest fallbacks for v0.2 deployment

A HERALD operator deploying in 2026 with no LoE relationship and no Seal-Keeper infrastructure can still use the temporal attestations:

The honest fallback for an operator who does not want any time-release crypto at all is: don't use time_locked or dead_mans_switch. The other four temporal attestations are still available.

(Bullet list for NOTES.md / [TODO.md] consideration.)


6. Honest residuals

Things this report deliberately does not answer:

1. What is the right t-of-n for HERALD's recommended Seal-Keeper default? Likely 2-of-3 for individual operators, 3-of-5 for institutional. The diversity-policy work ([R-204], [R-NEW-D]) refines this.
2. Should HERALD operate its own LoE-equivalent network? Probably not — the resources required are large and the LoE already exists. But the question is real if HERALD ever needs an independent trust anchor.
3. What happens to a time_locked envelope when the issuer molts ([EXT §1])? The seal is bound to the issuer's signature at issuance. A molt does not change historical signatures. But a Seal-Keeper sealing the plaintext might itself molt. The interaction is unresolved.
4. What happens to a dead_mans_switch envelope when a key-holder molts? Per [EXT §1], the molted sigil is a different sigil. Should the dead-man's-switch envelope auto-mark its key-holder as failed? Or should the molted sigil still hold the key? This is a CHARTER question.
5. Is there a use case for time_locked envelopes with sub-second precision? drand quicknet's 3-second floor and Seal-Keeper-based schemes' minute-level precision are both too coarse for HFT-style use. Probably out of scope for the agent web.
6. Should prophecy resolution allow third-party verdicts? [CHARTER §3.2] line 289 says "the agent or a third party emits a verdict." The CHARTER is intentionally permissive; the SPEC will need to make a choice.


7. Summary

HERALD's six temporal attestations split 2:4 across sealed-payload-needing and signed-promise-only. The two sealed-payload attestations are realistically backed in 2026 by either (a) drand-tlock (mature, quantum-vulnerable, network-dependent) for short horizons, or (b) trusted Seal-Keepers (t-of-n with Shamir custody) for arbitrary horizons. VDFs and time-lock puzzles remain research primitives in 2026; HERALD should reserve scheme-tag space but not normatively require them. The four promise-only attestations need no additional substrate — the signed-envelope plus audit-log already supports them. The current [CHARTER §3.2] dead_mans_switch shape (single key-holder) is a footgun and should be revised to mandate threshold key custody.

The honest path for HERALD v0.2 is: specify Seal-Keeper(s) t-of-n as the default sealed-payload backing; specify drand-tlock as a recommended interoperable alternative for short-horizon seals; reserve scheme-tag space for VDF and TLP futures; and make the residual trust assumptions explicit in [THREATS].


References (last-checked 2026-05-05)

Primary cryptographic literature

Production deployments and operational documentation

HERALD-internal references

Continue exploring