Forum und email
openssl_open

openssl_open

(PHP 4 >= 4.0.4, PHP 5)

openssl_open -- Otevřít zapečetěná data

Popis

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

Při úspěchu vrací TRUE, při chybě FALSE. Úspěšně otevřená data se umístí do argumentu open_data.

openssl_open() otevře (dekóduje) sealed_data pomocí soukromého klíče asociovaného s identifikátorem priv_key_id a obálkou env_key. Tato obálka se generuje při pečetění dat a je použitelná pouze s jedním utčitým soukromým klíčem. Více informací viz openssl_seal().

Příklad 1. Ukázka openssl_open()

// $sealed a $env_key obsahují zapečetěná data a obálku
// obojí nám bylo dáno tím, kdo data zapečetil

// získat ze souboru soukromý klíč a připravit ho
$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);

// dekódovat data a uložit je v $open
if (openssl_open($sealed, $open, $env_key, $pkeyid))
    echo "tady jsou otevřená data: ", $open;
else
    echo "nepodařilo se otevřít data";

// uvolnit klíč z paměti
openssl_free_key($pkeyid);

Viz také openssl_seal().