openssl_verify
(PHP 4 >= 4.0.4, PHP 5)
openssl_verify — Vérifie une signature
Description
int openssl_verify
( string
$data
, string $signature
, mixed $pub_key_id
[, int $signature_alg
= OPENSSL_ALGO_SHA1
] )
openssl_verify() vérifie que la signature
signature
est correcte pour les données
data
, et avec la clé publique
pub_key_id
. Cette clé doit être la clé
publique correspondant à la clé privée utilisée lors de la signature.
Liste de paramètres
-
data
-
-
signature
-
-
pub_key_id
-
-
signature_alg
-
Pour plus d'informations, reportez-vous à la liste des algorithmes de signature.
Valeurs de retour
Retourne 1 si la signature est correcte, 0 si elle est incorrecte et -1 si une erreur survient.
Historique
Version | Description |
---|---|
5.2.0 |
Ajout du paramètre signature_alg .
|
Exemples
Exemple #1 Exemple avec openssl_verify()
<?php // On suppose que $data et $signature contiennent les données à signer et // la signature. // Lecture de la clé publique depuis le certificat $fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem", "r"); $cert = fread($fp, 8192); fclose($fp); $pubkeyid = openssl_get_publickey($cert); // indique si la signature est correcte $ok = openssl_verify($data, $signature, $pubkeyid); if ($ok == 1) { echo "Signature valide"; } elseif ($ok == 0) { echo "Signature erronée"; } else { echo "Erreur de vérification de la signature"; } // libère les clés de la mémoire openssl_free_key($pubkeyid); ?>