Domain-Keyed Document Stamp
Un protocole ouvert pour vérifier l’origine et le contenu des documents.
-
Sans friction
Le logiciel émetteur crée un cachet par un seul appel de fonction. Tout vérificateur conforme peut le contrôler, y compris un vérificateur fonctionnant dans un navigateur web, sans compte ni frais.
-
Portable
Les données signées sont contenues dans le code QR lui-même, de sorte qu’un cachet reste vérifiable après l’impression, la photocopie ou la numérisation du document.
-
Normalisé
Chaque composant est une norme publiée existante : codes QR, Base45, compression DEFLATE, signatures Ed25519 et Domain Name System.
Au moins 27 milliards d’euros sont perdus chaque année en Europe à cause de la fraude
Ce montant est la somme des estimations publiées pour trois types de fraude dans lesquels une organisation verse de l’argent sur la foi de documents : les déclarations de sinistre, les demandes de prestations sociales et les virements bancaires. La plupart des pays européens ne publient pas de telles estimations ; le montant est donc un minimum, et les pertes réelles sont plus élevées. Sa composition figure sous l’exemple.
Ce type de fraude repose couramment sur des documents modifiés ou fabriqués, tels que des factures, des bulletins de paie, des rapports médicaux et des relevés bancaires. Comme les fichiers PDF et les documents imprimés ne portent aucune preuve fiable de leur origine, un destinataire ne peut généralement pas en vérifier un sans contacter l’organisation qui l’a émis, une démarche lente et souvent omise.
- Customer
- Harbour Logistics B.V.
- Date
- 30 Sep 2026
- Amount
- 4,812.50 EUR
- Pay to IBAN
- LT12 1000 0111 0100 1000
- Due
- 30 Oct 2026
- Avant
- NL91 ABNA 0417 1643 00
- Après
- LT12 1000 0111 0100 1000
Dans cet exemple, le numéro de compte bancaire d’une facture authentique a été remplacé. Le document ne présente aucune trace de la modification, et un client qui paie la facture virerait le montant sur le nouveau compte.
Composition de l’estimation
| Catégorie | Zone | Source | Perte annuelle |
|---|---|---|---|
| Fraude aux sinistres d’assurance, détectée et non détectée | Marchés européens qui la déclarent | Insurance Europe, Insurance fraud: not a victimless crime, pour 2017 | 13,0 milliards € |
| Fraude aux prestations sociales | Royaume-Uni | Department for Work and Pensions, Fraud and error in the benefit system, pour 2024-2025 | 7,7 milliards € |
| Fraude aux prestations familiales, aux aides au logement et aux minima sociaux | France | Cour des comptes, Certification des comptes du régime général, exercice 2023 | 3,9 milliards € |
| Virements frauduleux | UE et EEE | ABE et BCE, 2025 Report on Payment Fraud, pour 2024 | 2,5 milliards € |
| Total | 27,1 milliards € |
L’estimation britannique de 6,5 milliards de livres est convertie à 1,18 € par livre, le taux de référence moyen de la Banque centrale européenne pour 2024. Ne sont pas comprises la fraude commise par les émetteurs de documents eux-mêmes, comme la fraude à la TVA de type carrousel au moyen de factures des propres sociétés des fraudeurs, que la Commission européenne estime entre 12,5 et 32,8 milliards d’euros par an, ni la fraude aux demandes de prêt, de crédit immobilier et de subvention, pour laquelle aucune estimation comparable n’est publiée.
Documents couramment utilisés dans la fraude
Ce type de fraude repose sur des documents qu’une organisation émet et auxquels une autre se fie, alors que le document passe entre les mains d’un tiers, tel qu’un demandeur, un assuré ou un fournisseur. Les documents suivants sont couramment modifiés ou fabriqués à cette fin. Chacun d’eux peut porter un cachet DKDS de son émetteur.
Revenus et finances
- Bulletins de paie
- Attestations d’employeur
- Relevés bancaires
- Avis d’imposition
- Relevés de retraite
Factures et paiements
- Factures
- Avoirs
- Demandes de paiement
- Bons de commande
- Reçus
Assurance et santé
- Rapports médicaux
- Arrêts de travail
- Ordonnances
- Devis de réparation
- Rapports d’expertise
Logement
- Baux de location
- Quittances de loyer
- Factures d’énergie
- Justificatifs de domicile
- Estimations immobilières
Formation et emploi
- Diplômes
- Relevés de notes
- Certificats professionnels
- Contrats de travail
- Références
Actes officiels
- Actes de naissance et de mariage
- Extraits de casier judiciaire
- Extraits Kbis
- Permis et autorisations
- Décisions de justice
Commerce et transport
- Certificats d’origine
- Connaissements
- Bons de livraison
- Certificats d’inspection
- Documents douaniers
Véhicules
- Certificats d’immatriculation
- Procès-verbaux de contrôle technique
- Carnets d’entretien
- Attestations de kilométrage
- Contrats de vente
Les passeports et les cartes d’identité ne figurent pas dans la liste. Ils possèdent leurs propres dispositifs de sécurité et, dans l’Union européenne, une puce électronique qui peut être vérifiée.
Fonctionnement d’un cachet
Un cachet DKDS est un code QR imprimé sur un document. Il contient les données essentielles du document, le nom de domaine de l’émetteur et une signature numérique portant sur les deux. La clé publique nécessaire pour contrôler la signature est publiée dans les enregistrements DNS de l’émetteur, d’une manière semblable à DKIM pour le courrier électronique, de sorte que n’importe qui peut vérifier un cachet sans compte ni intermédiaire.
- 1L’émetteur publie une clé publique sous la forme d’un enregistrement TXT dans le DNS de son domaine. Cela se fait une fois, puis de nouveau à chaque remplacement de la clé.
- 2Pour chaque document, l’émetteur signe les données essentielles avec la clé privée correspondante et les imprime, avec la signature, sous la forme d’un code QR sur le document.
- 3Un vérificateur scanne le code QR et lit les données, la signature et le nom de domaine de l’émetteur.
- 4Le vérificateur obtient la clé publique dans le DNS de ce domaine et contrôle la signature à l’aide de celle-ci.
Vérification d’un document
Un vérificateur affiche le domaine qui a signé le cachet et les données qu’il contient. Le lecteur compare ensuite ces données avec celles imprimées sur le document. Une différence entre les deux indique que le document a été modifié après son émission.
- Customer
- Harbour Logistics B.V.
- Date
- 30 Sep 2026
- Amount
- 4,812.50 EUR
- Pay to IBAN
- LT12 1000 0111 0100 1000
- Due
- 30 Oct 2026
- Supplier
- Northwind B.V.
- Invoice no.
- 2026-0917
- Date
- 2026-09-30
- Customer
- Harbour Logistics B.V.
- Amount
- 4,812.50 EUR
- Pay to IBAN
- NL91 ABNA 0417 1643 00
- Due
- 2026-10-30
Dans cet exemple, la signature est valide, ce qui montre que le cachet a été émis par northwind.example. Le numéro de compte bancaire du cachet diffère de celui imprimé sur la facture, ce qui montre que la facture a été modifiée après son émission.
Le cachet présenté est un cachet DKDS valide. Comme northwind.example est un nom de domaine réservé, un vérificateur réel ne trouvera pas sa clé.
Un cachet émis par dkds.org
Ce cachet a été signé le 10 octobre 2026 avec la clé que dkds.org publie sous k2026._dkds.dkds.org. Un vérificateur signale une signature valide de dkds.org et affiche les champs que contient le cachet. Un téléphone peut lire le cachet sur l’écran ; sur un ordinateur, son texte peut être copié et collé dans le vérificateur.
Texte du cachet
DKDS:*50CVCKVC7*5$KE$U0NF6TF6NMDLZ3A200Z4AHM0WGCN1*DOZ1CG/OJ9O.ND/0L$195ZOIEG%D2SVDGL744N*JS3YV:3K9KB7-PNW7G$4O91$GJDY5VWS6TACAB+-MGRSGIO5NGF7RV8GH57BTU/2DQA4CFUGJVIASI6L1SD921-2MIRB30I5 F516:O3TQI$I8GYK/:JN9AROT3VBROMU2E5/IVMF+/KCXLNY5.T8.BRZ$NL2R4O3XH7R.65I175LN.9*LLCB4GVKC71%/5SQ7
Ce qu’un cachet établit
Un cachet valide établit
- Que le cachet a été signé avec une clé publiée par le titulaire du domaine.
- Que les données du cachet n’ont pas été modifiées depuis la signature.
- Le moment où le cachet a été signé.
Un cachet valide n’établit pas
- Que les données sont vraies. Un cachet indique qui les a déclarées, non si elles sont exactes.
- Que le document imprimé correspond au cachet. Cette comparaison est faite par le lecteur.
- La confidentialité. Le contenu d’un cachet peut être lu par quiconque le scanne.
Implémentations
DKDS est défini par une spécification ouverte, qui comprend des vecteurs de test permettant de contrôler l’exactitude d’une implémentation. Chacun peut implémenter le protocole sans autorisation ni redevance.
L’implémentation de référence, dkds.js, peut être utilisée comme bibliothèque logicielle, comme outil en ligne de commande ou comme service HTTP local, ce qui permet à des logiciels écrits dans d’autres langages de créer et de vérifier des cachets. Un vérificateur fonctionnant dans le navigateur est disponible à l’adresse scan.dkds.org ; les documents sont vérifiés sur l’appareil et ne sont pas transmis.