Les fonctions CMS utilisent des drapeaux qui sont spécifiés en utilisant un masque de bit qui inclut une ou plusieurs des valeurs suivantes :
| Constantes | Description |
|---|---|
OPENSSL_CMS_TEXT
(int)
|
Ajoute l'en-tĂȘte content type text/plain au message chiffrĂ©/signĂ©.
Lors du dĂ©chiffrement/vĂ©rification, ces en-tĂȘtes sont enlevĂ©s de la
sortie, si le message déchiffré ou vérifié n'est pas du type MIME
text/plain alors une erreur surviendra.
|
OPENSSL_CMS_BINARY
(int)
|
Normalement le message d'entrée est converti en sa forme "canonique"
qui en réalité utilise CR et LF
comme fin de ligne: tel que requis par la spécification CMS. Quand
cette option est présente, aucune translation n'est effectuée. Ceci
est utile lors de la gestion de données binaires qui peuvent ne pas
ĂȘtre en format CMS.
|
OPENSSL_CMS_NOINTERN
(int)
|
Lors de la vérification d'un message, les certificats (le cas échéant)
inclus dans le message sont normalement recherchés pour le certificat
de signature. Avec cette option, seuls les certificats spécifiés dans
le paramĂštre untrusted_certificates_filename
de openssl_cms_verify() sont utilisés.
Les certificats fournis peuvent cependant toujours ĂȘtre utilisĂ©s comme
des autorités de certification non fiables.
|
OPENSSL_CMS_NOVERIFY
(int)
|
Ne vérifie pas le certificat du signataire d'un message signé. |
OPENSSL_CMS_NOCERTS
(int)
|
Lors de la signature d'un message le certificat du signataire est
normalement inclus, avec cette option il est exclus. Ceci réduira
la taille du message signé mais le vérificateur doit avoir une copie
du certificat du signataire disponible localement (passé en utilisant
untrusted_certificates_filename de
openssl_cms_verify() par exemple).
|
OPENSSL_CMS_NOATTR
(int)
|
Normalement, quand un message est signé, un jeu d'attributs est inclus qui comprend l'heure de signature et les algorithmes symétriques supportés. Avec cette option ils ne sont pas inclus. |
OPENSSL_CMS_DETACHED
(int)
|
Lors de la signature d'un message, la signature en clair est utilisée
avec le MIME type "multipart/signed". Ceci est le
comportement par défaut, si l'on ne spécifie aucun
flags Ă openssl_cms_sign().
Si l'on désactive cette option, le message sera signé en utilisant
une signature opaque, qui est plus résistante à la translation par
les relais mail mais ne peut pas ĂȘtre lu par les agents mail qui ne
prennent pas en charge S/MIME.
|
OPENSSL_CMS_NOSIGS
(int)
|
Ne tente pas de vérifier les signatures d'un message |
OPENSSL_CMS_OLDMIMETYPE
(int)
|
Disponible Ă partir de PHP 8.3.0.
DĂ©finit l'en-tĂȘte HTTP Content-Type sur application/x-pkcs7-mime au lieu de
application/pkcs7-mime pour chiffrer un message.
|