(PHP 8)
openssl_cms_sign — Подписывает файл
$input_filename,$output_filename,$certificate,$private_key,$headers,$flags = 0,$encoding = OPENSSL_ENCODING_SMIME,$untrusted_certificates_filename = nullФункция подписывает файл сертификатом X.509 и ключом.
input_filenameИмя файла для подписи.
output_filenameИмя файла для хранения результатов.
certificateСертификат подписи. Смотрите параметры ключа/сертификата для получения списка допустимых значений.
private_key
Ключ, который связан с certificate.
Смотрите параметры ключа/сертификата для получения списка допустимых значений.
headersМассив заголовков для включения в вывод S/MIME.
flagsФлаги, передаваемые cms_sign().
encoding
Кодировка выходного файла. OPENSSL_ENCODING_SMIME,
OPENSSL_ENCODING_DER или OPENSSL_ENCODING_PEM.
untrusted_certificates_filenameПромежуточные сертификаты, включаемые в подпись.
Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
Пример #1 Пример использования функции openssl_cms_sign()
<?php
openssl_cms_sign('input.txt', 'output.txt', 'file://cert.pem', 'file://privkey.pem', null, OPENSSL_CMS_BINARY, OPENSSL_ENCODING_DER, 'chain.pem');
?>