Opções/Constantes PKCS7
As funções S/MIME usam opções que são especificadas usando um campo de bits que pode incluir um ou mais dos seguintes valores:
Constante | Descrição |
---|---|
PKCS7_TEXT
(int)
|
Adiciona cabeçalhos de tipo de conteúdo text/plain à
mensagem criptografada/assinada. Se estiver descriptografando ou verificando, ele remove esses cabeçalhos da
saída - se a mensagem descriptografada ou verificada não for do tipo MIME
text/plain , então ocorrerá um erro. |
PKCS7_BINARY
(int)
|
Normalmente, a mensagem de entrada é convertida para o formato "canônico",
que está efetivamente usando CR e LF
como fim de linha: conforme exigido pela especificação S/MIME. Quando esta
opção está presente, nenhuma tradução ocorre. Isso é útil ao
manipular dados binários que podem não estar no formato MIME. |
PKCS7_NOINTERN
(int)
|
Ao verificar uma mensagem, os certificados (se
houver) incluídos na mensagem são normalmente pesquisados para o
certificado de assinatura. Com esta opção, apenas os
certificados especificados no parâmetro untrusted_certificates_filename
de openssl_pkcs7_verify() são
usados. No entanto, os certificados fornecidos ainda podem ser usados como
CAs não confiáveis.
|
PKCS7_NOVERIFY
(int)
|
Não verifica o certificado do signatário de uma mensagem assinada. |
PKCS7_NOCHAIN
(int)
|
Não encadeia a verificação de certificados de signatários: ou seja, não usa os certificados na mensagem assinada como CAs não confiáveis. |
PKCS7_NOCERTS
(int)
|
Ao assinar uma mensagem, o certificado do signatário normalmente é
incluído - com esta opção, ele é excluído. Isso reduzirá o
tamanho da mensagem assinada, mas o verificador deve ter uma cópia do
certificado do signatário disponível localmente (passado usando o
untrusted_certificates_filename para
openssl_pkcs7_verify(), por exemplo).
|
PKCS7_NOATTR
(int)
|
Normalmente, quando uma mensagem é assinada, um conjunto de atributos é incluído, que inclui o tempo de assinatura e os algoritmos simétricos suportados. Com esta opção, eles não são incluídos. |
PKCS7_DETACHED
(int)
|
Ao assinar uma mensagem, usa a assinatura de texto simples com o
tipo MIME "multipart/signed" . Este é o padrão
não for especificada nsenhuma opção no parâmetro flags para
openssl_pkcs7_sign().
Se esta opção for desativada, a mensagem será assinada usando
assinatura opaca, que é mais resistente à tradução por retransmissões de e-mail,
mas não pode ser lida por agentes de e-mail que não suportam S/MIME. |
PKCS7_NOSIGS
(int)
|
Não tenta verificar as assinaturas em uma mensagem |
PKCS7_NOOLDMIMETYPE
(int)
|
Disponível a partir do PHP 8.3.0.
Define o content-type como application/pkcs7-mime em vez de
application/x-pkcs7-mime para criptografar uma mensagem.
|