openssl_sign
(PHP 4 >= 4.0.4, PHP 5)
openssl_sign — Signe les données
Description
bool openssl_sign
( string $data
, string &$signature
, mixed $priv_key_id
[, int $signature_alg
] )
openssl_sign() calcule la signature des données data en utilisant l'algorithme SHA1 (hashing) suivi du chiffrage avec la clé privée priv_key_id . Notez que les données elles-mêmes ne sont pas chiffrées.
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.. En cas de succès, la signature est placée dans signature .
Note: Le paramètre optionnel signature_alg a été ajouté en PHP 5.0.0. Il vaut par défaut OPENSSL_ALGO_SHA1. Pour plus d'informations, reportez-vous à la liste des algorithmes de signature.
Example#1 Exemple avec openssl_sign()
<?php
// On suppose que $data contient les données à signer
// lecture de la clé publique pour chaque destinataire
$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);
// calcule de la signature
openssl_sign($data, $signature, $pkeyid);
// libère les clés de la mémoire
openssl_free_key($pkeyid);
?>
Voir aussi openssl_verify().