/secure-token-generator

Generate cryptographically secure alphanumeric tokens in PHP

Primary LanguagePHPMIT LicenseMIT

Secure token generator

Latest Stable Version Total Downloads Latest Unstable Version License

Generate cryptographically secure alphanumeric tokens in PHP 8.2+ using PHP random_int() function.

Installation

The package is available on Packagist. The recommended way to install the library is through Composer:

composer require joanfabregat/secure-token-generator

Usage

use JoanFabregat\SecureTokenGenerator\SecureTokenGenerator;

// A simple token
$token = SecureTokenGenerator::generate(16);
echo $token; // will echo a 16 characters long alphanumeric token

// With all the options
$token = SecureTokenGenerator::generate(
    length: 32, 
    allowDigits: true, // 1234567890
    allowSpecialChars: true, // !@#$%^&*()_+{}|:"<>?[];',./
    allowUppercase: true, // ABCDEFGHIJKLMNOPQRSTUVWXYZ
    allowLowercase: true, // abcdefghijklmnopqrstuvwxyz
);
echo $token; // will echo a 32 characters long alphanumeric token with special characters

// An integer token
$token = SecureTokenGenerator::generateInt(6);
echo is_int($token); // will echo true
echo $token; // will echo a 6 digits long integer token (ie. 123456)

License

The library is published under the MIT license (see LICENSE file).