SommaireTelecharger la documentationChapitre suivantChapitre precedent  

  .: News :.: Edito :.: Scripts :.: Forum :.: Erreurs :.: Jobs :. 
 
Sommaire

OpenSSL

Introduction
Paramètres clés/certificats
Vérification de certificats
Constantes/flags PKCS7
openssl_error_string
openssl_free_key
openssl_get_privatekey
openssl_get_publickey
openssl_open
openssl_seal
openssl_sign
openssl_verify
openssl_pkcs7_decrypt
openssl_pkcs7_encrypt
openssl_pkcs7_sign
openssl_pkcs7_verify
openssl_x509_checkpurpose
openssl_x509_free
openssl_x509_parse
openssl_x509_read

6.69.14 openssl_pkcs7_encrypt

[ Exemples avec openssl_pkcs7_encrypt ]   PHP 4 >= 4.0.6

Description

boolean openssl_pkcs7_encrypt(string infilename ,string outfilename ,mixed recipcerts ,array headers ,[long flags ])

openssl_pkcs7_encrypt prend le contenu du fichier infilename et le chiffre en utilisant un chiffrement RC2 à 40-bit, de manière à ce que le message ne puisse être lu que par le possesseur de recipcerts, qui peut être un certificat X.509, ou un tableau de certificats X.509. headers est un tableau d'en-têtes qui seront ajouté en tête de message, une fois que les données auront été chiffrées. flags peut être utilisé pour spécifier des options qui affecteront le chiffrement (voir les constantes PKCS7). headers peut être un tableau associatif, dont les clés sont les noms d'en-tête, ou bien un tableau indexé dont chaque ligne contient une en-tête complète.

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_encrypt

<?php
// le message que vous souhaitez chiffrer et envoyer à votre agent secret
// en mission commandée, appelé "nighthawk". Vous avez son certificat
// dans le fichier "nighthawk.pem"
$data = <<<EOD
Nighthawk,
Top secret, uniquement vous votre lecture!
L'ennemi approche! Rendez-vous au café à 8h30,
pour votre faux passeport.
HQ
EOD;
// sauvez le message dans un fichier
$fp fopen("msg.txt""w");
fwrite($fp$data);
fclose($fp);
// chiffrez le
if (openssl_pkcs7_encrypt("msg.txt""enc.txt""nighthawk.pem",
    array(
"To" => "nighthawk@agent.com"// keyed syntax
          
"From: HQ <hq@cia.com>"// indexed syntax
          
"Subject" => "Eyes only")))
{
    
// message chiffré : envoyez le!
    
exec(ini_get("sendmail_path") . " < enc.txt");
}
?>

Note

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


Chapitre précédentChapitre suivantAccueil nexen.net