* delete files specific to code editors * remove TwoFactorAuth.phpproj * remove TwoFactorAuth.sln They are not used anymore. See https://github.com/RobThree/TwoFactorAuth/pull/119#issuecomment-2057777036 * remove deleted files from excluded files in composer.json
PHP library for Two Factor Authentication
PHP library for two-factor (or multi-factor) authentication using TOTP and QR-codes. Inspired by, based on but most importantly an improvement on 'PHPGangsta/GoogleAuthenticator'. There's a .Net implementation of this library as well.
Warning:
By default, this package uses the lib/Providers/QRServerProvider.php as QR code generator. This provider is not suggested for applications where absolute security is needed, because it uses an external service for the QR code generation.
You can make use of the included Endroid or Bacon providers which generate locally.
Requirements
- Requires PHP version >=8.1
- cURL when using the provided
QRServerProvider(default),ImageChartsQRCodeProviderorQRicketProviderbut you can also provide your own QR-code provider. - random_bytes(), OpenSSL or Hash depending on which built-in RNG you use (TwoFactorAuth will try to 'autodetect' and use the best available); however: feel free to provide your own (CS)RNG.
Optionally, you may need:
- sockets if you are using
NTPTimeProvider - endroid/qr-code if using
EndroidQrCodeProviderorEndroidQrCodeWithLogoProvider. - bacon/bacon-qr-code if using
BaconQrCodeProvider.
Installation
The best way of installing this library is with composer:
php composer.phar require robthree/twofactorauth
Usage
For a quick start, have a look at the getting started page or try out the demo.
If you need more in-depth information about the configuration available then you can read through the rest of documentation.
Integrations
License
Licensed under MIT license. See LICENSE for details.
Logo / icon under CC0 1.0 Universal (CC0 1.0) Public Domain Dedication (Archived page)
