7.73 OpenSSL
7 Index des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes prédefinies . Paramètres clés/certificats . Vérification de certificats . openssl_csr_export_to_file . openssl_csr_export . openssl_csr_new . openssl_csr_sign . openssl_error_string . openssl_free_key . openssl_get_privatekey . openssl_get_publickey . openssl_open . openssl_pkcs7_decrypt . openssl_pkcs7_encrypt . openssl_pkcs7_sign . openssl_pkcs7_verify . openssl_pkey_export_to_file . openssl_pkey_export . openssl_pkey_get_private . openssl_pkey_get_public . openssl_pkey_new . openssl_private_decrypt . openssl_private_encrypt . openssl_public_decrypt . openssl_public_encrypt ->openssl_seal . openssl_sign . openssl_verify . openssl_x509_check_private_key . openssl_x509_checkpurpose . openssl_x509_export_to_file . openssl_x509_export . openssl_x509_free . openssl_x509_parse . openssl_x509_read
|
7.73.31 openssl_seal()Scelle des données[ Exemples avec openssl_seal ] PHP 4 >= 4.0.4
int
openssl_seal (
string
data
,
string
sealed_data
,
array
env_keys
,
array
pub_key_ids
)
openssl_seal
retourne la longueur des données
scellées en cas de succès, et
FALSE
sinon.
En cas de succès, les données scellées sont
placées dans le paramètre
sealed_data
,
et les clés d'enveloppe dans
env_keys
.
openssl_seal
scelle (chiffre) les données
data
en utilisant l'algorithme RC4 avec une clé
secrètre générée aléatoirement. La clé
est chiffrée avec chaque clé publique associée à
pub_key_ids
et chaque clé ainsi
encryptée est retournée dans
env_keys
.
Cela signifique que vous pouvez envoyez des données scellées
à plusieurs destinataires (en supposant que chacun ait recu la
clé publique). Chaque destinataire doit recevoir les données
encryptées et la clé d'enveloppe, qui a été
encryptée avec la clé publique du destinataire.
Exemple avec openssl_seal |
<?php // On suppose que $data contient les données à sceller // lecture de la clé publique pour chaque destinataire $fp = fopen("/src/openssl-0.9.6/demos/maurice/cert.pem", "r"); $cert = fread($fp, 8192); fclose($fp); $pk1 = openssl_get_publickey($cert); // pour le deuxième destinataire $fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem", "r"); $cert = fread($fp, 8192); fclose($fp); $pk2 = openssl_get_publickey($cert); // scelle le message : seuls, les possessuers de $pk1 et $pk2 peuvent déchiffrer // le message $sealed avec les clés $ekeys[0] et $ekeys[1] (respectivement). openssl_seal($data, $sealed, $ekeys, array($pk1,$pk2)); // libère les clés de la mémoire openssl_free_key($pk1); openssl_free_key($pk2); ?>
|
Voir aussi
openssl_open
.
|