Architecture du système CryptoAPI

L’architecture système CryptoAPI est composée de cinq domaines fonctionnels majeurs :

Fonctions de chiffrement de base

Fonctions de codage/décodage de certificat

Fonctions du magasin de certificats

Fonctions de message simplifiées

  • Fonctions utilisées pour chiffrer et déchiffrer les messages et les données.
  • Fonctions utilisées pour signer les messages et les données.
  • Fonctions utilisées pour vérifier l’authenticité des signatures sur les messages reçus et les données associées.

Pour plus d’informations, consultez messages simplifiés et fonctions de message simplifiées.

Fonctions de message de bas niveau

  • Fonctions utilisées pour effectuer toutes les tâches effectuées par les fonctions de message simplifiées. Les fonctions de message de bas niveau offrent plus de flexibilité que les fonctions de message simplifiées, mais nécessitent davantage d’appels de fonction. Pour plus d’informations, consultez messages de bas niveau et fonctions de message de bas niveau.

architecture CryptoAPI

Chacune des zones fonctionnelles a un mot clé dans son nom de fonction qui indique sa zone fonctionnelle.

Zone fonctionnelle Convention de nom de fonction
Fonctions de chiffrement de base Compliqué
Fonctions d’encodage/décodage Compliqué
Fonctions du magasin de certificats Magasin
Fonctions de message simplifiées Message
Fonctions de message de bas niveau Fragment

Les applications utilisent des fonctions dans tous ces domaines. Ces fonctions, prises ensemble, composent CryptoAPI. Les fonctions de chiffrement de base utilisent les CSP pour les algorithmes de chiffrement nécessaires et pour la génération et le stockage sécurisé des clés de chiffrement.

Deux types de clés de chiffrement sont utilisés : les clés de session, qui sont utilisées pour un chiffrement/déchiffrement unique, et les paires de clés publique/privée, qui sont utilisées de façon plus permanente.

Notes

Bien qu’une application puisse communiquer directement avec l’une des cinq zones fonctionnelles, elle ne peut pas communiquer directement avec un CSP. Toutes les communications entre les applications et CSP se produisent par le biais des fonctions de chiffrement de base. Les fonctions de chiffrement de base ont un paramètre qui spécifie le fournisseur de services de chiffrement à utiliser. Ce paramètre peut avoir la valeur null pour sélectionner un CSP par défaut.