(PHP 4 >= 4.0.4, PHP 5, PHP 7)
openssl_open — Öffnet versiegelte Daten
$sealed_data
, string &$open_data
, string $env_key
, mixed $priv_key_id
)
Die Funktion openssl_open() öffnet (entschlüsselt)
sealed_data
unter Verwendung des privaten
Schlüssels, der mit der Schlüsselkennung
priv_key_id
und dem Umschlagschlüssel
env_key
verknüpft ist und füllt
open_data
mit den entschlüsselten Daten. Der
Umschlagschlüssel wird bei der Versiegelung erzeugt und kann
ausschlieslich für einen bestimmten privaten Schlüssel verwendet werden.
Mehr Informationen erhalten Sie bei der Dokumentation zu
openssl_seal().
sealed_data
open_data
Bei erfolgreicher Ausführung werden die gelesenen Daten in diesem Parameter zurückgegeben.
env_key
priv_key_id
Gibt bei Erfolg TRUE
zurück. Im Fehlerfall wird FALSE
zurückgegeben.
Beispiel #1 openssl_open() Beispiel
<?php
// Annahme: $sealed und $env_key enthalten versiegelte Daten und unseren
// Umschlagschlüssel; beide haben wir von dem Versiegelnden erhalten
// privaten Schlüssel aus einer Datei holen und vorbereiten
$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);
// entschlüsseln der Daten und speichern in $open
if (openssl_open($sealed, $open, $env_key, $pkeyid)) {
echo "Das sind die geöffneten Daten: ", $open;
} else {
echo "Öffnen der Daten nicht möglich!";
}
// löschen des privaten Schlüssels aus dem Speicher
openssl_free_key($pkeyid);
?>