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/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
|
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.
|