Die S/MIME-Funktionen nutzen Flags, die durch ein Bitfeld angegeben werden. Dieses Bitfeld kann einen oder mehrere der folgenden Werte enthalten:
| Konstante | Beschreibung | 
|---|---|
| PKCS7_TEXT(int) | Fügt einer verschlüsselten/signierten Nachricht den Inhaltstyp-Header text/plainzu hinzu. Beim Entschlüsseln oder Überprüfen wird dieser
        Header aus der Ausgabe entfernt. Entspricht die entschlüsselte oder
        geprüfte Nachricht nicht dem MIME-Typtext/plain, tritt ein Fehler
        auf. | 
| PKCS7_BINARY(int) | Normalerweise wird die Nachricht in ein "kanonisches" Format
        konvertiert, das effektiv CRundLFals Zeilende verwendet, wie von der
        S/MIME-Spezifikation gefordert. Wird diese Option angegeben, findet
        keine Konvertierung statt. Dies ist nützlich beim Umgang mit
        Binärdaten, die nicht im MIME-Format vorliegen. | 
| PKCS7_NOINTERN(int) | Beim Überprüfen einer Nachricht werden in der Nachricht enthaltene
        Zertifikate (falls vorhanden) nach dem Signatur-Zertifikat durchsucht.
        Mit dieser Option werden nur Zertifikate verwendet, die mit dem
        Parameter untrusted_certificates_filenamein
        der Funktion openssl_pkcs7_verify() angegeben
        wurden. Die mitgelieferten Zertifikate können aber dennoch verwendet
        werden, allerdings als nicht vertrauenswürdige CAs. | 
| PKCS7_NOVERIFY(int) | Das Zertifikat des Unterzeichners einer signierten Nachricht nicht überprüfen. | 
| PKCS7_NOCHAIN(int) | Die Überprüfung der Zertifikate des Unterzeichners nicht verketten, das bedeutet, die Zertifikate in der signierten Nachricht werden nicht als nicht vertrauenswürdige CAs verwendet. | 
| PKCS7_NOCERTS(int) | Beim Signieren einer Nachricht wird normalerweise das Zertifikat des
        Unterzeichnenden mit in die Nachricht aufgenommen. Mit dieser Option
        wird das Zertifikat nicht mit aufgenommen. Diese Option verringert die
        Größe der signierten Nachricht, aber der Überprüfende muss eine lokale
        Kopie des Zertifikats vom Unterzeichnenden besitzen (zum Beispiel
        durch Angabe des Parameters untrusted_certificates_filenamein der Funktion
        openssl_pkcs7_verify()). | 
| PKCS7_NOATTR(int) | Beim Signieren einer Nachricht wird normalerweise eine Reihe von Attributen mit angehängt. Diese enthalten die Zeit der Signierung und die unterstützen symmetrischen Algorithmen. Mit dieser Option werden diese Attribute nicht mit aufgenommen. | 
| PKCS7_DETACHED(int) | Beim Signieren einer Nachricht wird die Klartext-Signierung mit dem
        MIME-Typ "multipart/signed"verwendet. Das ist der
        Standard, wenn inflagskeine optionalen
        Parameter an die Funktion openssl_pkcs7_sign()
        übergeben werden. Wenn Sie diese Option ausschalten, wird die
        Nachricht mit einer intransparenten Signatur unterzeichnet. Dieses
        Verhalten ist robuster gegenüber der Übersetzung durch Mail-Relays,
        kann aber nicht mit Mailprogrammen gelesen werden, die den
        S/Mime-Standard nicht unterstützen. | 
| PKCS7_NOSIGS(int) | Die Signaturen einer Nachricht nicht überprüfen. | 
| PKCS7_NOOLDMIMETYPE(int) | Verfügbar ab PHP 8.3.0. Setzt den Inhaltstyp auf application/pkcs7-mimeanstelle vonapplication/x-pkcs7-mime, um eine Nachricht zu
        verschlüsseln. | 
