Une question que pourrait poser un photographe, une archiviste ou un ayant droit :

« J’ai ce TIFF depuis 2018. Comment démontrer qu’il correspond toujours exactement au fichier archivé à cette date ? »

La question paraît simple, mais elle en contient plusieurs : ce fichier a-t-il changé ? Par rapport à quoi ? Qui l’affirme ? Depuis quand ? Et comment quelqu’un d’autre peut-il le vérifier, sans avoir à me croire sur parole ?

Ce dernier article de la série les reprend une à une. Chaque étape ajoute quelque chose à la précédente, et chacune a ses limites.

1. L’empreinte : décrire un fichier sans ambiguïté

Le point de départ est l’empreinte SHA-256, présentée dans le premier article de la série : une suite de 64 caractères calculée à partir de tout le contenu du fichier. Le même fichier donne toujours la même empreinte ; le moindre changement en donne une autre.

L’empreinte permet de désigner un fichier de façon exacte. Dire « le TIFF dont l’empreinte est 3a7f… », c’est désigner ce contenu-là et aucun autre, quel que soit son nom ou l’endroit où il se trouve.

Ce qu’elle ne dit pas : à elle seule, une empreinte n’a pas de date ni d’auteur. Si vous la recalculez aujourd’hui, elle décrit le fichier d’aujourd’hui. Pour prouver qu’il n’a pas changé depuis 2018, il faut une empreinte enregistrée en 2018, et une raison de faire confiance à cet enregistrement.

C’est une limite honnête à dire tout de suite : aucun outil ne peut prouver après coup l’état d’un fichier à une date où personne n’a relevé son empreinte. La preuve commence le jour où l’empreinte est prise. Le meilleur moment pour la prendre était le jour de l’archivage ; le deuxième meilleur moment, c’est aujourd’hui.

2. Le contrôle de fixité : comparer dans le temps

Une empreinte de référence ne sert que si on la compare. C’est le contrôle de fixité : relire le fichier en entier, recalculer son empreinte, la comparer à la référence.

Dans Obscura Vault, l’empreinte de chaque fichier est prise à l’import, puis comparée à chaque audit, à la demande ou planifié chaque semaine ou chaque mois. Chaque contrôle s’ajoute au journal de fixité, avec sa date, son résultat, l’empreinte attendue et celle observée ; un contrôle ne réécrit jamais un ancien. Le fichier est alors Vérifié, Altéré, Non vérifiable (introuvable ou illisible : rien n’est prouvé, ni dans un sens ni dans l’autre) ou Jamais vérifié. Voir Le contrôle de fixité.

Ce qu’il ne dit pas : ce journal est dans votre bibliothèque. Il vous convainc vous. Pour convaincre quelqu’un d’autre, il faut lui donner quelque chose qu’il puisse contrôler lui-même.

3. La signature numérique : rendre la déclaration infalsifiable

Une signature numérique est calculée sur un document avec une clé privée, que seul le signataire détient. N’importe qui peut ensuite la vérifier avec la clé publique correspondante. Si un seul caractère du document change, la signature ne correspond plus.

Obscura Vault signe en Ed25519, un algorithme public décrit par la RFC 8032. Il signe déjà le manifeste de chaque archive .obf, qui liste l’empreinte de chaque fichier : c’est ce qui permet de vérifier qu’une archive n’a pas bougé depuis sa création (voir Le format .obf).

Ce qu’elle prouve, exactement : que le document n’a pas été modifié depuis sa signature, et qu’il a été signé par la clé correspondant à telle clé publique.

Ce qu’elle ne prouve pas : qui est derrière cette clé. Une signature relie un document à une clé, pas à une personne. Pour savoir que la clé est bien celle de l’émetteur qu’on croit, il faut une autre information : par exemple, que la clé publique est publiée sur un site que l’on sait être le sien.

4. La date : déclarée, ou attestée par un tiers

Reste la date. Un document signé peut porter une date, mais cette date est écrite par celui qui signe. Elle est protégée contre la modification, puisqu’elle est signée ; elle n’est pas, pour autant, attestée par quelqu’un d’autre.

Il existe un moyen standard de faire attester une date par un tiers : l’horodatage RFC 3161. Une autorité d’horodatage délivre un jeton qui atteste qu’une signature existait à un moment donné.

Dans Obscura Vault, c’est facultatif :

  • sans autorité d’horodatage réglée (le cas par défaut), aucun appel réseau n’est fait, et le certificat imprime lui-même que sa date est déclarative ;
  • avec une autorité réglée, chaque émission lui demande un jeton. Si l’autorité ne répond pas, l’émission échoue, plutôt que de produire un certificat plus faible sans le dire.

5. Le certificat de préservation : réunir le tout dans un document

Le certificat de préservation assemble ces étapes en un document qu’on peut remettre à un tiers. C’est un PDF/A-2b, la variante du PDF destinée à l’archivage, qui embarque un manifeste signé en Ed25519.

Pour un fichier, il atteste notamment : le projet, le chemin du fichier dans son projet, sa taille, son empreinte SHA-256, son dernier contrôle de fixité, et les archives qui le contiennent. Pour une archive, il atteste l’empreinte du paquet, le nombre de fichiers et l’empreinte de leur liste, la dernière vérification, les emplacements connus et les copies hors site. Il porte un numéro, une version, une date d’émission, le nom de l’émetteur, l’adresse où celui-ci publie sa clé publique et, s’il y en a un, le jeton d’horodatage. Depuis la version 1.2, une révision incrémentale (qui ne contient que ce qui a changé) reçoit elle aussi un certificat, qui atteste l’état complet du projet à cette révision.

Une absence est écrite et signée, jamais laissée en blanc : un fichier qui n’a jamais été contrôlé peut être certifié, mais le certificat l’imprime (« aucun contrôle enregistré »). Et Vault refuse de certifier un fichier dont le dernier contrôle n’est pas conforme.

Revenons au TIFF de 2018. Si son empreinte a été relevée lors de l’import dans Vault, et contrôlée depuis, un certificat émis aujourd’hui dit, signé : voici l’empreinte de ce fichier, voici la date et le résultat de son dernier contrôle. Dans cinq ans, un nouveau certificat, ou un simple recalcul de l’empreinte, pourra être comparé à celui-ci. La chaîne de preuve commence au premier relevé, et se renforce à chaque contrôle.

Si ce TIFF n’est entré dans Vault qu’en 2026, la preuve commence en 2026, pas en 2018. Pour remonter plus loin, il faut une empreinte relevée à l’époque : le manifeste d’une archive signée alors, par exemple, qui donne l’empreinte du fichier et une date de création, elle aussi déclarée par celui qui l’a écrite.

Le détail est sur la page Le certificat de préservation et dans le chapitre Certificats de préservation du guide.

Vérifier un certificat, sans faire confiance à l’émetteur

Un certificat n’a d’intérêt que si son destinataire peut le vérifier sans demander à l’émetteur. Deux façons de le faire.

Sur le web. Chaque certificat imprime une adresse et un QR code, de la forme vault.obscuraflow.app/c/<numéro>/<version>. La personne qui le reçoit ouvre la page de vérification et y dépose le PDF. Le fichier est lu par son navigateur, en mémoire : il n’est envoyé nulle part. La page vérifie la signature Ed25519, que la clé figure dans le fichier publié par l’émetteur à l’adresse inscrite dans le certificat, et que le numéro et la version signés sont ceux de l’adresse. Elle répond par l’un de cinq résultats : valide, signature invalide, certificat illisible, clé inconnue, version non prise en charge.

Elle dit aussi ce qu’elle ne vérifie pas : le statut au registre de l’émetteur (remplacé, révoqué) est affiché « inconnu hors registre » ; l’horodatage est signalé s’il est présent, mais pas validé ; et « valide » signifie « signé par la clé que publie cette adresse », pas « l’identité de l’émetteur est prouvée ».

Hors ligne, dans Obscura Vault. Vérifier un PDF… fonctionne sans réseau, sur un certificat émis par n’importe quelle installation, et c’est gratuit. Vault donne un verdict sur la signature, le statut de révocation quand le certificat est dans son registre, la cohérence entre le texte imprimé et les valeurs signées, l’état de l’horodatage et, pour une archive, la conformité de l’annexe.

Pour un certificat d’archive, la liste des fichiers est remise à côté du PDF, dans une annexe. N’importe qui la contrôle avec un outil d’empreinte ordinaire (shasum -a 256 sur le fichier d’annexe) : le résultat doit être l’empreinte imprimée sur le certificat.

Ce qu’un certificat ne dit pas

Pour qu’une preuve soit utile, il faut savoir où elle s’arrête. Un certificat de préservation :

  • atteste ce que la bibliothèque de l’émetteur sait de l’objet au moment de l’émission. Il ne dit rien de ce que l’image représente, ni de qui en est l’auteur ;
  • décrit un état à une date, pas au-delà : ce qui arrive ensuite au fichier relève des contrôles suivants ;
  • a une date déclarative, sauf si un horodatage RFC 3161 a été demandé à une autorité tierce ;
  • n’est pas, à lui seul, une preuve juridique. La signature prouve que le certificat vient de telle clé et n’a pas été modifié. La valeur qu’on lui accorde dans un contexte contractuel ou judiciaire dépend de ce contexte, de la confiance faite à l’émetteur, et des autres éléments du dossier.

Ces limites sont écrites, et c’est ce qui rend le document crédible : un certificat qui prétendrait tout prouver ne prouverait rien.

À qui cela sert

Quelques situations où un certificat de préservation peut trouver sa place :

  • un photographe qui livre des fichiers et veut pouvoir montrer plus tard que l’original archivé n’a pas bougé ;
  • un service d’archives ou une institution qui reçoit ou conserve un fonds et doit rendre compte de son intégrité ;
  • des ayants droit qui transmettent une œuvre avec de quoi en vérifier l’état ;
  • une collection ou un fonds patrimonial qui circule entre prêteurs, assureurs et lieux de conservation.

Émettre un certificat demande une licence ; le vérifier est gratuit, dans l’application comme sur le web.

Fin de la série

Ces quatre articles ont suivi un fil : un fichier numérique peut changer sans s’user ; trois copies ne suffisent pas si l’on ignore qu’elles sont bonnes ; une archive doit s’ouvrir sans le logiciel qui l’a créée ; et l’intégrité d’une photographie se prouve, à condition de dire exactement ce que l’on prouve.

C’est ce que cherche à faire Obscura Vault : vérifier, et dire exactement ce qui a été vérifié. Pour aller plus loin, la documentation, les fonctionnalités et le glossaire.


Article précédent : Dans 20 ans, pourra-t-on encore ouvrir vos archives photographiques ?

Pour reprendre la série depuis le début : Un fichier numérique ne s’use pas. Alors pourquoi faut-il vérifier son intégrité ?

  • certificat de préservation
  • intégrité
  • signature numérique
  • fixité