Download the PHP package tzsk/otp without Composer
On this page you can find all versions of the php package tzsk/otp. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package otp
Short Description OTP Generator and Verifier without database
License MIT
Homepage https://github.com/tzsk/otp
Informations about the package otp
:gift: OTP Generator & Verifier
This is a tool to create OTP with an expiry for PHP without using any Database. This is primarily a Laravel Package but it can be used outside of Laravel also.
:package: Installation
Via Composer
To publish the config file for laravel you can run
:fire: Usage in Laravel
Import the facade class:
Generate an OTP:
The above generated OTP will only be validated using the same unique secret within the default expiry time.
TIP: OTP is generally used for user verification. So the easiest way of determining the
uniqe secret
is the user's email or phone number. Or maybe even the User ID. You can even get creative about the unique secret. You can usemd5($email)
the md5 of user's email or phone number.
Match an OTP:
Other Generate & Match Options:
There are other ways of generating or matching an OTP:
Make sure to set the same config during checking. What that means is, if you have used 8 digits and 30 min during creation you will also have to use 8 digits and 30 min during checking as well.
Here, in the above example for matching the OTP we can see that the same config is required when matching the otp with the secret which was used during creation of the OTP.
Security Advantage: - The main advantage of using the same config while matching is some third person cannot use this tool to generate the same otp for the user in question if he doesn't know the config.
:ocean: Helper usage
You can use the package with provided helper function as well
:heart_eyes: Usage outside Laravel
Install the package with composer the same way as above. Then just use it with the helper function provided. Generate:
All of the functionalities are the same as it is been documented in Laravel Usage section. Here just use the instance instead of the Static Facade.
NOTE: You don't need to do anything if you are using Laravel. It will detect the default cache store of laravel.
Example:
Also, keep in mind that while matching the OTP keep the digit & expiry config same as when the OTP was generated.
:microscope: Testing
:date: Changelog
Please see CHANGELOG for more information on what has changed recently.
:heart: Contributing
Please see CONTRIBUTING for details.
:lock: Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
:crown: Credits
- Kazi Ahmed
- All Contributors
:policeman: License
The MIT License (MIT). Please see License File for more information.
All versions of otp with dependencies
illuminate/support Version ^8.0|^9.0|^10.0|^11.0
illuminate/cache Version ^8.0|^9.0|^10.0|^11.0
illuminate/filesystem Version ^8.0|^9.0|^10.0|^11.0