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.68.9 openssl_open

PHP 4 >= 4.0.4

Description

boolean openssl_open(string sealed_data ,string open_data ,string env_key ,mixed priv_key_id )

openssl_openTRUE en cas de succès, et FALSE sinon. En cas de succès, les données déchiffrées sont placées dans open_data.

openssl_open ouvre (déchiffre) les données sealed_data en utilisant la clé prviée priv_key_id et la clé d'enveloppe env_key et remplis open_data avec les données déchiffrées. La clé d'enveloppe est générée lorsque les données sont scellées, et ne peut être utilisée qu'avec la clé privée spécifique. Reportez-vous à openssl_seal pour plus d'informations.

Exemple avec openssl_open

<?php
// On suppose que $sealed et $env_key contiennent les donn&eacute;es scell&eacute;es
// et la cl&eacute; d'enveloppe, fournies par l'exp&eacute;diteur
// lecture de la cl&eacute; priv&eacute;e dans un fichier
$fp fopen("/src/openssl-0.9.6/demos/sign/key.pem""r");
$priv_key fread($fp8192);
fclose($fp);
$pkeyid openssl_get_privatekey($priv_key);
// d&eacute;chiffrage des donn&eacute;es :@: elles sont plac&eacute;es dans $open
if (openssl_open($sealed$open$env_key$pkeyid))
    echo 
"Voici les donn&eacute;es d&eacute;chiffr&eacute;es : "$open;
else
    echo 
"Impossible de d&eacute;chiffrer les donn&eacute;es";
// lib&eacute;ration des ressources
openssl_free_key($pkeyid);
?>

Voir aussi openssl_seal.