<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.mcrypt.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'function.mcrypt-create-iv.php',
    1 => 'mcrypt_create_iv',
    2 => 'Creates an initialization vector (IV) from a random source',
  ),
  'up' => 
  array (
    0 => 'ref.mcrypt.php',
    1 => 'Mcrypt 関数',
  ),
  'prev' => 
  array (
    0 => 'ref.mcrypt.php',
    1 => 'Mcrypt 関数',
  ),
  'next' => 
  array (
    0 => 'function.mcrypt-decrypt.php',
    1 => 'mcrypt_decrypt',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'reference/mcrypt/functions/mcrypt-create-iv.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.mcrypt-create-iv" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">mcrypt_create_iv</h1>
  <p class="verinfo">(PHP 4, PHP 5, PHP 7 &lt; 7.2.0, PECL mcrypt &gt;= 1.0.0)</p><p class="refpurpose"><span class="refname">mcrypt_create_iv</span> &mdash; <span class="dc-title">Creates an initialization vector (IV) from a random source</span></p>

 </div>

 <div id="function.mcrypt-create-iv-refsynopsisdiv">
  <div class="warning"><strong class="warning">警告</strong>
   
<p class="para">
 この関数は PHP 7.1.0 で <em>非推奨</em> となり、
 PHP 7.2.0 で<em>削除</em> されました。
</p>
<p class="para">
 この関数の代替として、これらが使えます。
</p>

   <ul class="simplelist">
    <li><span class="function"><a href="function.random-bytes.php" class="function">random_bytes()</a></span></li>
   </ul>
  </div>
 </div>

 <div class="refsect1 description" id="refsect1-function.mcrypt-create-iv-description">
  <h3 class="title">説明</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>mcrypt_create_iv</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$size</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$source</code><span class="initializer"> = MCRYPT_DEV_URANDOM</span></span>): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>

  <p class="simpara">
   Creates an initialization vector (IV) from a random source.
  </p>
  <p class="simpara">
   The IV is only meant to give an alternative seed to the encryption
   routines. This IV does not need to be secret at all, though it can be
   desirable. You even can send it along with your ciphertext without
   losing security.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.mcrypt-create-iv-parameters">
  <h3 class="title">パラメータ</h3>
  <dl>
   
    <dt><code class="parameter">size</code></dt>
    <dd>
     <span class="simpara">
      The size of the IV.
     </span>
    </dd>
   
   
    <dt><code class="parameter">source</code></dt>
    <dd>
     <span class="simpara">
      The source of the IV. The source can be
      <strong><code><a href="mcrypt.constants.php#constant.mcrypt-rand">MCRYPT_RAND</a></code></strong> (system random number generator),
      <strong><code><a href="mcrypt.constants.php#constant.mcrypt-dev-random">MCRYPT_DEV_RANDOM</a></code></strong> (read data from
      <var class="filename">/dev/random</var>) and
      <strong><code><a href="mcrypt.constants.php#constant.mcrypt-dev-urandom">MCRYPT_DEV_URANDOM</a></code></strong> (read data from
      <var class="filename">/dev/urandom</var>). Prior to 5.3.0,
      <strong><code><a href="mcrypt.constants.php#constant.mcrypt-rand">MCRYPT_RAND</a></code></strong> was the only one supported on Windows.
     </span>
     <span class="simpara">
      Note that the default value of this parameter was
      <strong><code><a href="mcrypt.constants.php#constant.mcrypt-dev-random">MCRYPT_DEV_RANDOM</a></code></strong> prior to PHP 5.6.0.
     </span>
     <blockquote class="note"><p><strong class="note">注意</strong>: 
      <span class="simpara">
       Note that <strong><code><a href="mcrypt.constants.php#constant.mcrypt-dev-random">MCRYPT_DEV_RANDOM</a></code></strong> may block until more
       entropy is available.
      </span>
     </p></blockquote>
    </dd>
   
  </dl>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.mcrypt-create-iv-returnvalues">
  <h3 class="title">戻り値</h3>
  <p class="simpara">
   Returns the initialization vector, or <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> on error.
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-function.mcrypt-create-iv-examples">
  <h3 class="title">例</h3>
  <div class="example" id="example-1">
   <p><strong>例1 <span class="function"><strong>mcrypt_create_iv()</strong></span> Example</strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />    $size </span><span style="color: #007700">= </span><span style="color: #0000BB">mcrypt_get_iv_size</span><span style="color: #007700">(</span><span style="color: #0000BB">MCRYPT_CAST_256</span><span style="color: #007700">, </span><span style="color: #0000BB">MCRYPT_MODE_CFB</span><span style="color: #007700">);<br />    </span><span style="color: #0000BB">$iv </span><span style="color: #007700">= </span><span style="color: #0000BB">mcrypt_create_iv</span><span style="color: #007700">(</span><span style="color: #0000BB">$size</span><span style="color: #007700">, </span><span style="color: #0000BB">MCRYPT_DEV_RANDOM</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

  </div>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.mcrypt-create-iv-seealso">
  <h3 class="title">参考</h3>
  <ul class="simplelist">
   <li><a href="http://www.ciphersbyritter.com/GLOSSARY.HTM#IV" class="link external">&raquo;&nbsp;http://www.ciphersbyritter.com/GLOSSARY.HTM#IV</a></li>
   <li><a href="http://www.quadibloc.com/crypto/co0409.htm" class="link external">&raquo;&nbsp;http://www.quadibloc.com/crypto/co0409.htm</a></li>
   <li>Chapter 9.3 of Applied Cryptography by Schneier (ISBN 0-471-11709-9)</li>
   <li><span class="function"><a href="function.random-bytes.php" class="function" rel="rdfs-seeAlso">random_bytes()</a> - 暗号学的にセキュアな、ランダムなバイト列を生成する</span></li>
  </ul>
 </div>

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