 |
(PHP
4 >= 4.0.4) openssl_verify - проверяет подпись. Описаниеint
openssl_verify (string data, string signature, mixed pub_key_id) | Предупреждение! |
|---|
Эта
функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано
для данной функции может быть изменено в будущих релизах РНР без предупреждения.
Вы можете использовать эту функцию только на свой страх и риск. |
Возвращает
1, если подпись корректна, 0, если некорректна, -1 при ошибке. openssl_verify()
проверяет, что signature корректна для специфицированных данных
data с помощью public ключа, ассоциированного с pub_key_id.
Это обязан быть public ключ, соответствующий private ключу, используемому для
подписи. Пример
1. openssl_verify()
// принимаем, что $data и $signature содержат данные и подпись // извлекаем
public ключ из сертификата и читаем его $fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem",
"r"); $cert = fread($fp, 8192); fclose($fp); $pubkeyid = openssl_get_publickey($cert);
// устанавливаем, okay подпись или нет $ok = openssl_verify($data, $signature,
$pubkeyid); if ($ok == 1) echo "good"; elseif ($ok == 0) echo "bad"; else echo
"ugly, error checking signature"; // освобождаем ключ из памяти openssl_free_key($pubkeyid); |
|
См.
также openssl_sign(). |  |