從隨機源建立初始向量

mcrypt_create_iv

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

mcrypt_create_iv從隨機源建立初始向量

警告

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

注意: 需要注意的是,如果沒有更多可用的用來產生隨機數據的資訊,那麼 MCRYPT_DEV_RANDOM 可能進入阻塞狀態。

返回值

返回初始向量。如果發生錯誤,則返回 false

更新日誌

版本 說明
5.6.0 source 參數的預設值是 MCRYPT_DEV_URANDOM
5.3.0 MCRYPT_DEV_RANDOMMCRYPT_DEV_URANDOM 在 Windows 平臺也可用了。
5.3.0 不再需要提前呼叫 srand() 函式, 由本函式自動完成呼叫。

範例

示例 #1 mcrypt_create_iv() 例程

<?php
    $size 
mcrypt_get_iv_size(MCRYPT_CAST_256MCRYPT_MODE_CFB);
    
$iv mcrypt_create_iv($sizeMCRYPT_DEV_RANDOM);
?>

參見

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *