(PHP 3 >= 3.0.8, PHP 4, PHP 5)
mcrypt_create_iv -- Crée un vecteur d'initialisation à partir d'une
source aléatoire
Description
string
mcrypt_create_iv ( int size [, int source] )
mcrypt_create_iv() sert à créer un IV
(vecteur d'initialisation).
Le paramètre size détermine la taille de IV,
le paramètre source (par défaut, un nombre aléatoire)
spécifie la source de IV.
La source peut être MCRYPT_RAND (générateur de
nombres aléatoires système), MCRYPT_DEV_RANDOM
(lecture des données depuis le fichier /dev/random) et
MCRYPT_DEV_URANDOM (lecture des données depuis
le fichier /dev/urandom). MCRYPT_RAND
est la seule à être supportée sous Windows car Windows (bien sûr) n'a pas de fichier
du type /dev/random ou du type
/dev/urandom.
Note :
Lorsque vous utilisez MCRYPT_RAND, rappelez-vous d'appeler
la fonction srand() avant la fonction
mcrypt_create_iv() pour initialiser le générateur de
nombres aléatoires ; ce n'est pas effectué automatiquement comme c'est le cas
pour la fonction rand().
Exemple 1. Exemple avec mcrypt_create_iv()
<?php $size = mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB); $iv = mcrypt_create_iv($size, MCRYPT_DEV_RANDOM); ?>
|
|
Le VI est uniquement une solution alternative pour initialiser les
routines de chiffrement. Le VI n'a pas besoin d'être spécifiquement
secret, même si c'est mieux. Vous pouvez même l'envoyer avec vos
données chiffrées sans perdre de sécurité.
Plus d'informations sont disponibles sur les sites de
http://www.ciphersbyritter.com/GLOSSARY.HTM#IV,
http://fn2.freenet.edmonton.ab.ca/~jsavard/crypto/co0409.htm et dans le chapitre
9.3 du livre "Applied Cryptography" de Schneier (ISBN 0-471-11709-9).