Je t'ai répondu en MP suite à ton MP, mais pour que ceux tombant sur ton message puissent suivre :
Une clef privée sert à déchiffrer un bloc de données chiffré avec la clef publique associée.
Donc, si tu veux envoyer, tu récupères le certificat du destinataire et tu utilises la clef publique contenue dedans pour chiffrer les données.
L'API BouncyCastle fonctionne très bien pour ça, couplée à Javamail ça marche très bien.
Ce bouquin est quasi indispensable pour s'initier aux arcanes de cette API, la javadoc étant très mauvaise.
Le processus décrit dans ton quote détaille ce qui se passe réellement en interne, c'est à dire que la clef publique chiffre avec l'algo RSA (généralement c'est celui là et c'est un algo asymétrique) la clef de session servant à chiffrer avec un algo symétrique les données.
Donc en clair, une clef de session est générée par l'émetteur du message pour un algo symétrique (par exemple 3DES), les données sont chiffrées, puis la clef de session est chiffrée à son tour mais avec la clef publique du destinataire puis elle est associée aux données chiffrées à envoyer. Le tout est mis dans un CMS qui peut alors être envoyé par mail en tant que bodypart MIME standard.
Le destinataire déchiffre alors la clef de session avec sa clef privée puis déchiffre les données avec la clef de session obtenue.
Vala.
Partager