Aller au contenu

PD-7 — HSM FIPS 140-2 Level 3 pour protection des clés cryptographiques

ID : PD-7
Epic : PD-193 — INFRA
Statut : Draft
Version : 1.0
Auteur : ProbatioVault
Audience : Architectes sécurité, RSSI, Infra, Audit externe
Références normatives : NF Z42-013, ISO 14641, FIPS 140-2, PKCS#11, RFC 3161


1. Objectif

Définir l’architecture, les exigences et les critères d’acceptation relatifs à l’utilisation d’un HSM certifié FIPS 140-2 Level 3 pour la protection des clés cryptographiques maîtres de ProbatioVault, utilisées dans les opérations de :

  • signature probatoire,
  • chiffrement et enveloppement de clés,
  • horodatage (RFC 3161),
  • journalisation probatoire append-only,

conformément aux exigences des normes NF Z42-013 et ISO 14641.


2. Contexte et justification

2.1 Contexte général

ProbatioVault repose sur un modèle zero-knowledge, dans lequel aucune clé cryptographique sensible ne doit être accessible ou exportable depuis les couches applicatives ou infrastructurelles classiques.

Les clés suivantes sont considérées comme critiques :

  • clés de signature probatoire (journaux, racines de Merkle),
  • clés maîtres d’enveloppage (K_master),
  • clés d’horodatage et d’authentification HSM,
  • clés de rotation et de délégation cryptographique (PRE, autorisations).

La compromission de ces clés remettrait en cause : - l’intégrité probatoire, - la conformité réglementaire, - la recevabilité juridique des preuves.

2.2 Problématique

Les solutions logicielles (KMS non matériels, secrets chiffrés applicativement) ne fournissent pas de garanties suffisantes contre :

  • l’extraction de clés par un administrateur privilégié,
  • la compromission de l’hyperviseur ou du noyau système,
  • l’attaque post-mortem (snapshot, dump mémoire),
  • la contestation juridique de la chaîne de confiance.

2.3 Principe retenu

L’usage d’un HSM matériel certifié FIPS 140-2 Level 3 minimum est requis afin de garantir :

  • l’inviolabilité matérielle des clés,
  • la non-exportabilité cryptographique,
  • la séparation stricte des rôles,
  • la traçabilité auditable des opérations cryptographiques.

3. Périmètre

3.1 Inclus

  • Génération, stockage et usage des clés maîtres ProbatioVault
  • Signature cryptographique probatoire
  • Intégration applicative via PKCS#11
  • Haute disponibilité en environnement PROD
  • Interconnexion sécurisée OVH ↔ HSM

3.2 Exclus

  • Gestion des clés utilisateurs finales (client-side)
  • Chiffrement/déchiffrement des documents (effectué côté client)
  • KMS applicatifs non matériels

4. Exigences fonctionnelles

ID Exigence Priorité
R-36-01 Le HSM DOIT être certifié FIPS 140-2 Level 3 minimum MUST
R-36-02 Le HSM DOIT être accessible depuis l’infrastructure OVH via VPN IPSec privé MUST
R-36-03 Le HSM DOIT supporter PKCS#11 pour l’intégration applicative MUST
R-36-04 Le HSM DOIT être déployé exclusivement en région EU MUST
R-36-05 Le HSM en PROD DOIT être en haute disponibilité (≥ 2 instances) MUST
R-36-06 Les environnements DEV/TEST PEUVENT utiliser un HSM on-demand SHOULD

5. Exigences non-fonctionnelles

ID Exigence Cible Conditions de mesure
RNF-36-01 Latence PKCS#11 (P99) < 50 ms Voir §5.1
RNF-36-02 Disponibilité PROD 99,95 % Voir §5.2
RNF-36-03 Localisation des données UE uniquement Voir §5.3

5.1 Conditions de mesure de la latence (RNF-36-01)

Paramètre Valeur de référence
Opération cible Signature RSA-4096 / SHA-256 via PKCS#11 (C_Sign)
Point de mesure Temps écoulé entre l'appel C_Sign et la réception de la signature côté backend applicatif
Contexte réseau Backend OVH (Paris) → VPN IPSec → AWS CloudHSM (eu-west-3 Paris)
Environnement PROD ou environnement représentatif validé (même topologie réseau)
Charge Conditions nominales (< 100 opérations/seconde)
Métrique Percentile 99 sur un échantillon de N ≥ 1000 opérations

Reproductibilité : Les mesures doivent être effectuées dans des conditions stables (pas de failover en cours, VPN établi, charge nominale). Les résultats sont horodatés et exportables pour audit.

5.2 Conditions de mesure de la disponibilité (RNF-36-02)

Paramètre Valeur de référence
SLI (Service Level Indicator) Ratio opérations PKCS#11 réussies / opérations tentées
Fenêtre de mesure Mois calendaire glissant
Périmètre Cluster HSM PROD (2 instances minimum)
Exclusions Maintenance planifiée annoncée ≥ 48h à l'avance

5.3 Périmètre de localisation des données (RNF-36-03)

Donnée Localisation autorisée
Clés cryptographiques (privées et publiques) HSM AWS eu-west-3 (Paris) uniquement
Journaux d'audit HSM AWS eu-west-3 (CloudWatch Logs)
Métriques de supervision AWS eu-west-3 (CloudWatch Metrics)
Sauvegardes HSM AWS eu-west-3 (même région)

Note RGPD : Aucune donnée cryptographique ou d'audit ne doit transiter ou être stockée hors de l'UE. Les accès administratifs depuis l'UE sont requis.


5bis. Diagrammes

5bis.1 Diagramme d'états — Cycle de vie d'une clé HSM

Ce diagramme représente les états et transitions d'une clé maître ProbatioVault au sein du HSM, conformément aux exigences KL-01 à KL-04 (§8) et aux invariants INV-01 à INV-04 (§7.1).

stateDiagram-v2
    [*] --> Generation : C_GenerateKeyPair / C_GenerateKey

    Generation --> Active : CKA_LOCAL=TRUE, CKA_TOKEN=TRUE [KL-01]
    note right of Generation
        Label assigné : pv-master-sign-*,
        pv-master-wrap-*, pv-tsa-*,
        pv-rotation-*
        INV-02 : CKA_EXTRACTABLE=FALSE
    end note

    Active --> Active : C_Sign, C_Verify, C_WrapKey (usage nominal)
    Active --> RotationEnCours : Date anniversaire création >= 365j [KL-02]

    RotationEnCours --> Expired : Nouvelle clé active créée,\nlabel renommé pv-*-expired-YYYY [KL-03]
    note right of RotationEnCours
        Génération nouvelle clé en parallèle.
        Ancienne clé reste utilisable
        jusqu'à bascule complète.
    end note

    Expired --> Expired : C_Verify uniquement (vérification historique) [KL-03]
    note right of Expired
        C_Sign interdit.
        C_DestroyObject interdit [KL-04].
        Conservation indéfinie pour
        valeur probatoire.
    end note

    Active --> TentativeSuppression : C_DestroyObject
    TentativeSuppression --> Active : Opération refusée [KL-04]\n(journalisée INV-03)

    Expired --> TentativeSuppressionArchive : C_DestroyObject
    TentativeSuppressionArchive --> Expired : Opération refusée [KL-04]\n(journalisée INV-03)

    Active --> TentativeExport : C_WrapKey (clé privée) / C_GetAttributeValue (sensible)
    TentativeExport --> Active : Opération refusée [INV-01, INV-02]\n(journalisée INV-03)

    state "État terminal" as Terminal
    note right of Terminal
        Aucun état terminal :
        les clés ne sont jamais détruites (KL-04).
        Les clés expirées restent dans le HSM
        pour vérification historique indéfinie.
    end note

5bis.2 Diagramme d'états — Cluster HSM (haute disponibilité)

stateDiagram-v2
    [*] --> Initialisation : Déploiement CloudHSM

    Initialisation --> Nominal : 2 instances UP [R-36-05]
    note right of Initialisation
        C_InitToken par Crypto Officer.
        VPN IPSec OVH ↔ AWS établi [R-36-02].
    end note

    Nominal --> Nominal : Opérations PKCS#11 normales\n(latence P99 < 50ms) [RNF-36-01]
    Nominal --> Dégradé : Perte d'une instance HSM
    Nominal --> MaintenancePlanifiée : Maintenance annoncée >= 48h [RNF-36-02]

    Dégradé --> Nominal : Instance restaurée (failover retour) [CA-06]
    Dégradé --> Dégradé : Opérations PKCS#11 via instance restante
    note right of Dégradé
        Alerte CloudWatch [CA-07].
        SLI dégradé mais service maintenu.
        Bascule automatique (failover) [CA-06].
    end note

    MaintenancePlanifiée --> Nominal : Fin de maintenance
    note right of MaintenancePlanifiée
        Exclu du calcul SLI [RNF-36-02].
        Annoncé >= 48h à l'avance.
    end note

    Dégradé --> Indisponible : Perte de toutes les instances
    Indisponible --> Nominal : Restauration complète du cluster
    note right of Indisponible
        Incident critique.
        Aucune opération PKCS#11 possible.
        SLI impacté (objectif 99,95%) [RNF-36-02].
    end note

5bis.3 Diagramme de séquence — Génération de clé maître

sequenceDiagram
    participant CO as Crypto Officer
    participant PKCS as Interface PKCS#11
    participant HSM as CloudHSM (eu-west-3)
    participant LOG as CloudWatch Logs

    CO->>PKCS: C_OpenSession(slot, flags)
    PKCS->>HSM: Ouverture session
    HSM-->>LOG: Journal: C_OpenSession (timestamp, slot, résultat)
    HSM-->>PKCS: Session handle

    CO->>PKCS: C_Login(session, CU, PIN)
    PKCS->>HSM: Authentification Crypto Officer
    HSM-->>LOG: Journal: C_Login (timestamp, user_type, résultat)
    HSM-->>PKCS: OK

    CO->>PKCS: C_GenerateKeyPair(RSA-4096,<br/>CKA_LABEL="pv-master-sign-2026",<br/>CKA_EXTRACTABLE=FALSE,<br/>CKA_TOKEN=TRUE)
    PKCS->>HSM: Génération dans le périmètre matériel
    Note over HSM: Clé privée JAMAIS<br/>exportable [INV-01, INV-02].<br/>CKA_LOCAL=TRUE [KL-01].
    HSM-->>LOG: Journal: C_GenerateKeyPair (timestamp, handle, label, résultat)
    HSM-->>PKCS: Key handles (privée + publique)
    PKCS-->>CO: Handles retournés

    CO->>PKCS: C_GetAttributeValue(pubKey, CKA_VALUE)
    PKCS->>HSM: Export clé publique uniquement
    Note over HSM: Clé publique exportable<br/>pour vérification tierce [INV-01]
    HSM-->>LOG: Journal: C_GetAttributeValue (timestamp, handle, résultat)
    HSM-->>PKCS: Clé publique (bytes)

    CO->>PKCS: C_Logout(session)
    HSM-->>LOG: Journal: C_Logout (timestamp, résultat)
    CO->>PKCS: C_CloseSession(session)
    HSM-->>LOG: Journal: C_CloseSession (timestamp, résultat)

5bis.4 Diagramme de séquence — Signature probatoire (flux nominal)

sequenceDiagram
    participant BE as Backend ProbatioVault<br/>(OVH Paris)
    participant VPN as Tunnel VPN IPSec<br/>(AES-256, IKEv1)
    participant PKCS as Interface PKCS#11
    participant HSM as CloudHSM (eu-west-3)
    participant LOG as CloudWatch Logs

    BE->>VPN: Requête PKCS#11 (chiffrée)
    VPN->>PKCS: C_OpenSession(slot, flags)
    PKCS->>HSM: Ouverture session
    HSM-->>LOG: Journal: C_OpenSession
    HSM-->>PKCS: Session handle

    PKCS->>HSM: C_Login(session, CU_service_account, PIN)
    Note over HSM: Service account dédié [ACC-02].<br/>Credential distinct d'AWS IAM [ACC-03].
    HSM-->>LOG: Journal: C_Login (résultat)
    HSM-->>PKCS: OK

    BE->>PKCS: C_SignInit(session, CKM_SHA256_RSA_PKCS, keyHandle)
    PKCS->>HSM: Initialisation signature
    HSM-->>LOG: Journal: C_SignInit (key_handle, mécanisme)

    BE->>PKCS: C_Sign(session, merkleRoot)
    PKCS->>HSM: Signature dans le périmètre matériel
    Note over HSM: Clé privée reste dans le HSM [INV-01].<br/>Latence P99 < 50ms [RNF-36-01].
    HSM-->>LOG: Journal: C_Sign (timestamp, key_handle, résultat)
    HSM-->>PKCS: Signature (bytes)
    PKCS-->>VPN: Signature retournée
    VPN-->>BE: Signature (chiffrée via VPN)

    Note over BE: Vérification possible avec<br/>la clé publique exportée [INV-01]

    BE->>PKCS: C_Logout + C_CloseSession
    HSM-->>LOG: Journal: C_Logout, C_CloseSession

5bis.5 Diagramme de séquence — Rotation annuelle de clé maître

sequenceDiagram
    participant CO as Crypto Officer
    participant PKCS as Interface PKCS#11
    participant HSM as CloudHSM (eu-west-3)
    participant LOG as CloudWatch Logs
    participant INV as Inventaire HSM<br/>(audit trimestriel)

    Note over CO,INV: Déclencheur : date anniversaire >= 365j [KL-02]

    CO->>PKCS: C_OpenSession + C_Login (Crypto Officer)
    HSM-->>LOG: Journal: session + login

    rect rgb(230, 245, 230)
        Note over CO,HSM: Phase 1 — Génération nouvelle clé
        CO->>PKCS: C_GenerateKeyPair(RSA-4096,<br/>CKA_LABEL="pv-master-sign-2027",<br/>CKA_EXTRACTABLE=FALSE)
        PKCS->>HSM: Génération nouvelle clé maître
        HSM-->>LOG: Journal: C_GenerateKeyPair (nouveau label, résultat)
        HSM-->>PKCS: Nouveaux handles
    end

    rect rgb(255, 245, 230)
        Note over CO,HSM: Phase 2 — Archivage ancienne clé
        CO->>PKCS: C_SetAttributeValue(ancienHandle,<br/>CKA_LABEL="pv-master-sign-expired-2026")
        Note over HSM: Ancienne clé renommée [KL-03].<br/>C_Sign désactivé sur cette clé.<br/>C_Verify toujours autorisé.
        HSM-->>LOG: Journal: modification label (résultat)
    end

    rect rgb(240, 240, 255)
        Note over CO,INV: Phase 3 — Vérification et audit
        CO->>PKCS: C_FindObjects (label "pv-*")
        PKCS->>HSM: Inventaire complet
        HSM-->>PKCS: Liste des objets (actifs + expirés)
        CO->>INV: Export inventaire horodaté
        Note over INV: Conservation trimestrielle [§8.2].<br/>Clés expirées présentes [KL-03].<br/>Aucune destruction [KL-04].
    end

    CO->>PKCS: C_Logout + C_CloseSession
    HSM-->>LOG: Journal: logout + close

6. Solution retenue

6.1 Choix

AWS CloudHSM — Région eu-west-3 (Paris)

Justifications :

  • Certification FIPS 140-2 Level 3
  • Support natif PKCS#11
  • Déploiement en VPC privé
  • Haute disponibilité multi-HSM
  • Localisation France (conformité RGPD)

6.2 Architecture cible

OVH (Paris) - Backend ProbatioVault - Tunnel VPN IPSec (AES-256, IKEv1)

AWS (eu-west-3 – Paris) - VPC privé HSM - Subnet privé dédié - 2 instances CloudHSM en haute disponibilité

Aucun accès Internet direct n’est autorisé vers les HSM.


7. Modèle de sécurité

7.1 Invariants de sécurité

ID Invariant Description
INV-01 Non-exposition des clés privées Les clés privées générées ou stockées dans le HSM ne quittent jamais le périmètre du HSM. Les clés publiques associées PEUVENT être exportées pour permettre la vérification tierce des signatures (conformément aux standards PKI et FIPS 140-2).
INV-02 Non-exportabilité des clés privées Aucune exportation de clé privée n'est possible (en clair ou enveloppée) hors du HSM.
INV-03 Journalisation Toute opération cryptographique réalisée via le HSM est journalisée.
INV-04 Séparation des clés Aucune clé utilisateur finale (client-side) n'est stockée dans le HSM ; seules les clés maîtres ProbatioVault y résident (voir §7.1.1).

7.1.1 Taxonomie des objets HSM (INV-04)

Définition — Clé utilisateur finale : Toute clé cryptographique générée, détenue ou contrôlée par un utilisateur final (personne physique ou morale cliente de ProbatioVault), typiquement générée côté client ou dans un contexte applicatif hors infrastructure ProbatioVault.

Objets autorisés dans le HSM :

Catégorie Label pattern Type PKCS#11 Usage autorisé
Clé maître de signature probatoire pv-master-sign-* CKK_RSA (4096) Signature des racines Merkle, journaux
Clé maître d'enveloppement pv-master-wrap-* CKK_AES (256) Enveloppement de clés dérivées
Clé d'horodatage (TSA) pv-tsa-* CKK_RSA (4096) Signature RFC 3161
Clé de rotation/délégation pv-rotation-* CKK_RSA / CKK_AES Renouvellement cryptographique
Clé expirée (archivée) pv-*-expired-YYYY Tous types Vérification historique uniquement

Objets interdits dans le HSM :

Catégorie Exemple Raison
Clés utilisateur finale Clé de chiffrement document client Gérée côté client (zero-knowledge)
Clés éphémères applicatives Session keys, nonces Non persistantes, gérées en RAM applicative
Clés tierces Clés partenaires, intégrations Hors périmètre ProbatioVault

Critère d'audit : L'inventaire HSM DOIT contenir exclusivement des objets dont le label correspond aux patterns autorisés. Tout objet non conforme constitue une non-conformité INV-04.

Note normative : Conformément aux standards FIPS 140-2, PKCS#11 et aux exigences de valeur probatoire (NF Z42-013, eIDAS), la distinction entre clés privées (non-exportables) et clés publiques (exportables) est fondamentale. La vérifiabilité indépendante des signatures requiert l'accès aux clés publiques hors HSM.

7.1.2 Exigences de journalisation (INV-03)

Événements minimum à journaliser :

Catégorie Opération PKCS#11 Données journalisées
Session C_OpenSession, C_CloseSession Timestamp, slot, user type, résultat
Authentification C_Login, C_Logout Timestamp, user type, résultat (succès/échec)
Génération de clé C_GenerateKeyPair, C_GenerateKey Timestamp, key handle, type, label, résultat
Signature C_Sign, C_SignInit Timestamp, key handle, mécanisme, résultat
Tentative d'export C_WrapKey, C_GetAttributeValue (sensible) Timestamp, key handle, résultat (refus attendu)
Suppression C_DestroyObject Timestamp, object handle, résultat

Granularité : Journalisation par opération PKCS#11 individuelle.

Rétention :

Paramètre Valeur
Durée de conservation 5 ans minimum (conformité NF Z42-013)
Stockage AWS CloudWatch Logs (eu-west-3)
Export Export SIEM possible pour archivage long terme

Garanties :

Garantie Mécanisme
Intégrité Logs CloudWatch immuables (pas de suppression sans trace)
Horodatage Timestamp UTC synchronisé (NTP)
Corrélation Identifiant de session permettant le chaînage des événements
Non-répudiation Logs signés par AWS (attestation fournisseur)

Critère d'audit : Toute opération PKCS#11 listée ci-dessus DOIT être retrouvable dans les logs dans un délai de 24h. L'absence d'événement pour une opération réalisée constitue une non-conformité INV-03.

7.2 Séparation des rôles

Rôle ProbatioVault Responsabilités
Crypto Officer Initialisation HSM, politiques de sécurité
Crypto User Opérations PKCS#11 cryptographiques
Infra Admin Réseau, VPN, supervision (pas d'accès PKCS#11)
Backend applicatif Appels PKCS#11, aucune clé accessible

7.2.1 Correspondance rôles – identités PKCS#11

Rôle ProbatioVault Identité PKCS#11 (CloudHSM) Opérations autorisées
Crypto Officer CU (Crypto User) avec droits admin C_InitToken, C_InitPIN, C_CreateObject (attributs), gestion politique
Crypto User CU (Crypto User) C_Sign, C_Verify, C_GenerateKeyPair, C_OpenSession, C_Login
Backend applicatif CU (Crypto User) via service account C_Sign, C_Verify, C_OpenSession (lecture seule sur clés)
Infra Admin Aucune identité PKCS#11 Aucune opération PKCS#11 ; accès limité à AWS Console (monitoring)

Règles d'accès :

Règle Description Vérification
ACC-01 Infra Admin ne dispose d'aucun credential PKCS#11 Inventaire des users CloudHSM
ACC-02 Backend applicatif utilise un service account dédié (non personnel) Audit des sessions PKCS#11
ACC-03 Les credentials PKCS#11 sont distincts des credentials AWS IAM Configuration CloudHSM
ACC-04 Toute tentative d'opération PKCS#11 sans credential valide échoue TC-ERR-04, TC-NEG-02

Critère d'audit : Un inventaire des identités PKCS#11 (users CloudHSM) DOIT être maintenu et corrélable aux rôles ProbatioVault. L'existence d'un credential PKCS#11 pour un Infra Admin constitue une non-conformité.


8. Cycle de vie des clés

8.1 Exigences de cycle de vie

ID Exigence Observable Preuve attendue
KL-01 Génération des clés exclusivement au sein du HSM Attribut PKCS#11 CKA_LOCAL=TRUE sur toutes les clés Inventaire HSM avec attributs exportés
KL-02 Rotation annuelle des clés maîtres Métadonnée de création (date) visible dans l'inventaire HSM Clés avec creation_date < 365 jours en activité
KL-03 Conservation des clés expirées pour vérification historique Clés marquées CKA_LABEL avec suffixe -expired-YYYY Inventaire HSM contenant les clés archivées
KL-04 Aucune suppression rétroactive des signatures existantes Absence d'opération C_DestroyObject sur clés ayant signé Logs d'audit HSM sans événement de destruction

8.2 Critères de vérification

ID Événement déclencheur État observable Artefact de preuve
KL-01 Génération d'une nouvelle clé CKA_LOCAL=TRUE, CKA_TOKEN=TRUE Export attributs PKCS#11
KL-02 Date anniversaire de création Nouvelle clé créée, ancienne marquée expirée Log de rotation + inventaire
KL-03 Expiration d'une clé maître Clé présente avec label -expired-YYYY Inventaire HSM
KL-04 Tentative de suppression Opération bloquée ou refusée Log d'audit avec code erreur

Audit : Un inventaire HSM horodaté DOIT être exporté trimestriellement et conservé dans le dossier d'audit. Les événements de rotation sont journalisés dans CloudWatch Logs.


9. Critères d'acceptation

Les conditions suivantes DOIVENT être validées pour l'acceptation contractuelle de la PD-7 :

ID Critère Exigence(s) liée(s) Priorité
CA-01 Le HSM est certifié FIPS 140-2 Level 3 minimum (certificat NIST vérifiable) R-36-01 MUST
CA-02 Connexion PKCS#11 fonctionnelle depuis le backend OVH via VPN IPSec R-36-02, R-36-03 MUST
CA-03 Génération d'une paire de clés RSA 4096 réussie dans le HSM R-36-03 MUST
CA-04 Signature SHA-256 réalisée par le HSM et vérifiable avec la clé publique R-36-03 MUST
CA-05 Temps de réponse PKCS#11 inférieur à 50 ms en P99 (opération signature) RNF-36-01 MUST
CA-06 Bascule automatique (failover) en cas de perte d'un HSM en PROD R-36-05, RNF-36-02 MUST
CA-07 Supervision CloudWatch opérationnelle (métriques, alertes santé) MUST
CA-08 HSM déployé exclusivement en région EU (eu-west-3 ou région EU approuvée) R-36-04, RNF-36-03 MUST

Traçabilité : Chaque critère d'acceptation est couvert par un ou plusieurs scénarios de test dans PD-7-tests.md (cf. matrice de couverture §2).


10. Contraintes

  • Budget cible : ~3 500 € / mois
  • DEV : HSM on-demand
  • TEST : HSM 24/7
  • PROD : 2 HSM en haute disponibilité

  • Souveraineté :

  • AWS Paris accepté temporairement
  • Alternatives françaises à évaluer si exigence client : Thales DPoD, Atos Trustway

11. Traçabilité

Élément Référence
Epic PD-193
Norme NF Z42-013
Infrastructure probatiovault-infra
Documentation CLOUDHSM-DEV-DEPLOYMENT.md

12. Risques et mesures de mitigation

Risque Mitigation
Dépendance fournisseur Architecture remplaçable
Latence réseau Batching et optimisation PKCS#11
Exigence client souveraine Étude HSM français prévue

13. Conclusion

Cette spécification établit un socle de confiance matériel indispensable à la valeur probatoire de ProbatioVault. Le HSM constitue une ancre cryptographique forte, indépendante du backend applicatif et des opérateurs humains, garantissant l’intégrité, la conformité et la pérennité des preuves numériques.