Elle fournit des primitives et des constructions pour des propriétés telles que la confidentialité, l'intégrité, l'authentification de l'origine, l'authentification des entités et des preuves pouvant soutenir la non-répudiation, puis les combine au sein de protocoles et de systèmes dont la sécurité dépend d'hypothèses, de clés, de paramètres et de conditions d'exploitation explicites.
Ses outils incluent le chiffrement, les fonctions de hachage cryptographiques, les codes d'authentification de message, les signatures numériques, les méthodes d'établissement de clés et la génération sécurisée de bits aléatoires. Choisir une primitive approuvée n'est qu'une partie de l'ingénierie d'une implémentation et d'un cycle de vie sécurisés.
Points clés
Finalité et modèleÉnoncer la propriété de sécurité requise, les actifs protégés, les capacités de l'adversaire, les frontières de confiance, les algorithmes et paramètres acceptables, et le contexte de protocole dans lequel une primitive sera utilisée.
Clés et aléaGénérer des valeurs imprévisibles, protéger les clés privées ou secrètes, lier les clés à des finalités autorisées, les distribuer de façon sécurisée, les renouveler ou les remplacer lorsque requis, et les détruire de façon appropriée.
Implémentation et maintenanceUtiliser des constructions et des bibliothèques revues, éviter la composition non sûre, tester l'interopérabilité et la gestion des défaillances, réduire l'exposition aux canaux auxiliaires, et migrer avant que les algorithmes ou tailles de paramètres ne deviennent inadaptés.
Limite importanteLa cryptographie ne rend pas un système entier sécurisé. Des primitives correctes peuvent être vaincues par un aléa faible, le vol de clés, des erreurs de protocole, des terminaux vulnérables, une fuite de métadonnées, des défauts d'implémentation, des paramètres obsolètes ou le mésusage par une partie autorisée.