FDF Labs
BurnLedger

Proof the data is gone.

BurnLedger issues Verification Records: cryptographic proof that a person's data was present in your systems and then absent. Each record is signed and written to a public log, and anyone can check it, with no account and without asking BurnLedger anything.

Verification Record format 3.0

2403ce6d-0ba9-4d41-95c5-ef5613f8ec65

2records before 0records after

Subject
a4119517…0796fcaaa salted hash, never the plain identifier
System
demo-userspostgresql · existence
Query
7595dcd8…4f4d8e99the question asked, as a hash
Before
2026-08-19 18:13:24Z2 records
After
2026-08-19 18:13:33Z0 records
Signature 1
53c2609b…6a886c05the attestation: present
Signature 2
e4567c26…33f82901the whole record: now absent
Log
entry #33 of 34root 2c353e1f…c6e5cc24
BurnLedger · Ed25519 dp_k_aa84553d…edf067ff
The sample record burnledger.io publishes on its verify page, as it is: format 3.0, issued on 19 August 2026 against a demo database. The file is JSON; here its bytes are shown in hex and shortened.

Two calls around your own deletion.

BurnLedger deletes nothing. It looks before, looks after and signs the difference. This is how that same record came to be.

  1. 01 Attest

    2

    One call snapshots the subject: BurnLedger queries your systems, hashes the matching records and discards the raw data. Only hashes are kept.

  2. 02 Delete

    you

    You delete with your own tools and your own process. BurnLedger is not in the loop: its credentials are read-only.

  3. 03 Verify

    0

    A second call runs the same query again. Data gone? The record is signed. Still there? Nothing is issued.

  4. 04 Certify

    #33

    The record, signed with Ed25519, is appended to a public, append-only transparency log (RFC 6962) with its inclusion proof.

Anyone can check it.

The public signing keys are published and the checker ships in the npm package. That and the file are enough: the signatures and the log proof check offline. Change one byte and the check fails.

The originalexit 0
$ curl -s https://api.burnledger.io/.well-known/burnledger-keys | jq .data > keys.json
$ npx burnledger check --cert certificate.json --keys keys.json
Verification record dc_2403ce: VALID_REVOCATION_UNKNOWN (offline — nothing was asked about revocation, so nothing is known; re-run with --online to fetch a signed status statement)
  Subject: sha256:a41195...
  Format version: 3.0
  Systems: 1 (postgresql [existence])
  Records before: 2
  Records after: 0
  Records [demo-users]: 2 at attestation, 0 after deletion
  Committed: 2026-08-19T18:13:24Z
  Verified: 2026-08-19T18:13:33.918793335Z
  Registration: not stated (format 3.0 predates the field; its absence is not a pass)
  Transparency log: entry #33, inclusion proof VALID
  Key statuses: signed key_list.v3, VALID until 2026-10-25T09:37:16Z
  Key list trust: the list is signed by a key inside itself — trust-on-first-use, not proof; pin this file and compare it on later runs
$ echo $?
0
One 2 changed to a 3exit 1
$ sed 's/"attested_count": 2/"attested_count": 3/' certificate.json > tampered.json
$ npx burnledger check --cert tampered.json --keys keys.json
Verification record dc_2403ce: INVALID (certificate signature is invalid)
$ echo $?
1

Run on 24 October 2026 with the burnledger 0.10.0 package from npm, on the sample record above. "Revocation unknown" is not an error: revocation is the one thing that cannot be known offline, and the checker says so instead of calling it valid. The same check runs in the browser at burnledger.io/verify.

What it proves. What it doesn't.

A record is evidence of a measurement, not a compliance programme, and it does not make you compliant. Your DPO or counsel decides what your obligations are; this is one piece of evidence they can put in front of a regulator or a customer's auditor.

Proves

  • That, for the queries whose hashes it names, records matching the subject were present in those systems at attestation and absent at verification.
  • That BurnLedger's published signing key signed both observations and what binds them.
  • That the record sits in the public log at the index it names. BurnLedger can't deny it or backdate it.

Doesn't prove

  • Anything about systems that were never registered, data the queries do not match, or copies outside the queried stores, such as backups or exports.
  • Which hardware signed. BurnLedger says its signing key exists only inside an AWS Nitro Enclave, but the record carries no hardware attestation: that is BurnLedger's claim about how it operates, not arithmetic you can do.
  • That it hasn't been revoked, when offline. Without a fresh signed status statement, the checker reports "unknown", never "valid".

GDPR Article 17CCPA / CPRACalifornia Delete Act (SB 362)

Deletion laws differ; the fact they demand doesn't: data present, then absent. One record, any jurisdiction.

For whoever writes the code.

SDKs for TypeScript and Python. Twenty connectors cover twenty-two systems, always with read-only credentials, checked against the engine's own privilege tables wherever the engine can answer.

TypeScriptnpm i burnledger · pip install burnledger
import { BurnLedger } from "burnledger";

const bl = new BurnLedger({ apiKey: process.env.BURNLEDGER_API_KEY });

// before you delete — snapshot the subject
const att = await bl.attest("user@example.com", {
  systemIds: ["sys_pg_users", "sys_s3_uploads"],
});

// after you delete — verify. This ISSUES the record.
const res = await bl.verify(att.id, "user@example.com");
await bl.savePdf(res.certificate.id, "certificate.pdf");
  • PostgreSQL
  • Neon
  • Supabase
  • MySQL
  • SQL Server
  • Oracle
  • MongoDB
  • Redis
  • Elasticsearch
  • Cassandra
  • DynamoDB
  • Neo4j
  • Amazon S3
  • Azure Blob
  • Google Cloud Storage
  • Redshift
  • Snowflake
  • BigQuery
  • Databricks
  • Teradata
  • HBase
  • MarkLogic

The example is the one on BurnLedger's site. Azure Blob, HBase and MarkLogic have no privilege catalog to ask: there BurnLedger records your read-only assertion, and the record says which of the two it was.

Prove your next deletion.

Sign in, pick a plan and issue real records into the public log, with no sales call. BurnLedger is a product of ProChatFlow LLC.

← Back to home