Cryptographic timestamping on the Tezos blockchain.

Timestamp Files

Choose a file to calculate its SHA-256 hash locally in your browser. Alternatively, hash the file yourself and paste the hexidecimal representation into the field below. Submitting will send the hash to the api.tzstamp.io aggregator server, which will include your file hash in its next publication. Once published to the blockchain, your timestamp proof will become available to download below.

The aggregator root is published every five minutes.

Download Proofs

Download links for timestamp proofs will appear after stamping a file or hash. These links will persist between browser sessions, but be sure to save the proofs locally: the aggregator server will not cache them indefinitely. Consider saving multiple copies.

Verify Proofs

Choose a file (or enter its SHA-256 hash) and a corresponding timestamp proof. Send a request to the mainnet.smartpy.io public Tezos node to verify the proof and display the timestamp.

2021-06-02: Verification in the web app has been disabled temporarily. Please use the TzStamp CLI in the time being.

Aggregator API

Public aggregator base URL: https://api.tzstamp.io

You can run your own aggregator server and use our management utility to deploy your own contract to any Tezos network.

Submit a timestamp

POST /stamp

Submits a hash to be included in the next publication.

The Content-Type header must be one of application/json or application/x-www-form-urlencoded.

The JSON payload must be an object with either a data or hash field containing a hexidecimal representation of a hash. The URL-encoded payload must similarly have one of those two parameters. The server will accept arbitrary data, so ensure that the hash is cryptographically secure. A maximum of 64 bytes will be accepted.

The server will respond with a plaintext URL at which to download the proof once published. A JSON or URL-encoded with a url field response may be requested with the Accept header.

Example

$ curl https://api.tzstamp.io/stamp -d "data=40cb6ac0645f648a12d0aab7df480796fc4165609a65ea430018d9b3af68b76d"

Download a proof

GET /proof/:id

Retrieve a proof by ID from the server.

The server will respond with the one of the following:

202 Accepted
The timestamp proof is pending publication.
404 Not Found
The proof either does not exist or has been deleted from the server cache.
200 OK
The proof is included in the body, encoded in JSON.

Example

$ curl https://api.tzstamp.io/proof/80eb84095823ec33a1d00dadf844028082f384b760f189b7ccc442f7b5b63969 -o myfile.proof.json