Passer au contenu principal

Chiffrement sécurisé des données avec CipherSweet

Qu'est ce que CipherSweet ?

CipherSweet est une bibliothèque back-end développée par Paragon Initiative Enterprises. Elle permet de chiffrer des champs individuels dans une base de données tout en autorisant la recherche sur ces champs chiffrés sans avoir à les déchiffrer.

Pour permettre une recherche rapide dans les données chiffrées, CipherSweet utilise des blind indexes. Ces index sont créés à l’aide de fonctions de hachage pour garantir une sécurité maximale.

Chaque donnée est chiffrée avec une clé différente, toutes dérivées de la clé de chiffrement principale. Ainsi, deux valeurs similaires n’auront pas le même résultat après chiffrement.

CipherSweet est conçu pour s’intégrer dans divers langages de programmation et frameworks. Cela signifie que vous pouvez utiliser CipherSweet avec votre langage de programmation préféré sans trop de difficultés.

CipherSweet  peut être déployé dans un environnement multi-tenant, où chaque client chiffre ses données avec une clé différente. Cela garantit que les données de chaque client restent isolées et sécurisées, même dans un environnement partagé.

Enfin, CipherSweet propose une API pour le chiffrement de fichiers qui fournit un chiffrement authentifié, garantissant ainsi la confidentialité et l’authenticité des fichiers.


Pourquoi choisir CipherSweet pour protéger vos données ?

Si vous vous demandez pourquoi choisir CipherSweet plutôt que d'effectuer des recherches sur des données chiffrées avec des requêtes SQL classiques, il y a plusieurs raisons :

  • Sécurité des données : Avec une requête SQL classique, vous devrez probablement déchiffrer toutes les données, puis comparer ce que l’utilisateur a saisi avec les valeurs déchiffrées. Le premier problème est que vous déchiffrez TOUT, exposant ainsi toutes les données pour trouver celle qui convient. Avec CipherSweet, le déchiffrement ne se fait qu’après avoir trouvé le résultat à afficher.
  • Efficacité de la recherche : Le déchiffrement de toutes les données prendra beaucoup de temps. CipherSweet, quant à lui, ne déchiffre que les entrées recherchées, ce qui est beaucoup plus rapide.


Comprendre le blind index avec CipherSweet

Le blind index est une fonctionnalité clé de CipherSweet qui permet de rechercher des données chiffrées sans les déchiffrer.

La création d’un blind index dans CipherSweet se déroule en plusieurs étapes :

  1. Chiffrement des données : Supposons que vous souhaitiez chiffrer le prénom “John”.

  2. Utilisation d’une clé spécifique : Une clé spécifique pour le blind index est utilisée. Cette clé est distincte de la clé de chiffrement des données pour assurer une sécurité supplémentaire.

  3. Hachage : Le texte en clair est passé à travers une fonction de hachage telle que SHA-256 ou Argon2id, en utilisant la clé de blind index. Cette fonction de hachage transforme le texte en clair en une valeur hachée unique.

  4. Stockage : La valeur hachée résultante est le blind index, qui est ensuite stocké dans la base de données. Ce blind index peut être utilisé pour effectuer des recherches sans révéler le texte en clair.

CipherSweet utilise une clé de blind index spécifique pour chaque colonne. Cette clé reste constante pour toutes les valeurs de cette colonne. Cela signifie que le même texte en clair d’une même colonne produira toujours le même blind index.


Comment fonctionne la recherche sur des données chiffrées avec CipherSweet ?

Lorsque vous tapez “John” dans votre recherche, CipherSweet va utiliser les blind indexes pour effectuer la recherche sans déchiffrer les données. Voici ce qui se passe en détail :

  1. Calcul du Blind Index : CipherSweet va d’abord calculer le blind index pour “John” en utilisant une fonction de hachage sécurisée et une clé appropriée (pour rappel, la clé est toujours similaire pour la même colonne).

  2. Recherche dans la base de données : Ensuite, il va comparer ce blind index avec les blind indexes stockés dans la base de données. Comme les blind indexes sont des valeurs hachées, cela permet de rechercher efficacement sans révéler les données chiffrées.

  3. Retour des résultats : Si une correspondance est trouvée, CipherSweet peut alors récupérer les données chiffrées correspondantes et les déchiffrer si nécessaire pour les afficher.


Aucune page ou chapitre n'a été ajouté à cet article.