Прапори/константи PKCS7
Функції S/MIME використовують прапори, які визначаються як набір бітів, який може включати одну або кілька наступних констант:
Константи PKCS7
Константа | Опис |
---|---|
PKCS7_TEXT (int) | Додає заголовок вмісту text/plain у зашифроване або підписане повідомлення. При розшифровці або перевірці заголовки будуть отримані під час виведення. Якщо після розшифровки або перевірки отримане повідомлення не має MIME-тип text/plain, це станеться. |
PKCS7_BINARY (int) | Зазвичай вхідне повідомлення наводиться до «канонічного» формату, що є ефективним при використанні CR иLF в кінці рядка: це потрібно сертифікацією S/MIME. Коли ця опція вказана, проблем із трансляцією символів кінця рядка не відбувається. Це зручно для обробки бінарних даних, які можуть бути не у форматі MIME. |
PKCS7_NOINTERN (int) | Зазвичай при перевірці повідомлення у сертифікатах, що включені до нього (якщо є), виконується пошук підписаного сертифіката. Цю опцію вказують лише для сертифікатів, переданих у параметр untrusted_certificates_filename функції openssl_pkcs7_verify(). . Інші сертифікати залишаються непідтвердженими центром сертифікації. |
PKCS7_NOVERIFY (int) | Не перевіряти підписувачів сертифіката підписаного повідомлення. |
PKCS7_NOCHAIN (int) | Не перевіряти підписувачів сертифіката по ланцюжку: тобто не використовувати сертифікати у підписаному повідомленні як неавторизовані центром сертифікації. |
PKCS7_NOCERTS (int) | Під час підписання повідомлення сертифікат підписувача зазвичай входить у повідомлення — з цією опцією сертифікат не додається. Це дозволяє знизити розмір підписаного повідомлення, але перевіряючий повинен мати копію сертифіката підписувача, доступну локально (це не потрібно при використанні параметра untrusted_certificates_filename функції openssl_pkcs7_verify() |
PKCS7_NOATTR (int) | Зазвичай, коли повідомлення підписано, набір атрибутів також включається час підписання і підтримуваний симетричний алгоритм. За допомогою цієї опції таке додавання не відбувається. |
PKCS7_DETACHED (int) | Під час підписання повідомлення використовуйте підписання у відкритому вигляді (cleartext signing) з MIME-типом "multipart/signed" . . Це виконується за умовчанням, якщо не вказувати нічого в flags функції openssl_pkcs7_sign(). . Якщо вимкнути цю опцію, повідомлення буде підписано з використанням opaque signing, що стійкіше до передачі поштою, але не може бути прочитане поштовими агентами, які не підтримують S/MIME. |
PKCS7_NOSIGS (int) | Не намагатись перевірити підписи у повідомлення |
PKCS7_NOOLDMIMETYPE (int) | Доступно з PHP 8.3.0. Встановлює тип вмісту application/pkcs7-mime замість application/x-pkcs7-mime для шифрування повідомлення. |