## Константы-флаги структур PKCS7

The S/MIME functions make use of flags which are specified using a bitfield which can include one or more of the following values:

Константы PKCS7
Константа | Описание
--- | ---
`PKCS7_TEXT` (int) | Добавляет заголовок «Content-Type: `text/plain`» к зашифрованному и подписанному сообщению. При расшифровке или проверке флаг удаляет заголовки из вывода. Возникнет ошибка, если расшифрованное или проверенное сообщение не относится к MIME-типу `text/plain`.
`PKCS7_BINARY` (int) | По умолчанию входное сообщение преобразовывается в «канонический» формат, в котором по требованию спецификации S/MIME одиночные символы перевода строки заменяются последовательностью символов `CR` и `LF`. При установке флага сообщение не преобразовывается. Форматирование отключают при обработке двоичных данных или данных, которые уже соответствуют каноническому MIME-формату.
`PKCS7_NOINTERN` (int) | При проверке сообщения функцией openssl_pkcs7_verify() поиск сертификата подписи выполняется среди сертификатов параметра `untrusted_certificates_filename` и сертификатов сообщения, если сообщение содержит сертификаты. С опцией поиск ведётся только по сертификатам параметра, центры сертификации которых по-прежнему интерпретируются как недоверенные.
`PKCS7_NOVERIFY` (int) | Флаг отключает проверку сертификата отправителя подписанного сообщения.
`PKCS7_NOCHAIN` (int) | Флаг отключает проверку цепочки сертификатов отправителя: то есть исключает сертификаты в подписанном сообщении (кроме сертификата отправителя) как сертификаты недоверенных центров сертификации.
`PKCS7_NOCERTS` (int) | При подписании сообщения сертификат отправителя обычно включается в сообщение, тогда как с этой опцией сертификат не добавляется. Это уменьшит размер подписанного сообщения, но получателю потребуется доступ к локальной копии сертификата отправителя, которую передают, например, через параметр `untrusted_certificates_filename` функции openssl_pkcs7_verify().
`PKCS7_NOATTR` (int) | При подписании в сообщение обычно включается набор атрибутов, который содержит время подписания и список симметричных алгоритмов, которые поддерживает S/MIME-протокол. С этой опцией атрибуты не включаются.
`PKCS7_DETACHED` (int) | При подписании сообщения функция прикрепляет подпись в виде открытого текста с MIME-типом `multipart/signed`. Это значение по умолчанию, если только не указали флаги для параметра `flags` функции openssl_pkcs7_sign(). Без этой опции функция подпишет сообщение непрозрачной подписью, которая более устойчива к пересылке сообщений почтовыми ретрансляторами, но недоступна для прочтения почтовыми агентами, которые не поддерживают стандарт S/MIME.
`PKCS7_NOSIGS` (int) | Флаг отключает попытку проверки подписей в сообщениях.
`PKCS7_NOOLDMIMETYPE` (int) | Флаг доступен с PHP 8.3.0. При шифровании сообщения для заголовка Content-Type вместо `application/x-pkcs7-mime` устанавливается значение `application/pkcs7-mime`.
`PKCS7_NOSMIMECAP` (int) | Флаг доступен с PHP 8.5.0. Опция исключает из S/MIME-подписи атрибут SMIMECapabilities со сведениями о поддерживаемых алгоритмах шифрования.
`PKCS7_CRLFEOL` (int) | Флаг доступен с PHP 8.5.0. С опцией конец строки в выводе обозначается последовательностью `CRLF`.
`PKCS7_NOCRL` (int) | Флаг доступен с PHP 8.5.0. Опция исключает из PKCS7-структуры списки отзыва сертификатов (англ. Certificate Revocation List, сокр. CRL).
`PKCS7_NO_DUAL_CONTENT` (int) | Флаг доступен с PHP 8.5.0. По умолчанию в PKCS7-структуру включаются данные и подпись данных. При установке флага данные не включаются.

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