Why this construction works (clean layers).
- Content integrity (file):
h_file = H_algo(file_bytes)binds the exact bytes. Any change flips the64-hex digest. - Local ordering (chain):
chain_k = H_chain( ascii(chain_{k-1} + "|" + stamp_core) )withchain_0 = "0"*64makes 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_degandrasi_idxwith a pocket calculator. No ephemeris, no network.
Determinism by design.
- Fixed prints:
theta_deguses exactlytheta_precdigits (default5) 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:60invalid) keeps UTC→angle math simple and replay-safe.
Composability & provenance.
- Multiple independent chains can coexist (e.g., per device). Optional
kv:chain_idandkv:devicehelp 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)