Sommaire

OpenSSL

Introduction
Paramètres clés/certificats
Vérification de certificats
Constantes/flags PKCS7
openssl_error_string
openssl_free_key
openssl_get_privatekey
openssl_get_publickey
openssl_open
openssl_seal
openssl_sign
openssl_verify
openssl_pkcs7_decrypt
openssl_pkcs7_encrypt
openssl_pkcs7_sign
openssl_pkcs7_verify
openssl_x509_checkpurpose
openssl_x509_free
openssl_x509_parse
openssl_x509_read

6.68.12 openssl_verify

PHP 4 >= 4.0.4

Description

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

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 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($fp8192);
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.