mcrypt_create_iv
(PHP 4, PHP 5)
mcrypt_create_iv — Crée un vecteur d'initialisation à partir d'une source aléatoire
Description
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().
Example#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 » https://www.ciphersbyritter.com/GLOSSARY.HTM#IV, » https://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).