(PHP 3>= 3.0.8, PHP 4)
mcrypt_create_iv - создаёт вектор инициализации/initialization vector (IV) из произвольного
источника. Описаниеstring mcrypt_create_iv (int size, int source) mcrypt_create_iv() используется для создания IV.
mcrypt_create_iv() принимает два аргумента: size определяет размер IV,
source специфицирует источник IV.
Источником может быть MCRYPT_RAND (системный генератор случайных чисел),MCRYPT_DEV_RANDOM (читает данные из /dev/random) и
MCRYPT_DEV_URANDOM (читает данные из /dev/urandom). Если вы используете
MCRYPT_RAND, не забудьте вызывать srand() до инициализации генератора случайных чисел.
Пример 1. mcrypt_create_iv()
<?php
$size = mcrypt_get_iv_size (MCRYPT_CAST_256, MCRYPT_MODE_CFB);
$iv = mcrypt_create_iv ($size, MCRYPT_DEV_RANDOM);
?> |
|
IV имеет смысл только как альтернативный источник для утилит шифровки.
Этот IV вообще не должен быть секретным, хотя это может быть и желательно.
Вы можете даже высылать его вместе с вашим шифрованным текстом без потери секретности.
Дополнительная информация находится на
http://www.ciphersbyritter.com/GLOSSARY.HTM#IV,
http://fn2.freenet.edmonton.ab.ca/~jsavard/crypto/co0409.htm
и в главе 9.3 в Applied Cryptography by Schneier (ISBN 0-471-11709-9). |