Guide Verifiable extracts

Verifiable extracts

The legal export gives the whole session. Often, only one moment is needed: 40 seconds to hand to a lawyer, a journalist, a newsroom. The verifiable extract does that: it proves itself, without revealing anything else of the session.

Preparing an extract

The extract is available once the session is closed. From the session, choose Verifiable extract, then:

  1. the take, if there are several;
  2. the start and the end, segment by segment (2 to 3 seconds each);
  3. Prepare the extract.

The archive is assembled in your browser. If a segment is missing in the chosen range, the gap stays visible in the proof: it is never filled.

A contact the session is shared with can prepare an extract too. Each extract is recorded in the session log.

What the archive contains

File Contents
segments/<n>.<ext> The decrypted originals, not re-encoded
encrypted/<n>.bin The same segments, as the server received them, encrypted
preuve.json For each segment: its public metadata, its path up to the session root, and the key that opens it alone
segments-root.json, .sig, .tsr The session root, signed by the server at closing, and its timestamp by a third-party authority
extract.webm The range assembled into a single file, to watch it (outside the proof)
VERIFICATION.md The instructions, with the openssl commands

The log, locations, the session name and the other takes are not included.

Why it is a proof

At closing, the server computes a root that sums up every segment of the session, signs it and has it timestamped by an independent authority. Each segment of the extract is tied to that root by a short path of hashes: no segment can be added, removed or modified without the check failing.

Each segment comes with its own key. It opens that segment and no other: neither the session key nor the rest of the footage is disclosed. With it, a third party sees that the encrypted file the server received gives exactly the decrypted file provided: they do not have to take the phone's word for it.

What it proves: these files are exactly segments the server received at these times, consecutive in this take, in a closed and timestamped session. What it does not prove: what happened out of frame, before or after the range.

Checking a proof

The Verify a proof page is public: no account needed. Drop the archive of an extract or a legal export. Everything happens in the browser, the file is sent nowhere.

Each check is shown with its result: server signature, timestamp, each segment belonging to the root, opening with its key, chaining, declared gaps. The page also compares the server key with the one ripoux.fr publishes today.

For the timestamp (RFC 3161 standard), the page checks that the timestamp proof (.tsr file) covers this document and that it is signed by the certificate it contains. Trusting the authority itself remains your choice: the openssl command in VERIFICATION.md checks it with its official certificate.

If the timestamping authority had not answered yet when the extract was prepared, it can still be verified, without a third-party date. Prepare it again a little later to get one.