original_string: protected function _random($bytes) {
  		if (is_readable('/dev/urandom')) {
  			$stream = fopen('/dev/urandom', 'rb');
  			$result = fread($stream, $bytes);
  
  			fclose($stream);
  			return $result;
  		}
  		if (function_exists('mcrypt_create_iv')) {
  			return mcrypt_create_iv($bytes, MCRYPT_DEV_RANDOM);
  		}
  		throw new Exception("No source for generating a cryptographically secure seed found.");
  	}
code: protected function _random($bytes) {
  		if (is_readable('/dev/urandom')) {
  			$stream = fopen('/dev/urandom', 'rb');
  			$result = fread($stream, $bytes);
  
  			fclose($stream);
  			return $result;
  		}
  		if (function_exists('mcrypt_create_iv')) {
  			return mcrypt_create_iv($bytes, MCRYPT_DEV_RANDOM);
  		}
  		throw new Exception("No source for generating a cryptographically secure seed found.");
  	}
code_tokens: protected function _random ( $ bytes ) { if ( is_readable ( '/dev/urandom' ) ) { $ stream = fopen ( '/dev/urandom' , 'rb' ) ; $ result = fread ( $ stream , $ bytes ) ; fclose ( $ stream ) ; return $ result ; } if ( function_exists ( 'mcrypt_create_iv' ) ) { return mcrypt_create_iv ( $ bytes , MCRYPT_DEV_RANDOM ) ; } throw new Exception ( "No source for generating a cryptographically secure seed found." ) ; }
docstring: Generates a cryptographically secure sequence of bytes.
  
  @param integer $bytes Number of bytes to return.
  @return string
docstring_tokens: Generates a cryptographically secure sequence of bytes .