+ clef privée passphrase Clef privée déverrouillée Chiffre et signe le message du serveur Demande un message et la clef publique serveur Envoie au serveur le message chiffré et signé + clef publique Côté client Déchiffre le message avec la clef privée serveur Enregistre la clef publique dans son trousseau Réception du message chiffré et la clef publique Renvoie un statut http ok Côté serveur Vérifie la signature
Demande au serveur un message à déchiffrer Déchiffre message serveur + vérifie signature Envoie au serveur le message chiffré et signé + clef publique Côté client Déchiffre le message avec sa clef privée Génère un jeton Réception du message chiffré Renvoie le jeton Côté serveur Vérifie la signature Chiffre et signe le message du serveur
privée Utilisateur s’authentifie Utilisateur écrit le message Envoie le message à l’API Côté client Enregistrement du message tel quel Réception du message chiffré Renvoie statut ok Côté serveur Utilisateur charge la clef publique du destinataire Chiffre et signe le message