File manager - Edit - /home/opticamezl/www/newok/Generator.zip
Back
PK ��\��� OpenSslGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; /** * OpenSslRandomGenerator provides functionality to generate strings of random * binary data using the `openssl_random_pseudo_bytes()` PHP function * * The use of this generator requires PHP to be compiled using the * `--with-openssl` option. * * @deprecated The openssl_random_pseudo_bytes() function is not a reliable * source of randomness. The default RandomBytesGenerator, which uses the * random_bytes() function, is recommended as the safest and most reliable * source of randomness. * <em>This generator will be removed in ramsey/uuid 4.0.0.</em> * @link http://php.net/openssl_random_pseudo_bytes */ class OpenSslGenerator implements RandomGeneratorInterface { /** * Generates a string of random binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string */ public function generate($length) { return openssl_random_pseudo_bytes($length); } } PK ��\��I\ RandomLibAdapter.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; use RandomLib\Generator; use RandomLib\Factory; /** * RandomLibAdapter provides functionality to generate strings of random * binary data using the paragonie/random-lib library * * @link https://packagist.org/packages/paragonie/random-lib */ class RandomLibAdapter implements RandomGeneratorInterface { /** * @var Generator */ private $generator; /** * Constructs a `RandomLibAdapter` using a `RandomLib\Generator` * * By default, if no `Generator` is passed in, this creates a high-strength * generator to use when generating random binary data. * * @param Generator $generator An paragonie/random-lib `Generator` */ public function __construct(Generator $generator = null) { $this->generator = $generator; if ($this->generator === null) { $factory = new Factory(); $this->generator = $factory->getHighStrengthGenerator(); } } /** * Generates a string of random binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string */ public function generate($length) { return $this->generator->generate($length); } } PK ��\��G� � SodiumRandomGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; /** * SodiumRandomGenerator provides functionality to generate strings of random * binary data using the PECL libsodium extension * * @deprecated As of PHP 7.2.0, the libsodium extension is bundled with PHP, and * the random_bytes() PHP function is now the recommended method for * generating random byes. The default RandomBytesGenerator uses the * random_bytes() function. * <em>This generator will be removed in ramsey/uuid 4.0.0.</em> * @link http://pecl.php.net/package/libsodium * @link https://paragonie.com/book/pecl-libsodium */ class SodiumRandomGenerator implements RandomGeneratorInterface { /** * Generates a string of random binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string */ public function generate($length) { return \Sodium\randombytes_buf($length); } } PK ��\�clYn n CombGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; use Exception; use InvalidArgumentException; use Ramsey\Uuid\Converter\NumberConverterInterface; use Ramsey\Uuid\Exception\UnsatisfiedDependencyException; /** * CombGenerator provides functionality to generate COMB (combined GUID/timestamp) * sequential UUIDs * * @link https://en.wikipedia.org/wiki/Globally_unique_identifier#Sequential_algorithms */ class CombGenerator implements RandomGeneratorInterface { const TIMESTAMP_BYTES = 6; /** * @var RandomGeneratorInterface */ private $randomGenerator; /** * @var NumberConverterInterface */ private $converter; /** * Constructs a `CombGenerator` using a random-number generator and a number converter * * @param RandomGeneratorInterface $generator Random-number generator for the non-time part. * @param NumberConverterInterface $numberConverter Instance of number converter. */ public function __construct(RandomGeneratorInterface $generator, NumberConverterInterface $numberConverter) { $this->converter = $numberConverter; $this->randomGenerator = $generator; } /** * Generates a string of binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string * @throws UnsatisfiedDependencyException if `Moontoast\Math\BigNumber` is not present * @throws InvalidArgumentException if length is not a positive integer * @throws Exception */ public function generate($length) { if ($length < self::TIMESTAMP_BYTES || $length < 0) { throw new InvalidArgumentException('Length must be a positive integer.'); } $hash = ''; if (self::TIMESTAMP_BYTES > 0 && $length > self::TIMESTAMP_BYTES) { $hash = $this->randomGenerator->generate($length - self::TIMESTAMP_BYTES); } $lsbTime = str_pad($this->converter->toHex($this->timestamp()), self::TIMESTAMP_BYTES * 2, '0', STR_PAD_LEFT); return hex2bin(str_pad(bin2hex($hash), $length - self::TIMESTAMP_BYTES, '0') . $lsbTime); } /** * Returns current timestamp as integer, precise to 0.00001 seconds * * @return string */ private function timestamp() { $time = explode(' ', microtime(false)); return $time[1] . substr($time[0], 2, 5); } } PK ��\1�� � RandomBytesGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; use Exception; /** * RandomBytesGenerator provides functionality to generate strings of random * binary data using `random_bytes()` function in PHP 7+ or paragonie/random_compat * * @link http://php.net/random_bytes * @link https://github.com/paragonie/random_compat */ class RandomBytesGenerator implements RandomGeneratorInterface { /** * Generates a string of random binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string * @throws Exception if it was not possible to gather sufficient entropy */ public function generate($length) { return random_bytes($length); } } PK ��\o���b b TimeGeneratorInterface.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; use Exception; use InvalidArgumentException; use Ramsey\Uuid\Exception\UnsatisfiedDependencyException; /** * TimeGeneratorInterface provides functionality to generate strings of binary * data for version 1 UUIDs based on a host ID, sequence number, and the current * time */ interface TimeGeneratorInterface { /** * Generate a version 1 UUID from a host ID, sequence number, and the current time * * @param int|string $node A 48-bit number representing the hardware address * This number may be represented as an integer or a hexadecimal string. * @param int $clockSeq A 14-bit number used to help avoid duplicates that * could arise when the clock is set backwards in time or if the node ID * changes. * @return string A binary string * @throws UnsatisfiedDependencyException if called on a 32-bit system and * `Moontoast\Math\BigNumber` is not present * @throws InvalidArgumentException * @throws Exception if it was not possible to gather sufficient entropy */ public function generate($node = null, $clockSeq = null); } PK ��\ Ҋ � PeclUuidTimeGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; /** * PeclUuidTimeGenerator provides functionality to generate strings of binary * data for version 1 UUIDs using the PECL UUID PHP extension * * @link https://pecl.php.net/package/uuid */ class PeclUuidTimeGenerator implements TimeGeneratorInterface { /** * Generate a version 1 UUID using the PECL UUID extension * * @param int|string $node Not used in this context * @param int $clockSeq Not used in this context * @return string A binary string */ public function generate($node = null, $clockSeq = null) { $uuid = uuid_create(UUID_TYPE_TIME); return uuid_parse($uuid); } } PK ��\v��^ ^ PeclUuidRandomGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; /** * PeclUuidRandomGenerator provides functionality to generate strings of random * binary data using the PECL UUID PHP extension * * @link https://pecl.php.net/package/uuid */ class PeclUuidRandomGenerator implements RandomGeneratorInterface { /** * Generates a string of random binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string */ public function generate($length) { $uuid = uuid_create(UUID_TYPE_RANDOM); return uuid_parse($uuid); } } PK ��\�˲ � � MtRandGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; /** * MtRandRandomGenerator provides functionality to generate strings of random * binary data using the `mt_rand()` PHP function * * @deprecated The mt_rand() function is not a reliable source of randomness. * The default RandomBytesGenerator, which uses the random_bytes() function, * is recommended as the safest and most reliable source of randomness. * <em>This generator will be removed in ramsey/uuid 4.0.0.</em> * @link http://php.net/mt_rand */ class MtRandGenerator implements RandomGeneratorInterface { /** * Generates a string of random binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string */ public function generate($length) { $bytes = ''; for ($i = 1; $i <= $length; $i++) { $bytes = chr(mt_rand(0, 255)) . $bytes; } return $bytes; } } PK ��\��U� � TimeGeneratorFactory.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; use Ramsey\Uuid\Converter\TimeConverterInterface; use Ramsey\Uuid\Provider\NodeProviderInterface; use Ramsey\Uuid\Provider\TimeProviderInterface; /** * A factory for retrieving a time generator, based on the environment */ class TimeGeneratorFactory { /** * @var NodeProviderInterface */ private $nodeProvider; /** * @var TimeConverterInterface */ private $timeConverter; /** * @var TimeProviderInterface */ private $timeProvider; /** * Constructs a `TimeGeneratorFactory` using a node provider, time converter, * and time provider * * @param NodeProviderInterface $nodeProvider * @param TimeConverterInterface $timeConverter * @param TimeProviderInterface $timeProvider */ public function __construct( NodeProviderInterface $nodeProvider, TimeConverterInterface $timeConverter, TimeProviderInterface $timeProvider ) { $this->nodeProvider = $nodeProvider; $this->timeConverter = $timeConverter; $this->timeProvider = $timeProvider; } /** * Returns a default time generator, based on the current environment * * @return TimeGeneratorInterface */ public function getGenerator() { return new DefaultTimeGenerator( $this->nodeProvider, $this->timeConverter, $this->timeProvider ); } } PK ��\C��{� � RandomGeneratorInterface.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; use Exception; use InvalidArgumentException; use Ramsey\Uuid\Exception\UnsatisfiedDependencyException; /** * RandomGeneratorInterface provides functionality to generate strings of random * binary data */ interface RandomGeneratorInterface { /** * Generates a string of random binary data of the specified length * * @param integer $length The number of bytes of random binary data to generate * @return string A binary string * @throws UnsatisfiedDependencyException if `Moontoast\Math\BigNumber` is not present * @throws InvalidArgumentException * @throws Exception if it was not possible to gather sufficient entropy */ public function generate($length); } PK ��\��qyb b RandomGeneratorFactory.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; /** * A factory for retrieving a random generator, based on the environment */ class RandomGeneratorFactory { /** * Returns a default random generator, based on the current environment * * @return RandomGeneratorInterface */ public static function getGenerator() { return new RandomBytesGenerator(); } } PK ��\�t-;} } DefaultTimeGenerator.phpnu �[��� <?php /** * This file is part of the ramsey/uuid library * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @copyright Copyright (c) Ben Ramsey <ben@benramsey.com> * @license http://opensource.org/licenses/MIT MIT * @link https://benramsey.com/projects/ramsey-uuid/ Documentation * @link https://packagist.org/packages/ramsey/uuid Packagist * @link https://github.com/ramsey/uuid GitHub */ namespace Ramsey\Uuid\Generator; use Exception; use InvalidArgumentException; use Ramsey\Uuid\BinaryUtils; use Ramsey\Uuid\Converter\TimeConverterInterface; use Ramsey\Uuid\Exception\UnsatisfiedDependencyException; use Ramsey\Uuid\Provider\NodeProviderInterface; use Ramsey\Uuid\Provider\TimeProviderInterface; /** * DefaultTimeGenerator provides functionality to generate strings of binary * data for version 1 UUIDs based on a host ID, sequence number, and the current * time */ class DefaultTimeGenerator implements TimeGeneratorInterface { /** * @var NodeProviderInterface */ private $nodeProvider; /** * @var TimeConverterInterface */ private $timeConverter; /** * @var TimeProviderInterface */ private $timeProvider; /** * Constructs a `DefaultTimeGenerator` using a node provider, time converter, * and time provider * * @param NodeProviderInterface $nodeProvider * @param TimeConverterInterface $timeConverter * @param TimeProviderInterface $timeProvider */ public function __construct( NodeProviderInterface $nodeProvider, TimeConverterInterface $timeConverter, TimeProviderInterface $timeProvider ) { $this->nodeProvider = $nodeProvider; $this->timeConverter = $timeConverter; $this->timeProvider = $timeProvider; } /** * Generate a version 1 UUID from a host ID, sequence number, and the current time * * If $node is not given, we will attempt to obtain the local hardware * address. If $clockSeq is given, it is used as the sequence number; * otherwise a random 14-bit sequence number is chosen. * * @param int|string $node A 48-bit number representing the hardware address * This number may be represented as an integer or a hexadecimal string. * @param int $clockSeq A 14-bit number used to help avoid duplicates that * could arise when the clock is set backwards in time or if the node ID * changes. * @return string A binary string * @throws UnsatisfiedDependencyException if called on a 32-bit system and * `Moontoast\Math\BigNumber` is not present * @throws InvalidArgumentException * @throws Exception if it was not possible to gather sufficient entropy */ public function generate($node = null, $clockSeq = null) { $node = $this->getValidNode($node); if ($clockSeq === null) { // Not using "stable storage"; see RFC 4122, Section 4.2.1.1 $clockSeq = random_int(0, 0x3fff); } // Create a 60-bit time value as a count of 100-nanosecond intervals // since 00:00:00.00, 15 October 1582 $timeOfDay = $this->timeProvider->currentTime(); $uuidTime = $this->timeConverter->calculateTime($timeOfDay['sec'], $timeOfDay['usec']); $timeHi = BinaryUtils::applyVersion($uuidTime['hi'], 1); $clockSeqHi = BinaryUtils::applyVariant($clockSeq >> 8); $hex = vsprintf( '%08s%04s%04s%02s%02s%012s', [ $uuidTime['low'], $uuidTime['mid'], sprintf('%04x', $timeHi), sprintf('%02x', $clockSeqHi), sprintf('%02x', $clockSeq & 0xff), $node, ] ); return hex2bin($hex); } /** * Uses the node provider given when constructing this instance to get * the node ID (usually a MAC address) * * @param string|int $node A node value that may be used to override the node provider * @return string Hexadecimal representation of the node ID * @throws InvalidArgumentException * @throws Exception */ protected function getValidNode($node) { if ($node === null) { $node = $this->nodeProvider->getNode(); } // Convert the node to hex, if it is still an integer if (is_int($node)) { $node = sprintf('%012x', $node); } if (!ctype_xdigit($node) || strlen($node) > 12) { throw new InvalidArgumentException('Invalid node value'); } return strtolower(sprintf('%012s', $node)); } } PK ��\��� OpenSslGenerator.phpnu �[��� PK ��\��I\ H RandomLibAdapter.phpnu �[��� PK ��\��G� � � SodiumRandomGenerator.phpnu �[��� PK ��\�clYn n � CombGenerator.phpnu �[��� PK ��\1�� � = RandomBytesGenerator.phpnu �[��� PK ��\o���b b _$ TimeGeneratorInterface.phpnu �[��� PK ��\ Ҋ � + PeclUuidTimeGenerator.phpnu �[��� PK ��\v��^ ^ �/ PeclUuidRandomGenerator.phpnu �[��� PK ��\�˲ � � �4 MtRandGenerator.phpnu �[��� PK ��\��U� � �: TimeGeneratorFactory.phpnu �[��� PK ��\C��{� � kB RandomGeneratorInterface.phpnu �[��� PK ��\��qyb b �G RandomGeneratorFactory.phpnu �[��� PK ��\�t-;} } .K DefaultTimeGenerator.phpnu �[��� PK q �]
| ver. 1.4 |
Github
|
.
| PHP 8.3.23 | Generation time: 0 |
proxy
|
phpinfo
|
Settings