openssl_verify

(PHP 4 >= 4.0.4)

openssl_verify -- Vérifie une signature

Description

int openssl_verify ( string data, string signature, mixed pub_key_id)

Avertissement

Cette fonction est EXPERIMENTALE. Cela signifie que le comportement de cette fonction, son nom et concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS! Soyez-en conscient, et utilisez cette fonction à vos risques et périls.

openssl_verify() retourne 1 si la signature est correcte, 0 si la signature est incorrecte, et -1 en cas d'erreur.

openssl_verify() vérifie que la signature signature est correcte pour les données data, et avecd la clé publique pub_key_id. Cette clé doit être la clé publique correspondant à la clé privée utilisée lors de la signature.

Exemple 1. Exemple avec openssl_verify()

<?php
// On suppose que $data et $signature contiennent les donn&eacute;es &agrave; signer et
// la signature
// lecture de la cl&eacute; 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&eacute;e";
else
    echo
"Erreur de v&eacute;rification de la signature";
// lib&egrave;re les cl&eacute;s de la m&eacute;moire
openssl_free_key($pubkeyid);
?>

Voir aussi openssl_sign().