(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
openssl_pkcs7_decrypt — Расшифровывает S/MIME-сообщение
$input_filename
,$output_filename
,$certificate
,$private_key
= null
Функция расшифровывает S/MIME-сообщение, которое содержится в файле input_filename
.
Для расшифровки сообщения функция использует сертификат certificate
и закрытый ключ private_key
, который связан с сертификатом.
input_filename
output_filename
Функция расшифрует сообщение и запишет сообщение в файл, который указали
в параметре output_filename
.
certificate
private_key
Функция возвращает true
, если выполнилась успешно, или false
, если возникла ошибка.
Версия | Описание |
---|---|
8.0.0 |
Параметр private_key теперь принимает экземпляр класса OpenSSLAsymmetricKey
или OpenSSLCertificate;
раньше принимался ресурс (resource), который принадлежал
типу OpenSSL key или OpenSSL X.509 CSR .
|
Пример #1 Пример использования функции openssl_pkcs7_decrypt()
<?php
// Переменные сертификата $cert и ключа $key содержат пару с личным сертификатом и закрытым ключом
$infilename = "encrypted.msg"; // Этот файл содержит зашифрованное сообщение
$outfilename = "decrypted.msg"; // Пользователю, который будет записывать сообщение в файл, требуются права на запись
if (openssl_pkcs7_decrypt($infilename, $outfilename, $cert, $key)) {
echo "Функция расшифровала сообщение!";
} else {
echo "Возникла ошибка при расшифровке!";
}
?>