Manuel PHP
Précédent |  | Suivant

# openssl_open

(PHP 4 >= 4.0.4)

openssl_open -- Ouvre des données scellées

## Description

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

openssl_open() `TRUE` 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 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().

Précédent | Sommaire | Suivant
openssl_get_publickey | Niveau supérieur | openssl_pkcs7_decrypt