Glasnost

Aires fonctionnelles

La crypto API est conceptuellement divisée en cinq aires fonctionnelles.

Cryptographie de base

Ces fonctions sont contextuelles et utilisent les services d'un fournisseur de services cryprographiques précédement choisi par titre ou par fonctionnalité.

Nous y trouvons les fonctions de génération et d'emmagasination de clés, la gestion du mode chainage (mélange de données cryptées et non cryptées) et des vecteurs d'initialisation (graines permettant de former une cryptographie unique par message).

L'emmagasinnation des clés est importante car il est parfois nécessaire d'extraire les clés généralement,

Une clé n'est jamais extraite en clair, elle est transmise sous forme de BLOB - Binary Large OBject, un objet binaire qui n'est pas directement intérprétable par le système qui l'utilise, dans notre cas, il s'agit d'un clé cryptée.

Codage/décodage

Nous y trouvons les fonctions permettant de chiffrer et déchiffrer des données (hachage, cryptage).

Magasin de certificat

Il est important ici de penser magasin comme un magasin d'entreprise (entrée/sortie de stocks) et non comme un magasin grand public (épicerie, grande surface).

Nous y trouvons les fonctions assurant la gestion de collections de certificats digitaux.

Messages simplifiés

Nous y trouvons un jeu de fonctions de haut niveau permettant de simplifier la manipulation classique des messages cryptographiques.

Elles enveloppe une partie des fonctionnalités de base de la cryptographie, des messages de bas niveau et de la gestion des certificats dans des fonctions toutes-en-une, telles que:

Messages de bas niveau

Les fonctions de messages de bas niveau permettent une plus grande flexibilitée que les messages simplifiés mais nécessite plus de code. Ces fonctions sont utilisées par les fonctions de messages simplifiés.

La gestion (construction, modification, réception, etc…) des messages avec ces fonctions s'effectue au fur et à mesure de leurs appels, ainsi une fonction ouvre un message et ce dernier reste ouvert et modifiable jusqu'à ce qu'une fonction le ferme.

L'utilisation de ces fonctions nécessite pour la construction du message de faire appel à des fonctions d'autres aires fonctionnelles comme l'emmaganisation des certificats, et la cryptographie de base.

Shéma de fonctionnement de la CryptoAPI.

Shéma de fonctionnement de la CryptoAPI.

On y reconnait les aires fonctionnelles, pour la programmation, une nommenclature particulière leur est associée:

Aire fonctionnelles Nommenclature
Cryptographie de base Crypt
Codage/décodage Crypt
Magasin de certificat Store
Messages simplifiés Message
Messages de bas niveau Msg