Signatures numériques

Le format ISOF implémente deux niveaux de protection cryptographique complémentaires. Cette page décrit le modèle de confiance, les mécanismes employés et leurs garanties respectives : c'est la référence technique pour les trois autres pages de cette section.

Pourquoi signer un fichier .isof

Un fichier .isof transporte des données analytiques susceptibles d'être utilisées dans des contextes à enjeu élevé : traçabilité forensique, conformité réglementaire, expertise judiciaire, import/export de matières critiques. La signature numérique répond à deux questions distinctes : les données ont-elles été modifiées depuis leur export (intégrité), et sont-elles bien issues du laboratoire qui les revendique (authenticité) ?

ISOF implémente deux niveaux de signature, cumulatifs et indépendants. Un fichier peut être au niveau 1 seulement, au niveau 2 seulement, aux deux niveaux, ou non signé. Les lecteurs compatibles doivent accepter les quatre cas.

Niveau 1 : intégrité par empreinte SHA-256

Le niveau 1 est disponible avec toutes les licences IsoFind, y compris la licence Research gratuite. Il garantit qu'aucun octet des données n'a été modifié depuis l'export.

Mécanisme

Au moment de l'export, IsoFind sélectionne un ensemble de blocs JSON du fichier (le scope de signature), les sérialise en JSON canonique (clés triées, sans espaces), calcule le SHA-256 de la chaîne UTF-8 résultante, et stocke l'empreinte hexadécimale dans le bloc signature.

// Bloc signature niveau 1 dans un fichier .isof "signature": { "level": 1, "algorithm": "SHA-256", "scope": ["created_by", "isof_version", "created_at", "project", "samples", "methods", "purification"], "hash": "a3f7c9d2e1b4...", "signed_at": "2025-03-10T14:32:00Z", "signed_by": "IsoFind SAS", "contact": "[email protected]" }

Le scope couvre les 7 blocs structurels du fichier. Modifier un seul caractère dans n'importe lequel de ces blocs invalide la signature.

La vérification niveau 1 fonctionne entièrement hors-ligne et sans dépendance externe. Elle ne requiert aucun certificat, aucune connexion réseau, aucune bibliothèque cryptographique avancée : uniquement SHA-256, disponible dans tous les langages modernes.

Niveau 2 : authenticité par PKI IsoFind

Le niveau 2 est réservé aux licences Pro. Il prouve qu'un laboratoire certifié par IsoFind SAS est bien l'auteur des données, et que personne d'autre ne peut produire une signature valide en son nom.

La chaîne de confiance PKI

IsoFind SAS maintient une infrastructure à clé publique (PKI) à trois niveaux. Cette architecture garantit que la compromission d'un maillon intermédiaire n'expose pas la racine de confiance.

NiveauEntitéAlgorithmeValiditéStockage
Racine IsoFind Root CA RSA 4096 2046 Coffre physique hors-ligne
Intermédiaire IsoFind Issuing CA ECDSA P-256 2031 HSM (matériel)
Feuille Certificat laboratoire ECDSA P-256 1 an Chiffré AES-256-GCM sur poste labo

La Root CA et l'Issuing CA sont embarquées dans le binaire IsoFind. La vérification d'un fichier signé niveau 2 fonctionne donc entièrement hors-ligne : aucune requête vers pki.isofind.tech n'est nécessaire pour valider la chaîne.

Mécanisme de signature niveau 2

La signature ECDSA P-256 est calculée sur l'empreinte SHA-256 du JSON canonique des blocs couverts par le scope, exactement comme pour le niveau 1. La clé privée du laboratoire ne quitte jamais le poste de travail. Le fichier signé embarque le certificat du laboratoire et un instantané de la CRL (liste de révocation) au moment de la signature.

// Bloc signature niveau 2 (structure complète) "signature": { "level": 2, "algorithm": "ECDSA-P256-SHA256", "scope": ["created_by", "isof_version", "created_at", "project", "samples", "methods", "purification"], "hash": "a3f7c9d2e1b4...", "signature_b64": "MEUCIQD...", "signed_scope": ["created_by", "isof_version", "created_at", "project", "samples", "methods", "purification"], "signed_at": "2025-03-10T14:32:00Z", "signed_by": "IGE Grenoble : Laboratoire de géochimie isotopique", "contact": "[email protected]", "certificate_chain": ["-----BEGIN CERTIFICATE-----\n...", "-----BEGIN CERTIFICATE-----\n..."], "crl_embedded_b64": "MIIBpDCC..." }

Révocation

Si un certificat de laboratoire est compromis, IsoFind SAS publie une CRL mise à jour sur pki.isofind.tech/crl/issuing-ca.crl. Lors de la vérification, IsoFind tente d'abord de récupérer la CRL en ligne. En cas d'échec réseau (mode air-gap, réseau indisponible), il utilise la CRL embarquée dans le fichier. Un avertissement est affiché si la CRL embarquée date de plus de 7 jours.

Chiffrement d'un fichier pour un destinataire

La signature numérique garantit l'intégrité et l'authenticité, mais pas la confidentialité : un fichier .isof signé reste lisible par quiconque le reçoit. Pour les échanges sensibles (données forensiques, traçabilité défense, sous-traitance analytique confidentielle), IsoFind permet de chiffrer un fichier pour un destinataire précis, en utilisant sa clé publique.

Modèle de confiance

Le chiffrement pour un destinataire repose sur le trousseau de clés IsoFind (isof_keyring). Chaque destinataire enregistré dans le trousseau possède une paire de clés asymétriques : sa clé publique (connue de l'expéditeur) et sa clé privée (conservée uniquement sur son poste). Le fichier est chiffré avec la clé publique du destinataire : seul lui peut le déchiffrer avec sa clé privée.

ÉtapeQuiOpération
1DestinataireGénère une paire de clés dans IsoFind et communique sa clé publique à l'expéditeur.
2ExpéditeurAjoute la clé publique du destinataire dans son trousseau IsoFind.
3ExpéditeurExporte le fichier en sélectionnant "Exporter chiffré pour un destinataire" et en choisissant le destinataire dans le trousseau.
4ExpéditeurTransmet le fichier .isof chiffré par n'importe quel canal (email, partage réseau, support physique).
5DestinataireOuvre le fichier dans IsoFind. Le logiciel détecte le chiffrement, utilise la clé privée locale pour déchiffrer, puis vérifie la signature si présente.
Signature et chiffrement sont indépendants et cumulables. Un fichier peut être signé (authenticité) et chiffré (confidentialité) simultanément. L'ordre est important : IsoFind signe les données en clair, puis chiffre le résultat. À la réception, le destinataire déchiffre d'abord, puis vérifie la signature.

Côté expéditeur : exporter un fichier chiffré

Fichier Exporter chiffré pour un destinataire Choisir le destinataire dans le trousseau Signer (optionnel) Exporter

Si le destinataire n'est pas encore dans le trousseau, l'ajouter via :

Outils Trousseau de clés Ajouter un destinataire Coller la clé publique

Le fichier produit est un .isof standard dont le contenu analytique est chiffré AES-256-GCM. La clé symétrique AES est elle-même chiffrée avec la clé publique ECDH du destinataire et embarquée dans le fichier. Ni l'expéditeur ni un tiers interceptant le fichier ne peut le lire sans la clé privée du destinataire.

Côté destinataire : recevoir et déchiffrer

Le destinataire doit avoir préalablement généré sa paire de clés dans IsoFind et communiqué sa clé publique à l'expéditeur. Sa clé privée ne quitte jamais son poste.

Fichier Ouvrir le fichier .isof chiffré

IsoFind détecte automatiquement que le fichier est chiffré. Si la clé privée correspondante est présente dans le trousseau local, le déchiffrement est transparent. Si la clé privée est protégée par un mot de passe, IsoFind demande ce mot de passe avant de poursuivre.

Une fois déchiffré, le fichier suit le flux de vérification normal : IsoFind vérifie la signature si présente et affiche le résultat dans le panneau de métadonnées.

Si la clé privée du destinataire est perdue, le fichier est définitivement illisible. Il n'existe aucun mécanisme de récupération : c'est précisément la propriété qui garantit la confidentialité. Sauvegarder la clé privée dans un gestionnaire de mots de passe sécurisé dès sa création.

Générer et partager sa clé publique

Outils Trousseau de clés Ma clé publique Copier / Exporter en .pem

La clé publique est un bloc de texte au format PEM, sans valeur confidentielle. Elle peut être transmise par email, publiée sur un site institutionnel, ou incluse dans un document de présentation du laboratoire.

Ce que la signature ne garantit pas

La signature cryptographique atteste de l'intégrité des données depuis l'export et de l'identité du signataire. Elle n'atteste pas de la validité scientifique des mesures, de la conformité du protocole analytique, ni de l'accréditation du laboratoire. Ces aspects relèvent du certificat de laboratoire IsoFind (voir la page Activer un certificat de laboratoire), distinct de la signature cryptographique.

Un fichier dont la vérification de signature échoue reste lisible dans IsoFind. L'importation d'un fichier reste possible si vuos êtes sûrs de sa provenance.