Send a blank email to [email protected] to get a copy of this message
mcrypt_create_iv() is the cleanest access to a universal system-level primitive that supports both /dev/urandom and php_win32_get_random_bytes() under the hood. Unfortunately, it resides in /ext/mcrypt and the mcrypt extension isn't always enabled/available (nor should it be). At any rate, it is quite odd that the function php_win32_get_random_bytes() is compiled into the core of PHP by default under Windows but there's currently no way to get at it except through an extension. There's good code in mcrypt_create_iv() that is significantly useful outside of the rest of that extension and it isn't actually dependent upon libmcrypt for proper operation.
Moving the guts of this non-dependent function into the core would allow mcrypt_create_iv() to just become an alias. The new userland function could be located in /ext/standard/rand.c and have an uncreative name like rand_bytes().
--
Thomas Hruska
CubicleSoft President
I've got great, time saving software that you will find useful.
http://cubiclesoft.com/