About This Server

RoughTime relies on a network of independent servers and implementations. Each server provides cryptographically signed time, and clients can verify those responses by comparing multiple, independent sources. The diversity of sources — both in hosting and in software — forms the foundation of RoughTime’s trust model.

Why We Built a New Implementation

As of today, there are only a handful of publicly reachable RoughTime servers. The protocol’s design explicitly depends on multiple, independently implemented servers for verification.

Independent implementations guard against software bugs, compiler differences, deployment errors, and latent assumptions in any single codebase. A client that can verify identical results across different servers — and also across different implementations — can trust that the result reflects real time, not a shared bug.

Our goal in writing a new implementation was to strengthen that independence. We wanted a modern, easily-audited Clojure implementation with clear interfaces, simple cryptographic primitives, and a transparent code path. By diversifying the ecosystem, we help make RoughTime more resilient.

For a detailed look at our motivations, the ‘Happens-Before’ ordering model, and why we chose the JVM/Clojure for a security-critical protocol, read our technical deep-dive: Why We Built a New RoughTime Implementation

Why RoughTime Matters

Accurate, verifiable time underpins nearly every part of the web — from TLS certificates to log integrity, digital signatures, and distributed consensus. Traditional NTP and centralized time authorities cannot offer cryptographic proof of correctness; RoughTime does. It provides a lightweight, verifiable way to prove that an event happened after a known point in time, without requiring trust in the network path.

We believe RoughTime is one of the most important protocols of the modern web. It’s small, efficient, and conceptually elegant: each response forms part of a signed chain, making equivocation detectable and giving users a simple proof of time. We want to see it succeed and become widely adopted—and this server, and our Clojure implementation, are our small contribution toward that goal.

If you would like to deploy a RoughTime server and help grow the ecosystem, our server Deploy Notes walk you through a mostly-automated process. It should take fifteen minutes or less, and it’s a simple and impactful way to contribute to internet security.

Project Links

This service is maintained by Sturdy Statistics. We welcome feedback, bug reports, and inter-server cooperation to grow the RoughTime network.