Open source

Three Sigelith programs are public code — the key server and the proof client under the Apache 2.0 licence, the backup program under the GPL 3.0 — and they are the parts where you would otherwise have to take our word for something.

That is the whole rule we apply. A service that asks you to verify things for yourself cannot hand you a verifier nobody may read, and a scheme built on independent key holders cannot ask those holders to run a program they are not allowed to inspect, and a program you trust with your files and the proofs that go with them should let you read what it does with them. Everything else is a business decision; these three are not.

Sigelith Key — the key server

beat-key

Go · Apache-2.0 · container image about 3 MB

A time capsule sealed on this site cannot be opened by us alone. The key is split between an independent randomness beacon (drand), a key server and the user's recovery code; by default that key server is our own, and this is the software it runs — other operators can run it too. It publishes exactly one thing: a BLS signature over a beat identity, and only once that beat has already passed. For any beat still in the future it answers with a plain 404 — a rule in its code, not a cryptographic limit.

It holds one 32-byte private key, generated on the operator's own machine on first start. There is no import path: nobody can hand an operator a key, and an operator cannot accidentally deploy someone else's. It stores no user data — not one byte of anyone's content passes through it.

  • no user data
  • 2–3 MB of RAM
  • downtime delays, never destroys
  • reproducible verification with cosign

Sigelith Desktop — the desktop proof client

Sigelith Desktop

Python · PySide6 (Qt) · Apache-2.0 · Windows 10/11, 64-bit

A desktop client for the public proof-of-existence log. It gives a file a timestamp you can later use to show the document existed at a given moment and has not changed since. The file never leaves the computer: only its SHA-256, computed locally, goes out. Up to version 2.2 the program was called BeatStamp; version 3 takes over its data and history on first start.

It checks proofs itself instead of asking our server whether everything is fine. It recomputes the Merkle inclusion path, verifies the Ed25519 signature against keys compiled into the program rather than keys the server sends, and refuses a stamp whose time falls outside the week its root covers. Proof files verify offline, with no network and no account.

  • file stays on your device
  • no account, no telemetry
  • offline verification
  • 11 languages

The Microsoft Store is the simplest way to install it: the store signs the package and keeps it up to date. Every release is also tagged on GitHub with its source — and the proofs themselves hold without trusting the program that made them.

Sigelith Backup — versioned backups

Sigelith Backup

Python · PySide6 (Qt) · GPL-3.0-or-later · Windows 10/11, 64-bit

Dated, optionally encrypted backups of your folders on an external drive. It keeps your Sigelith proofs together with the exact documents they belong to, seals each backup version in the public log, gives any backed-up file its own time proof and audits a backup against its seal — so you should be able to read what it does with your files.

It is free. The GPL keeps improved versions open as well; the licence covers the code, not the Sigelith name and logo.

  • no account, no telemetry
  • 11 languages
  • recovery script on the backup drive

The API clients

The five single-file clients on the integrations page — Python, PHP, JavaScript, C# and C++17 — are Apache-2.0 as well. Copy one into your project; there is nothing to install and no key to request.

What is not open

The server behind sigelith.org is not public code. We would rather write that here than let you assume otherwise.

It also does not need to be, and that is the point of the design: a proof from this service is checked against public data, not against our good name. The weekly Merkle roots are published on the proof page, anchored in Bitcoin and against an independent bank reference; the algorithms are written down in the specification, and the client above recomputes everything from your file. If we vanished tomorrow, the proofs you hold would still verify.

The mobile apps are not public code either. Nothing they produce has to be taken on trust: it is checked against the public log and the open formats, with the open clients and libraries.

← back to Sigelith