Les fonctions CMS utilise des drapeaux qui sont spécifiés utilisant un masque de bit qui inclus 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é. Ceci
est utile lors de la gestion de données binaire 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 sont inclus qui inclus l'heure de signature et les algorithmes symétriques supportés. Avec cette options ils ne sont pas inclus. |
OPENSSL_CMS_DETACHED
(int)
|
Lors de la signature d'un message, la signature cleartext est utilisé
avec le MIME type "multipart/signed" . Ceci est le
comportement par défaut, si vous ne spécifiez aucun
flags à openssl_cms_sign().
Si vous désactivez 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
supportent pas 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.
|