Services webmasters
Partenaires
Jeux concours gratuits
 
openssl_pkcs7_encrypt
<<<
openssl_pkcs7_sign openssl_pkcs7_verify
>>>

7.73 OpenSSL
7 Index des fonctions
 Manuel PHP

Introduction
Pré-requis
Installation
Configuration à l'exécution
Types de ressources
Constantes prédefinies
Paramètres clés/certificats
Vérification de certificats
openssl_csr_export_to_file
openssl_csr_export
openssl_csr_new
openssl_csr_sign
openssl_error_string
openssl_free_key
openssl_get_privatekey
openssl_get_publickey
openssl_open
openssl_pkcs7_decrypt
openssl_pkcs7_encrypt
->openssl_pkcs7_sign
openssl_pkcs7_verify
openssl_pkey_export_to_file
openssl_pkey_export
openssl_pkey_get_private
openssl_pkey_get_public
openssl_pkey_new
openssl_private_decrypt
openssl_private_encrypt
openssl_public_decrypt
openssl_public_encrypt
openssl_seal
openssl_sign
openssl_verify
openssl_x509_check_private_key
openssl_x509_checkpurpose
openssl_x509_export_to_file
openssl_x509_export
openssl_x509_free
openssl_x509_parse
openssl_x509_read

7.73.20 openssl_pkcs7_sign()Signe un message S/MIME

[ Exemples avec openssl_pkcs7_sign ]   PHP 4 >= 4.0.6

bool  openssl_pkcs7_sign ( string   infilename , string   outfilename , mixed   signcert , mixed   privkey , array   headers , int   flags , string   extracerts )

openssl_pkcs7_sign prend le contenu du fichier infilename et le signe en utilisant le certificat et la clé privée contenus dans les arguments signcert et privkey .

headers est un tableau d'en-têtes qui seront ajouté au données chiffrées (voir la fonction openssl_pkcs7_encrypt pour plus de détails sur le format du paramètre).

flags sert à modifier le message final. Voyez les constantes PKCS7 . Par défaut, la valeur est : PKCS7_DETACHED.

extracerts spécifi le nom du fichier contenant un ensemble de certificat supplémentaires à inclure dans la signature, qui pourront aider le destinataire à vérifier les données que vous utilisez.

Les paramètres et le type de retour de cette fonction risquent d'evoluer d'ici à la prochaine version de PHP.

Exemple avec openssl_pkcs7_sign

<?php
// le message que vous voulez signer, afin que le destinataire soit sûr qu'il
// vient bien de vous
$data = <<<EOD
Tu peux dépenser jusqu'à 10000 euros en note de frais.
Ton boss
HQ
EOD;
// sauvez le message dans un fichier
$fp = fopen("msg.txt", "w");
fwrite($fp, $data);
fclose($fp);
// chiffrez le
if (openssl_pkcs7_sign("msg.txt", "signed.txt", "mycert.pem",
    array(
"mycert.pem", "mypassphrase"),
    array(
"To" => "joes@sales.com",   // syntaxe à clé
          
"From: HQ <ceo@sales.com>", // syntaxe indexée
          
"Subject" => "Secret défense"))
{
    
// message signed - send it!
    
exec(ini_get("sendmail_path") . " < signed.txt");
}
?>

Note

Ces constantes ont été ajoutées en PHP 4.0.6.

<< openssl_pkcs7_sign >>
openssl_pkcs7_encrypt OpenSSL openssl_pkcs7_verify
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -