openssl_get_publickey
openssl_pkcs12_export_to_file
Fonctions OpenSSL
PHP Manual

# openssl_open

(PHP 4 >= 4.0.4, PHP 5)

openssl_open — Ouvre des données scellées

### Description

bool openssl_open ( string `$sealed_data` , string `&$open_data` , string `$env_key` , mixed `$priv_key_id` )

openssl_open() ouvre (déchiffre) les données `sealed_data` en utilisant la clé privée `priv_key_id` et la clé d'enveloppe `env_key` et remplit `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.

### Liste de paramètres

`sealed_data`

`open_data`

  Si l'appel a réussi, les données ouvertes sont retournées dans ce paramètre.

`env_key`

`priv_key_id`

### Valeurs de retour

Cette fonction retourne `TRUE` en cas de succès ou `FALSE` si une erreur survient.

### Exemples

Exemple #1 Exemple avec openssl_open()

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

### Voir aussi

- openssl_seal() - Scelle des données

openssl_get_publickey
openssl_pkcs12_export_to_file
Fonctions OpenSSL
PHP Manual