FRANCE TITRES / ANTS
2D-DOC
Format specifications, document profiles and trust resources for the French ecosystem.
Specifications & profilesRead the sourceVDS VERIFY / 2D-DOC / CEV
A small printed square. Signed data. And expert engineering to read it, verify it and understand what it proves. With VDS Verify, Stelau makes that proof accessible.
A mobile app, an API and an SDK built by Stelau.


Our SDK is integrated into France Identité. Our API is also used to generate its visible digital seals and in France Titres’ 2D-DOC verification service.
The figure refers to France Identité users, not a scan count. France Identité · 1 October 2026 · VDS Verify integrations
01 / What the code protects
The code carries data and its signature. This signature makes it possible to check that the covered data has not been changed, and establish its origin within a defined trust framework. The QR code or Data Matrix carries that proof.
A visible digital seal (VDS, or CEV in French) bridges a document and a proof that a machine can verify.
STELAU / PROOF IN MOTION
Educational simulation · fictional data · non-scannable code
The issuer signs the document’s data.
The reader checks the signature of the received data.
Data in the code changes; the signature stays the same.
The signature no longer matches the modified data.
The signature covers the data in the code. Printed text must also be compared with that data.
02 / From standards to practice
Our work connects 2D-DOC specifications, standardised seals and documents already in circulation. A standard’s name never removes the need to specify the profile, version and trust conditions.
FRANCE TITRES / ANTS
Format specifications, document profiles and trust resources for the French ecosystem.
Specifications & profilesRead the sourceINTERNATIONAL STANDARD
A framework for the structure, representation, production and verification of visible digital seals.
Published in 2023Read the sourceLEGACY COMPATIBILITY
A supported format for existing seals. The September 2020 standard has since been withdrawn.
Withdrawn standard / existing formatsRead the sourceISO 22376 does not, on its own, replace national specifications or trust governance rules. ISO 22376:2023
03 / Our verifier
VDS Verify reads codes on paper or on screen, displays decoded data and shows the verification result. Seal and certificate details take the result beyond a simple green indicator.
A mobile reader for examining documents and signed data. Its code is published under Apache 2.0.
Services for generating, decoding and verifying seals within your workflows.
Integration within other applications, such as France Identité.


04 / Experts who code
In the public app, the scanned code is sent to an API for decoding and verification. The app then checks the result’s structure before displaying it. This excerpt shows the boundary between reader and service; it does not show the cryptographic engine.
Behind this apparent simplicity lies the implementation work: handling data precisely, explaining errors and never confusing a successful read with a valid proof.
const response = await integrityFetch(
apiUrl,
"/api/v1/decode",
JSON.stringify({ vds: b64encodedvds }),
);
const { success, message, vds } = await response
.json()
.catch(() => ({}));
if (success === true) {
const normalized = normalizeVdsResult(vds);
if (!normalized) {
showError("error_invalid_qr");
return;
}
// …
}Encoding, headers, versions and schemas: verification applies to an exact representation of the data, not an approximation of the displayed text.
A mathematically correct signature is not enough. The issuer’s certificate, its validity and applicable revocation information must be examined.
Distinguish seal families and document profiles; handle changes while preserving the ability to read documents already issued.
Decoded data, verified signature, indeterminate result: distinct states that the person making a decision can understand.
05 / Paper, copies and the holder
A seal can be printed and read again: if the code stays readable, its data and signature survive the change of medium. This ability to move back to paper is a practical benefit for today’s uses.
A static seal can also be copied. Its signature can remain valid without establishing that the presenter is its legitimate holder. Integrity and protection against unauthorised transfer are distinct questions.
STELAU / PROOF IN MOTION
Educational simulation · fictional data · non-scannable code
A digital document carries signed data.
The same code moves to paper without changing its content.
The reader retrieves the data and checks its signature.
A copy can retain a valid signature without proving that the presenter is legitimate.
If the code stays readable, printing preserves the cryptographic proof. It does not establish who presents it.
Depending on the protocol and its implementation, a wallet can add proof of possession and bind a presentation to a verifier’s challenge. These mechanisms complement the document’s signature. Our work on nested seals also explores binding certified data to the presenting device.
Your next use case
Seal issuance, document reading, verifier integration: our experts support you from choosing the format to implementation, with a precise understanding of the guarantees required.
Let’s discuss your project