Skip to content

[spec] Key revocation extension — reject records signed by compromised keys after a declared timestamp #46

@harshnair75567-cloud

Description

@harshnair75567-cloud

Spec section affected

Problem
LIMITATIONS.md mentions that if a signing key is compromised/stolen, all records it signed remain cryptographically valid indefinitely. Verifiers have no way to distinguish legitimate records from forged/fake ones issued by an attacker using the stolen key.

Proposed change
Two additions to the spec:

  1. Revocation Record — a signed document (using a separate backup key) declaring:

compromised_key_id — the key being revoked
revoked_time — timestamp of compromise
reason — optional(for other verifiers)

  1. Verifier obligation — before accepting a TRACE record as valid, a verifier MUST check a well-known revocation endpoint and MUST reject any record where the signing key appears in the revocation list and iat > revoked_time

Backward compatibility

  • [ . ] Non-breaking (new optional field, informative addition)
  • Breaking (removes or changes required field, changes wire format, changes algorithm set)

Motivation
without revocation it can allow infinite impersonation hence this could help stop any forged TRACE record from passing verification

Related issues or PRs
None. addresses the gap mentioned in limitations.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions