array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'zh', ), 'this' => array ( 0 => 'function.mcrypt-create-iv.php', 1 => 'mcrypt_create_iv', ), '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' => 'zh', 'path' => 'reference/mcrypt/functions/mcrypt-create-iv.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7 < 7.2.0, PECL mcrypt >= 1.0.0)
mcrypt_create_iv — 从随机源创建初始向量
从随机源创建初始向量。
初始向量只是为了给加密算法提供一个可用的种子, 所以它不需要安全保护, 你甚至可以随同密文一起发布初始向量也不会对安全性带来影响。
size
初始向量大小。
source
初始向量数据来源。可选值有:
MCRYPT_RAND
(系统随机数生成器),
MCRYPT_DEV_RANDOM
(从
/dev/random 文件读取数据) 和
MCRYPT_DEV_URANDOM
(从
/dev/urandom 文件读取数据)。
在 Windows 平台,PHP 5.3.0 之前的版本中,仅支持 MCRYPT_RAND
。
请注意,在 PHP 5.6.0 之前的版本中,
此参数的默认值为 MCRYPT_DEV_RANDOM
。
注意: 需要注意的是,如果没有更多可用的用来产生随机数据的信息,那么
MCRYPT_DEV_RANDOM
可能进入阻塞状态。
返回初始向量。如果发生错误,则返回 false
。
示例 #1 mcrypt_create_iv() 示例
<?php
$size = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB);
$iv = mcrypt_create_iv($size, MCRYPT_DEV_RANDOM);
?>