Les plugins Rust cdylib signés, hashés et horodatés répondent aux exigences de performance et de preuve de NIS2.

La preuve dans le contexte d'un plugin cdylib

  • authenticité : binaire signé avec UUID v4 unique ;
  • intégrité : hash SHA-256 détecte toute modification post-déploiement ;
  • traçabilité : manifest Cargo inclut crate-type=["cdylib"] et version ;
  • horodatage : service TSA appose un certificat garantissant la date exacte ;
  • attribution : champs metadata.authors et BUILD_ID contiennent l'identifiant du développeur.

Crates et primitives cryptographiques

CrateRôle
zeroize (1)Effacement sécurisé des clés privées en mémoire
sha2 (0.10)Digest SHA-256 pour la preuve d'intégrité
uuid (1) v4Identifiant unique par build
ring (0.16)Primitives RSA / Ed25519 pour le code signing

Ces crates sont auditées et maintenues conformément aux exigences de qualité de NIS2.

Ce qu'un auditeur cherchera à vérifier

  • chaque binaire .so ou .dll possède un UUID v4 unique et immuable ;
  • hash SHA-256 signé par une clé reconnue apparaît dans le manifest ;
  • timestamp provient d'une TSA qualifiée (RFC 3161) ;
  • secrets utilisés à la compilation zeroisés immédiatement ;
  • binaire stocké en mode WORM avec politique de rétention adéquate.

Chaîne de conservation d'un plugin cdylib

Compilation cargo avec métadonnées (UUID, version Cargo, commit Git). Hash SHA-256 envoyé à la TSA. Dépôt dans un bucket S3 Object Lock (mode Compliance). Tags type=plugin, retention=7y. Contrôle d'accès IAM restrictif. Vérification quotidienne : calcul du hash, comparaison avec la valeur enregistrée. Export d'audit sous forme d'archive ZIP signée contenant binaires, métadonnées et rapport de validation.

Limites à ne pas masquer

  • l'immuabilité n'élimine pas une génération erronée à la source ;
  • qualité de la source primordiale ;
  • horodatage local vs qualifié : seul le second a une force juridique ;
  • coût des services WORM et TSA peut être notable pour les PME.

Pour aller plus loin

Pour aller plus loin :

Lire l'article Challenges sur KARL →

Découvrir KARL →

KARLLe stockage qui se souvient.