Aller au contenu

→ Lire l’explication complète de la marmotte

Brouillon editorial.

Clarifier la difference entre une DEK utilisee pour chiffrer des donnees et une KEK utilisee pour proteger d’autres cles.

La confusion entre KEK et DEK conduit souvent a des architectures fragiles. Le laboratoire SoftHSM permet de voir une KEK non extractable envelopper une clé sensible, puis le module refuser d’envelopper une clé marquée jamais extractable : la théorie, vérifiée sans acheter de HSM. Cette page servira a expliquer les roles, les cycles de vie et les points de controle associes a chaque type de cle.

  • definitions simples ;
  • cycle de vie des deux familles de cles ;
  • exemples d’architecture applicative ;
  • lien avec l’envelope encryption ;
  • points de gouvernance et de rotation.
  • ajouter un schema KEK / DEK
  • ajouter un exemple de flux d’enveloppe
  • ajouter les erreurs frequentes
  • ajouter les sources

Quand une même clé chiffre directement toutes les données, sa compromission expose l’intégralité du stockage d’un coup, et son remplacement impose de relire et rechiffrer chaque octet, chantier que personne ne lance un vendredi, ni d’ailleurs aucun autre jour. Sans clé de protection distincte, les clés de données finissent stockées en clair à côté de ce qu’elles protègent, si bien qu’une copie de la base ou d’une sauvegarde emporte à la fois le coffre et sa combinaison. Il devient aussi impossible de retirer l’accès à un seul client ou à un seul jeu de données : sans séparation des clés, on ne retire rien sans tout retirer.

Pour protéger des données, on les chiffre avec une clé appelée clé de chiffrement de données. Il en existe souvent beaucoup : une par fichier, par base ou par client. Ces clés doivent elles-mêmes être rangées quelque part, et les laisser en clair à côté des données annulerait la protection. On les chiffre donc avec une autre clé, appelée clé de chiffrement de clés, qui ne sert qu’à cela. Le fonctionnement suit un ordre précis. Pour écrire, le programme crée une clé de données, chiffre les données avec elle, puis chiffre cette clé avec la clé de protection et stocke le résultat à côté des données. Pour lire, il fait déchiffrer la clé de données par la clé de protection, puis déchiffre les données. Ce principe s’appelle le chiffrement en enveloppe. Les clés de protection sont peu nombreuses et restent le plus souvent dans un composant spécialisé, d’où elles ne sortent pas. Les deux familles n’ont pas le même cycle de vie : remplacer la clé de protection demande seulement de rechiffrer les petites clés de données, pas toutes les données. À l’inverse, une clé de données compromise n’expose que les données qu’elle protège. Confondre les deux rôles, par exemple en utilisant la même clé pour les données et pour protéger d’autres clés, fragilise l’ensemble et complique chaque remplacement.

À lire aussi

Pages voisines

: les deux pages se citent l’une l’autre.