Accurate time, made certain.
so everything your system produces is stamped with a verifiable timestamp.
so instead of stamping objects one at a time, the stamp is built into your system — and runs on its own.
The classical timestamping approach — TSA RFC 3161, OpenTimestamps — stamps one object at a time: send a document, receive a stamp, attach it. Works, but costs one explicit call per object.
Trusted UTC stamps the system. Once integrated, every object the system produces is born with a verifiable timestamp, no explicit call per object.
TSA / OpenTimestamps Trusted UTC ──────────────────── ───────────────────────────── one timestamp per object periodic TAS anchor N objects → N requests N objects signed locally on-demand, documents continuous, systems
TAS issues Ed25519-signed anchors, rooted in NTP/NTS. │ ├──▶ SDK keeps a local monotonic clock anchored to the latest anchor. │ │ │ ├──▶ Event every event is signed locally with the device key. │ │ ▼ ▼ Verifier offline verification against the TAS public key.
$ curl — request an anchor:
# POST /v1/anchor curl -X POST https://api.trustedutc.com/v1/anchor \ -H "X-API-Key: <your-key>" \ -H "Content-Type: application/json" \ -d '{ "device_id": "my-device", "device_pubkey": "<base64-ed25519-32B>", "nonce": "<base64-random-32B>", "identity_attestation": null }'
— response:
{
"anchor_id": "anc-1745396893412",
"utc_ms": 1745396893412, // UNIX ms at TAS signing time
"uncertainty_ms": 2, // declared band (RTT/2 + margin)
"valid_until_ms": 1745400493412, // anchor validity window (1h)
"identity_verified": false,
"identity_attestation_hash": "AAAA…", // 32B zero (no attestation)
"tas_signature": "VwgbD9B4…", // Ed25519 over canonical payload
"nonce": "IWnVwlb4…" // echo for anti-replay
}