<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/openssl.constants.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ru',
  ),
  'this' => 
  array (
    0 => 'openssl.pkcs7.flags.php',
    1 => 'Константы-флаги структур PKCS7',
    2 => 'Константы-флаги структур PKCS7',
  ),
  'up' => 
  array (
    0 => 'openssl.constants.php',
    1 => 'Предопределённые константы',
  ),
  'prev' => 
  array (
    0 => 'openssl.key-types.php',
    1 => 'Типы ключей',
  ),
  'next' => 
  array (
    0 => 'openssl.cms.flags.php',
    1 => 'Константы-флаги стуктур CMS',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ru',
    'path' => 'reference/openssl/constants.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="openssl.pkcs7.flags" class="section">
  <h2 class="title">Константы-флаги структур <abbr>PKCS7</abbr></h2>
  <p class="para">
   The S/MIME functions make use of flags which are specified using a
   bitfield which can include one or more of the following values:
   <table class="doctable table">
    <caption><strong>Константы <abbr>PKCS7</abbr></strong></caption>
    
     <thead>
      <tr>
       <th>Константа</th>
       <th>Описание</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr id="constant.pkcs7-text">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-text">PKCS7_TEXT</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        Добавляет заголовок «Content-Type: <code class="literal">text/plain</code>» к зашифрованному
        и подписанному сообщению.
        При расшифровке или проверке флаг удаляет заголовки
        из вывода. Возникнет ошибка, если расшифрованное или проверенное сообщение
        не относится к <abbr title="Multipurpose Internet Mail Extensions">MIME</abbr>-типу <code class="literal">text/plain</code>.
       </td>
      </tr>

      <tr id="constant.pkcs7-binary">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-binary">PKCS7_BINARY</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        Обычно входное сообщение преобразовывается к «каноническому» формату,
        который эффективно использует последовательности <code class="literal">CR</code> и <code class="literal">LF</code>
        как символы конца строки: как того требует сертификация S/MIME. С этой опцией
        сообщение не преобразовывается. Это полезно при обработке двоичных данных,
        формат которых не всегда соответствует MIME-формату.
       </td>
      </tr>

      <tr id="constant.pkcs7-nointern">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-nointern">PKCS7_NOINTERN</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        При проверке сообщения, если сообщение содержит сертификаты,
        среди сертификатов сообщения обычно выполняется поиск сертификата подписи.
        С этой опцией поиск выполняется только по сертификатам параметра
        <code class="parameter">untrusted_certificates_filename</code> функции <span class="function"><a href="function.openssl-pkcs7-verify.php" class="function">openssl_pkcs7_verify()</a></span>,
        а не по сертификатам сообщения. Предоставленные сертификаты по-прежнему можно использовать,
        но как сертификаты недоверенных центров сертификации.
       </td>
      </tr>

      <tr id="constant.pkcs7-noverify">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-noverify">PKCS7_NOVERIFY</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>Флаг отключает проверку сертификата отправителя подписанного сообщения.</td>
      </tr>

      <tr id="constant.pkcs7-nochain">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-nochain">PKCS7_NOCHAIN</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        Флаг отключает проверку цепочки сертификатов отправителя: то есть исключает сертификаты
        в подписанном сообщении (кроме сертификата отправителя)
        как сертификаты недоверенных центров сертификации.
       </td>
      </tr>

      <tr id="constant.pkcs7-nocerts">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-nocerts">PKCS7_NOCERTS</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        При подписании сообщения сертификат отправителя обычно включается
        в сообщение, тогда как с этой опцией сертификат не добавляется. Это уменьшит
        размер подписанного сообщения, но получателю потребуется доступ к локальной копии
        сертификата отправителя, которую передают, например, через параметр
        <code class="parameter">untrusted_certificates_filename</code> функции
        <span class="function"><a href="function.openssl-pkcs7-verify.php" class="function">openssl_pkcs7_verify()</a></span>.
       </td>
      </tr>

      <tr id="constant.pkcs7-noattr">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-noattr">PKCS7_NOATTR</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        При подписании в сообщение обычно включается набор атрибутов, который содержит
        время подписания и список симметричных алгоритмов, которые поддерживает S/MIME-протокол.
        С этой опцией атрибуты не включаются.
       </td>
      </tr>

      <tr id="constant.pkcs7-detached">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-detached">PKCS7_DETACHED</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        При подписании сообщения функция прикрепляет подпись в виде открытого текста
        с MIME-типом <code class="literal">multipart/signed</code>. Это значение по умолчанию,
        если только не указали флаги для параметра <code class="parameter">flags</code> функции
        <span class="function"><a href="function.openssl-pkcs7-sign.php" class="function">openssl_pkcs7_sign()</a></span>.
        Без этой опции функция подпишет сообщение непрозрачной подписью,
        которая более устойчива к пересылке сообщений почтовыми ретрансляторами,
        но недоступна для прочтения почтовыми агентами, которые
        не поддерживают стандарт S/MIME.
       </td>
      </tr>

      <tr id="constant.pkcs7-nosigs">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-nosigs">PKCS7_NOSIGS</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>Флаг отключает попытку проверки подписей в сообщениях.</td>
      </tr>

      <tr id="constant.pkcs7-nooldmimetype">
       <td>
        <strong><code><a href="openssl.pkcs7.flags.php#constant.pkcs7-nooldmimetype">PKCS7_NOOLDMIMETYPE</a></code></strong>
        (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
       </td>
       <td>
        Флаг доступен с PHP 8.3.0. Опция устанавливает для шифрования сообщения
        заголовок <code class="literal">Content-Type: application/pkcs7-mime</code>
        вместо заголовка <code class="literal">Content-Type: application/x-pkcs7-mime</code>.
       </td>
      </tr>

     </tbody>
    
   </table>

  </p>
 </div><?php manual_footer($setup); ?>