(PHP 4 >= 4.0.4, PHP 5)
openssl_open — Abre información sellada
$sealed_data
, string &$open_data
, string $env_key
, mixed $priv_key_id
[, string $method
] )
openssl_open() abre (desencripta)
sealed_data
usando la clave privada asociada con
el indentificador de clave priv_key_id
y la clave de sobre
env_key
, y rellena
open_data
con la información desencriptada.
La clave de sobre es generada cuando la
información es sellada y sólo puede usarse por una clave privada específica. Véase
openssl_seal() para más información.
sealed_data
open_data
Si la llamada tiene éxtio la información abierta es devuelta en este parámetro.
env_key
priv_key_id
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
Ejemplo #1 Ejemplo de openssl_open()
<?php
// se asume que $sealed y $env_key contienen la información sellada
// y nuestra clave de sobre, ambas entregadas a nosotros por el sellador.
// traer la clave privada del archivo y prepararla
$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);
// desencriptar la información y guardarla en $open
if (openssl_open($sealed, $open, $env_key, $pkeyid)) {
echo "aquí está la información abierta: ", $open;
} else {
echo "fallo al abrir la información";
}
// liberar la clave privada de la memoria
openssl_free_key($pkeyid);
?>