## PKCS7-Flags/Konstanten

Die S/MIME-Funktionen nutzen Flags, die durch ein Bitfeld angegeben werden. Dieses Bitfeld kann einen oder mehrere der folgenden Werte enthalten:

PKCS7-Konstanten
Konstante | Beschreibung
--- | ---
`PKCS7_TEXT` (int) | Fügt einer verschlüsselten/signierten Nachricht den Inhaltstyp-Header `text/plain` zu 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-Typ `text/plain`, tritt ein Fehler auf.
`PKCS7_BINARY` (int) | Normalerweise wird die Nachricht in ein "kanonisches" Format konvertiert, das effektiv `CR` und `LF` als 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_filename` in 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_filename` in 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 in `flags` keine 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-mime` anstelle von `application/x-pkcs7-mime`, um eine Nachricht zu verschlüsseln.

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open