<?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 => 'es',
  ),
  'this' => 
  array (
    0 => 'openssl.pkcs7.flags.php',
    1 => 'Constantes/opciones PKCS7',
    2 => 'Constantes/opciones PKCS7',
  ),
  'up' => 
  array (
    0 => 'openssl.constants.php',
    1 => 'Constantes predefinidas',
  ),
  'prev' => 
  array (
    0 => 'openssl.key-types.php',
    1 => 'Tipos de clave',
  ),
  'next' => 
  array (
    0 => 'openssl.cms.flags.php',
    1 => 'Bandera/Constantes CMS',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    '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">Constantes/opciones <abbr>PKCS7</abbr></h2>
   <p class="para">
    Las funciones S/MIME utilizan opciones que se especifican
    mediante un campo de bits. Los valores válidos son:
    <table class="doctable table">
     <caption><strong>Constantes <abbr>PKCS7</abbr></strong></caption>
     
      <thead>
       <tr>
        <th>Constante</th>
        <th>Descripción</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>
        Añade el texto en claro en los encabezados del mensaje
        firmado/cifrado. Al descifrar o verificar,
        se eliminan simplemente estos datos. Si el
        mensaje cifrado o firmado no es del tipo MIME, se producirá un error.
       </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>
        Normalmente, el mensaje se convierte al formato canónico
        que utiliza efectivamente <code class="literal">CR</code> y <code class="literal">LF</code>
        como fin de línea, como se solicita en las especificaciones de S/MIME.
        Cuando esta opción está activada, el mensaje no se convertirá. Esto es útil cuando se manipulan datos binarios que no están en formato 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>
        Al verificar un mensaje, los certificados
        (si los hay) incluidos en el mensaje se utilizan normalmente
        para buscar el certificado de firma. Con esta opción, solo se utiliza
        el certificado especificado por el
        argumento <code class="parameter">untrusted_certificates_filename</code> de la función
        <span class="function"><a href="function.openssl-pkcs7-verify.php" class="function">openssl_pkcs7_verify()</a></span>. Los certificados proporcionados pueden seguir utilizándose,
        con un nivel de confianza reducido.
       </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>
        No verifica los certificados de los firmantes de un mensaje
        firmado.
       </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>
        No encadena las verificaciones de los certificados de los firmantes. Es decir, no utiliza los certificados
        contenidos en el mensaje.
       </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>
        Al firmar un mensaje, el certificado del firmante
        se incluye normalmente. Con esta opción, esto se desactiva. Esto reducirá el tamaño del mensaje,
        pero el verificador deberá tener una copia local del certificado
        del firmante (pasado al argumento
        <code class="parameter">untrusted_certificates_filename</code>, con la función
        <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>
        Normalmente, cuando se firma un mensaje, se incluye un conjunto de atributos
        que contiene la hora de firma y el algoritmo simétrico
        soportado, en el mensaje. Con esta opción, no se incluye.
       </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>
        Al firmar un mensaje, se utiliza la firma en texto claro, con el tipo MIME <code class="literal">&quot;multipart/signed&quot;</code>.
        Este es el valor por defecto del argumento
        <code class="parameter">flags</code>
        para la función <span class="function"><a href="function.openssl-pkcs7-sign.php" class="function">openssl_pkcs7_sign()</a></span>.
        Si se anula esta opción, el mensaje se firmará de
        manera opaca, lo que resiste mejor a la traducción
        de los relés de correo (algunos antiguos servidores de correo corrompen los mensajes), pero impide la lectura por los clientes de correo que no conocen 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>
        No verifica las firmas de un mensaje
       </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>
        Disponible a partir de PHP 8.3.0.
        Establece el encabezado HTTP Content-Type en <code class="literal">application/pkcs7-mime</code> en lugar de
        <code class="literal">application/x-pkcs7-mime</code> para cifrar un mensaje.
       </td>
      </tr>

     </tbody>
    
   </table>

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