Le chiffrement AEAD déterministe fournit le chiffrement avec une propriété déterministe : le chiffrement des mêmes données produit toujours le même texte chiffré. Ce type de chiffrement est utile pour l'encapsulation de clé ou pour certains schémas de recherche sur des données chiffrées (consultez le document RFC 5297, section 1.3 pour plus d'informations). En raison de sa propriété déterministe, les implémentations de cette primitive peuvent entraîner une perte de confidentialité, car il suffit à un pirate informatique de trouver le texte chiffré d'un message donné pour identifier d'autres instances de ce message.
Le chiffrement AEAD déterministe présente les propriétés suivantes:
- Confidentialité: on ne connaît que la longueur du texte brut et l'égalité des textes en clair répétés.
- Authenticité: il est impossible de modifier le texte brut chiffré sous-jacent au texte chiffré sans être détecté.
- Symétrie: le chiffrement du texte brut et le déchiffrement du texte chiffré s'effectuent avec la même clé.
- Déterministe: tant que la clé primaire n'est pas modifiée, le chiffrement d'un texte brut deux fois avec les mêmes paramètres produit le même texte chiffré.
Données associées
Le chiffrement AEAD déterministe peut également être utilisé pour associer un texte chiffré à des données associées spécifiques. Supposons que vous disposez d'une base de données avec les champs user-id
et encrypted-medical-history
. Dans ce scénario, user-id
peut être utilisé comme données associées lors du chiffrement de encrypted-medical-history
. Cela empêche un pirate informatique de transférer le dossier médical d'un utilisateur à un autre.
Choisir un type de clé
Nous recommandons le type de clé AES256_SIV pour tous les cas d'utilisation.
Garanties de sécurité
- Niveau d'authentification d'au moins 80 bits.
- Le texte brut et les données associées peuvent avoir des longueurs arbitraires (dans la plage 0...232 octets).
- Niveau de sécurité 128 bits contre les attaques par récupération de clés, ainsi que lors des attaques multi-utilisateurs portant sur jusqu'à 232 clés. Cela signifie que si un adversaire obtient 232 texte chiffré du même message chiffré sous 232 clés, il doit effectuer 2128 calculs pour obtenir une seule clé.
- La possibilité de chiffrer en toute sécurité 238 messages, à condition que chacun d'eux ait une longueur inférieure à 1 Mo.
Exemple d'utilisation
Consultez les sections Je souhaite chiffrer les données de manière déterministe et Je souhaite lier le texte chiffré à leur contexte.