Php/docs/function.mcrypt-create-iv

来自菜鸟教程
跳转至:导航、​搜索

mcrypt_create_iv

(PHP 4, PHP 5, PHP 7 < 7.2.0, PECL mcrypt >= 1.0.0)

mcrypt_create_iv从随机源创建初始向量


Warning This function was DEPRECATED in PHP 7.1.0, and REMOVED in PHP 7.2.0.

Alternatives to this function include:


说明

mcrypt_create_iv ( int $size [, int $source = MCRYPT_DEV_URANDOM ] ) : string

从随机源创建初始向量。

初始向量只是为了给加密算法提供一个可用的种子, 所以它不需要安全保护, 你甚至可以随同密文一起发布初始向量也不会对安全性带来影响。


参数

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

Note:

需要注意的是,如果没有更多可用的用来产生随机数据的信息,那么 MCRYPT_DEV_RANDOM 可能进入阻塞状态。


返回值

返回初始向量。如果发生错误,则返回 false


更新日志

版本 说明
5.6.0 source 参数的默认值是

MCRYPT_DEV_URANDOM

5.3.0 MCRYPT_DEV_RANDOM

MCRYPT_DEV_URANDOM 在 Windows 平台也可用了。

5.3.0 不再需要提前调用 srand() 函数,

由本函数自动完成调用。


范例

Example #1 mcrypt_create_iv() 例程

<?php    $size = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB);    $iv = mcrypt_create_iv($size, MCRYPT_DEV_RANDOM);?>

参见