SSM-Clock Stamp – Rationale (3.9)

Why this construction works (clean layers).

  • Content integrity (file): h_file = H_algo(file_bytes) binds the exact bytes. Any change flips the 64-hex digest.
  • Local ordering (chain): chain_k = H_chain( ascii(chain_{k-1} + "|" + stamp_core) ) with chain_0 = "0"*64 makes deletions, insertions, or reorders immediately visible.
  • Public time bound (anchor): rollup_D = sha256( ascii(Stamp_1 "|" ... "|" Stamp_n) ) commits a day’s set. The publication moment gives a no-later-than claim without mutating past stamps.

Ephemeris-free, human-checkable clock.

  • Angles come only from UTC arithmetic:
    wrap360(x) = x - 360*floor(x/360)
    theta_deg = wrap360( (unix_seconds / 86400) * 360 )
    rasi_idx = floor(theta_deg / 30)
  • Reviewers can sanity-check theta_deg and rasi_idx with a pocket calculator. No ephemeris, no network.

Determinism by design.

  • Fixed prints: theta_deg uses exactly theta_prec digits (default 5) with IEEE-754 binary64 round-half-to-even; digests are lowercase 64-hex.
  • ASCII everywhere: hashed inputs are literal ASCII; the stamp is one line with | separators. Identical inputs produce identical outputs across platforms.

Forward-compatibility without breakage.

  • The optional tail |kv:... carries algorithm agility and policy (algo, chain_algo, theta_prec, float, time_mode, etc.).
  • Unknown keys are ignored, so older verifiers still validate file/clock/chain while newer tooling can read extra metadata.

Clear security posture.

  • No keys, no PKI, no blockchain are required at stamp time.
  • Backdating window is bounded by anchor cadence: max_backdating_window_sec <= anchor_period_sec.
  • The leap-second ban (23:59:60 invalid) keeps UTC→angle math simple and replay-safe.

Composability & provenance.

  • Multiple independent chains can coexist (e.g., per device). Optional kv:chain_id and kv:device help safe merges without affecting verification.
  • Anchors are additive: you can publish them later, in many places, with zero change to historical lines.

Audit practicality.

  • Anyone can re-derive: parse → hash → clock → chain → anchor.
  • Failures are diagnosable (which layer broke) and localizable (first mismatching chain step, specific anchor diff).

Navigation
Back: SSM-Clock Stamp – Operational Cautions (3.8)
Next: SSM-Clock Stamp – Optional Daily Witnesses (3.10)