openssl_cms_sign
(PHP 8)
openssl_cms_sign — Assina um arquivo
Descrição
string
$input_filename
,string
$output_filename
,OpenSSLCertificate|string
$certificate
,#[\SensitiveParameter] OpenSSLAsymmetricKey|OpenSSLCertificate|array|string
$private_key
,?array
$headers
,int
$flags
= 0,int
$encoding
= OPENSSL_ENCODING_SMIME
,?string
$untrusted_certificates_filename
= null
): bool
Esta função assina um arquivo com uma certificado X.509 e uma chave.
Parâmetros
input_filename
-
O nome do arquivo a ser assinado.
output_filename
-
O nome do arquivo onde os resultados serão armazenados.
certificate
-
O certificado para assinatura. Consulte os parâmetros de chave/certificado para uma lista de valores válidos.
private_key
-
A chave associada ao certificado informado no parâmetro
certificate
. Consulte os parâmetros de chave/certificado para uma lista de valores válidos. headers
-
Um array de cabeçalhos a serem incluídos na saída S/MIME.
flags
-
Opções a serem passadas a cms_sign().
encoding
-
A codificação do arquivo de saída. Uma das constantes
OPENSSL_ENCODING_SMIME
,OPENSSL_ENCODING_DER
ouOPENSSL_ENCODING_PEM
. untrusted_certificates_filename
-
Certificados intermediários a serem incluídos na assinatura.
Exemplos
Example #1 Exemplo de openssl_cms_sign()
<?php
openssl_cms_sign('entrada.txt', 'saída.txt', 'file://certificado.pem', 'file://chaveprivada.pem', null, OPENSSL_CMS_BINARY, OPENSSL_ENCODING_DER, 'cadeia_de_certificados.pem');
?>