Proof of existence: proving a file existed on a date

To prove a file existed, unchanged, by a certain date, record its fingerprint (a SHA-256 hash, a code that changes if one byte of the file changes) with a time recorded where it can't be changed later, such as an anchor on a public blockchain; anyone holding the same file can then recompute the fingerprint and see that it was recorded by that time. An Attest receipt does exactly this: your browser fingerprints the file without uploading it, the fingerprint is anchored on Horizen, and anyone can check the file for free at attest.datahubz.com/verify.

By DataHubz · Updated October 12, 2026 · 6 min read

What proof of existence proves, and what it doesn't

Proof of existence answers one question: did this exact file exist, unchanged, by a given moment? It rests on two pieces.

  • A fingerprint. A SHA-256 hash is a 64-character code calculated from a file's bytes. The same file always gives the same code; a file that differs by one byte gives a completely different one; and the file can't be rebuilt from its code, so the code can be made public without revealing the file.
  • A fixed time. The fingerprint is written somewhere that records when it arrived and can't be changed afterward. A public blockchain is such a place: a public ledger anyone can read.

Put together, they prove that the exact file existed by that time, and that the file you hold today is the same one. They don't prove who wrote the file, whether its contents are true, or that it didn't exist earlier. Attest's verifier says so on every receipt: "This proves existence and integrity of the exact content, not who authored it or whether its contents are accurate."

Practical uses

  • Creative and design work before you share it with a client or a partner: drafts, mockups, photos, audio and video.
  • A quote, proposal or report as sent, so there is no later argument about which version went out.
  • Research data and test results at the moment they were collected.
  • Software releases: the build you shipped, by its fingerprint.
  • Condition records, such as photos of equipment or a property on handover.
  • Board materials and minutes as circulated before a meeting.
  • Automated actions: what an AI agent or a script did, recorded as it happened.

How an Attest receipt works

A receipt is a permanent record that content with a given fingerprint existed, unchanged, at a point in time. Its kind can be Document, Image, Video, Audio, Event, Agent action, Code artifact or Custom.

  1. Your browser calculates the file's fingerprint. Only the fingerprint is sent: the file never leaves your device. Pasted text is fingerprinted in the browser the same way.
  2. Attest batches each user's receipts into a Merkle tree, a structure that combines many fingerprints into one 32-byte root, and gives each receipt an inclusion proof that ties it to that root.
  3. The root is anchored on Horizen mainnet from your own wallet, a blockchain account Attest creates and runs for each user, with network fees paid by Attest. On Pro and organization plans, a receipt is anchored right away; on the Free plan, within about 10 minutes.
  4. From then on, the receipt can be verified without Attest, from its evidence file. Attest's registry contract records when each value was anchored and has no function to change or remove that record.

Receipts are never edited or deleted. If you need to correct one, you create a new receipt that names it in its supersedes field (POST /api/v1/receipts), and both stay on record.

Make a receipt, step by step

  1. Sign in at attest.datahubz.com with your email.
  2. Open Receipts in the menu and click Create receipt.
  3. Choose File, then click Choose a file (hashed in your browser) and pick the file (or choose Text and paste it: it is fingerprinted in your browser the same way).
  4. Pick its kind. Image, video and audio files get that kind automatically.
  5. Add a claim if you want, such as "Q3 report, final". Anyone who verifies the receipt sees the claim, so keep confidential details out of it.
  6. Click Create receipt. Attest shows the receipt's ID (rcpt_...) as a link. Once it is anchored, open it and download the Evidence file, and keep both with the file: with them, anyone can check it using the open-source verifier, even without Attest.
  7. Keep the file exactly as it is. Opening and re-saving it, exporting it again or compressing it makes a new file with a new fingerprint.

Receipts come with Pro ($49 a month, 10,000 records) and with free accounts that use Attest's other tools (10 records a month); the Signing plan covers document signing only. Developers can create receipts with POST /api/v1/receipts, sending only the SHA-256.

How anyone checks it

Anyone can check a receipt for free, with no account.

  1. Go to attest.datahubz.com/verify and drop the file on the page. It is fingerprinted in the visitor's browser and never uploaded.
  2. If the file matches, the page finds the earliest receipt with that fingerprint and says: "Content with this fingerprint existed no later than" the anchor's time "and has not been altered since." It shows the recorded claim and the anchoring transaction.
  3. If even one byte differs, it says: "No receipt matches this content fingerprint. The content was never registered, or it has been modified since registration."

A receipt's ID works too, and its page offers an evidence file that Attest's open-source verifier checks on the visitor's device: the file against its fingerprint, the path to the anchored root and the transaction on Horizen. Each step can also be repeated with any SHA-256 tool and any Ethereum JSON-RPC node, with no Attest service involved.

A receipt doesn't name the account that made it. It is anchored from your own wallet, though, and that wallet's address is public, so the number and timing of the anchors sent from it can be seen, never their content. To show the file is yours, keep the receipt with the rest of your records: the drafts, the emails and the invoices that tie the file to you.

What the law says

Courts weigh this kind of evidence, and in most places it has no special statute. Some laws address it directly:

  • European Union. An electronic time stamp is "data in electronic form which binds other data in electronic form to a particular time establishing evidence that the latter data existed at that time" (eIDAS Article 3(33)). It "shall not be denied legal effect and admissibility as evidence in legal proceedings solely on the grounds that it is in an electronic form" or isn't qualified (Article 41(1)); only qualified time stamps carry a presumption of accuracy (Article 41(2)).
  • United Kingdom. An electronic time stamp is admissible on whether data "existed at the time" (Electronic Communications Act 2000, section 7B).
  • Vermont. The time a blockchain shows for a record is presumed to be when it "was added to the blockchain", and the presumption "does not extend to the truthfulness, validity, or legal status of the contents" (12 V.S.A. 1913(b)).
  • Brazil. Against third parties, a private document's date can be established by a fact that shows "de modo certo, a anterioridade da formação do documento" (with certainty, that the document was made earlier) (Código de Processo Civil, article 409); no case law on blockchain anchors under this rule was found.

Where a law prescribes a particular method, such as Mexico's conservation certificates from accredited providers for merchants' records (NOM-151), a blockchain anchor doesn't replace it. This page is general information, not legal advice; the guide to blockchain anchors and the law covers more countries.

Proof of existence for signed agreements

Every agreement signed on Attest already carries this proof: its signed state is anchored on Horizen, and so are the pages of its sealed copy. To prove an agreement exists without revealing it, a signer can share a zero-knowledge proof instead; see keeping an agreement confidential while proving it exists. To show when an agreement was signed, see how to prove the date a document was signed.

Questions people ask

Does Attest see my file when I create a receipt?
No. Whether you choose a file or paste text, your browser calculates the fingerprint and only the fingerprint is sent. The file or text never leaves your device, and nobody can rebuild it from its fingerprint.
Can someone find my file from my receipt?
No. A fingerprint can't be turned back into the file: only someone who already holds the same file, or can guess a short text word for word, can match it, which is how verification works. Anyone who verifies sees the claim you wrote, so keep confidential details out of it.
Does a receipt prove I created the file?
No. It proves that the exact file existed, unchanged, no later than the anchor's time; it doesn't name the account that made it, though its anchor is sent from your wallet, whose address is public. Keep it with your drafts, emails and invoices, which tie the file to you.
What happens if I edit the file after making a receipt?
The edited file has a new fingerprint, so it no longer matches the receipt. Make a new receipt for the new version; to link the two, create it through the API with the old receipt's ID in its supersedes field, and both stay on record.
What does it cost?
Receipts come with Pro, at $49 a month with 10,000 records, and with free accounts that use Attest's other tools, which get 10 records a month. Checking a receipt is always free and needs no account.

Sources

  1. Regulation (EU) No 910/2014 (eIDAS), consolidated text, Articles 3(33) and 41, EUR-Lex, Publications Office of the European Union, read October 12, 2026
  2. Electronic Communications Act 2000, section 7B, legislation.gov.uk (The National Archives), read October 11, 2026
  3. 12 V.S.A. 1913, Blockchain enabling, Vermont General Assembly, read October 12, 2026
  4. Código de Processo Civil (Lei nº 13.105/2015), article 409, Presidência da República (Brazil), read October 11, 2026
  5. NOM-151-SCFI-2016 (DOF 30-03-2017), Diario Oficial de la Federación (Mexico), read October 11, 2026

Read next