Provided by: manpages-fr-extra_20151231_all bug

NOM

       PKCS7_encrypt - Créer une structure PKCS#7 envelopedData

SYNOPSIS

       #include <openssl/pkcs7.h>

       PKCS7 *PKCS7_encrypt(STACK_OF(X509) *certs, BIO *in, const EVP_CIPHER *cipher, int
       drapeaux);

DESCRIPTION

       PKCS7_encrypt() crée et renvoie une structure PKCS#7 envelopedData. certs est une liste de
       certificats de destinataire. in est le contenu à chiffrer. cipher est l'algorithme de
       chiffrement symétrique à utiliser. drapeaux est un ensemble facultatif d'attributs.

NOTES

       Seules les clés RSA sont prises en charge dans PKCS7 et envelopedData, donc les
       certificats de destinataire fournis à cette fonction doivent tous contenir des clés
       publiques RSA, mais ils n'ont pas besoin d'être signés en utilisant l'algorithme RSA.

       EVP_des_ede3_cbc() (DES triple) est l'algorithme de choix pour l'utilisation de S/MIME
       parce que la plupart des clients l'accepteront.

       Certains vieux clients autorisés à l'exportation (« export grade ») pourraient ne
       permettre qu'un chiffrement faible utilisant RC2 en 40 ou 64 bits. Ils peuvent être
       utilisés en passant respectivement EVP_rc2_40_cbc() et EVP_rc2_64_cbc().

       L'algorithme passé dans le paramètre cipher doit permettre l'encodage ASN1 de ses
       paramètres.

       De nombreux navigateurs implémentent une option pour « signer et chiffrer » qui est
       simplement une S/MIME envelopedData contenant un message signé S/MIME. Cela peut être
       facilement produit en stockant le message signé S/MIME dans un BIO mémoire et en le
       passant à PKCS7_encrypt().

       Les attributs suivants peuvent être passés dans le paramètre drapeaux.

       Si l'attribut PKCS7_TEXT est défini, les données sont précédées des en-têtes MIME pour le
       type text/plain.

       Normalement, le contenu fourni est traduit en format canonique MIME (comme exigé par les
       spécifications S/MIME) ; si PKCS7_BINARY est défini, aucune traduction n'est effectuée.
       Cette option devrait être utilisée si les données fournies sont en format binaire, sinon
       la traduction va les corrompre. Si PKCS7_BINARY est défini, alors PKCS7_TEXT est ignoré.

       Si l'attribut PKCS7_STREAM est défini, une structure PKCS7 partielle est produite,
       appropriée pour les entrées et sorties en flux : aucune donnée n'est lue du BIO in.

NOTES

       Si l'attribut PKCS7_STREAM est défini, la structure PKCS7 renvoyée n'est pas terminée, et
       afficher son contenu par l'intermédiaire d'une fonction qui ne finalise pas correctement
       la structure PKCS7 produira des résultats imprévisibles.

       Plusieurs fonctions, y compris SMIME_write_PKCS7(), i2d_PKCS7_bio_stream() et
       PEM_write_bio_PKCS7_stream(), finalisent la structure. Sinon, la finalisation peut être
       réalisée en obtenant directement le BIO de flux ASN1 avec BIO_new_PKCS7().

VALEURS DE RETOUR

       PKCS7_encrypt() renvoie soit une structure PKCS7, soit NULL en cas d'erreur. L'erreur peut
       être obtenue à l'aide de ERR_get_error(3).

VOIR AUSSI

       ERR_get_error(3), PKCS7_decrypt(3)

HISTORIQUE

       PKCS7_decrypt() a été ajoutée dans la version 0.9.5 d'OpenSSL. L'attribut PKCS7_STREAM a
       été pris en charge la première fois dans la version 1.0.0 d'OpenSSL.

TRADUCTION

       La traduction de cette page de manuel est maintenue par les membres de la liste
       <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de
       traduction par un rapport de bogue sur le paquet manpages-fr-extra.